changeset 11564:c24ee1ebb159 HEAD

net_disconnect(): Ignore ECONNRESET error.
author Timo Sirainen <tss@iki.fi>
date Thu, 17 Jun 2010 14:47:16 +0100
parents c03424ecf8e5
children b2ffb6846973
files src/lib/network.c
diffstat 1 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib/network.c	Thu Jun 17 13:53:14 2010 +0100
+++ b/src/lib/network.c	Thu Jun 17 14:47:16 2010 +0100
@@ -298,7 +298,9 @@
 
 void net_disconnect(int fd)
 {
-	if (close(fd) < 0)
+	/* FreeBSD's close() fails with ECONNRESET if socket still has unsent
+	   data in transmit buffer. We don't care. */
+	if (close(fd) < 0 && errno != ECONNRESET)
 		i_error("net_disconnect() failed: %m");
 }