|
From: Lars C. <la...@cs...> - 2001-03-18 00:03:42
|
Hi.
I am receiving segfaults in the tcplink code. May be you have a
clue. I try to initiate a file transfer with icq_SendFileRequest(),
and then immediatly, both my two client segfault.
The sender of the request has this traceback:
#0 0x80583d3 in _icq_SocketHandleReady (p=0x403c6fec,
data=0xbffffa6c)
at socketmanager.c:212
#1 0x8050be8 in icq_ListTraverse (plist=0x402d5ff0,
item_f=0x80583b0 <_icq_SocketHandleReady>) at list.c:190
#2 0x805847a in icq_SocketPoll () at socketmanager.c:232
#3 0x804fdaf in icq_Main () at icqlib.c:241
And the receiver this traceback:
#0 0x8053283 in icq_TCPLinkProcessReceived (plink=0x403d9fa8) at
tcplink.c:857
#1 0x8051be0 in icq_TCPLinkDelete (pv=0x403d9fa8) at tcplink.c:95
#2 0x8051d17 in icq_TCPLinkClose (plink=0x403d9fa8) at tcplink.c:140
#3 0x805bcf6 in icq_TCPProcessHello (p=0x40417ff0, plink=0x403d9fa8)
at tcphandle.c:212
#4 0x80532c5 in icq_TCPLinkProcessReceived (plink=0x403d9fa8) at
tcplink.c:864
#5 0x8052c7c in icq_TCPLinkOnDataReceived (plink=0x403d9fa8) at
tcplink.c:687
#6 0x805827a in icq_SocketReady (s=0x40413fec, type=0) at
socketmanager.c:166
#7 0x8058416 in _icq_SocketHandleReady (p=0x40413fec,
data=0xbffffa9c)
at socketmanager.c:213
#8 0x8050be8 in icq_ListTraverse (plist=0x402f5ff0,
item_f=0x80583b0 <_icq_SocketHandleReady>) at list.c:190
#9 0x805847a in icq_SocketPoll () at socketmanager.c:232
#10 0x804fdaf in icq_Main () at icqlib.c:241
What is odd in frame 8 of this last traceback is that frame 7 is
called with a pointer that is not in the list:
(gdb) print plist->head->item
$22 = (void *) 0x40310fec
(gdb) print plist->head->next->item
$23 = (void *) 0x40314fec
(gdb) print plist->head->next->next
$24 = (struct icq_ListNode_s *) 0x0
Any ideas?
(linking with efence is helpfull in this case, i think)
Btw... icqlib does not really compile right now without the
ChatRusConv stufff being commented out.
--
Lars Christensen, la...@cs...
|