Time Nick Message 00:23 Juri Oh nice, good stuff! 00:23 Juri With the latest master I now have around 45 fps in my texture test world where I had a bit over 30 usually 00:24 Juri I am pretty sure I haven't changed anything else except pulling latest commits 00:26 Juri The fps are so low there because I spawned in a lot of the homedecor cross brace windows with a huuuge texture on it 00:27 Juri I noticed that kills the fps after I got a complaint from a player saying his neighbors base kills his fps and I went to find out what it is 00:28 Desour do the brace windows have semi transparency? 00:29 Juri Yes, texture blending and it's a nodebox 00:29 Juri homedecor:window_quartered 00:30 Juri Get a high res texture pack, spawn 100 or so and watch your fps go from 140 to 30 xD 00:31 MTDiscord I assume in your orginal comment you mentioned 145, otherwise those numbers are good 00:32 Desour if you set the transparency sorting distance setting to 0, the lags are likely gone 00:33 Juri Ah no, my bad. Without the high-res windows I have 144 fps (capped), if I spawn them in it drops to ~30. With latest master I have around 45 fps now :) 00:34 Juri Desour: gonna try that tomorrow, ty 05:25 mtvisitor https://github.com/minetest/minetest/milestones 05:25 mtvisitor I have been playing on some minetest game server(s) online since minetest engine v5.6 in my spare time, but stopped this April. 05:25 mtvisitor v-rob(Vincent Robinson), red-001: for minetest engine v5.10 and future release, tbh, i would like to review your comment (and also requirements) if possible, so i could know which knowledge i need to learn on this way. 05:26 mtvisitor AncientMariner: it will be great if you could also add your kind comment on the latest version of minetest engine. 05:26 mtvisitor It is raining in my city today and now. 07:45 sfan5 fwiw transparency sorting could be more efficient if we could cache the result 07:46 sfan5 not due to cpu time but because of fewer gpu buffer uploads needed 10:19 Juri Hmm, on OpenSuse compiling the latest master fails, when make tries to build tiniergltf it reports the following errors 10:19 Juri minetest/lib/tiniergltf/tiniergltf.hpp:282:36: error: ‘String’ is not a member of ‘Json’ 10:19 Juri minetest/lib/tiniergltf/tiniergltf.hpp:282:48: error: template argument 1 is invalid 10:19 Juri minetest/lib/tiniergltf/tiniergltf.hpp:282:50: error: scalar object ‘map’ requires one element in initializer 10:21 Juri I have all the dependencies listed in compiling/linux.md installed 10:27 Juri Weirdly enough I can compile github.com/syoyo/tinygltf and the tester runs successfully 10:42 MTDiscord Juri: tiniergltf != tinygltf, tiniergltf is my tinygltf replacement. Can you tell me your compiler and version? 10:49 MTDiscord Also, what's your jsoncpp version? What happens when you try to compile with the bundled jsoncpp? 11:13 Juri luatic: I'm using gcc 7.5.0, cmake 3.20.4, make 4.2.1 and the latest libjsoncpp release (1.9.5) 11:13 Juri To me it looks like the bundled jsoncpp is 1.9.5 as well lol 11:13 Juri But running cmake with -DENABLE_SYSTEM_JSONCPP=OFF indeed makes it compile again, thank you. 11:26 MTDiscord Juri: Glad to hear that. Json::String should be present in the jsoncpp headers, I wonder whether this might be an issue with the openSUSE package. I tried diffing the headers from the openSUSE package against local ones but nothing sticks out. 11:27 MTDiscord Did you diff them against the bundled ones? 11:30 MTDiscord I've diffed against both, my config.h (which provides the using String = ...) and json.h (which includes config.h) is identical on Fedora 40. 11:32 MTDiscord The bundled ones are an amalgamation so there are many of additions from all the other headers vs. config.h (but notably no deletions). The section for config.h is identical. 11:35 sfan5 maybe you can disable json::String? thought that would be weird 11:43 MTDiscord Could it be that part of the code is conditionally compiled? 11:46 MTDiscord looked at the headers, i don't see something like that sticking out 13:06 Desour sfan5: #15113 13:06 ShadowBot https://github.com/minetest/minetest/issues/15113 -- Add support for Tracy profiler by Desour 13:06 Desour do you have an idea how I can properly link the library in irr/? 14:00 red-001 Desour: (same for the crypto lib. I saw your PR added 90k lines) 14:00 red-001 Desour you will be happy to hear I got adding vendored HACL* code down to just 27K 14:04 Desour 👀 a more than 2/3 reduction 14:47 red-001 could get it down to 21k but that would mean not including the AVX2 implementation for chacha20-poly1035 16:16 red-001 SFENCE: for that password in memory storage PR, did you consider allocating a memory page for it and change page protection settings to make it unreadable unless explicitly needed? 16:17 red-001 libsodium supports that as a feature, but it's also not too difficult to implement 16:17 red-001 at least for linux and windows 16:18 red-001 https://github.com/jedisct1/libsodium/blob/master/src/libsodium/sodium/utils.c#L467 16:18 red-001 I don't know if a PAGE_NOACCESS/PROT_NONE would show up in a memory dump 17:36 SFENCE red-001: Thanks for tip. I did not consider that. But it looks like interest to implement it was lost. See https://github.com/minetest/minetest/pull/14196#issuecomment-2033989000 17:38 SFENCE But for the situation, you can add this advice as comment in that PR> 17:38 red-001 I think the way you are pre-hashing the password won't work for your other PR anyways? 17:38 red-001 salt is meant to be globally unique for each Minetest account, both within a server and between servers 17:39 red-001 it's an absurdly long salt even for that use-case but if that wasn't the goal won't have needed any salt at all 17:39 SFENCE It is attemt to do it better. Now password is stored in SRP object memory until user is disconnected from the server. For the situation, reconnect request will be received. 17:40 SFENCE In this PR I only tryid to not keep password as clear text in memory. And keep only SRP instead of it. 17:40 SFENCE But still, in case of implementation. SRP can be stored in protected memory. It can only improve security. 17:41 red-001 SRP of it would be salted is what I'm getting at, if you attempt to connect to another server (e.g. if transfer_player is added) then you can't use that pre-hashed value without weakening another security feature 17:42 red-001 ah it's not actually x that you are calculating 17:43 SFENCE For that situation I am storring SHA256 or 512 created from user name and password. This hash can be used to reconnect and connect to another server in same way, how it is happening it you just enter username and password. 17:43 red-001 yeah I checked the code just now, the calling it "x" is a bit confusing 17:44 SFENCE It is a long time a coded it. So I do not remember why I choose this name. 17:44 red-001 since for SRP, x is generally the final hash value that's used to calculate the verifier v=g^x 17:45 SFENCE So, it is probably a reason why is it called x. 17:46 SFENCE I plan to open it on some core dev meeting after 5.9.1 and 5.9.2 releases will be done. 17:46 red-001 call it y or something /s 17:47 red-001 math people aren't good at naming things, hence why we get x, b, B, a, A, and I in SRP 17:47 SFENCE renaming it is not a problem. But for now, I have no motivation to work on it. It can be closed as unwanted. 17:48 SFENCE I am not original author of SRP file. 17:49 SFENCE I think that that file was taken somewhere, maybe generated somehow by something. 17:49 red-001 I know, I think e.s.t.3.1 ported that from another implementation 17:50 red-001 speaking of SRP, and implementations. Is the bignum library used for it constant time? 17:51 red-001 https://eprint.iacr.org/2021/553 17:54 red-001 I can't help but suspect mini-gmp was probably not written to be cryptographically sound when it comes to timing 17:55 SFENCE I don't know if all time. But only in it. 17:57 SFENCE I am not safety engeneer. I created #14196 in reaction of discusion under #14129, where people critists that it is uses password stored in std::string or similar type. 17:57 ShadowBot https://github.com/minetest/minetest/issues/14196 -- Change the way how password is stored in C++ engine. by sfence 17:57 ShadowBot https://github.com/minetest/minetest/issues/14129 -- Add transfer_player function to request client move to new server by sfence 17:58 SFENCE But still, lost of focus happens because of posibility of keylogging in case, someone have already access to process memory. 17:59 SFENCE If you have some experiences in this, feel free to share your opinions, links, arguments in PR. 18:00 SFENCE It can help us to move forward. 18:03 red-001 I'll take a look, I mostly brought it up since I've been reading some of the literature. So for the transfer_player function, just to confirm, that will not create a new account if one doesn't already exist on the other server? 18:07 MTDiscord No, it should not. 18:08 SFENCE If I remember well, it work as extended reconnect. 21:44 [MatrxMT] just wanted to say that ronoaldo's appimages are making my life for testing regressions way easier 22:01 [MatrxMT] did you ever figure out how to make the appimages yourself? 22:02 [MatrxMT] just curious 22:39 [MatrxMT] I'm not sure I understand what you mean? 22:40 [MatrxMT] (thread reply to mtvisitor) 23:36 red-001 Actually if net encryption didn't use TLS could use some PQC in the key exchange 23:36 red-001 probably not worth the overhead just to make sure someone 20-50 years in the future can't decrypt messages