Opened 12 years ago
Closed 12 years ago
#914 closed defect (fixed)
irc: reconnecting doesn’t cope with 433: nickname already in use
Reported by: | michael | Owned by: | felix winkelmann |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | unknown | Version: | 4.8.x |
Keywords: | irc | Cc: | |
Estimated difficulty: |
Description
I’m using the irc egg in version 1.9.5.
When reconnecting to an IRC server, the nickname might already be in use, but the irc egg doesn’t cope with that.
Here is an excerpt from my strace log:
17:10:55.379237 sendto(7, "USER nobody 0 * :nobody\r\n", 25, 0, NULL, 0) = 25 17:10:55.379322 sendto(7, "NICK g107\r\n", 11, 0, NULL, 0) = 11 17:10:55.379421 sendto(7, "JOIN #irc-test\r\n", 16, 0, NULL, 0) = 16 17:10:55.379468 recvfrom(7, 0x7fff459a4738, 1024, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) 17:10:55.379572 select(1024, [6 7 8 9], [], NULL, {60, 0}) = 1 (in [7], left {59, 961303}) 17:10:55.418484 recvfrom(7, ":ircd.twice-irc.de NOTICE AUTH :*** Looking up your hostname...\r\n:ircd.twice-irc.de NOTICE AUTH :*** Checking ident...\r\n", 1024, 0, NULL, NULL) = 120 17:10:55.418976 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 20001}, ...}) = 0 17:10:55.419202 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 20001}, ...}) = 0 17:10:55.419391 select(1024, [6 8 9], [], NULL, {0, 0}) = 0 (Timeout) 17:10:55.419904 recvfrom(7, 0x7f622b965e08, 1024, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) 17:10:55.419979 select(1024, [6 7 8 9], [], NULL, {60, 0}) = 1 (in [7], left {59, 968384}) 17:10:55.451824 recvfrom(7, ":ircd.twice-irc.de NOTICE AUTH :*** Found your hostname\r\n", 1024, 0, NULL, NULL) = 57 17:10:55.452089 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 20001}, ...}) = 0 17:10:55.452318 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 20001}, ...}) = 0 17:10:55.452545 select(1024, [6 8 9], [], NULL, {0, 0}) = 0 (Timeout) 17:10:55.452979 recvfrom(7, 0x7f622b965e08, 1024, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) 17:10:55.453048 select(1024, [6 7 8 9], [], NULL, {60, 0}) = 1 (in [7], left {59, 931924}) 17:10:55.521367 recvfrom(7, ":ircd.twice-irc.de NOTICE AUTH :*** Received identd response\r\n", 1024, 0, NULL, NULL) = 62 17:10:55.521728 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 20001}, ...}) = 0 17:10:55.521875 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 20001}, ...}) = 0 17:10:55.521985 select(1024, [6 8 9], [], NULL, {0, 0}) = 0 (Timeout) 17:10:55.522348 recvfrom(7, 0x7f622b965e08, 1024, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) 17:10:55.522520 select(1024, [6 7 8 9], [], NULL, {60, 0}) = 1 (in [7], left {59, 967937}) 17:10:55.554816 recvfrom(7, ":ircd.twice-irc.de 433 * g107 :Nickname is already in use.\r\n:ircd.twice-irc.de 451 JOIN :You have not registered\r\n", 1024, 0, NULL, NULL) = 114 17:10:55.555234 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 20001}, ...}) = 0 17:10:55.555438 getrusage(RUSAGE_SELF, {ru_utime={0, 172010}, ru_stime={0, 24001}, ...}) = 0 17:10:55.555657 select(1024, [6 8 9], [], NULL, {0, 0}) = 0 (Timeout) 17:10:55.556246 recvfrom(7, 0x7f622b965e08, 1024, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) 17:10:55.556408 select(1024, [6 7 8 9], [], NULL, {60, 0}) = 1 (in [7], left {24, 64165}) 17:11:31.492510 recvfrom(7, "ERROR :Closing Link: [188.111.72.14] (Ping timeout)\r\n", 1024, 0, NULL, NULL) = 53
Attachments (1)
Change History (4)
comment:1 Changed 12 years ago by
Milestone: | 4.8.0 |
---|
Changed 12 years ago by
Attachment: | 914_fix.patch added |
---|
comment:2 Changed 12 years ago by
Owner: | set to felix winkelmann |
---|---|
Status: | new → assigned |
The attached patch fixes this problem. The source contained a silly typo...
comment:3 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Note: See
TracTickets for help on using
tickets.
patch to correctly detect error codes from ircd