summaryrefslogtreecommitdiff
path: root/sys/kern
diff options
context:
space:
mode:
authorAlexander Bluhm <bluhm@cvs.openbsd.org>2012-09-19 19:41:30 +0000
committerAlexander Bluhm <bluhm@cvs.openbsd.org>2012-09-19 19:41:30 +0000
commit726d16825c16334c15f21f23f2b14062e4fc151a (patch)
tree74a8cdb02981a1c304e1dd9e1c60c58c3fb018ef /sys/kern
parentb97944b16581b2cb53999326ab0e9e88eb704ad9 (diff)
In somove() make the call to pr_usrreq(PRU_RCVD) under the same
conditions as in soreceive(). My goal is to make socket splicing less protocol dependent. ok claudio@
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/uipc_socket.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
index 6f7df6f3557..ff2a79bcf35 100644
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uipc_socket.c,v 1.105 2012/09/17 14:33:56 bluhm Exp $ */
+/* $OpenBSD: uipc_socket.c,v 1.106 2012/09/19 19:41:29 bluhm Exp $ */
/* $NetBSD: uipc_socket.c,v 1.21 1996/02/04 02:17:52 christos Exp $ */
/*
@@ -1236,7 +1236,7 @@ somove(struct socket *so, int wait)
#endif
/* Send window update to source peer if receive buffer has changed. */
- if (m)
+ if (m && so->so_proto->pr_flags & PR_WANTRCVD && so->so_pcb)
(so->so_proto->pr_usrreq)(so, PRU_RCVD, NULL,
(struct mbuf *)0L, NULL, NULL);