Opened 9 years ago

#10147 new defect

SIGFPE/SIGSEGV on SILC reconnect

Reported by: kardan Owned by: elb
Milestone: Component: SILC
Version: 2.6.1 Keywords:
Cc:

Description

Hey pidgin developers,

this is what I did:

  • pidgin -n
  • deactivate all accounts
  • set status: online
  • connect 1st and 2nd silc account
  • deactivate one silc account
  • reconnect it

debug

(07:17:19) account: Disconnecting account 0x1449890
(07:17:19) connection: Disconnecting connection 0x1752cf0
(07:17:19) connection: Deactivating keepalive.
(07:17:20) GLib: g_source_remove: assertion `tag > 0' failed
(07:17:20) connection: Destroying connection 0x1752cf0
dns[17885]: nobody needs me... =(
(07:17:30) account: Connecting to account xx@silc.xx.net.
(07:17:30) connection: Connecting. gc = 0x1ac16c0
(07:17:30) dns: DNS query for 'silc.xx.net' queued
(07:17:30) dns: Wait for DNS child 17885 failed: No child processes
(07:17:30) dns: Created new DNS child 17890, there are now 1 children.
(07:17:30) dns: Successfully sent DNS request to child 17890
(07:17:30) dns: Got response for 'silc.riseup.net'
(07:17:30) dnsquery: IP resolved for silc.xx.net
(07:17:30) proxy: Attempting connection to 204.13.164.
(07:17:30) proxy: Connecting to silc.xx.net:706 with no proxy
(07:17:30) proxy: Connection in progress
(07:17:30) proxy: Connecting to silc.xx.net:706.
(07:17:30) proxy: Connected to silc.xx.net:706.
(07:17:32) connection: Activating keepalive.
(07:17:42) account: Disconnecting account 0x1449890
(07:17:42) connection: Disconnecting connection 0x1ac16c0
(07:17:42) connection: Deactivating keepalive.
(07:17:43) GLib: g_source_remove: assertion `tag > 0' failed
(07:17:43) connection: Destroying connection 0x1ac16c0
(07:17:49) account: Connecting to account me@silc.xx.net.
(07:17:49) connection: Connecting. gc = 0x177e390
(07:17:49) dns: DNS query for 'silc.xx.net' queued
(07:17:49) dns: Successfully sent DNS request to child 17890
(07:17:49) dns: Got response for 'silc.xx.net'
(07:17:49) dnsquery: IP resolved for silc.xx.net
(07:17:49) proxy: Attempting connection to 204.13.164.
(07:17:49) proxy: Connecting to silc.xx.net:706 with no proxy
(07:17:49) proxy: Connection in progress
(07:17:49) proxy: Connecting to silc.xx.net:706.
(07:17:49) proxy: Connected to silc.xx.net:706.
(07:17:51) connection: Activating keepalive.
(07:18:00) account: Disconnecting account 0x1449890
(07:18:00) connection: Disconnecting connection 0x177e390
(07:18:00) connection: Deactivating keepalive.
(07:18:01) GLib: g_source_remove: assertion `tag > 0' failed
(07:18:01) connection: Destroying connection 0x177e390
(07:18:02) account: Connecting to account me@silc.xx.net.
(07:18:02) connection: Connecting. gc = 0x1ac1640
(07:18:02) dns: DNS query for 'silc.xx.net' queued
(07:18:02) dns: Successfully sent DNS request to child 17890
(07:18:02) dns: Got response for 'silc.xx.net'
(07:18:02) dnsquery: IP resolved for silc.xx.net
(07:18:02) proxy: Attempting connection to 204.13.164.
(07:18:02) proxy: Connecting to silc.xx.net:706 with no proxy
(07:18:02) proxy: Connection in progress
(07:18:02) proxy: Connecting to silc.xx.net:706.
(07:18:02) proxy: Connected to silc.xx.net:706.
(07:18:04) connection: Activating keepalive.
(07:18:08) account: Connecting to account me@silc.yy.net.
(07:18:08) connection: Connecting. gc = 0x246dc70
(07:18:08) dns: DNS query for 'silc.yy.net' queued
(07:18:08) dns: Successfully sent DNS request to child 17890
(07:18:08) dns: Got response for 'silc.yy.net'
(07:18:08) dnsquery: IP resolved for silc.yy.net
(07:18:08) proxy: Attempting connection to 83.223.73.
(07:18:08) proxy: Connecting to silc.so36.net:706 with no proxy
(07:18:08) proxy: Connection in progress
(07:18:08) proxy: Connecting to silc.so36.net:706.
(07:18:08) proxy: Connected to silc.so36.net:706.
(07:18:09) connection: Activating keepalive.
(07:18:11) dbus: Need to register an object with the dbus subsystem. (If you are not a developer, please ignore this message.)
(07:18:11) dbus: The signal "conversation-displayed" caused some dbus error. (If you are not a developer, please ignore this message.)
(07:18:17) account: Disconnecting account 0x144afc0
(07:18:17) connection: Disconnecting connection 0x246dc70
(07:18:17) connection: Deactivating keepalive.
(07:18:18) GLib: g_source_remove: assertion `tag > 0' failed
(07:18:18) connection: Destroying connection 0x246dc70
(07:18:19) account: Connecting to account me@silc.yy.net.
(07:18:19) connection: Connecting. gc = 0x1e4bb00
(07:18:19) dns: DNS query for 'silc.yy.net' queued
(07:18:19) dns: Successfully sent DNS request to child 17890
(07:18:19) dns: Got response for 'silc.yy.net'
(07:18:19) dnsquery: IP resolved for silc.yy.net
(07:18:19) proxy: Attempting connection to 83.223.73.
(07:18:19) proxy: Connecting to silc.so36.net:706 with no proxy
(07:18:19) proxy: Connection in progress
(07:18:19) proxy: Connecting to silc.yy.net:706.
(07:18:19) proxy: Connected to silc.yy.net:706.
(07:18:20) connection: Activating keepalive.
dns[17890]: Oops, father has gone, wait for me, wait...!
Floating point exception

