incoming file transfer as first message crash

  • Jochen De Smet

    Jochen De Smet - 2011-06-28

    What happened before:  finch user and miranda user connected to server; finch user initiated file transfer to miranda,  Miranda crashed because of a bug on my side.  Nothing weird yet.

    But then I restarted the miranda clients; the finch client never lost connection.   Initiated another file transfer from finch -> miranda.  The incoming file transfer request is the first direct message from the finch user coming in. This means that when the below code in process_incoming_message runs:

        } else if (g_str_has_prefix(contenttype, "text/x-msmsgsinvite")) {
            const gchar *callid = sipmsg_find_header(msg, "Call-ID");
            struct sip_session *session = sipe_session_find_chat_or_im(sipe_private,
            struct sip_dialog *dialog = sipe_dialog_find(session, from);
            GSList *body = sipe_ft_parse_msg_body(msg->body);
            found = sipe_process_incoming_x_msmsgsinvite(sipe_private, dialog, body);
            if (found) {
                sip_transport_response(sipe_private, msg, 200, "OK", NULL);

    sipe_session_find_chat_or_im comes back with NULL, which a bit down the call changes causes a segfault when sipe_ft_incoming_transfer tries to access dialog->with to pass to sipe_ft_incoming_transfer.

    Is this a situation that should be handled, or am I missing something on my side ?

  • Jakub Adam

    Jakub Adam - 2011-06-29

    Hi Jochen,

    this was reproducible bug in SIPE, please retry with latest git snapshot.

    Thanks for reporting.


Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks