[Pidgin] #12213: Yahoo filetransfer randomly never start with message "Waiting for transfer to begin" (on pidgin filetransfer gui) and "Receiving 1 file from xxx" (on yahoo messenger)
Pidgin
trac at pidgin.im
Mon Jun 21 18:09:35 EDT 2010
#12213: Yahoo filetransfer randomly never start with message "Waiting for transfer
to begin" (on pidgin filetransfer gui) and "Receiving 1 file from xxx" (on
yahoo messenger)
---------------------------------+------------------------------------------
Reporter: john13 | Owner: sulabh.dev
Type: defect | Status: new
Component: Yahoo!/Yahoo! JAPAN | Version: 2.7.1
Keywords: filetransfer |
---------------------------------+------------------------------------------
Hi,
First note that transfers from Yahoo (tested with 8.1, 9 and last 10) to
Pidgin always work fine.
When trying to send file from Pidgin to Yahoo clients (tested with same
versions) sometimes fails and sometimes works. More failures than
successes.
When fails :
The message "Waiting for transfer to begin" is displayed on Pidgin. And
after accepted on Yahoo client, "Receiving 1 file from xxx" is displayed
but file never comes to yahoo client.
Log only displays that and nothing still no action :
{{{
(23:56:21) xfer: request accepted for 041484F0
(23:56:25) yahoo: 73 bytes to read, rxlen is 93
(23:56:25) yahoo: Yahoo Service: 0xdc Status: 1
(23:56:25) dnsquery: Performing DNS lookup for relay.msg.yahoo.com
(23:56:25) dnsquery: IP resolved for relay.msg.yahoo.com
}}}
Nota : only one IP (lan) and 1 IP (WAN) are used and correctly found at
startup.
I've compiled the progam under Cygwin and extended the error log to remark
that when it fails IP is a negative long value at line
{{{
actaddr = addr->sin_addr.s_addr;
}}}
(from method :
{{{
static void yahoo_xfer_dns_connected_15(GSList *hosts, gpointer data,
const char *error_message)
}}}
from file "yahoo_filexfer.c")
EXAMPLE OF SUCCESS:
{{{
(23:08:50) MWK: Entering : yahoo_xfer_dns_connected_15 - 4 addr= 0
(23:08:50) MWK: Entering : yahoo_xfer_dns_connected_15 - 4bis
addr=56835744, actaddr=728795234
(23:08:50) MWK: Entering : yahoo_xfer_dns_connected_15 - 4ter d=98, c=136,
b=112, a=43
(23:08:50) MWK: Entering : yahoo_xfer_dns_connected_15 - 5 , url
98.136.112.43
}}}
EXAMPLE 1 OF FAILURE:
{{{
(23:08:47) MWK: Entering : yahoo_xfer_dns_connected_15 - 4 addr= 0
(23:08:47) MWK: Entering : yahoo_xfer_dns_connected_15 - 4bis
addr=57040008, actaddr=-1653503902
(23:08:47) MWK: Entering : yahoo_xfer_dns_connected_15 - 4ter d=-158,
c=-119, b=-142, a=-98
(23:08:47) MWK: Entering : yahoo_xfer_dns_connected_15 - 5 , url
-158.-119.-142.-98
}}}
EXAMPLE 2 OF FAILURE:
{{{
(23:25:08) MWK: Entering : yahoo_xfer_dns_connected_15 - 4 addr= 0
(23:25:08) MWK: Entering : yahoo_xfer_dns_connected_15 - 4bis
addr=56121952, actaddr=-1687058334
(23:25:08) MWK: Entering : yahoo_xfer_dns_connected_15 - 4ter d=-158,
c=-119, b=-142, a=-100
(23:25:08) MWK: Entering : yahoo_xfer_dns_connected_15 - 5 , url
-158.-119.-142.-100
}}}
so the code
{{{
url = g_strdup_printf("%ld.%ld.%ld.%ld", d, c, b, a);
}}}
contains something wrong (negative ints) to allow correct transfert.
Thanks you for solving it (don't know exactly how sockaddr_in works...).
--
Ticket URL: <http://developer.pidgin.im/ticket/12213>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list