backtrace

Reading symbols from /usr/local/bin/pidgin...done.
(gdb) 
(gdb) handle SIGPIPE nostop noprint
Signal        Stop	Print	Pass to program	Description
SIGPIPE       No	No	Yes		Broken pipe
(gdb) run
Starting program: /usr/local/bin/pidgin 
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffdde5c950 (LWP 18394)]
[Thread 0x7fffdde5c950 (LWP 18394) exited]
[New Thread 0x7fffdde5c950 (LWP 18398)]
[Thread 0x7fffdde5c950 (LWP 18398) exited]
[New Thread 0x7fffdde5c950 (LWP 18402)]
[Thread 0x7fffdde5c950 (LWP 18402) exited]

Program received signal SIGFPE, Arithmetic exception.
0x00007fffe9279a1a in silc_packet_read_process (stream=0xb97400) at silcpacket.c:2227
2227	silcpacket.c: No such file or directory.
	in silcpacket.c
#0  0x00007fffe9279a1a in silc_packet_read_process (stream=0xb97400) at silcpacket.c:2227
        inbuf = 0x13304a0
        cipher = 0xb97c90
        hmac = 0xb21130
        packet = 0xb97400
        sid = <value optimized out>
        flags = 0 '\0'
        type = 0 '\0'
        packetlen = <value optimized out>
        paddedlen = 0
        mac_len = 0
        block_len = 0
        ivlen = 0
        psnlen = 0
        tmp = "\0\0\0\0\0\0\0\0PR\271\0\0\0\0"
        header = 0x7fffffffbd20 ""
        iv = "\0\0\0\0\0\0\0\0\16l)\351\377\177\0"
        packet_seq = 0x0
        normal = 1 '\1'
        __FUNCTION__ = "silc_packet_read_process"
#1  0x00007fffe927b85a in silc_packet_stream_io (stream=<value optimized out>, status=<value optimized out>, context=<value optimized out>) at silcpacket.c:436
        remote = 0x5f
        ps = 0xb97400
        __FUNCTION__ = "silc_packet_stream_io"
#2  0x00007fffe928fb32 in silc_socket_stream_io (schedule=<value optimized out>, app_context=<value optimized out>, type=<value optimized out>, fd=0, context=0x7fffffffbd10)
    at silcunixsocketstream.c:36
        stream = 0x7fffffffbd10
#3  0x00007fffe9287ace in silc_schedule_dispatch_fd (schedule=0xb6fef0) at silcschedule.c:61
        task = 0xb95be0
#4  0x00007fffe92894bb in silc_schedule_iterate (schedule=0xb6fef0, timeout_usecs=0) at silcschedule.c:455
        ret = 1
        __FUNCTION__ = "silc_schedule_iterate"
