Page MenuHomeFreeBSD

D29420.diff
No OneTemporary

D29420.diff

diff --git a/sys/netinet/ip_divert.c b/sys/netinet/ip_divert.c
--- a/sys/netinet/ip_divert.c
+++ b/sys/netinet/ip_divert.c
@@ -280,6 +280,10 @@
/* XXX why does only one socket match? */
if (inp->inp_lport == nport) {
INP_RLOCK(inp);
+ if (__predict_false(inp->inp_flags2 & INP_FREED)) {
+ INP_RUNLOCK(inp);
+ continue;
+ }
sa = inp->inp_socket;
SOCKBUF_LOCK(&sa->so_rcv);
if (sbappendaddr_locked(&sa->so_rcv,

File Metadata

Mime Type
text/plain
Expires
Thu, May 1, 2:15 AM (7 h, 55 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
17870206
Default Alt Text
D29420.diff (442 B)

Event Timeline