summaryrefslogtreecommitdiffstats
path: root/sys/kern/uipc_socket.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/uipc_socket.c')
-rw-r--r--sys/kern/uipc_socket.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
index 18077a8..8e34acd 100644
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -981,7 +981,8 @@ soreceive(so, psa, uio, mp0, controlp, flagsp)
return (soreceive_rcvoob(so, uio, flags));
if (mp != NULL)
*mp = NULL;
- if (so->so_state & SS_ISCONFIRMING && uio->uio_resid)
+ if ((pr->pr_flags & PR_WANTRCVD) && (so->so_state & SS_ISCONFIRMING)
+ && uio->uio_resid)
(*pr->pr_usrreqs->pru_rcvd)(so, 0);
SOCKBUF_LOCK(&so->so_rcv);
OpenPOWER on IntegriCloud