#5  0x00007fffe9289604 in silc_schedule_one (schedule=0xb6fef0, timeout_usecs=0) at silcschedule.c:484
        ret = <value optimized out>
#6  0x00007fffe95598d9 in silc_client_run_one () from /usr/lib/libsilcclient-1.1.so.3
No symbol table info available.
#7  0x000000000046da1e in pidgin_io_invoke (source=<value optimized out>, condition=<value optimized out>, data=<value optimized out>) at gtkeventloop.c:78
        closure = 0xb97550
        purple_cond = PURPLE_INPUT_READ
#8  0x00007ffff39637aa in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#9  0x00007ffff3966df8 in ?? () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#10 0x00007ffff39672cd in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#11 0x00007ffff5b00b97 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#12 0x00000000004852e0 in main (argc=1, argv=0x7fffffffe4b8) at gtkmain.c:915
        opt_force_online = 0
        opt_help = <value optimized out>
        opt_login = 0
        opt_nologin = 0
        opt_version = <value optimized out>
        opt_si = 1
        opt_config_dir_arg = 0x0
        opt_login_arg = 0x0
        opt_session_arg = 0x0
        accounts = <value optimized out>
        sigset = {__val = {82951, 0 <repeats 15 times>}}
        prev_sig_disp = 0
        errmsg = "\350\35\f\365\377\177\0\0\0\0\0\0\0\0\0\0\320T\375\367\377\177\0\0\r\331\336\367\377\177", '\0' <repeats 18 times>"\350, \\\354\367\377\177\0\0\302\312\336\367\377\177\0\0\320D\375\367\377\177\0\0\270i\375\367\377\177\0\0\240I\375\367\377\177\0\0\300\71\375\367\377\177\0\0\0 \375\367\377\177\0\0\340$\375\367\377\177\0\0\320T\375\367\377\177\0\0\0\60\375\367\377\177\0\0P\332\374\367\377\177\0\0\340\64\375\367\377\177\0\0\300\4\375\367\377\177\0\0\0\0\0\0\0\0\0\0\350\35\f\365\377\177\0\0\0\0\0\0\0\0\0\0\320T\375\367\377\177\0\0\0\0 \203\377\377\377\377\0\0vŽ\357\377\377\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\20\342\377\377\377\177\0\0\200\342\377\377\377\177\0\0\0\0\0\0\0\0\0\0\330\322-\365\377\177\0\0\5\0\0\0\0\0\0\0\0P\375\367\377\177\0\0\r\331\336\367\377\177", '\0' <repeats 26 times>"\326, \342\336\367\377\177\0\0\20\342\377\377\377\177\0\0\320\330\336\367\377\177\0\0O\342\377\377\377\177\0\0@\342\377\377\377\177\0\0\70\342\377\377\377\177\0\0\0\0\0\0\0\0\0\0\200"...
        error = 0x0
        opt = <value optimized out>
        gui_check = <value optimized out>
        debug_enabled = <value optimized out>
        migration_failed = <value optimized out>
        active_accounts = <value optimized out>
        long_options = {{name = 0x4d0382 "config", has_arg = 1, flag = 0x0, val = 99}, {name = 0x4bbec1 "debug", has_arg = 0, flag = 0x0, val = 100}, {name = 0x4cb975 "force-online", has_arg = 0, 
            flag = 0x0, val = 100}, {name = 0x4bf206 "help", has_arg = 0, flag = 0x0, val = 104}, {name = 0x4cb702 "login", has_arg = 2, flag = 0x0, val = 108}, {name = 0x4cb982 "multiple", 
            has_arg = 0, flag = 0x0, val = 109}, {name = 0x4cb98b "nologin", has_arg = 0, flag = 0x0, val = 110}, {name = 0x4d0378 "session", has_arg = 1, flag = 0x0, val = 115}, {
            name = 0x4c2453 "version", has_arg = 0, flag = 0x0, val = 118}, {name = 0x4d038b "display", has_arg = 1, flag = 0x0, val = 68}, {name = 0x4cb993 "sync", has_arg = 0, flag = 0x0, 
            val = 83}, {name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
  • this just happened one time, after this I only got segfaults
  • apt-file search silcpacket.c > found nothing
Starting program: /usr/local/bin/pidgin 
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffdde5a950 (LWP 19241)]
[Thread 0x7fffdde5a950 (LWP 19241) exited]
[New Thread 0x7fffdde5a950 (LWP 19245)]
[Thread 0x7fffdde5a950 (LWP 19245) exited]
[New Thread 0x7fffdde5a950 (LWP 19247)]
[Thread 0x7fffdde5a950 (LWP 19247) exited]

Program received signal SIGSEGV, Segmentation fault.
0x0000000001856f30 in ?? ()
(gdb) bt full
#0  0x0000000001856f30 in ?? ()
No symbol table info available.
#1  0x00007fffe92b2b3f in silc_cipher_decrypt (cipher=<value optimized out>, src=0x13608b0 "\220\305\345R\332=e\25\346\341\256#[G\305\21\256\214:\30\262\67*\211", <incomplete sequence \351>, 
    dst=0x7fffffffbd20 "", len=81, iv=0x7fffffffbd10 "%\245\27\366\231݁ȇ\217\377\273") at silccipher.c:325
