stale nickname ; contains illegal characters, connection reset

Bug #327213 reported by tdflanders
4
Affects Status Importance Assigned to Milestone
irssi (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

thomas@thomas-laptop:~$ lsb_release -rd ; uname -a ; apt-cache policy linux irssi gnome-terminal
Description: Ubuntu 8.10
Release: 8.10
Linux thomas-laptop 2.6.27-11-generic #1 SMP Thu Jan 29 19:24:39 UTC 2009 i686 GNU/Linux
linux:
  Installed: 2.6.27.11.14
  Candidate: 2.6.27.11.14
  Version table:
 *** 2.6.27.11.14 0
        500 http://gb.archive.ubuntu.com intrepid-updates/restricted Packages
        500 http://gb.archive.ubuntu.com intrepid-security/restricted Packages
        100 /var/lib/dpkg/status
     2.6.27.7.11 0
        500 http://gb.archive.ubuntu.com intrepid/restricted Packages
irssi:
  Installed: 0.8.12-4ubuntu2
  Candidate: 0.8.12-4ubuntu2
  Version table:
 *** 0.8.12-4ubuntu2 0
        500 http://gb.archive.ubuntu.com intrepid/main Packages
        100 /var/lib/dpkg/status
gnome-terminal:
  Installed: 2.24.1.1-0ubuntu1
  Candidate: 2.24.1.1-0ubuntu1
  Version table:
 *** 2.24.1.1-0ubuntu1 0
        500 http://gb.archive.ubuntu.com intrepid-updates/main Packages
        100 /var/lib/dpkg/status
     2.24.1-0ubuntu1 0
        500 http://gb.archive.ubuntu.com intrepid/main Packages
thomas@thomas-laptop:~$

Revision history for this message
tdflanders (thomasdelbeke) wrote :

Hi there,

The problem is:

Everything went fine until I tried to change my nickname.

Now my altered nickname is stuck in the cache and I can no longer connect to the server.

I get this error:

15:42 -!- Irssi: Looking up irc.deoxy.org
15:42 -!- Irssi: Connecting to irc.deoxy.org [70.85.129.195] port 6667
15:42 -!- Irssi: Connection to irc.deoxy.org established
15:42 !deoxy.org *** Looking up your hostname...
15:42 !deoxy.org *** Found your hostname (cached)
15:42 -!- Irssi: Connection lost to irc.deoxy.org
15:42 -!- Erroneous Nickname: Illegal characters
15:43 -!- Irssi: Looking up irc.deoxy.org
15:43 -!- Irssi: Connecting to irc.deoxy.org [70.85.129.195] port 6667
15:43 -!- Irssi: Connection to irc.deoxy.org established
15:43 !deoxy.org *** Looking up your hostname...
15:43 !deoxy.org *** Found your hostname (cached)
15:43 -!- Irssi: Connection lost to irc.deoxy.org
15:43 -!- Erroneous Nickname: Illegal characters
15:43 -!- Irssi: Not connected to server

 [15:43] [] [1]
[(status)]

after these commands:
$ irssi

In application:
[(status)] /server irc.deoxy.org
[(status)] /connect irc.deoxy.org
[(status)] /join thomasdelbeke

Chatzilla works just fine in the mean time.

Note that the man page and --help instructions need to be updated. These instructions just do not work:

thomas@thomas-laptop:~$ irssi --help
Usage: irssi [OPTION...]
  --config=PATH Configuration file location (~/.irssi/config)
  --home=PATH Irssi home dir location (~/.irssi)
  -c, --connect=SERVER Automatically connect to server/network
  -w, --password=PASSWORD Autoconnect password
  -p, --port=PORT Autoconnect port
  -!, --noconnect Disable autoconnecting
  -n, --nick=ARG Specify nick to use
  -h, --hostname=ARG Specify host name to use
  -d, --dummy Use the dummy terminal mode
  -v, --version Display irssi version

Help options
  -?, --help Show this help message
  --usage Display brief usage message
thomas@thomas-laptop:~$

thomas@thomas-laptop:~$ G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log irssi
thomas@thomas-laptop:~$

Revision history for this message
tdflanders (thomasdelbeke) wrote :

This is the very command (copied from irssi --help), that rendered the application inoperable:

thomas@thomas-laptop:~$ irssi -n --nick=thomasdelbeke

The rest does not work either though.

Inside the application, /help lists a whole lot of commands that DO work.

I attach gdb, valgrind and strace, but I seem to mis debug syms. Please tell me which ones, so I can do a backtrace. This is easily reproducible.

(strace just hangs)

Revision history for this message
tdflanders (thomasdelbeke) wrote :
Download full text (7.6 KiB)

thomas@thomas-laptop:~$ gdb irssi 2>&1 | tee gdb-irssi.txtGNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) handle SIG33 pass nostop noprint
Signal Stop Print Pass to program Description
SIG33 No No Yes Real-time event 33
(gdb) set pagination 0
(gdb) set logging file gdb-irssi.txt
(gdb) set logging on
Copying output to gdb-irssi.txt.
(gdb) run
Starting program: /usr/bin/irssi
[Thread debugging using libthread_db enabled]
[New Thread 0xb79306b0 (LWP 12495)]

