Time |
Nick |
Message |
01:39 |
|
Miner_48er joined #minetest-dev |
01:40 |
|
Aaron101- joined #minetest-dev |
01:43 |
|
gregorycu joined #minetest-dev |
01:43 |
gregorycu |
Is there anything I can do to assist with the release? |
01:43 |
|
Kargaroc joined #minetest-dev |
01:44 |
gregorycu |
(Possible resend) Is there anything I can do to assist with the release? |
01:48 |
|
Sokomine joined #minetest-dev |
01:48 |
|
Ritchie joined #minetest-dev |
01:48 |
|
pitriss joined #minetest-dev |
01:54 |
|
gregorycu_ joined #minetest-dev |
01:54 |
|
shadowzone joined #minetest-dev |
01:57 |
|
gregorycu joined #minetest-dev |
01:58 |
gregorycu |
T4im: So I was thinking |
01:58 |
gregorycu |
How about we actually make a proper deregister function |
02:03 |
T4im |
sounds good :) |
02:07 |
|
shadowzone joined #minetest-dev |
02:16 |
|
electrodude512 joined #minetest-dev |
02:36 |
gregorycu |
It's pretty bad that get_craft_recipe returns nullifying recepies |
02:36 |
gregorycu |
est31: My good man, are you around? |
02:41 |
|
Player_2 joined #minetest-dev |
02:48 |
gregorycu |
bool sneak_node_found = (min_distance_f < 100000.0*BS*0.9); |
02:48 |
gregorycu |
Sweed Jesus |
02:48 |
gregorycu |
Sweet |
02:49 |
acerspyro |
#foreveralone |
02:50 |
gregorycu |
BS is 10 |
02:50 |
gregorycu |
I don't even... |
02:53 |
gregorycu |
I found another sneaking-related bug. Hooray. |
02:54 |
|
electrodude512 joined #minetest-dev |
03:01 |
kahrl |
what's the bug? |
03:01 |
kahrl |
gregorycu: ^ |
03:02 |
gregorycu |
I think this may be a manifestation of an existing bug |
03:02 |
gregorycu |
When you sneak on a slab, or a non-full node, sneaking behaves strangely |
03:02 |
kahrl |
yeah, that's a known bug |
03:02 |
kahrl |
the sneak code has to my knowledge never been adapted to work with nodeboxes |
03:03 |
gregorycu |
It has caused #1551 |
03:03 |
ShadowBot |
https://github.com/minetest/minetest/issues/1551 -- disable_jump group doesnt work on nodeboxes |
03:04 |
gregorycu |
Maybe I can make sneaking work a little better |
03:06 |
kahrl |
the whole local player physics need some rework, imho |
03:06 |
kahrl |
but if you can fix just the sneaking that would already be great too |
03:06 |
gregorycu |
It stores a node the player is sneaking on |
03:07 |
gregorycu |
It should probably store a sneaking height too |
03:07 |
gregorycu |
But yeah, I don't want to do a massive rework :( |
03:07 |
gregorycu |
I'll try and fix this bug without changing too much |
03:07 |
acerspyro |
gregorycu: Noone does |
03:07 |
acerspyro |
This is doomed. :3 |
03:38 |
|
electrodude512 joined #minetest-dev |
04:03 |
|
electrodude512 joined #minetest-dev |
04:05 |
|
FR^3 joined #minetest-dev |
04:08 |
|
gregorycu joined #minetest-dev |
04:09 |
|
FR^3 joined #minetest-dev |
04:11 |
|
VanessaE joined #minetest-dev |
04:12 |
|
gregorycu_ joined #minetest-dev |
04:14 |
|
gregorycu_ joined #minetest-dev |
04:19 |
|
FR^3 joined #minetest-dev |
04:21 |
|
gregorycu___ joined #minetest-dev |
04:29 |
|
FR^3 joined #minetest-dev |
04:41 |
|
gregorycu joined #minetest-dev |
04:42 |
|
gregorycu_ joined #minetest-dev |
04:45 |
|
gregorycu__ joined #minetest-dev |
04:45 |
|
electrodude512 joined #minetest-dev |
05:18 |
|
gregorycu joined #minetest-dev |
05:30 |
gregorycu |
Sneaking is a bit of a basketcase |
06:06 |
|
Kalabasa joined #minetest-dev |
06:15 |
|
thaostra joined #minetest-dev |
06:27 |
|
blaze joined #minetest-dev |
06:37 |
hmmmm |
alright |
06:37 |
hmmmm |
I think this will be the first release to use minidumps |
06:37 |
hmmmm |
THING IS... |
06:38 |
hmmmm |
you need symbols created alongside the executable built |
06:38 |
hmmmm |
so for consistency I'm putting up Windows Server 2008 R2 x64 and x86 VMs that everybody will use to build the windows targets |
06:39 |
hmmmm |
I'll have to figure out some way of distributing access to the build machine |
06:39 |
hmmmm |
the Official(tm) build machine |
06:40 |
hmmmm |
this also helps streamline the build process so there will always be the correct resources available when doing a release |
07:01 |
|
Megaf_ joined #minetest-dev |
07:08 |
hmmmm |
what's up with https://github.com/minetest/minetest/pull/2095 ? |
07:28 |
|
SopaXT joined #minetest-dev |
07:43 |
|
nore joined #minetest-dev |
07:43 |
|
nrzkt joined #minetest-dev |
07:53 |
|
ImQ009 joined #minetest-dev |
08:14 |
|
leat joined #minetest-dev |
08:16 |
|
Hunterz joined #minetest-dev |
08:29 |
|
kilbith joined #minetest-dev |
08:45 |
|
loggingbot_ joined #minetest-dev |
08:45 |
|
Topic for #minetest-dev is now **FEATURE FREEZE FOR 0.4.12** **TENATIVE RELEASE DATE: 2015-01-30** Minetest core development and maintenance. Chit-chat goes to #minetest. Consider this instead of /msg celeron55. http://irc.minetest.ru/minetest-dev/ http://dev.minetest.net/ |
08:47 |
|
SopaXorzTaker joined #minetest-dev |
08:47 |
|
ImQ009 joined #minetest-dev |
08:48 |
|
everamzah joined #minetest-dev |
08:50 |
|
hmmmm joined #minetest-dev |
08:59 |
|
Calinou joined #minetest-dev |
09:05 |
|
psedlak joined #minetest-dev |
09:05 |
|
Wayward_One joined #minetest-dev |
09:06 |
|
VanessaE joined #minetest-dev |
09:08 |
|
Krock joined #minetest-dev |
09:08 |
|
Player_2 joined #minetest-dev |
09:10 |
|
jin_xi joined #minetest-dev |
09:31 |
|
casimir joined #minetest-dev |
09:31 |
|
gregorycu joined #minetest-dev |
10:07 |
|
FR^2 joined #minetest-dev |
10:10 |
|
DFeniks_ joined #minetest-dev |
10:20 |
|
PilzAdam joined #minetest-dev |
10:49 |
|
SopaXorzTaker joined #minetest-dev |
11:33 |
gregorycu |
It seems the player takes damage, even while dead |
11:33 |
gregorycu |
Is that a design decision? |
12:00 |
|
roniz joined #minetest-dev |
12:08 |
|
MinetestForFun joined #minetest-dev |
12:18 |
|
Kalabasa joined #minetest-dev |
12:39 |
Krock |
gregorycu, how is that bad? someone can be dead but it's still possible to destroy the body |
12:40 |
gregorycu |
I'm looking at #81 |
12:40 |
ShadowBot |
https://github.com/minetest/minetest/issues/81 -- dying on lava causes repeated death, if respawn location isnt quickly updated |
12:40 |
gregorycu |
I want to try and kill some really old bugs |
12:41 |
gregorycu |
Anyway, the damage is client side, so every second the client sends "I got damaged" |
12:41 |
gregorycu |
Even while dead |
12:41 |
gregorycu |
The problem is, if there is any message queuing on the server or client, the server respawns the player, and then processes the "I got damaged" messages from when the player was dead |
12:41 |
gregorycu |
And kills the player again |
12:42 |
Krock |
oh. I know that problem |
12:42 |
Krock |
also teleport has it |
12:42 |
gregorycu |
So, I'm just trying to determine what behaviours I am not allowed to change, basically |
12:43 |
Krock |
the soulation for this is to attach an invisible entity to the player, so it can't move anymore and then teleport |
12:45 |
|
gregorycu_ joined #minetest-dev |
12:45 |
gregorycu |
How does that solve the damage problem? |
12:45 |
gregorycu_ |
lol |
12:45 |
gregorycu_ |
I just got my own message |
12:46 |
Krock |
lol |
12:47 |
gregorycu_ |
Fucked if I know how that happened, anyway |
12:59 |
|
Krock joined #minetest-dev |
13:03 |
gregorycu |
Well, by disabling after-death damage, I have fixed this... |
13:04 |
gregorycu |
Not saying this is the answer, just saying this is a possible solution |
13:05 |
nore |
sfan5, what about game#415, game#413, game#418 ? |
13:05 |
ShadowBot |
https://github.com/minetest/minetest_game/issues/415 -- Optimize Sam II + textures by kilbith2 |
13:05 |
ShadowBot |
https://github.com/minetest/minetest_game/issues/413 -- Make books writable by ShadowNinja |
13:05 |
ShadowBot |
https://github.com/minetest/minetest_game/issues/418 -- Add reverse recipes for hoes while keeping def.recipe compatibility by MT-Modder |
13:06 |
gregorycu |
What are reverse recipes? |
13:06 |
sfan5 |
nore: #415 removes the alternate vessel textures |
13:06 |
ShadowBot |
https://github.com/minetest/minetest/issues/415 -- Add multiple nodeboxes for "wallmounted" drawtype |
13:07 |
kilbith |
sfan5: really needed ? |
13:07 |
sfan5 |
kilbith: yes |
13:07 |
|
Amaz joined #minetest-dev |
13:08 |
sfan5 |
nore: 413 is probably ok, 418 is ok |
13:08 |
kilbith |
for ? |
13:09 |
kilbith |
sfan5: why ? |
13:09 |
sfan5 |
if someone wants to use those alternate textures |
13:10 |
kilbith |
haha, so why not propose alternative textures for the whole game then ? |
13:12 |
kilbith |
sfan5 ^ |
13:12 |
sfan5 |
because thats what texture packs are for |
13:12 |
kilbith |
?? |
13:12 |
sfan5 |
?? |
13:12 |
gregorycu |
?? |
13:13 |
gregorycu |
Goodnight all |
13:14 |
kilbith |
this is ridiculous, you want to propose alternative for the vessels, but the principle stops at it |
13:14 |
kilbith |
for somewhat reason |
13:14 |
sfan5 |
it does not make sense to have seperate texture pack somewhere where nobody will find it for 3 textures |
13:14 |
sfan5 |
just leave the files alone |
13:15 |
kilbith |
eh, the vessels textures are findable in all TP |
13:16 |
kilbith |
i just don't understand why especially those 3 textures needs an alternative |
13:16 |
kilbith |
that nobody uses anyways |
13:16 |
sfan5 |
[citation needed] |
13:16 |
kilbith |
the new ones received a positive unanimity |
13:16 |
|
SopaXorzTaker joined #minetest-dev |
13:17 |
kilbith |
i don't need to bring a citation, i just wander on the server, unlike you |
13:17 |
kilbith |
servers* |
13:20 |
sfan5 |
who said it's a public server that uses these? |
13:21 |
kilbith |
it was an example |
13:21 |
kilbith |
this logic is obscure to me |
13:22 |
kilbith |
it seems more an 'historical conservatism' |
13:31 |
nrzkt |
bon bah moi de mon côté je crois bien que j'ai fait le maximum en terme d'opti sur l'interaction avec ma couche |
13:31 |
nrzkt |
le PR est prêt |
13:31 |
nrzkt |
après faut passer au cassage de couche et de protocoles |
13:32 |
kilbith |
tu t'es gourré d'onglet je crois |
13:32 |
Krock |
Please switch to english or talk in ##minetest-fr |
13:32 |
kilbith |
Krock, just a confusion |
13:32 |
nrzkt |
oops sorry :p |
13:32 |
nrzkt |
Don't be evil Krock ^^ |
13:32 |
kilbith |
and it's #minetest-fr |
13:34 |
Krock |
sfan5, would you be so nice and update the topic, so it's a realistic release date? |
13:34 |
Krock |
btw, it's TENTATIVE, not TENATIVE |
13:35 |
|
mrtux joined #minetest-dev |
14:45 |
|
kaeza joined #minetest-dev |
14:52 |
|
Wayward_One joined #minetest-dev |
15:21 |
|
cheapie joined #minetest-dev |
15:22 |
|
MinetestForFun joined #minetest-dev |
15:23 |
|
Megal joined #minetest-dev |
15:25 |
|
oleastre joined #minetest-dev |
15:28 |
|
younishd joined #minetest-dev |
15:31 |
|
Krock joined #minetest-dev |
15:50 |
|
kaeza joined #minetest-dev |
16:11 |
|
SopaXorzTaker joined #minetest-dev |
16:24 |
|
Calinou joined #minetest-dev |
16:34 |
|
MinetestForFun joined #minetest-dev |
16:39 |
nrzkt |
#2243 must be merged before release. Big security fix |
16:39 |
ShadowBot |
https://github.com/minetest/minetest/issues/2243 -- Security Fix: Empty the password after sending it to server by nerzhul |
16:39 |
|
Krock2 joined #minetest-dev |
16:40 |
kilbith |
^ blocker |
16:40 |
nrzkt |
please add blocker tag or merge it :) |
16:42 |
sfan5 |
huh, what? |
16:43 |
nrzkt |
open your browser and look at the issue. |
16:43 |
sfan5 |
i did |
16:43 |
sfan5 |
are you saying that it's bad to have the password in memory? |
16:43 |
|
MinetestForFun joined #minetest-dev |
16:44 |
crazyR |
is it sent plain text or hashed? |
16:44 |
sfan5 |
hashed |
16:44 |
nrzkt |
i say password stay in memory whereas it's only used in this packet and stay in memory |
16:44 |
nrzkt |
and the hash is sufficient to create a working connection to server. |
16:44 |
crazyR |
if its hashed then it makes no diffrence |
16:45 |
crazyR |
if it can be obtained from memory then it can be ready from file |
16:45 |
nrzkt |
because i create a custom minetest and paste the hash, not hashing it and sending it to server and it accept. |
16:45 |
sfan5 |
this issue doesn't fit it though |
16:45 |
crazyR |
or do you mean client side? |
16:45 |
sfan5 |
fix that* |
16:45 |
nrzkt |
client side, not server side |
16:45 |
sfan5 |
crazyR: how? |
16:47 |
|
rubenwardy joined #minetest-dev |
16:47 |
sfan5 |
nrzkt: about every application keeps passwords and user data in memory |
16:47 |
crazyR |
sfan5: what i was saying before i realised nrzkt meant client side is that if "something" could read the password from meomory then it could read it from the auth file. but seen as its hashed in memory that would make no diffrence.. |
16:47 |
sfan5 |
why would minetest not? |
16:48 |
nrzkt |
it's not because some stupid developer do it you must do it |
16:48 |
sfan5 |
protecting the user is not a valid argument; if someone has access to the machine minetest runs on it's game over, there is nothing left to protect |
16:48 |
nrzkt |
your argument is stupid |
16:48 |
sfan5 |
someone wanting the password could also just swap the minetest executable with one that logs passwords |
16:49 |
sfan5 |
<nrzkt> your argument is stupid |
16:49 |
crazyR |
sfan thast exactly what i was saying |
16:49 |
sfan5 |
it might be |
16:49 |
sfan5 |
but you did not even provide an argument |
16:49 |
sfan5 |
you just said "you must do it" |
16:49 |
nrzkt |
if i load a random binary in memory by bypassing your browser sandbox and read the password in memory, i can obtain every minetest in the world. |
16:49 |
crazyR |
but... i agree with nrzkt if all apps do it that doesnt me we should do it if we have a way to stop prevent it |
16:49 |
nrzkt |
every minetest password and connect to server. |
16:50 |
sfan5 |
how does this fix it? |
16:50 |
nrzkt |
the fix is very little, increasing security. |
16:50 |
sfan5 |
if you got code running you can use one of the hundred other ways of getting the password |
16:50 |
nrzkt |
it replace the string in memory, then no password in memory. If you havent looked at my PR please look at it. |
16:50 |
crazyR |
nrzkt if its client side how could it read every password in the world? |
16:50 |
sfan5 |
i have looked at the PR |
16:51 |
nrzkt |
i mean, if i craft a special webpage, tell many minetest users to go it, then they connect, using an exploit i access to user memory on the machine and get the password |
16:51 |
sfan5 |
yes |
16:51 |
sfan5 |
how does your issue prevent that? |
16:51 |
sfan5 |
you could also use other ways to get the password |
16:51 |
nrzkt |
it clear the password after it was used. |
16:51 |
crazyR |
ahh i see |
16:51 |
nrzkt |
it's the only code path where it's used. |
16:51 |
sfan5 |
s/issue/PR/ |
16:52 |
nrzkt |
take glasses instead of directory please |
16:52 |
sfan5 |
what? |
16:53 |
sfan5 |
your pull fixes 1 of many ways to get to the password |
16:53 |
sfan5 |
it doesn't improve security significantly |
16:53 |
crazyR |
but fixing 1 is better than fixing non |
16:53 |
sfan5 |
correct |
16:53 |
sfan5 |
but no other application does this? |
16:53 |
sfan5 |
s/?// |
16:54 |
nrzkt |
we don't care about other applications |
16:54 |
est31 |
other applications do this too |
16:54 |
nrzkt |
we are talking about minetest. |
16:54 |
sfan5 |
..because it's not worth removing the password from memory |
16:54 |
nrzkt |
and other applications are right coded. |
16:54 |
sfan5 |
est31: link please? |
16:54 |
est31 |
and yes eg lua code stores the password to |
16:54 |
est31 |
o |
16:54 |
est31 |
sfan5: ok wait please |
16:55 |
nrzkt |
don't look at other, look at your code men. It's not because we have many doors opened we let all opened instead of closing one. |
16:56 |
nrzkt |
and please think about user, not invalid arguments like many devs do. |
16:56 |
nrzkt |
don't be ubisoft |
16:57 |
crazyR |
i think if it closes a potential security issue - no matter how small and insignificant and the fix does not affect game play or stability. then is should be merged. might not be significant now but its possible future changes could make it significant then |
16:57 |
sfan5 |
nrzkt: why should we bother with it when no other program does this? |
16:58 |
nrzkt |
i think you only work on shit problem which doesn't care about security. |
16:58 |
nrzkt |
shit programs* |
16:58 |
crazyR |
sfan5: all my nabours leave there front door unlocked... should i do it? |
16:58 |
sfan5 |
nrzkt: being rude does not get your PR merged faster |
16:58 |
nrzkt |
ofc |
16:59 |
sfan5 |
crazyR: that analogy does not fit, it's more like having their keys in their house when you're already in |
16:59 |
nrzkt |
but i tell what i think, so rude i am, but the problem was here, i found it and you prefer lost time to dialog instead of fixing the problem. |
16:59 |
crazyR |
why does it not fit. you siad that all other apps do it so we should |
16:59 |
crazyR |
its the asame thing as me leaving my door unlocked because my nabout does |
17:00 |
sfan5 |
crazyR: no, it's not |
17:00 |
crazyR |
lmao |
17:00 |
sfan5 |
leaving the front door unlocked would be having the clear text password stored somewhere where everyone can access it |
17:00 |
sfan5 |
crazyR: also i said that every other program does _not_ do it |
17:01 |
crazyR |
same diffrence they dont do it so we dont do it.. il reverse it for you so its easier to understand: my nabout does not lock his door. so i should not lock my door? better? |
17:02 |
nrzkt |
the fix the other ways too sfan5 instead of searching the beast. Everybody will be happy |
17:02 |
nrzkt |
then* |
17:02 |
sfan5 |
nrzkt: there are infinite other ways |
17:02 |
sfan5 |
nrzkt: such as replacing the executable, how do we fix that? |
17:02 |
nrzkt |
no. |
17:02 |
nrzkt |
they are finite, it's a program. |
17:02 |
crazyR |
yes but fixing one way is better than not fixing any way |
17:03 |
nrzkt |
i don't patch a replaced executable because i don't patch it. |
17:03 |
Krock |
So, I've got a really annoying bug. Whenever I play on my server (via local network), then it takes 5 - 30 minutes and the wireless network collapses |
17:03 |
sfan5 |
crazyR: i already said that the unlocked door analogy is not good |
17:03 |
|
hmmmm joined #minetest-dev |
17:03 |
nrzkt |
you're not good. |
17:03 |
Krock |
this didn't happen some months ago and I hope this can be fionxed soon, so I can play on my own server again |
17:04 |
sfan5 |
again: insulting me does not get your PR merged faster |
17:04 |
Krock |
*fixed |
17:04 |
nrzkt |
#2243 must be merged because it fix ONE security issue, not all, YES, but one is better than ZERO |
17:04 |
ShadowBot |
https://github.com/minetest/minetest/issues/2243 -- Security Fix: Empty the password after sending it to server by nerzhul |
17:04 |
sfan5 |
Krock: do the packets go to your router? |
17:04 |
crazyR |
sfan if you are going to use the reason "other apps dont do it so we wont" then is the same and is well suited |
17:04 |
sfan5 |
Krock: (before going to the mt server) |
17:04 |
Krock |
sfan5, yup, there's no other way |
17:04 |
sfan5 |
Krock: well.. if you were playing on 127.0.0.1 they wouldn't exit your machine |
17:04 |
sfan5 |
Krock: in that case your router probably has problems with udp |
17:05 |
Krock |
sfan5, as already said. It worked fine some months ago. I've build weeks on that server, mostly with over 10 people online |
17:05 |
sfan5 |
Krock: was your router updated in that time? |
17:06 |
Krock |
there was no update |
17:06 |
sfan5 |
no idea then |
17:06 |
sfan5 |
crazyR: other applications don't do this for a reason, doing that does not prevent other people from getting your password; it's not worth to do this |
17:10 |
crazyR |
lol sfan5 its this sort of attitude that caused heartbleed and others. granted this is in no way even a fraction a severe... yet. but the fact that all it takes is a website designed to make use of this means that an attacker wouldnt even need to have access to the pc itself. |
17:10 |
sfan5 |
lolwat |
17:11 |
sfan5 |
heartbleed was caused by an oversight |
17:11 |
sfan5 |
now by a developer not accepting pointless fixes |
17:11 |
sfan5 |
not* |
17:11 |
sfan5 |
crazyR: also it's not "simply a website" to access some memory in a different process |
17:11 |
Krock |
nrzkt, how about setting it to "null" or some foobar text? |
17:11 |
sfan5 |
you don't simply bypass aslr, dep and browser sandboxes |
17:13 |
crazyR |
nrzkt just clearly siad that he can obtain the password from memory using a website, yes? so by not merging this fix you are turning this into a oversight. and ok i understadn a website couldnt do it that easy. so how about an amazing new toolbar extention for a browser that is advertised targeted towards minetest platyers. |
17:14 |
sfan5 |
crazyR: don't say anything before you understood how exploitation works |
17:15 |
sfan5 |
crazyR: a browser toolbar can't just read the memory of a different process either |
17:15 |
nrzkt |
on windows it's easiest than UNIX, yes |
17:16 |
sfan5 |
nrzkt: please tell me which browser allows toolbars to read other processes memory |
17:16 |
nrzkt |
IE ? |
17:17 |
sfan5 |
who uses IE? |
17:17 |
nrzkt |
because their sandbox suxes |
17:17 |
nrzkt |
windows users |
17:17 |
crazyR |
lmao |
17:17 |
Krock |
programs which read other's memory is a type of a spy-virus or whatever. antivirus does not like those |
17:17 |
nrzkt |
and maybe some minetest users |
17:17 |
est31 |
Its not just about reading other processes' memory, its also about reading the memory of already closed processes. |
17:17 |
est31 |
thats far more easier |
17:17 |
crazyR |
who uses ie? seriously |
17:17 |
hmmmm |
i don't see malware scanning process memory for minetest passwords... i'm sorry |
17:17 |
est31 |
just make the process allocate everything it gets and then search for minetest structures |
17:18 |
hmmmm |
minetest is not that important it's a god damn game |
17:18 |
hmmmm |
and that patch doesn't even accomplish what it supposedly does |
17:18 |
sfan5 |
est31: how do you read memory from exited processes? |
17:18 |
nrzkt |
no, but somes can set a common password between minetest and websites, and hash could be cracked, because it's open source, using rainbow tables. |
17:18 |
Krock |
I could understand this problem if we had global usernames and passwords but currently we shouldn't make trouble for nothing |
17:19 |
est31 |
sfan5: by allocating it without writing to it |
17:19 |
hmmmm |
nobody uses a common password |
17:19 |
est31 |
when they close, its freed |
17:19 |
hmmmm |
all my minetest server passwords are "asdf" |
17:19 |
est31 |
so you just need to convince the OS that you need the memory |
17:19 |
crazyR |
hmmmm actually most "average" users do use a common pasword |
17:19 |
hmmmm |
it's a game and it just doesn't matter. the password is necessary but nobody cares |
17:19 |
sfan5 |
est31: doesn't the kernel zero newly allocated memory |
17:19 |
sfan5 |
? |
17:19 |
hmmmm |
because it's JUST A GAME |
17:20 |
est31 |
not that I knew |
17:20 |
hmmmm |
in any case |
17:20 |
nrzkt |
just a game doesn't mean, do stupid code |
17:20 |
nrzkt |
it's not EA or ubisoft :p |
17:20 |
hmmmm |
provide me a patch that actually clears the password memory and I'll accept it |
17:20 |
nrzkt |
we need a custom allocator, then ^^ |
17:20 |
sfan5 |
est31: https://msdn.microsoft.com/en-us/library/windows/desktop/aa366887(v=vs.85).aspx "Memory allocated by this function is automatically initialized to zero" |
17:20 |
nrzkt |
because std::string sucks a little for that |
17:21 |
sfan5 |
est31: same for all other functions |
17:21 |
est31 |
reading this http://stackoverflow.com/questions/6004816/kernel-zeroes-memory |
17:21 |
Calinou |
<+sfan5> who uses IE? |
17:21 |
est31 |
you seem to be right |
17:21 |
Calinou |
25-40 % of the Internet |
17:21 |
Calinou |
that is gigantic |
17:21 |
hmmmm |
the kernel zeroing memory hides a lot of bugs |
17:21 |
sfan5 |
est31: thats for linux though |
17:21 |
Calinou |
if you like sarcasm about IE, then you might enjoy sarcasm about Firefox… |
17:22 |
hmmmm |
the majority of drivers i suspect never set Irp->IoStatus->Information = 0; before completing an irp |
17:22 |
hmmmm |
but they're OK because the kernel zeros out all the data structures |
17:22 |
sfan5 |
you read driver source code, hmmmm? |
17:22 |
hmmmm |
I write drivers for my day job |
17:23 |
sfan5 |
i see |
17:25 |
hmmmm |
lol there was this one bug |
17:25 |
kahrl |
fwiw, I tend to agree that the password should be cleared (not so much because someone could read the process memory, if that happens you're already fucked, but because I've seen several backtraces with hashed passwords included) |
17:25 |
kahrl |
but # 2243 is not the right way to do it |
17:26 |
nrzkt |
ofc, std::string sucks ... i looked at this |
17:26 |
hmmmm |
some guy was writing back a result to UserMemory in a DO_BUFFERED ioctl |
17:26 |
nrzkt |
a custom allocator is needed |
17:26 |
hmmmm |
and he never set the information |
17:26 |
hmmmm |
so the KernelBuffer result was never written back and no bug was ever found |
17:26 |
hmmmm |
but the driver kept overwriting random processses' memory |
17:26 |
sfan5 |
ow |
17:27 |
hmmmm |
i think allocated memory should be set to something like 0xCC instead |
17:54 |
celeron55 |
i actually have a custom allocator wrapper in buildat on linux that absolutely always clears memory with patterns: https://github.com/celeron55/buildat/blob/master/src/boot/linux/cmem.c |
17:55 |
celeron55 |
i became a bit worried and fed up with memory problems especially as that thing uses a lua sandbox that runs code coming from the server 8) |
17:57 |
celeron55 |
also, the kernel does clear memory that it hands to a different process than it previously belonged to; otherwise it would be an absolute security hazard (but apparently it clears to 0, which causes a lot of bugs like hmmmm said) |
17:57 |
celeron55 |
that also enables quite silly tricks that became quite useful |
17:57 |
celeron55 |
the buildat thing, i mean |
17:59 |
est31 |
buildat is a remake of minetest? |
17:59 |
celeron55 |
not really |
18:00 |
est31 |
do you use it together with minetest then? |
18:01 |
celeron55 |
you could use it for implementing a remake of minetest if you wanted to |
18:01 |
celeron55 |
as-is it's quite barebones and nobody (including me) is using it for anything |
18:01 |
est31 |
why did you start it? |
18:01 |
celeron55 |
i wanted to see where it would go |
18:01 |
celeron55 |
turns out doing a thing like that is a lot of work for no reward whatsoever |
18:02 |
celeron55 |
(except the learning, but at that point there wasn't that much to learn anymore) |
18:04 |
* est31 |
does git clone ... |
18:05 |
celeron55 |
it would probably need a bit of redesign to be actually worth using; at least stripping out the bloated threading system that i did to see where that would go |
18:06 |
celeron55 |
if someone finds messing around with it fun as-is, i might continue working on it |
18:06 |
est31 |
client side lua, tcp, lots of cool things |
18:07 |
est31 |
serverside c++ thats compiled on the runtime, does the thing have a compiler as dependency? |
18:07 |
celeron55 |
yes it does |
18:08 |
celeron55 |
it's ridiculous but works |
18:09 |
celeron55 |
it's definitely not for outdated computers in any way whatsoever |
18:09 |
est31 |
because of the compiler, or is there something else too? |
18:09 |
est31 |
clientside too? |
18:09 |
celeron55 |
urho3d requires opengl 2, the with-compiler windows binary package is something like 100MB |
18:09 |
|
SopaXorzTaker joined #minetest-dev |
18:09 |
|
prozacgod joined #minetest-dev |
18:09 |
hmmmm |
celeron55: the custom allocator isn't guaranteed to work though |
18:10 |
est31 |
oh |
18:10 |
hmmmm |
there's an optimization to omit allocations altogether for small strings |
18:10 |
hmmmm |
there is no way to securely zero a std::string.. it's just not the right container to use |
18:11 |
celeron55 |
est31: the client-only build doesn't need the compiler though |
18:11 |
est31 |
yea guessed so |
18:11 |
hmmmm |
celeron55, the system idle process has a task that zeros recently freed pages |
18:12 |
celeron55 |
est31: 100MB is not large compared to modern game engines or games though |
18:12 |
celeron55 |
MT is just such a minimalist project in the end |
18:13 |
est31 |
yes of course. I know of somebody who uses MT on a 2005 PC |
18:13 |
VanessaE |
celeron55: bundle dreambuilder with MT and you're half-way there ;) |
18:13 |
Calinou |
dreamtest |
18:13 |
est31 |
db has ~70 MB (including git history) |
18:14 |
VanessaE |
est31: 94MB with history, 52MB without |
18:15 |
est31 |
maybe, my copy has alot of symlinks to repos I write mods for. |
18:15 |
VanessaE |
really though, size of an engine isn't a particularly good indicator of its quality |
18:16 |
est31 |
I guess the compiler doesn't have to be loaded into mem. |
18:16 |
celeron55 |
but i mean, if there's somebody in here who doesn't find stupidly huge programs a problem and likes the ridiculous flexibility aspect of minetest interesting or entertaining, buildat is for you |
18:16 |
est31 |
only if its compiling |
18:19 |
celeron55 |
the compiling works so that there's simply a stripped-down mingw in a subdirectory that is called |
18:19 |
celeron55 |
or on linux it just uses the system one |
18:20 |
est31 |
lol compiling errors in stdout... something to grow accustomed to... |
18:21 |
celeron55 |
i think i do need to somehow get buildat into a stable state, probably by stripping it down more to get rid of the badly designed interfaces |
18:21 |
celeron55 |
currently i'm afraid of pushing it to users too much as it will have to change in order to be good |
18:22 |
celeron55 |
someone else, go finish it; i'm too busy with other things |
18:26 |
|
Amaz joined #minetest-dev |
18:28 |
est31 |
Is there support for a moving player yet, or is that for things the mods have to do? |
18:28 |
celeron55 |
ehm |
18:28 |
est31 |
s/for/to be implemented/ |
18:28 |
celeron55 |
no you're not getting the flexibility of buildat at all 8) |
18:28 |
celeron55 |
implementing a player is up to mods |
18:28 |
celeron55 |
that's where it starts |
18:29 |
est31 |
ah |
18:29 |
celeron55 |
without mods (which are actually called modules in buildat), what you basically have is a somewhat implicitly networked urho3d engine with automatic C++ compilation |
18:30 |
est31 |
so the core engine is quite complete, just with some ugly interfaces, there is no default_game yet? |
18:30 |
celeron55 |
there will never be a default game |
18:31 |
est31 |
default_game++ |
18:31 |
celeron55 |
but there are some examples |
18:31 |
est31 |
ah I see in the games folder |
18:31 |
VanessaE |
[01-19 03:46] <hmmmm> give me one good reason why we don't dump this for urho3d right now |
18:31 |
hmmmm |
i said that when i was POed |
18:32 |
VanessaE |
heh |
18:34 |
celeron55 |
est31: i mean, if i had no previous game projects that i really want to finish, i would have continued on buildat and made a game using it |
18:34 |
celeron55 |
est31: but the thing is, i do, and they cannot be ported to buildat and it would make zero sense whatsoever anyway |
18:34 |
est31 |
can minetest be finished? |
18:34 |
celeron55 |
no |
18:34 |
celeron55 |
it's not one of them |
18:36 |
celeron55 |
or you could say that minetest is finished for my part |
18:36 |
Calinou |
free software projects are never finished |
18:50 |
sofar |
^^ this |
18:51 |
est31 |
what are the interfaces that are so ugly? |
18:51 |
celeron55 |
ugly doesn't describe them properly |
18:52 |
celeron55 |
i mean |
18:52 |
celeron55 |
there's stuff like trying to decide what things are in the core and what are not |
18:53 |
celeron55 |
and trying to figure out best practices of creating proper interfaces between modules so that they are actually useful |
18:53 |
celeron55 |
and trying to figure out how urho3d scenes should be managed |
18:53 |
celeron55 |
stuff like that |
18:54 |
celeron55 |
it's not a thing like "that line of code is ugly" |
18:54 |
est31 |
ok |
18:56 |
est31 |
are the server modules sandboxed too? |
18:56 |
celeron55 |
not in the slightest |
18:56 |
celeron55 |
in the future there might possibly be a layer on top of them running sandboxed lua similarly to the client |
18:57 |
celeron55 |
but that's far in the future at this pace |
18:57 |
celeron55 |
like, 1000 years i'd say |
18:57 |
celeron55 |
many people have asked for server-side lua though |
18:58 |
celeron55 |
but they also have asked it to be at a level similar to minetest, which is nothing like what the example games and built-in modules are providing |
18:59 |
celeron55 |
and it's not what they should be providing |
18:59 |
celeron55 |
that's up to higher ones that don't exist |
19:01 |
est31 |
mods can provide lua sandboxes too |
19:01 |
est31 |
or js sandboxes |
19:02 |
est31 |
or whatever |
19:03 |
celeron55 |
yes, but they will miss the opportunity of urho3d directly providing a lua interface (which as to be carefully whitelisted though with a quite complex wrapper) |
19:04 |
celeron55 |
which is done on the client |
19:04 |
est31 |
the whitelisting is for the sandbox? |
19:04 |
celeron55 |
umm? |
19:05 |
est31 |
urho3d is also used server side... interesting |
19:06 |
celeron55 |
yes, it's used in that way because it has built-in features that allow syncing a scene from the server to the client |
19:06 |
celeron55 |
which allows quite MT-like programming (except that it's in C++) |
19:07 |
celeron55 |
(also it's possible to add things to the same scene on the client that don't show up to others) |
19:09 |
est31 |
does it include stuff like SAOs, or is that up to the mods? |
19:09 |
est31 |
or far in the future |
19:10 |
celeron55 |
yeah that's in there |
19:11 |
celeron55 |
also it already supports VAE's, but that's making other things quite complicated and that's one thing to think about too |
19:11 |
celeron55 |
it's implemented in a module though, not in core |
19:11 |
celeron55 |
(mostly) |
19:11 |
celeron55 |
VAEs* |
19:12 |
est31 |
what does V stand for |
19:12 |
celeron55 |
VAE isn't a buildat term though, it's "voxel area entity" which is a minetest thing (that doesn't exist in minetest) |
19:12 |
Calinou |
voxel area entities |
19:12 |
celeron55 |
objects that basically are a freeform chunk of voxels |
19:13 |
celeron55 |
with physics |
19:13 |
est31 |
so like a ship |
19:13 |
celeron55 |
those are there, but then on the other hand map saving isn't there |
19:13 |
celeron55 |
which they make less enjoyable |
19:13 |
est31 |
their map saving? |
19:13 |
est31 |
or saving at all |
19:13 |
celeron55 |
saving at all |
19:14 |
celeron55 |
in the current voxel world implementation every voxel is part of a VAE; some of them are just at static positions to make up the main landmass |
19:14 |
est31 |
ok |
19:14 |
celeron55 |
let me look up the actual buildat term for these... |
19:14 |
est31 |
so VAEs can be as huge as they want |
19:15 |
celeron55 |
in buildat they are called "dynamic voxel nodes" |
19:15 |
celeron55 |
or "voxel nodes" |
19:15 |
celeron55 |
static voxel node would be those that don't move |
19:16 |
celeron55 |
est31: well large ones aren't efficient to edit |
19:16 |
celeron55 |
but they can be quite large |
19:17 |
celeron55 |
i mean, it's not some kind of magical thing that ends world poverty, but it's a lot more impressive than minetest if you ask me |
19:18 |
celeron55 |
it just... needs a whole lot of work by capable programmers |
19:18 |
celeron55 |
and that's the thing that is hard to come by |
19:19 |
est31 |
yea |
19:19 |
|
shadowzone joined #minetest-dev |
19:19 |
est31 |
dunno whether I'm capable, guess not |
19:19 |
celeron55 |
if you can understand the existing code, it's likely enough |
19:20 |
est31 |
and: dunno how much time I can invest |
19:20 |
celeron55 |
yeah that's the actual problem |
19:20 |
celeron55 |
for me too |
19:21 |
celeron55 |
i'm not really willing to put time into something that i am not sure won't teach me a lot of things or which won't deliver something useful to a lot of users |
19:21 |
celeron55 |
at this point buildat is still quite a "well it might end up being interesting" project |
19:22 |
est31 |
just like me |
19:22 |
est31 |
with minetest, I have something that actually works |
19:22 |
est31 |
and has users |
19:23 |
hmmmm |
VAEs already exist in mods as clumps of SAOs that move together at once |
19:23 |
hmmmm |
I hate it |
19:23 |
celeron55 |
i don't really expect anyone to start using buildat before i have made something using it |
19:23 |
hmmmm |
in any case, where do we store VAEs? in the database? |
19:23 |
celeron55 |
if i end up doing so, then i do expect that people will want to see what they can do with it too |
19:24 |
celeron55 |
but that hasn't happened |
19:24 |
est31 |
I could try working on buildat_game... but when the API gonna change... |
19:24 |
celeron55 |
hmmmm: i'm sticking with my proposition of just allocating an unused edge of the world for them |
19:24 |
celeron55 |
hmmmm: and you will be sticking with hating that |
19:25 |
hmmmm |
I never understood the point of the "position hash" |
19:25 |
hmmmm |
you're using a lot of unused bits for pretty much no reason at all |
19:25 |
celeron55 |
wtf are you now referring to |
19:25 |
hmmmm |
if we fix that we can reserve a special bit in the key that says "this is a VAE" |
19:26 |
hmmmm |
celeron55: before you jump to "WTF are you talking about", try waiting for the rest of the statement (or think harder) |
19:26 |
hmmmm |
you'd come off as less abrasive that way |
19:27 |
celeron55 |
? |
19:27 |
celeron55 |
so where is the rest of the statement |
19:27 |
hmmmm |
the position hash used as the primary key in the map database |
19:28 |
celeron55 |
lol what |
19:28 |
hmmmm |
this makes your proposition of "allocating an unused edge" way more managable |
19:28 |
hmmmm |
it would be easy to extract them this way |
19:28 |
celeron55 |
databases have columns, you don't need some kind of special bits |
19:28 |
hmmmm |
true, but what about leveldb |
19:28 |
hmmmm |
or other things that are really just dumb key-value stores |
19:28 |
celeron55 |
and you shouldn't be using special bits (or hashes like i did when i didn't know sqlite3 supports multiple indices) as databases can't index them properly |
19:29 |
celeron55 |
hmmmm: they have strings as keys |
19:29 |
hmmmm |
so do you suppose using a separate database file or something? |
19:29 |
* hmmmm |
scratches head |
19:29 |
hmmmm |
erm... s/suppose/propose/ |
19:30 |
celeron55 |
you don't have to have a position as the key for everything in leveldb |
19:30 |
celeron55 |
you can just have "vae142" or something |
19:30 |
celeron55 |
that's how leveldb is intended to be used |
19:30 |
hmmmm |
oh, that's more flexible. |
19:31 |
celeron55 |
in sql you should really have a separate table for VAEs |
19:31 |
celeron55 |
if one is going for the same kind of structure as that would make in leveldb |
19:31 |
hmmmm |
no, I think we should use a separate database file completely |
19:31 |
hmmmm |
that way you can easily move them from world to world |
19:32 |
est31 |
databases also have tables |
19:32 |
celeron55 |
not going to work; people are going to want to add them, not replace them |
19:32 |
hmmmm |
?? |
19:32 |
hmmmm |
not sure I understand |
19:32 |
celeron55 |
and they will have incompatible positions in the world with the main world voxels and whatnot |
19:32 |
hmmmm |
oh no |
19:32 |
hmmmm |
they'll be stored on the map by reference |
19:33 |
celeron55 |
the main gameplay with VAEs that i am thinking is that each of them is unique and built from the ground up in-place |
19:33 |
celeron55 |
you're thinking of some kind of model database |
19:33 |
celeron55 |
where things can be just picked from |
19:34 |
hmmmm |
I thought about how I want to do this and I think the most sane way is to load/store the VAEs in a separate DB, somebody can build a structure on the map using regular mapnodes, then when somebody hits the "turn into VAE" button it'd store it as a model |
19:34 |
hmmmm |
and then create a SAO of it |
19:34 |
|
rubenwardy joined #minetest-dev |
19:34 |
hmmmm |
the downside is you won't be able to build it or whatever while your boat is moving or whatever but it's much more managable this way |
19:35 |
celeron55 |
i think you should be able to build on it, and run mesecons on it and whatnot, eventually |
19:35 |
celeron55 |
but at first not being able to do that would be fine |
19:35 |
hmmmm |
well no it's not fine |
19:35 |
hmmmm |
because that would demand a fundamentally different model of how it functions |
19:35 |
hmmmm |
so you'd need a rewrite |
19:35 |
celeron55 |
not in how i've planned it |
19:36 |
celeron55 |
maybe you planned something that isn't suitable for that 8) |
19:36 |
hmmmm |
how did you plan it? |
19:36 |
hmmmm |
you already did this with buildat no? |
19:36 |
celeron55 |
buildat != minetest |
19:36 |
celeron55 |
and i don't see what's so fundamental about thtis |
19:36 |
celeron55 |
this* |
19:37 |
hmmmm |
I don't know I can just see lots of problems |
19:37 |
hmmmm |
like how are you going to get pointed_at if it's technically part of the map |
19:37 |
hmmmm |
maybe I haven't thought hard enough about all this |
19:38 |
celeron55 |
i see a lot of problems too; in minetest for example APIs are kind of not designed for them |
19:38 |
hmmmm |
well it's a large feature, I'm sure there would be currently unknown obstacles with any approach |
19:38 |
celeron55 |
but then again, mapping them in the same voxel 3D space to a different location solves it |
19:39 |
hmmmm |
and then |
19:39 |
hmmmm |
what about the problem of uniqueness |
19:39 |
hmmmm |
nevermind, that's easily solved |
19:40 |
hmmmm |
so we just tack on a boolean "is_vae_target" to set_node/get_node/swap_node? |
19:40 |
celeron55 |
if you don't want to simply map them to the same 3D world, then please not that solution |
19:41 |
celeron55 |
more like including vae=number in positions |
19:41 |
celeron55 |
this is not a good reason to make APIs look ugly |
19:41 |
hmmmm |
if we add another field to positions then we can throw realms in just as well |
19:42 |
celeron55 |
well if somebody is willing to implement all that, i guess so |
19:43 |
hmmmm |
i would if i had free time |
19:43 |
hmmmm |
I realize a lot of my ideas are stupid but I haven't given this much serious thought |
19:43 |
VanessaE |
if you were to "throw realms in", how would you implement them? additional map databases? |
19:44 |
hmmmm |
if we did it the celeron way(tm) then it'd be an additional column in the composite key mapping to the block data |
19:45 |
hmmmm |
there's really not a better way of doing this |
19:45 |
hmmmm |
it's something that's stupid and simple |
19:45 |
hmmmm |
and works |
19:45 |
celeron55 |
i do wish i would have been long-sighted enough to having thrown that stuff into APIs and databases much earlier... but back then even the basic idea of 0.4 was a stretch 8) |
19:45 |
VanessaE |
Occam's Razor. |
19:46 |
hmmmm |
and I nearly forgot about that pull request that splits up the block positions into x y and z |
19:47 |
hmmmm |
it's a lot of work, i'm sure, but the API bit doesn't seem to be overly difficult |
19:47 |
hmmmm |
we'd have to modify push_v3f and read_v3f to read the realm/vae/whatever ID and rename it |
19:48 |
celeron55 |
the extended position is going to be an issue because people do a lot of u = {x=v.x, y=v.y, z=v.z} style stuff |
19:48 |
hmmmm |
yeah so? |
19:48 |
celeron55 |
but i guess it's fairly easy to fix in mods |
19:48 |
hmmmm |
what's wrong with assuming if the realm ID is blank or 0 you're referring to the primary map |
19:49 |
celeron55 |
yeah but if the VAE has a node that wants to place a node next to itself, boom |
19:49 |
est31 |
you could make core code smart |
19:49 |
celeron55 |
sounds like even more obscure errors |
19:50 |
est31 |
if core gets a position where the vae number is not set it checks whether the call has been made by code belonging to some node |
19:50 |
est31 |
and checks the realm of that node |
19:50 |
celeron55 |
you can't really generally know the answer to that check |
19:50 |
celeron55 |
there are a lot of callbacks and whatnot |
19:54 |
est31 |
there should be a mechanism that ensures you cannot start a server with vae support with mods that don't have vae support |
19:56 |
|
decimalguy joined #minetest-dev |
19:58 |
est31 |
or you get a warning |
19:59 |
hmmmm |
maybe we can have each mod expose variables like |
19:59 |
hmmmm |
is_vae_aware = true |
20:00 |
hmmmm |
celeron55: I see what you mean now, like for example a grow_something ABM that runs on it |
20:00 |
hmmmm |
that wasn't written for voxel area entities |
20:00 |
hmmmm |
wait guys wait |
20:00 |
hmmmm |
I can only work on one huge thing at a time |
20:01 |
hmmmm |
what's more important, this or client-side modding? |
20:01 |
hmmmm |
and I can hardly even work on little things because I have real life too |
20:04 |
Tesseract |
hmmmm: I'd say client-side mods. Make sure it plays well with my security patch though. |
20:04 |
est31 |
security patch? |
20:05 |
hmmmm |
well |
20:05 |
VanessaE |
I'd say client-side modding as well, of the two |
20:05 |
|
Topic for #minetest-dev is now FEATURE FREEZE FOR 0.4.12 IN EFFECT. Release date: soonâ„¢ | Minetest core development and maintenance. Chit-chat goes to #minetest. Consider this instead of /msg celeron55. http://irc.minetest.ru/minetest-dev/ http://dev.minetest.net/ |
20:05 |
hmmmm |
security on client-side modding is going to be a bit different from server side |
20:05 |
hmmmm |
obviously it needs to be super-sandboxed |
20:06 |
Tesseract |
est31: #1606 |
20:06 |
ShadowBot |
https://github.com/minetest/minetest/issues/1606 -- Add mod security by ShadowNinja |
20:06 |
est31 |
chrome does own locked down processes with IPC |
20:06 |
Tesseract |
hmmmm: That ^ with minor changes to isPathAllowed(or whatever I named it) should be secure for the client too. |
20:07 |
Tesseract |
I'd look over all the whitelisted functions first though of course. |
20:13 |
est31 |
even if you moved clientlua into its own process, that would only save from luajit exploits |
20:25 |
|
nore joined #minetest-dev |
20:29 |
est31 |
hmmmm: initial client side modding, what should it be abled to do? |
20:29 |
est31 |
just formspecs or things like world manipulation too |
20:29 |
VanessaE |
flip a door open, move a MOB, that sorta thing. |
20:30 |
est31 |
craft guides can be client side... |
20:31 |
celeron55 |
put client-side entities into the world to show custom stuff |
20:31 |
celeron55 |
(without showing it to other players) |
20:32 |
celeron55 |
i mean, irrlicht scene nodes |
20:32 |
est31 |
ok nice |
20:32 |
celeron55 |
the thing here is, as these features get wider and wider, the attack surface gets huge |
20:33 |
celeron55 |
you need to be programming this like a cryptography library |
20:33 |
est31 |
just leave the APIs the server can access |
20:33 |
est31 |
thats enough for the start |
20:33 |
|
prozacgod joined #minetest-dev |
20:33 |
est31 |
so when a server already can manipulate the nodes, let clientside lua modiffy that too |
20:34 |
|
prozacgod joined #minetest-dev |
20:34 |
celeron55 |
hmm |
20:35 |
celeron55 |
should the access be unified so that client-side lua actually does use the same interface what the server sees through network |
20:35 |
|
shadowzone_ joined #minetest-dev |
20:35 |
celeron55 |
that would indeed minimize the addition of attack surface, but it might be a weird system |
20:35 |
est31 |
mostly yes, at least my opinion |
20:36 |
celeron55 |
hmmmm: if you're going to do this, give a few thoughts to this too; it might even give us a better server-side api simultaneously if it turns out to be a good idea |
20:36 |
est31 |
but you would need shared stuff by the "actual client", and the clientlua, like the structures that keep the nodes |
20:37 |
est31 |
unless you want to duplicate it |
20:37 |
celeron55 |
i'm not too sure that it would be a good idea |
20:37 |
|
acerspyro joined #minetest-dev |
20:37 |
celeron55 |
anyway, everything is worth looking at before doing any complicated work |
20:39 |
|
prozacgod joined #minetest-dev |
20:41 |
|
prozacgod joined #minetest-dev |
20:44 |
est31 |
Tesseract: why is the PR not merged yet? |
20:47 |
Tesseract |
est31: Because I haven't gotten approval from two other devs yet. |
20:47 |
est31 |
ok |
20:48 |
Tesseract |
And it can't go in now unless we make a release branch. |
20:48 |
Tesseract |
My sqlite3-pos-split branch actually includes a number of fixes to local map saving. |
20:48 |
est31 |
yea freeze |
20:50 |
Tesseract |
If anyone wants to test either of those things (sqlite3-pos-split or security) that would be great. |
20:50 |
est31 |
gonna try to get out of the sandbox :) |
20:51 |
est31 |
and start dreambuilder with it. |
20:53 |
Tesseract |
est31: datastorage (used by unified_inventory if available) might break. Change the os.execute("mkdir"...) hack to core.mkdir(...) if so. I have a patch that makes it compatible with both methods but it isn't pushed yet. |
20:54 |
Tesseract |
WE has a similar issue, but only if you use one of the "/save*" commands. |
20:54 |
est31 |
is the sandbox also enabled for the mainmenu lua? |
20:54 |
nrzkt |
why release date is unilateral from 1 dev , |
20:54 |
nrzkt |
? |
20:57 |
Tesseract |
est31: IIRC it isn't. It wouldn't really hurt if it was though. |
20:58 |
est31 |
just asking, I've made a mod for the mainmenu, and that accesses the fs. |
20:58 |
est31 |
-> https://forum.minetest.net/viewtopic.php?f=14&t=11116 |
20:59 |
nrzkt |
it's not normal. |
20:59 |
nrzkt |
mods mustn't have access to real FS |
20:59 |
nrzkt |
and they mustn't send real commands into the server |
21:13 |
Tesseract |
LOL, I remember someone proposed adding strgettext as wide_to_narrow(wstrgettext(str)) -- that's wide_to_narrow(std::wstring(narrow_to_wide(gettext(str)).c_str())). -- char* -> wstring -> wchar* -> wstring -> string. |
21:14 |
shadowzone_ |
did it get merged or even work? |
21:14 |
* Tesseract |
will now increase translation speed 10x ;-) |
21:23 |
|
nore joined #minetest-dev |
21:23 |
|
ImQ009 joined #minetest-dev |
21:39 |
|
shadowzone joined #minetest-dev |
21:46 |
|
MichaelRpdx joined #minetest-dev |
22:25 |
|
MinetestForFun joined #minetest-dev |
22:27 |
|
harrison joined #minetest-dev |
22:59 |
|
shadowzone joined #minetest-dev |
23:06 |
|
decimalguy left #minetest-dev |
23:53 |
|
shadowzone joined #minetest-dev |
23:58 |
|
shadowzone joined #minetest-dev |