Page MenuHomeFreeBSD

D43256.diff
No OneTemporary

D43256.diff

diff --git a/sys/netinet6/frag6.c b/sys/netinet6/frag6.c
--- a/sys/netinet6/frag6.c
+++ b/sys/netinet6/frag6.c
@@ -862,10 +862,6 @@
ip6->ip6_flow |= htonl(IPTOS_ECN_CE << 20);
nxt = q6->ip6q_nxt;
- TAILQ_REMOVE(head, q6, ip6q_tq);
- V_ip6qb[bucket].count--;
- atomic_subtract_int(&frag6_nfrags, q6->ip6q_nfrag);
-
ip6_deletefraghdr(m, offset, M_NOWAIT);
/* Set nxt(-hdr field value) to the original value. */
@@ -874,10 +870,9 @@
#ifdef MAC
mac_ip6q_reassemble(q6, m);
- mac_ip6q_destroy(q6);
#endif
- free(q6, M_FRAG6);
- atomic_subtract_int(&V_frag6_nfragpackets, 1);
+ atomic_subtract_int(&frag6_nfrags, q6->ip6q_nfrag);
+ frag6_rmqueue(q6, bucket);
if (m->m_flags & M_PKTHDR) { /* Isn't it always true? */

File Metadata

Mime Type
text/plain
Expires
Tue, Feb 11, 8:28 PM (13 h, 27 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16600715
Default Alt Text
D43256.diff (736 B)

Event Timeline