Program received signal SIGTSTP, Stopped (user).
[Switching to Thread 0xb79306b0 (LWP 12495)]
0xb7f46430 in __kernel_vsyscall ()
(gdb) backtrace full
#0 0xb7f46430 in __kernel_vsyscall ()
No symbol table info available.
#1 0xb799dbb6 in kill () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2 0x0806bc32 in term_stop () at term-terminfo.c:551
No locals.
#3 0x080e3f2d in signal_emit_real (rec=0x9ad7728, params=<value optimized out>, va=0x14 <Address 0x14 out of bounds>, first_hook=0x9ad7748) at signals.c:242
 arglist = {0x0, 0x0, 0x9ad76c0, 0x0, 0x0, 0x0}
 prev_emitted_signal = (Signal *) 0x9ad9498
 hook = (SignalHook *) 0x30cf
 prev_emitted_hook = (SignalHook *) 0x9ad9050
 i = <value optimized out>
 stopped = <value optimized out>
 stop_emit_count = 0
 continue_emit_count = 0
 __PRETTY_FUNCTION__ = "signal_emit_real"
#4 0x080e44fc in signal_emit (signal=0x9b054f0 "key stop_irc", params=3) at signals.c:286
 rec = <value optimized out>
 signal_id = <value optimized out>
 __PRETTY_FUNCTION__ = "signal_emit"
#5 0x0809b122 in key_pressed (keyboard=0x9ad1650, key=0xbfa45144 "^Z") at keyboard.c:536
 combo = <value optimized out>
 consumed = <value optimized out>
 __PRETTY_FUNCTION__ = "key_pressed"
#6 0x0805fab1 in sig_gui_key_pressed (keyp=0x1a) at gui-readline.c:515
 now = {tv_sec = 1234204833, tv_usec = 951477}
 str = "^Z\000\000\000\000\000\000\204Q��\000\000\000\000@Ѭ�"
 ret = <value optimized out>
 diff = <value optimized out>
#7 0x080e3f2d in signal_emit_real (rec=0x9ad9498, params=<value optimized out>, va=0x14 <Address 0x14 out of bounds>, first_hook=0x9ad9050) at signals.c:242
 arglist = {0x1a, 0x0, 0x0, 0x0, 0x0, 0x0}
 prev_emitted_signal = (Signal *) 0x0
 hook = (SignalHook *) 0x9ad9050
 prev_emitted_hook = (SignalHook *) 0x0
 i = <value optimized out>
 stopped = <value optimized out>
 stop_emit_count = 0
 continue_emit_count = 0
 __PRETTY_FUNCTION__ = "signal_emit_real"
