summaryrefslogtreecommitdiffstats
path: root/sys/kern/uipc_socket.c
diff options
context:
space:
mode:
authorjlemon <jlemon@FreeBSD.org>2001-02-14 02:09:11 +0000
committerjlemon <jlemon@FreeBSD.org>2001-02-14 02:09:11 +0000
commit9377320bfdd9e471fbc783d1a710d852acf8645a (patch)
tree22fd866ee24cc051330907d9541c73d3565be6b8 /sys/kern/uipc_socket.c
parent1bd9c94cf7d5f6ace52e70fd30fb58d497d81407 (diff)
downloadFreeBSD-src-9377320bfdd9e471fbc783d1a710d852acf8645a.zip
FreeBSD-src-9377320bfdd9e471fbc783d1a710d852acf8645a.tar.gz
Return ECONNABORTED from accept if connection is closed while on the
listen queue, as well as the current behavior of a zero-length sockaddr. Obtained from: KAME Reviewed by: -net
Diffstat (limited to 'sys/kern/uipc_socket.c')
-rw-r--r--sys/kern/uipc_socket.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
index 62459df..d8a95cf 100644
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -365,11 +365,8 @@ soaccept(so, nam)
so->so_state &= ~SS_NOFDREF;
if ((so->so_state & SS_ISDISCONNECTED) == 0)
error = (*so->so_proto->pr_usrreqs->pru_accept)(so, nam);
- else {
- if (nam)
- *nam = 0;
- error = 0;
- }
+ else
+ error = ECONNABORTED;
splx(s);
return (error);
}
OpenPOWER on IntegriCloud