Displaying 1 result from an estimated 1 matches for "inet_frag_put".
2014 Nov 11
0
[Bug 987] New: nf_conntrack_reasm.c : Silent discard of overlapping fragments is not silent
...p;nf_frags);
err:
return -1;
}
The function nf_ct_frag6_queue is called from nf_ct_frag6_gather,
that falls back to ret_orig on error:
if (nf_ct_frag6_queue(fq, clone, fhdr, nhoff) < 0) {
spin_unlock_bh(&fq->q.lock);
pr_debug("Can't insert skb to queue\n");
inet_frag_put(&fq->q, &nf_frags);
goto ret_orig;
}
where the skb clone is freed and the original skb is returned.
ret_orig:
kfree_skb(clone);
return skb;
}
In case of an overlapping fragment this seems to lead to the emission
of said fragment instead of completely and silently discardin...