No locals.
#2  0x00007fffe92798db in silc_packet_read_process (stream=0x13603d0) at silcpacket.c:2189
        inbuf = 0x1352f50
        cipher = 0x13715b0
        hmac = 0x13724a0
        packet = 0x13603d0
        sid = <value optimized out>
        flags = 214 '\326'
        type = 33 '!'
        packetlen = 62126
        paddedlen = 32767
        mac_len = 12114000
        block_len = 81
        ivlen = <value optimized out>
        psnlen = 0
        tmp = "\0\0\0\0\0\0\0\0!\0\0\0\0\0\0"
        header = 0xa80970 "\200\244R\351\377\177"
        iv = "%\245\27\366\231݁ȇ\217\377\273\0\0\0\5"
        packet_seq = 0x0
        normal = 0 '\0'
        __FUNCTION__ = "silc_packet_read_process"
#3  0x00007fffe927b85a in silc_packet_stream_io (stream=<value optimized out>, status=<value optimized out>, context=<value optimized out>) at silcpacket.c:436
        remote = 0x80f
        ps = 0x0
        __FUNCTION__ = "silc_packet_stream_io"
#4  0x00007fffe928fb32 in silc_socket_stream_io (schedule=<value optimized out>, app_context=<value optimized out>, type=<value optimized out>, fd=81, context=0x7fffffffbd10)
    at silcunixsocketstream.c:36
        stream = 0x7fffffffbd10
#5  0x00007fffe9287ace in silc_schedule_dispatch_fd (schedule=0x1350240) at silcschedule.c:61
        task = 0x135dd60
#6  0x00007fffe92894bb in silc_schedule_iterate (schedule=0x1350240, timeout_usecs=0) at silcschedule.c:455
        ret = 1
        __FUNCTION__ = "silc_schedule_iterate"
#7  0x00007fffe9289604 in silc_schedule_one (schedule=0x1350240, timeout_usecs=0) at silcschedule.c:484
        ret = <value optimized out>
#8  0x00007fffe95598d9 in silc_client_run_one () from /usr/lib/libsilcclient-1.1.so.3
No symbol table info available.
#9  0x000000000046da1e in pidgin_io_invoke (source=<value optimized out>, condition=<value optimized out>, data=<value optimized out>) at gtkeventloop.c:78
        closure = 0xa8f0f0
        purple_cond = PURPLE_INPUT_READ
#10 0x00007ffff39637aa in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#11 0x00007ffff3966df8 in ?? () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#12 0x00007ffff39672cd in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#13 0x00007ffff5b00b97 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#14 0x00000000004852e0 in main (argc=1, argv=0x7fffffffe4b8) at gtkmain.c:915
        opt_force_online = 0
        opt_help = <value optimized out>
        opt_login = 0
        opt_nologin = 0
        opt_version = <value optimized out>
        opt_si = 1
        opt_config_dir_arg = 0x0
=

To find the missing symbol a installed libsilc-dev

The following extra packages will be installed:
  libsilc-1.1-2 libsilc-1.1-2-dbg libsilcclient-1.1-3
The following packages will be upgraded:
  libsilc-1.1-2 libsilc-1.1-2-dbg libsilc-dev libsilcclient-1.1-3

.. which changed nothing. I can't get clear with all the different output. Hope you will.

I am running 2.6.2-devel / 2.6.31-rc7-0xb5 #4 SMP x86_64

Change History (0)

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!