#8 0x080e44fc in signal_emit (signal=0x80f5e83 "gui key pressed", params=1) at signals.c:286
 rec = <value optimized out>
 signal_id = <value optimized out>
 __PRETTY_FUNCTION__ = "signal_emit"
#9 0x0806225e in sig_input () at gui-readline.c:746
 buffer = {26, 91, 67, 0, 23, 80, 3215217280, 5, 3215217232, 3081551860, 3215217400, 3080986851, 3081551860, 3215217564, 3080715217, 3, 3081437013, 3215217400, 3081762600, 799298168, 134665469, 72, 3081553088, 32...

Read more...

Revision history for this message
tdflanders (thomasdelbeke) wrote :

New valgrind:
thomas@thomas-laptop:~$ G_SLICE=always-malloc G_DEBUG=gc-friendly valgrind -v --tool=memcheck --leak-check=full --num-callers=40 --log-file=valgrind.log irssi
thomas@thomas-laptop:~$

Revision history for this message
C. Cooke (ccooke) wrote :

Hi, thanks for taking the time to open a bug report.

You said the help instructions didn't work - does that mean you tried 'irssi -n thomas' (or some other name that only uses alphanumerics)?

Changed in irssi:
status: New → Incomplete
Revision history for this message
C. Cooke (ccooke) wrote :

Ah, I may see.

The options in the help are giving two possible ways to set the name: "-n <name>" or "--name=<name>". If you use both, it may not work correctly.

Revision history for this message
tdflanders (thomasdelbeke) wrote :

Correct,

this solved it:

irssi -n thomasdelbeke
/quit

Now it is out of the cache. I can again just run irssi. Also irssi --nick=thomasdelbeke and later irssi gives no problems. So we can close this one down.

It still should not stay in the cache I think. Also the alphanumeric warning is flawed. I just did irssi -n --nick=<name>. Wishlist?

BTW, both gdb and valgrind give a memory leak (see attachment) after installing some <package>-dbgsym's.

Cheers,

Thomas

Revision history for this message
tdflanders (thomasdelbeke) wrote :

Oops,

A little too soon here:

A watched in Chatzilla. My name got displayed as: thomasde1beke instead of thomasdelbeke. So that is a number one (1) instead of a letter "l", lima. I am sure it is not a typo.

I can reproduce it each way:
irssi
/server irc.deoxy.org
/join #thomasdelbeke
<OR>
irssi -n thomasdelbeke
/server irc.deoxy.org
/join #thomasdelbeke
<OR>
irssi --nick=thomasdelbeke
/server irc.deoxy.org
/join #thomasdelbeke
<OR>

However, when I open:
firefox > Tools > Chatzilla
and then enter:
/server irc.deoxy.org
/join #thomasdelbeke

I can log in correctly. Somehow there is an automated substitution of the letter l by a number 1. I can do another backtrace if you want, if this is hardware specific.

Revision history for this message
tdflanders (thomasdelbeke) wrote :
Download full text (7.8 KiB)

thomas@thomas-laptop:~$ date ; hwinfo > hw_log
Mon Feb 9 21:52:31 GMT 2009
thomas@thomas-laptop:~$

Again,

when doing irssi -n l I cannot trigger a crash, but in Chatzilla I see nickname L instead of l. When doing irssi -n thomasdelbeke, I do get a crash:

thomas@thomas-laptop:~$ gdb irssi 2>&1 | tee gdb-irssi.txt
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) handle SIG33 pass nostop noprint
Signal Stop Print Pass to program Description
SIG33 No No Yes Real-time event 33
(gdb) set pagination 0
(gdb) run -n thomasdelbeke
Starting program: /usr/bin/irssi -n thomasdelbeke
[Thread debugging using libthread_db enabled]
[New Thread 0xb79d26b0 (LWP 21942)]

