|
From: Uli Z. <ul...@ri...> - 2006-06-28 16:37:42
|
Am 28.06.2006 um 11:42 schrieb Matthias Andree:
> I wonder if the resolver would finally recover a long time after
> the network connection has been restored
When I encountered this fetchmail bug for the first time in real
life, fetchmail had stopped fetching mails for several *days*. So
even if it recovered after a "long time", this would be of no
practical value at all.
> - and perhaps if the negative TTL of cache entries can be configured.
I know of no such configuration possibilities in my case, but anyway,
since getaddrinfo() works as it should once freeaddrinfo() is
properly called, I don't think this is a caching issue at all.
> But OTOH, if you say that proper freeaddrinfo() use avoids the
> problem, then we don't need to think about this part, because I
> will add the missed freeaddrinfo() calls.
Exactly.
> I'll defend myself by calling these plain bugs, rather than not
> taking these calls "not ... too seriously".
Just having a cursory glance at the remaining code, there are at
least two other occurrences of freeaddrinfo() calls that could be
prevented by a timeout in do_session() in driver.c:
One is directly in driver.c, line 1043.
The other are actually 4 occurrences of freeaddrinfo() in
checkalias.c that, via several function calls, end up being called in
line 1430 in driver.c in the fetch_messages() call. Depending on the
method you'll use, these could be tricky to handle, because as I said
there are several function calls between the fetch_messages() call
and these freeaddrinfo() calls.
> Alright. Below is a fix to the problem you reported for servport.c
> (it was easy to fix),
Indeed. :-)
> please try and let me know if MacOS X works with the IPPROTO_TCP
> stuff.
Yep, it compiles just fine. Apart from that, there's not much to
test, yet. :-)
Bye
Uli
________________________________________________________
Uli Zappe, Solmsstraße 5, D-65189 Wiesbaden, Germany
http://www.ritual.org
Fon: +49-700-ULIZAPPE
Fax: +49-700-ZAPPEFAX
________________________________________________________
|