Page MenuHomeFreeBSD

D55537.id.diff
No OneTemporary

D55537.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
@@ -502,8 +502,10 @@
div_output_inbound(int family, struct socket *so, struct mbuf *m,
struct sockaddr_in *sin)
{
+ struct divcb *dcb;
struct ifaddr *ifa;
+ dcb = so->so_pcb;
if (m->m_pkthdr.rcvif == NULL) {
/*
* No luck with the name, check by IP address.
@@ -540,14 +542,14 @@
m->m_flags |= M_MCAST;
else if (in_ifnet_broadcast(ip->ip_dst, m->m_pkthdr.rcvif))
m->m_flags |= M_BCAST;
- netisr_queue_src(NETISR_IP, (uintptr_t)so, m);
+ netisr_queue_src(NETISR_IP, (uintptr_t)dcb->dcb_gencnt, m);
DIVSTAT_INC(inbound);
break;
}
#endif
#ifdef INET6
case AF_INET6:
- netisr_queue_src(NETISR_IPV6, (uintptr_t)so, m);
+ netisr_queue_src(NETISR_IPV6, (uintptr_t)dcb->dcb_gencnt, m);
DIVSTAT_INC(inbound);
break;
#endif

File Metadata

Mime Type
text/plain
Expires
Sat, Feb 28, 2:51 AM (11 h, 58 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29038836
Default Alt Text
D55537.id.diff (895 B)

Event Timeline