Program received signal SIGTSTP, Stopped (user).
[Switching to Thread 0xb79d26b0 (LWP 21942)]
0xb7fe8430 in __kernel_vsyscall ()
(gdb) backtrace full
#0 0xb7fe8430 in __kernel_vsyscall ()
No symbol table info available.
#1 0xb7a3fbb6 in kill () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2 0x0806bc32 in term_stop () at term-terminfo.c:551
No locals.
#3 0x080e3f2d in signal_emit_real (rec=0x9e2e738, params=<value optimized out>, va=0x14 <Address 0x14 out of bounds>, first_hook=0x9e2e758) at signals.c:242
 arglist = {0x0, 0x0, 0x9e2e6d0, 0x0, 0x0, 0x0}
 prev_emitted_signal = (Signal *) 0x9e304e0
 hook = (SignalHook *) 0x55b6
 prev_emitted_hook = (SignalHook *) 0x9e30380
 i = <value optimized out>
 stopped = <value optimized out>
 stop_emit_count = 0
 continue_emit_count = 0
 __PRETTY_FUNCTION__ = "signal_emit_real"
#4 0x080e44fc in signal_emit (signal=0x9e7d328 "key stop_irc", params=3) at signals.c:286
 rec = <value optimized out>
 signal_id = <value optimized out>
 __PRETTY_FUNCTION__ = "signal_emit"
#5 0x0809b122 in key_pressed (keyboard=0x9e26d30, key=0xbfbe9ac4 "^Z") at keyboard.c:536
 combo = <value optimized out>
 consumed = <value optimized out>
 __PRETTY_FUNCTION__ = "key_pressed"
#6 0x0805fab1 in sig_gui_key_pressed (keyp=0x1a) at gui-readline.c:515
 now = {tv_sec = 1234216817, tv_usec = 887851}
 str = "^Z\000�\000\002\000\000$\233���\232�� \"�\t"
 ret = <value optimized out>
 diff = <value optimized out>
#7 0x080e3f2d in signal_emit_real (rec=0x9e304e0, params=<value optimized out>, va=0x14 <Address 0x14 out of bounds>, first_hook=0x9e30380) at signals.c:242
 arglist = {0x1a, 0x0, 0x0, 0x0, 0x0, 0x0}
 prev_emitted_signal = (Signal *) 0x0
 hook = (SignalHook *) 0x9e30380
 prev_emitted_hook = (SignalHook *) 0x0
 i = <value optimized out>
 stopped = <value optimized out>
 stop_emit_count = 0
 continue_emit_count = 0
 __PRETTY_FUNCTION__ = "signal_emit_real"
#8 0x080e44fc in signal_emit (signal=0x80f5e83 "gui key pressed", params=1) at signals.c:286
 rec = <value optimized out>
 signal_id = <value optimized out>
 __PRETTY_FUNCTION__ = "signal_emit"
#9 0x0806225e in sig_input () at gui-readline.c:746
 buffer = {26, 166...

Read more...

Revision history for this message
Rhonda D'Vine (rhonda) wrote : Re: [Bug 327213] Re: stale nickname ; contains illegal characters, connection reset

* tdflanders <email address hidden> [2009-02-09 22:27:09 CET]:
> It still should not stay in the cache I think. Also the alphanumeric
> warning is flawed. I just did irssi -n --nick=<name>. Wishlist?

 Erm, that's a wrong usage, that would try to set the nickname to
--nick=<name> which is obviously not alphanumeric and not allowed by IRC
servers.

 Hope that helps. :)
Rhonda

Revision history for this message
xteejx (xteejx-deactivatedaccount) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering if this is still an issue for you. Can you try with the latest Ubuntu release? Thanks in advance.

Revision history for this message
xteejx (xteejx-deactivatedaccount) wrote :

We are closing this bug report because it lacks the information we need to investigate the problem, as described in the previous comments. Please reopen it if you can give us the missing information, and don't hesitate to submit bug reports in the future. To reopen the bug report you can click on the current status, under the Status column, and change the Status back to "New". Thanks again!

Changed in irssi (Ubuntu):
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.