Re: Multiuser gnunet - Peer identity mismatch - New NixOS module/package

"Schanzenbach, Martin" <[email protected]> Mon, 28 Aug 2023 15:48:27 +0200
Newsgroups gmane.network.gnunet.general
Message-ID <[email protected]>
Hi,

IIRC file-sharing does not work in a multi-user setup yet.
The code is probably not written with that in mind.

Best
Martin

On 28.08.23 14:39, [email protected] wrote:
> Hey, I'm fixing the package and module for NixOS for proper multiuser support.
> While testing it I've had issues where I can't use the fs subsystem for example.
> 
> I asked for some help on the #gnunet-dev:matrix.org (conversation: https://matrix.to/#/!IjaAfLiruzjxFFzKAV:matrix.org/$KMuufGy4RH8gvigN6G6Kv1M8V0Xw4pW7-VNTvsxqB4w?via=matrix.org&via=dodsorf.as&via=tchncs.de)
> 
> And I'll sum up the information from there:
> 
> 
> ```
> 2023-07-13T22:42:08.433075+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_dht'
> 2023-07-13T22:42:08.433655+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_setu_test'
> 2023-07-13T22:42:08.433799+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_regex'
> 2023-07-13T22:42:08.433909+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_fs'
> 2023-07-13T22:42:08.434001+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_consensus'
> 2023-07-13T22:42:08.434101+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_seti_test'
> 2023-07-13T22:42:08.434247+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_test'
> 2023-07-13T22:42:08.434464+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_gns'
> 2023-07-13T22:42:08.434562+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_dns'
> 2023-07-13T22:42:08.434650+0200 fs-942729 DEBUG Loading block plugin `libgnunet_plugin_block_set_test'
> 2023-07-13T22:42:08.434694+0200 fs-942729 DEBUG Scheduling gathering task (queue size: 0)
> 2023-07-13T22:42:08.434753+0200 fs-942729 DEBUG I am peer A9G0
> 2023-07-13T22:42:08.434772+0200 fs-942729 DEBUG Initializing cadet FS server with a limit of 128 connections
> 2023-07-13T22:42:08.434791+0200 fs-942729 DEBUG Listening to CADET port X6ZCYXAE
> 2023-07-13T22:42:08.435511+0200 fs-942729 ERROR Peer identity mismatch, refusing to start!
> 2023-07-13T22:42:08.435535+0200 fs-942729 DEBUG Connected to peer PWPD
> 2023-07-13T22:42:08.435839+0200 fs-942729 DEBUG Cleaning all up
> 2023-07-13T22:42:08.436142+0200 fs-942729 DEBUG Cleaning all up
> 
> ```
> 
> We thought this could be a configuration error, but this is my configuration:
> 
> System:
> ```
> [PATHS]
> GNUNET_DATA_HOME=/var/lib/gnunet/data
> GNUNET_HOME=/var/lib/gnunet
> GNUNET_RUNTIME_DIR=/run/gnunet
> GNUNET_USER_RUNTIME_DIR=/run/gnunet
> SUID_BINARY_PATH=/run/wrappers/bin
> 
> [arm]
> START_SYSTEM_SERVICES=YES
> START_USER_SERVICES=NO
> 
> [ats]
> WAN_QUOTA_IN=unlimited
> WAN_QUOTA_OUT=unlimited
> 
> [dns]
> BINARY=/run/wrappers/bin/gnunet-service-dns
> 
> [hostlist]
> OPTIONS=-b -e
> SERVERS=http://v15.gnunet.org/hostlist https://gnunet.io/hostlist
> 
> [transport-udp]
> PORT=2086
> ```
> 
> User:
> ```
> [arm]
> START_SYSTEM_SERVICES = NO
> START_USER_SERVICES = YES
> 
> [PATHS]
> GNUNET_USER_RUNTIME_DIR = /run/user/1001/gnunet
> GNUNET_RUNTIME_DIR = /run/gnunet
> ```
> 
> the package in question is built like this: https://github.com/dali99/nixpkgs/blob/f3f957898abb08f03e6440c5971fd7bdefb4e426/pkgs/applications/networking/p2p/gnunet/default.nix
> 
> There are some suspicious things in there like
> ```
> find . \( -name \*.c -or -name \*.conf \) | \
>        xargs sed -ie 's|\<localhost\>|127.0.0.1|g'
> ```
> 
> We also applied a patch for getting more debug
> ```
> GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
>                  "Peer identity mismatch, refusing to start! Core delivered %s.\n",
>                  GNUNET_i2s (my_identity));
> ```
> 
> which led to
> 
> `Peer identity mismatch, refusing to start! Core delivered PWPD.`
> 
> I have also managed to reproduce the issue on a fresh computer:
> 
> ```
> 2023-07-20T00:21:31.607399+0200 fs-436221 DEBUG I am peer MTVW
> 2023-07-20T00:21:31.607430+0200 fs-436221 DEBUG Initializing cadet FS server with a limit of 128 connections
> 2023-07-20T00:21:31.607462+0200 fs-436221 DEBUG Listening to CADET port X6ZCYXAE
> 2023-07-20T00:21:31.607864+0200 fs-436221 ERROR Peer identity mismatch, refusing to start! Core delivered CB8Y.
> 2023-07-20T00:21:31.607897+0200 fs-436221 DEBUG Connected to peer CB8Y
> ```
> 
> 
> Now for new information:
> 
> Running `gnunet-peerinfo -s` as my user gives `I am peer `PWPDYS6QHJKBXGP7QA1R36DQ53G0W1FHQA5EJHGMM0KYDWQZKD8G'. This looks it matches the "core delivered PWPD" part.
> 
> Where A9G0 comes from is a real question.
> 
> If I could get any pointers on what or how to debug this I would be grateful, and we could merge some much needed improvements to the NixOS package.
>