From: William T. M. <wt...@du...> - 2002-10-19 04:28:38
|
Hi, This patch 3 of 3, which applies on top of the first 2, removes the alarm() and sigaction() calls that were added by my original FT patch to detect transfer timeouts. Besides apparently not working on Windows, they involved a lot of ugly code to handle a special case. My new approach is to add destructors that can called when SNACs are freed; a timeout is detected when a request SNAC is cleaned up before the transfer is accepted. Although this touches several files, it is more generic than the old method. I tried to implement this in an unintrusive manner, so that there is little preformance penalty for SNACs that do not use destructors. My first two patches should work fine without this. If there are any objections to the third patch, I ask that the first two patches be applied, in which case I will set up a SourceForge page for this one. aim_cbtypes.h | 3 + aim_internal.h | 7 +++ im.c | 31 ++++++++++++-- oscar.c | 101 +++++++++++++++-------------------------------- snac.c | 46 +++++++++++++++++++-- 5 files changed, 112 insertions(+), 76 deletions(-) -- Wil |