diff options
author | 1998-01-03 22:32:53 +0000 | |
---|---|---|
committer | 1998-01-03 22:32:53 +0000 | |
commit | 44801171ed8e1ea42bd5cdeb77d8e900ce716f91 (patch) | |
tree | dbcf59aa33005e0ce332b1d14512744125feadfd /sys | |
parent | more oflows; we should just delete this thing (diff) | |
download | wireguard-openbsd-44801171ed8e1ea42bd5cdeb77d8e900ce716f91.tar.xz wireguard-openbsd-44801171ed8e1ea42bd5cdeb77d8e900ce716f91.zip |
ignore PRU_SHUTDOWN if socket is already shutdown
Diffstat (limited to 'sys')
-rw-r--r-- | sys/netinet/tcp_usrreq.c | 4 | ||||
-rw-r--r-- | sys/netiso/tuba_usrreq.c | 4 | ||||
-rw-r--r-- | sys/netns/spp_usrreq.c | 4 |
3 files changed, 9 insertions, 3 deletions
diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index 99c02ed1fa1..ea92e00c858 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tcp_usrreq.c,v 1.12 1997/08/09 23:36:26 millert Exp $ */ +/* $OpenBSD: tcp_usrreq.c,v 1.13 1998/01/03 22:32:53 deraadt Exp $ */ /* $NetBSD: tcp_usrreq.c,v 1.20 1996/02/13 23:44:16 christos Exp $ */ /* @@ -257,6 +257,8 @@ tcp_usrreq(so, req, m, nam, control) * Mark the connection as being incapable of further output. */ case PRU_SHUTDOWN: + if (so->so_state & SS_CANTSENDMORE) + break; socantsendmore(so); tp = tcp_usrclosed(tp); if (tp) diff --git a/sys/netiso/tuba_usrreq.c b/sys/netiso/tuba_usrreq.c index 0fc605cdea5..bd9a74a0e5a 100644 --- a/sys/netiso/tuba_usrreq.c +++ b/sys/netiso/tuba_usrreq.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tuba_usrreq.c,v 1.2 1996/03/04 10:36:54 mickey Exp $ */ +/* $OpenBSD: tuba_usrreq.c,v 1.3 1998/01/03 22:32:56 deraadt Exp $ */ /* $NetBSD: tuba_usrreq.c,v 1.8 1996/02/13 22:12:40 christos Exp $ */ /* @@ -267,6 +267,8 @@ tuba_usrreq(so, req, m, nam, control) * Mark the connection as being incapable of further output. */ case PRU_SHUTDOWN: + if (so->so_state & SS_CANTSENDMORE) + break; socantsendmore(so); tp = tcp_usrclosed(tp); if (tp) diff --git a/sys/netns/spp_usrreq.c b/sys/netns/spp_usrreq.c index b34d3b74d58..9347749673d 100644 --- a/sys/netns/spp_usrreq.c +++ b/sys/netns/spp_usrreq.c @@ -1,4 +1,4 @@ -/* $OpenBSD: spp_usrreq.c,v 1.5 1997/03/29 18:21:00 deraadt Exp $ */ +/* $OpenBSD: spp_usrreq.c,v 1.6 1998/01/03 22:32:57 deraadt Exp $ */ /* $NetBSD: spp_usrreq.c,v 1.9 1996/02/13 22:14:13 christos Exp $ */ /* @@ -1473,6 +1473,8 @@ spp_usrreq(so, req, m, nam, controlp) } case PRU_SHUTDOWN: + if (so->so_state & SS_CANTSENDMORE) + break; socantsendmore(so); cb = spp_usrclosed(cb); if (cb) |