diff options
author | John Baldwin <jhb@FreeBSD.org> | 2020-07-29 23:24:32 +0000 |
---|---|---|
committer | John Baldwin <jhb@FreeBSD.org> | 2020-07-29 23:24:32 +0000 |
commit | 0f70a1489d0701e4c1840d13d4ed89e7bf624eac (patch) | |
tree | d6febc21aa840f9500ea95f4ba1fa073a9c896cf | |
parent | adeebf4cd47c3e85155d92f386bda5e519b75ab2 (diff) |
Notes
-rw-r--r-- | sys/kern/uipc_socket.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 15a8b1439463..ac138679c850 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -1965,12 +1965,17 @@ restart: } SOCKBUF_LOCK_ASSERT(&so->so_rcv); if (so->so_rcv.sb_state & SBS_CANTRCVMORE) { - if (m == NULL && so->so_rcv.sb_tlsdcc == 0 && + if (m != NULL) + goto dontblock; +#ifdef KERN_TLS + else if (so->so_rcv.sb_tlsdcc == 0 && so->so_rcv.sb_tlscc == 0) { +#else + else { +#endif SOCKBUF_UNLOCK(&so->so_rcv); goto release; - } else - goto dontblock; + } } for (; m != NULL; m = m->m_next) if (m->m_type == MT_OOBDATA || (m->m_flags & M_EOR)) { |