ryzom / ryzomcore

Ryzom Core is the open-source project related to the Ryzom game. This community repository is synchronized with the Ryzom Forge repository, based on the Core branch.
https://wiki.ryzom.dev
GNU Affero General Public License v3.0
330 stars 89 forks source link

Client crashes when another client tries to log into the same account #685

Closed planetmaker closed 9 months ago

planetmaker commented 9 months ago

When I connect with a client to Atys, and accidentially log into the same account with another client, the client started first crashes. This is 100% reproducable (system Linux amd64, Fedora 39). I expect the 2nd client to refuse logging in, to complain that I am already logged in, to keep the 1st client logged in, and not crash the first client.

(gdb) continue Continuing. bit out of range 0 - FD_SETSIZE on fd_set : terminated

Thread 1 "ryzom_client" received signal SIGABRT, Aborted. __pthread_kill_implementation (threadid=, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 Downloading source file /usr/src/debug/glibc-2.38-6.fc39.x86_64/nptl/pthread_kill.c 44 return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;
(gdb) bt

0 __pthread_kill_implementation (threadid=, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44

1 0x00007fcfe64028a3 in __pthread_kill_internal (signo=6, threadid=) at pthread_kill.c:78

2 0x00007fcfe63b08ee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26

3 0x00007fcfe63988ff in __GI_abort () at abort.c:79

4 0x00007fcfe63997d0 in __libc_message (fmt=fmt@entry=0x7fcfe6516309 " %s : terminated\n") at ../sysdeps/posix/libc_fatal.c:150

5 0x00007fcfe6495cd9 in __GI___fortify_fail (msg=msg@entry=0x7fcfe651b428 "bit out of range 0 - FD_SETSIZE on fd_set")

at fortify_fail.c:24

6 0x00007fcfe64957d5 in __GI___fdelt_chk (d=) at fdelt_chk.c:26

7 0x0000000001076de8 in NLNET::CSock::dataAvailable() ()

8 0x00000000010af286 in NLNET::CUdpSimSock::dataAvailable() ()

9 0x0000000000ad8484 in CNetworkConnection::stateConnected() ()

10 0x0000000000ad8948 in CNetworkConnection::update() ()

11 0x0000000000c12b17 in CNetManager::update() ()

12 0x0000000000b208ff in globalMenu() ()

13 0x0000000000b244bd in connection(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::cxx11::basic_string<char, std::char_traits, std::allocator > const&) ()

14 0x000000000098922c in main ()

nimetu commented 9 months ago

Thanks,

I believe this is fixed in core4 branch already (0b0df0f43)

atys branch lags behind atm and atys-core-merge branch addresses that hopefully.