Opened 9 years ago

Last modified 4 days ago

#11818 pending defect

Crash on file transfers with jabber

Reported by: romain Owned by: deryni
Milestone: Component: XMPP
Version: 2.6.6 Keywords:
Cc:

Description

A crash occured when a buddy tried to send me a file via xmpp:

(gdb) bt
#0  0x00007f89cd8125ee in jabber_si_bytestreams_attempt_connect (xfer=0x8c2800)
    at /build/buildd-pidgin_2.6.6-1~bpo50+1-amd64-Jn7LHw/pidgin-2.6.6/./libpurple/protocols/jabber/si.c:288
#1  0x00007f89cd812b23 in connect_timeout_cb (data=<value optimized out>)
    at /build/buildd-pidgin_2.6.6-1~bpo50+1-amd64-Jn7LHw/pidgin-2.6.6/./libpurple/protocols/jabber/si.c:186
#2  0x00007f89d9b1af6b in g_timeout_dispatch (source=0x945d80, callback=0x72ecb0, user_data=0x0)
    at /home/joss/deb/pkg-gnome/desktop/lenny/build-area/glib2.0-2.16.6/glib/gmain.c:3446
#3  0x00007f89d9b1a7ab in IA__g_main_context_dispatch (context=0x6c9400)
    at /home/joss/deb/pkg-gnome/desktop/lenny/build-area/glib2.0-2.16.6/glib/gmain.c:2012
#4  0x00007f89d9b1df7d in g_main_context_iterate (context=0x6c9400, block=1, dispatch=1, self=<value optimized out>)
    at /home/joss/deb/pkg-gnome/desktop/lenny/build-area/glib2.0-2.16.6/glib/gmain.c:2645
#5  0x00007f89d9b1e4ad in IA__g_main_loop_run (loop=0x6c9fa0)
    at /home/joss/deb/pkg-gnome/desktop/lenny/build-area/glib2.0-2.16.6/glib/gmain.c:2853
#6  0x0000000000429c33 in Minbif::main (this=0x7fffe27fab70, argc=<value optimized out>, argv=<value optimized out>)
    at /home/rom1/tmp/minbif/src/core/minbif.cpp:233
#7  0x0000000000429f82 in main (argc=4, argv=0x7fffe27fac78) at /home/rom1/tmp/minbif/src/core/minbif.cpp:274
(gdb) call *jsx
$5 = {js = 0x723bb0, connect_data = 0x0, listen_data = 0x0, connect_timeout = 0, accepted = 1, 
  stream_id = 0x72ecb0 "VG7D0RJUFY16QMOI", iq_id = 0x7333c0 "id_VG7D0RJUFY16QMOI", stream_method = STREAM_METHOD_BYTESTREAMS, 
  streamhosts = 0x944460, gpi = 0x837ac0, rxqueue = 0x0, rxlen = 0, rxmaxlen = 0, local_streamhost_fd = -1, ibb_session = 0x0, 
  ibb_timeout_handle = 0, ibb_buffer = 0x0}
(gdb) call *jsx->js
$6 = {fd = 9398176, srv_query_data = 0x8f97b0, context = 0x20, current = 0x31, protocol_version = 7886080, 
  auth_mech = 0x7f89d8871a60, auth_mech_data = 0x632e65757100746c, 
  stream_id = 0x66703a6d6f <Address 0x66703a6d6f out of bounds>, state = 48, 
  expected_rspauth = 0x101 <Address 0x101 out of bounds>, buddies = 0x723c60, currently_parsing_roster_push = 0, 
  chats = 0x889ac0, chat_servers = 0x0, roomlist = 0x868aa0, user_directories = 0x0, iq_callbacks = 0x723c40, next_id = 0, 
  bs_proxies = 0x868a90, oob_file_transfers = 0x0, file_transfers = 0x8feed0, idle = 7486608, old_idle = 7486592, user = 0x0, 
  user_jb = 0x8cc240, gc = 0x0, gsc = 0x723cc0, registration = 0, initial_avatar_hash = 0x8d2300 "@\221\204", 
  avatar_hash = 0x8cc200 "Px\216", pending_avatar_requests = 0x868a70, pending_buddy_info_requests = 0x0, 
  write_buffer = 0x723ca0, writeh = 0, reinit = 0, server_caps = 8817344, googletalk = 0, server_name = 0x0, 
  gmail_last_time = 0x0, gmail_last_tid = 0xd <Address 0xd out of bounds>, serverFQDN = 0x8cc2d0 "", sasl = 0x868ad0, 
  sasl_cb = 0x7c3830, current_mech = 0x61 <Address 0x61 out of bounds>, auth_fail_count = 8415632, sasl_state = 0, 
  sasl_maxbuf = 7486864, sasl_mechs = 0x1, unregistration = 7486848, unregistration_cb = 0, 
  unregistration_user_data = 0x806a20, vcard_fetched = 0, vcard_timer = 0, caps_hash = 0x0, pep = 7486880, allowBuzz = 0, 
  commands = 0x0, old_state = 96, old_msg = 0x20 <Address 0x20 out of bounds>, old_priority = 8415728, 
  old_avatarhash = 0x7f89d8871a40 "�\030�", old_artist = 0x0, old_title = 0x21 <Address 0x21 out of bounds>, 
  old_source = 0x723d50 "`", old_uri = 0x7f89d8871a40 "�\030�", old_length = 0, old_track = 0x61 <Address 0x61 out of bounds>, 
  certificate_CN = 0x723cf0 "08|", keepalive_timeout = 7922992, srv_rec = 0x1, srv_rec_idx = 8429856, max_srv_rec_idx = 0, 
  bosh = 0x0, url_datas = 0x806a20, sessions = 0x0, stun_ip = 0x0, stun_port = 7923008, stun_query = 0x0}
(gdb) call jsx->js->user
$7 = (JabberID *) 0x0

At line 288 in the file si.c:

dstaddr = g_strdup_printf("%s%s@%s/%s%s@%s/%s", jsx->stream_id, dstjid->node, dstjid->domain, dstjid->resource,
         jsx->js->user->node, jsx->js->user->domain, jsx->js->user->resource);

But jsx->js->user is NULL.

Change History (3)

comment:1 Changed 9 years ago by darkrain42

  • Status changed from new to pending

That entire JabberStream structure is corrupt.

Were you disconnected from the server before minbif crashed? Is it repeatable? (If so, a debug log would help)

comment:2 Changed 9 years ago by romain

  • Status changed from pending to new

I was disconnected from the jabber server with this message: “XML Not Well Formed”. It crashed five seconds after.

comment:3 Changed 4 days ago by grim

  • Status changed from new to pending

This is a very old crash? Can it still be reproduced?

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!