kern/146845: [libc] close(2) returns error 54 (connection reset
by peer) wrongly
Lavrentiev, Anton (NIH/NLM/NCBI) [C]
lavr at ncbi.nlm.nih.gov
Fri May 28 04:40:04 UTC 2010
The following reply was made to PR kern/146845; it has been noted by GNATS.
From: "Lavrentiev, Anton (NIH/NLM/NCBI) [C]" <lavr at ncbi.nlm.nih.gov>
To: "bug-followup at FreeBSD.org" <bug-followup at FreeBSD.org>
Cc:
Subject: Re: kern/146845: [libc] close(2) returns error 54 (connection reset
by peer) wrongly
Date: Fri, 28 May 2010 00:07:16 -0400
Hi Mikolaj and Robert,
Thanks for following up on this issue!
> It looks like SO_LINGER is not important to reproduce ECONNRESET.
Indeed, it is not.
> I am attaching the patch, which may not be a solution
IMHO, it is not, unfortunately, a solution: it seems to clear ECONNRESET
blindly and w/o distinguishing the situation when the remote end closes the
connection prematurely (i.e. before acknowledging all data written from the
local end) -- and that qualifies for the true "connection reset by peer"
from close()...
Anton Lavrentiev
Contractor NIH/NLM/NCBI
More information about the freebsd-net
mailing list