Page MenuHomeFreeBSD

D29420.id.diff
No OneTemporary

D29420.id.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
Sun, Sep 6, 7:20 PM (13 h, 36 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
38430029
Default Alt Text
D29420.id.diff (442 B)

Event Timeline