Opened 9 years ago

Closed 9 years ago

#12150 closed defect (fixed)

Don't cancel file-transfer when transreq (direct-connection request) is declined

Reported by: lfrb Owned by: QuLogic
Milestone: 2.7.3 Component: MSN
Version: 2.7.1 Keywords: file-transfer, msn
Cc:

Description

As of now, Pidgin cancels the file-transfer if its direct-connect request (x-msnmsgr-transreqbody) get declined. It should use the switchboard to transfer the file instead of canceling the transfer altogether.

(This is needed for interoperability with clients not supporting direct-connection like Empathy, emesene2, amsn2...)

Attachments (2)

papyon-debug.log (6.4 KB) - added by lfrb 9 years ago.
Receiving-side log (papyon)
purple-debug.log (2.5 KB) - added by lfrb 9 years ago.
Sending side log (purple)

Download all attachments as: .zip

Change History (10)

comment:1 Changed 9 years ago by QuLogic

  • Status changed from new to pending

Please follow the instructions to get a debug log and attach it to this ticket.

comment:2 Changed 9 years ago by QuLogic

We already do that.

comment:3 Changed 9 years ago by trac-robot

  • Status changed from pending to closed

This ticket was closed automatically by the system. It was previously set to a Pending status and hasn't been updated within 14 days.

Changed 9 years ago by lfrb

Receiving-side log (papyon)

Changed 9 years ago by lfrb

Sending side log (purple)

comment:4 Changed 9 years ago by lfrb

As you can see in the logs, papyon answers 603 (Decline) to the transport request (transreq) because it doesn't support direct connections. It did answered 200 (Accept) to the session request though. Purple still interprets it as if the contact canceled the transfer and just quits.

(Do I need to open a new ticket, or this one can be re-opened ?)

comment:5 Changed 9 years ago by QuLogic

  • Status changed from closed to new

comment:6 Changed 9 years ago by QuLogic

  • Status changed from new to pending

Is that correct? papyon is sending a 603 Decline in an "application/x-msnmsgr-transrespbody". libpurple is expecting it in an "application/x-msnmsgr-transreqbody".

I don't really know which one is right. I've only seen transreqbody on one bot, and never seen transrespbody. Can you verify the correct response?

I suppose we can just look for either one, though.

comment:7 Changed 9 years ago by lfrb

  • Status changed from pending to new

Well according to MSNPiki, the answer should have type "application/x-msnmsgr-transrespbody".

Even libpurple is sending the response with that content type. (libpurple also seems to send the request with the transrespbody type. something might be wrong in msn_dc_send_invite as well)

But I think you are right, the error is caused by doing the wrong compare in got_error (slp.c:939)

comment:8 Changed 9 years ago by qulogic@…

  • Milestone set to 2.7.3
  • Resolution set to fixed
  • Status changed from new to closed

(In 455ed060dc389723f89e793a60ed1da1e48fe3d9):
Fall back to SB when a DC is declined via transrespbody also.

Fixes #12150.

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!