Time |
Nick |
Message |
00:00 |
ShadowNinja |
hmmmm: You O.K. with me merging security right now? It was approved a while ago, but I got sidetracked by a small enhancement that didn't work out. |
00:00 |
hmmmm |
wait didn't security break mods |
00:01 |
ShadowNinja |
hmmmm: Yes, but they can all be fixed trivially. |
00:01 |
hmmmm |
ehh.. |
00:01 |
|
Wayward_Tab joined #minetest-dev |
00:01 |
ShadowNinja |
You agreed to it IIRC. |
00:01 |
hmmmm |
i don't think i would ever agree to mod breakage |
00:01 |
ShadowNinja |
I'd have to look back a bit to find it though. |
00:02 |
ShadowNinja |
hmmmm: Only one or two mods are really broken. |
00:02 |
hmmmm |
you have no idea how much cruft there is in my lua apis that i keep there for reverse compat |
00:02 |
ShadowNinja |
Well, actually none are broken. |
00:02 |
ShadowNinja |
There are just one or two that need to be added to secure.trusted_mods. |
00:03 |
hmmmm |
so what are these modifications exactly one would need to make |
00:03 |
hmmmm |
in any case, you do realize this would be setting a precedent if it were to be merged, right? |
00:03 |
hmmmm |
this is nothing to be taken lightly |
00:04 |
ShadowNinja |
hmmmm: Mods that use os.execute("mkdir"..) need to swich to minetest.mkdir and mods like IRC that do thinks like load C libraries have to use request_insecure_environment(). |
00:05 |
hmmmm |
so os.execute is completely disabled with this? |
00:05 |
hmmmm |
good |
00:05 |
ShadowNinja |
req_ins_env allows specific mods to bypass security if they're listed in secure.trusted_mods. |
00:05 |
hmmmm |
but are there some mods that call wget? |
00:05 |
hmmmm |
iirc there was at least one |
00:05 |
ShadowNinja |
So you *could* use ins_env.os.execute("mkdir "...), but that would be stupid. |
00:06 |
ShadowNinja |
hmmmm: If there is it can use req_ins_env, or the http API that's planned. |
00:06 |
hmmmm |
you know, I don't think I would normally agree to this but |
00:07 |
hmmmm |
breakage is acceptable to fix these sorts of things |
00:07 |
hmmmm |
secure.trusted_mods isn't a foolproof solution though |
00:08 |
ShadowNinja |
There's always secure.enable_security=false, as a last resort. |
00:08 |
hmmmm |
it's easy to have a mod that innocently updates itself, for example, and then one day after it's gained acceptance throughout the minetest community, it installs malware |
00:09 |
hmmmm |
mod security is false security |
00:09 |
hmmmm |
a false sense of security rather |
00:09 |
hmmmm |
i don't want people to be lulled into thinking this is making them safer |
00:10 |
hmmmm |
maybe there should be a set of audit rules you could do on code in order to make them gain trusted status |
00:11 |
hmmmm |
quality standards or so to speak. did you come up with anything along those lines already? |
00:12 |
VanessaE |
BUT this breaks the ability to read from the mod's own directory, does it not? |
00:13 |
hmmmm |
it doesn't |
00:13 |
VanessaE |
ShadowNinja, what was http://sprunge.us/dKXa meant to solve then? |
00:13 |
ShadowNinja |
VanessaE: Nope. You can't open any new fds after init in the mod dir if you aren't trusted though. |
00:13 |
VanessaE |
(I know what mod it's for of course, but I don't remember why it was needed) |
00:13 |
VanessaE |
that answers it. |
00:14 |
ShadowNinja |
Dangit, my client segfaults every time I hover over a link. (probably a Qt5 bug) |
00:15 |
VanessaE |
ShadowNinja: that was the paste you gave me a while back to essentially rewrite the player_textures mod |
00:15 |
ShadowNinja |
VanessaE: It fixes two bugs. |
00:15 |
ShadowNinja |
Well, one bug and one security incompatibility. |
00:15 |
VanessaE |
also, see homedecor's wardrobe opject. it has the ability to change skins also now |
00:16 |
ShadowNinja |
There are two ways to fix the security incompatibility, but the easiest way involves making it trusted. |
00:16 |
* VanessaE |
grumbles |
00:16 |
ShadowNinja |
Hmmm, minetest.dir should really be added. |
00:17 |
VanessaE |
there is NO legit reason to prevent reading files in the mod's directory after init. |
00:17 |
ShadowNinja |
VanessaE: Yes, it's an implementation limitation. |
00:17 |
ShadowNinja |
The only way to solve it is to completely isolate every mod. |
00:18 |
ShadowNinja |
*sigh* if it weren't for player_textures this would be so much less breaking. :-( |
00:19 |
VanessaE |
ShadowNinja: https://github.com/VanessaE/homedecor_modpack/blob/master/homedecor/wardrobe.lua#L64 |
00:19 |
VanessaE |
and this. |
00:19 |
ShadowNinja |
*SIGSEGV* |
00:20 |
ShadowNinja |
VanessaE: Oh, that should still work fine. |
00:21 |
VanessaE |
"should" |
00:21 |
VanessaE |
... |
00:21 |
ShadowNinja |
The issue is the (flawed) io.open() existence check that player_textures uses. |
00:21 |
Etzos |
ShadowNinja: Quassel? |
00:22 |
ShadowNinja |
(flawed becuase the texture might exist but not be loaded if it was added after the server started, resulting in players with solid-color skins) |
00:22 |
VanessaE |
ShadowNinja: wouldn't it make more sense to add a helper function that can just do a file-existence check then? |
00:22 |
ShadowNinja |
Etzos: Yep. |
00:23 |
Etzos |
ShadowNinja: Settings -> Configure Quassel... -> Chat View -> [Uncheck] Show previews of webpages on URL hover |
00:23 |
VanessaE |
besides, no one really cares if the skin didn't load because it was added later. this happens *all the time* on servers when mods are updated - it isn't limited to skin textures of course. |
00:23 |
ShadowNinja |
VanessaE: No, because that approach is flawed to begin with ^. The *right* (well, as close as possible without major engine changes) way to fix this is by scanning the directory for the list of player files. |
00:23 |
VanessaE |
update mod -> some texture file chanegs -> next person who signs in gets the node shape with bad textures until the next server restart. |
00:24 |
ShadowNinja |
Etzos: Thanks. |
00:24 |
ShadowNinja |
I'll add something like LuaFileSystem.dir(). |
02:29 |
|
kaeza_ joined #minetest-dev |
02:35 |
kaeza_ |
0 OK, 0:1 |
02:35 |
kaeza_ |
<_< |
02:37 |
|
Fritigern joined #minetest-dev |
03:05 |
|
kaeza_ joined #minetest-dev |
03:25 |
|
Zeno` joined #minetest-dev |
03:38 |
|
kahrl joined #minetest-dev |
03:54 |
|
FR^3 joined #minetest-dev |
04:02 |
|
FR^3 joined #minetest-dev |
04:03 |
|
Hijiri joined #minetest-dev |
04:12 |
|
FR^3 joined #minetest-dev |
04:39 |
|
Hunterz joined #minetest-dev |
04:59 |
|
chchjesus joined #minetest-dev |
05:08 |
|
Calinou joined #minetest-dev |
05:33 |
|
Hunterz joined #minetest-dev |
05:49 |
|
Krock joined #minetest-dev |
07:24 |
|
nore joined #minetest-dev |
07:32 |
|
jin_xi joined #minetest-dev |
07:35 |
|
kilbith joined #minetest-dev |
07:37 |
|
selat joined #minetest-dev |
07:42 |
|
AnotherBrick joined #minetest-dev |
08:00 |
|
Yepoleb_ joined #minetest-dev |
08:34 |
|
blaze joined #minetest-dev |
09:23 |
|
VargaD_ joined #minetest-dev |
09:50 |
|
selat joined #minetest-dev |
11:00 |
|
ElectronLibre joined #minetest-dev |
11:03 |
|
crazyR joined #minetest-dev |
11:56 |
|
ElectronLibre joined #minetest-dev |
12:05 |
|
err404 joined #minetest-dev |
12:05 |
|
cib0 joined #minetest-dev |
12:44 |
|
Player_2 joined #minetest-dev |
12:47 |
|
celeron55 joined #minetest-dev |
13:04 |
|
Zeno` joined #minetest-dev |
13:24 |
|
err404 joined #minetest-dev |
13:28 |
|
AnotherBrick joined #minetest-dev |
13:37 |
|
Taoki joined #minetest-dev |
13:37 |
|
celeron55 joined #minetest-dev |
13:52 |
|
Taoki joined #minetest-dev |
13:55 |
|
Taoki joined #minetest-dev |
14:35 |
|
Wayward_Tab joined #minetest-dev |
14:48 |
|
Taoki joined #minetest-dev |
14:53 |
|
paramat joined #minetest-dev |
14:59 |
paramat |
hmmmm i'm thinking of adding 'if (param2 > 3) return;' to the start of rotateAlongYAxis() for speed and to avoid any unwanted change of param2 in that case |
15:01 |
|
Taoki joined #minetest-dev |
15:04 |
paramat |
or, i could work on adding support for 6d rotation to that |
15:07 |
|
selat joined #minetest-dev |
15:11 |
Zeno` |
what's 6d? |
15:12 |
Zeno` |
two pairs of those red and blue glasses reversed and overlaid? :D |
15:24 |
paramat |
heh 6 direction |
15:25 |
paramat |
yes i will work on 6d rotation support, not just for Sokomine, it's needed for horizontal branches in tree schematics |
15:26 |
VanessaE |
speaking of rotation, |
15:26 |
VanessaE |
what's the status of https://github.com/minetest/minetest_game/issues/451 ? |
15:26 |
VanessaE |
(short version: some way is needed to selectively stop the screwdriver from rotating nodes) |
15:28 |
paramat |
nah, just don't rotate beds or doors, that'a obviously a silly thing to do :) |
15:28 |
VanessaE |
what about other mods? |
15:31 |
paramat |
i feel the complication of a fix is not worth it, if a player does something silly with a screwdriver they deserve the consequences heh |
15:31 |
VanessaE |
what complication? add a new group i.e. no_rotate=1, check if the node has it, abort if so. |
15:32 |
VanessaE |
(maybe print a message "this node can't be rotated" or something also) |
15:32 |
paramat |
small but unnecessary bloat |
15:32 |
VanessaE |
VERY necessary |
15:33 |
VanessaE |
you forget about servers I guess |
15:33 |
paramat |
yes i do probably |
15:33 |
paramat |
=) |
15:34 |
VanessaE |
I'd just code and submit a PR myself but there's too big of a tendency to ignore such things. :-/ |
15:34 |
|
crazyR_ joined #minetest-dev |
15:34 |
|
crazyR_ joined #minetest-dev |
15:34 |
paramat |
so what's the important need for this? since i can't think of one |
15:35 |
VanessaE |
any object that's composed of two or more nodes or which takes up more than one node space |
15:35 |
VanessaE |
and any object that should never be rotated to a non-upright position |
15:36 |
VanessaE |
homedecor has dozens of such nodes |
15:36 |
VanessaE |
including a king-size bed that takes four node spaces, and a plasma display that takes 6. |
15:39 |
VanessaE |
(to that end, I could perhaps see a need for no_rotate=2, which would mean the screwdriver should only be able to rotate that node around the Y axis) |
15:39 |
VanessaE |
yes the user can do silly stuff, but sometimes it's better to prevent totally useless stuff in the first place... |
15:40 |
paramat |
knowing that the screwdriver acts on single nodes, i would expect punishment using it on any of these. adding code to protect every idiot against the result of every silly action is unnecessary bloat hehe |
15:41 |
VanessaE |
the problem is nodes that are a single object that's bigger than 1^3 m |
15:42 |
VanessaE |
in that if you rotate one of these, the whole thing moves, but maybe you end up pointing part of it into a wall. |
15:42 |
VanessaE |
(worse of course is nodes like mt_game's doors since you can end up with half a door flipped upside down) |
15:42 |
VanessaE |
mesh nodes being the "single object" in this case. |
15:43 |
paramat |
the worst outcome is just having to rotate it back to normal, no big deal (and idiot learns) |
15:43 |
VanessaE |
no |
15:43 |
VanessaE |
the worst outcome is having some mod now be unable to remove the un-rotated parts because the rotated parts no longer correspond. |
15:44 |
VanessaE |
i.e. a mod checks the facedir of one part to figure out where the other part is |
15:45 |
VanessaE |
users fuck stuff up, server admins have to come around to un-fuck is my point. |
15:45 |
paramat |
aha |
15:47 |
|
kilbith joined #minetest-dev |
15:50 |
Zeno` |
what if there are 3 nodes? |
15:50 |
Zeno` |
like my bed? |
15:50 |
VanessaE |
exactly my point |
15:51 |
Zeno` |
the way it should be done is there is a "parent" and each of the "children" rotate relative to the parent (and if that can't happen the rotation doesn't happen at all) |
15:51 |
VanessaE |
rotate the "root" node, try to remove it, it'll end up removing part of a wall or something, because there's no way for the mod supplying the bed to know that the other node it deleted isn't part of the bed. |
15:51 |
Zeno` |
talking about "6d" is like looking into a mirror with a mirror |
15:51 |
VanessaE |
Zeno`: impossible to do, unfortunately. easier to just prevent rotation. |
15:52 |
Zeno` |
it's not impossible. Just difficult with the current framework |
15:52 |
Zeno` |
I mean where will it end? 9d, 12d, 15d? |
15:52 |
Zeno` |
it's just broken |
15:52 |
VanessaE |
heh |
15:53 |
Zeno` |
there is no such thing as 6d :/ |
15:53 |
VanessaE |
well string theorists would argue with that ;) |
15:53 |
Zeno` |
lol |
15:53 |
Zeno` |
fine :P |
15:56 |
paramat |
support for 6d rotation will be no slower, as i'll do 'if (param2 <= 3) [do existing code] else [do more complex 6d code]' and nodes with param2 >3 are usually rare in a schematics |
15:57 |
paramat |
btw hmmmm your membership of the minetest team is not public, it bothers my perfectionism when i go to the github page heh |
15:58 |
Zeno` |
Seriously... WTF IS 6D? |
15:58 |
Zeno` |
I makes no sense to add something that doesn't exist (yeah, yeah, string theorists) |
16:01 |
VanessaE |
Zeno`: the ability to rotate a node's main axis to face any of the 6 directions of a node, and to rotate around the axis it points at. |
16:02 |
VanessaE |
6 directions, 4 positions around the axis when facing that direction. |
16:04 |
VanessaE |
bbl |
16:04 |
Zeno` |
rubiks cube |
16:08 |
paramat |
so orientation used to be 0-3 only (y axis rotation) now it's 0-23 |
16:13 |
paramat |
hmmmmm to clarify the cloud radius issue, it's fine by me it not being another .conf setting, but somehow adjustable would be nice |
16:19 |
paramat |
intersting that clouds are clipped at 2kn distance, i'm wondering if it's a hardcoded irrlicht view limit |
16:21 |
kilbith |
https://cloud.githubusercontent.com/assets/7883281/7440877/f6dbf8b2-f0cd-11e4-8d9b-a3b1de0c4e7b.png |
16:21 |
kilbith |
^ like that |
16:24 |
paramat |
yeah |
16:24 |
paramat |
i seem to remember landscape will clip at 2 kn also, but not sure.. |
16:31 |
|
crazyR_ joined #minetest-dev |
16:31 |
|
crazyR_ joined #minetest-dev |
16:37 |
paramat |
anyway 2kn is certainly enough |
16:37 |
|
paramat left #minetest-dev |
16:40 |
|
Zuruck joined #minetest-dev |
17:37 |
|
Kopharex joined #minetest-dev |
18:11 |
|
cib0 joined #minetest-dev |
18:15 |
|
Wayward_Tab joined #minetest-dev |
18:16 |
|
leat2 joined #minetest-dev |
18:57 |
|
MinetestForFun joined #minetest-dev |
19:07 |
|
jin_xi joined #minetest-dev |
19:32 |
|
kaeza joined #minetest-dev |
19:35 |
celeron55 |
this isn't even real, the server is down again |
19:35 |
celeron55 |
don't get an OpenBSD VPS from edis.at; this absolutely sucks |
19:37 |
sfan5 |
celeron55: in case you're looking for an alternative, ramnode looks pretty good http://www.ramnode.com/vps.php |
19:38 |
celeron55 |
i used it once, but stopped because it's a US-based company |
19:48 |
sfan5 |
i haven't found a good non US-based vps company yet |
19:50 |
Calinou |
I'm at PulseHeberg, it's French but they have an English panel |
19:50 |
Calinou |
using it for my site and servers |
19:50 |
Calinou |
the Minetest server had 17 players once, no lag |
19:51 |
sfan5 |
is the vps in france? |
19:52 |
Calinou |
yes |
19:52 |
Calinou |
might not be too good now |
19:52 |
sfan5 |
aw |
19:56 |
sofar |
my openvz server starts at 15$ a year and has colo's in the us and nl, maybe that's something to consider? |
19:57 |
sofar |
even has ipv6 support... |
20:10 |
|
Amaz joined #minetest-dev |
20:11 |
sfan5 |
sofar: link? |
20:11 |
sofar |
https://www.ramnode.com/vps.php |
20:12 |
sfan5 |
oh |
20:12 |
sfan5 |
i thought you meant a non US-based company |
20:13 |
sofar |
I didn't ... |
20:13 |
sofar |
ah lol, you mentioned ramnode already, I totally read over that |
20:13 |
* sofar |
back to hacking crops |
20:22 |
sfan5 |
this looks pretty ok: https://iniz.com/kvmvps.html |
20:22 |
sfan5 |
based in UK |
20:23 |
Calinou |
limited bandwidth… |
20:23 |
sofar |
not allowed Minecraft |
20:23 |
Calinou |
the price is a jok |
20:23 |
Calinou |
+e |
20:23 |
Calinou |
in comparison to PulseHeberg which delivers very low prices |
20:24 |
Calinou |
“whats not allowed†and they can't even bother to spell properly |
20:24 |
sfan5 |
limited bandwidth? |
20:25 |
Calinou |
“Bandwidth: 500 GB†|
20:25 |
Calinou |
it's a lot but still limited |
20:25 |
Calinou |
2 50GB 512MB 1TB €10.81 /mo |
20:25 |
sfan5 |
yes the prices are high |
20:25 |
Calinou |
for a lower price on PulseHeberg you get 4 cores 200 GB storage, 4 GB RAM, unlimited(-ish) bandwidth |
20:26 |
sfan5 |
but there is not service that can offer truly unlimited bandwidth |
20:26 |
sfan5 |
no* |
20:26 |
Calinou |
the panel claims to limit me to 5 TB/month |
20:26 |
Calinou |
in practice the bar doesn't fill up at all |
20:26 |
|
leat2 joined #minetest-dev |
20:35 |
|
Kopharex joined #minetest-dev |
20:45 |
|
TheWild joined #minetest-dev |
21:10 |
|
ElectronLibre left #minetest-dev |
22:09 |
|
celeron55 joined #minetest-dev |
22:17 |
ShadowNinja |
I've had a good experience with Linode. I think they're USA-based though. Is there a big issue with that? |
22:33 |
|
Hijiri joined #minetest-dev |
23:12 |
|
Player_2 joined #minetest-dev |
23:20 |
hmmmm |
paramat: don't bother trying to add 6d rotation, it's much more complex than you probably think. your change sounds good though. |
23:21 |
hmmmm |
or rather I'm not completely sure to be honest... I honestly forget whether rotateAlongYAxis() is meant to handle 6d figures |
23:22 |
hmmmm |
it only modifies the bottom 2 bits, perhaps I assume that those bottom 2 bits are the same for Y axis rotation for all of the 24 facedirs |
23:26 |
hmmmm |
just make sure that it actually works for both FACEDIR and WALLMOUNTED |
23:31 |
|
celeron55 joined #minetest-dev |
23:42 |
|
celeron55 joined #minetest-dev |
23:47 |
|
Hijiri joined #minetest-dev |
23:55 |
sofar |
was 0.4.12 a bugfix on a 0.4.11 branch? |
23:58 |
|
celeron55 joined #minetest-dev |