On 16.04, Herbert Xu wrote: > David Miller <da...@davemloft.net> wrote: > > > > Because then there is no ambiguity at all, you preserve on output > > exactly what you had on input. The same geometry, the same > > everything. No special checks, no max frag len, none of this crap. > > Those are all hacks trying to work around the _fundamental_ issue > > which is that we potentially change the thing when we refrag. > > Agreed. Doing anything other than preserving the original geometry > is simply wrong. > > However, this doesn't mean that netfilter has to process each > fragment. What we could do is to preserve the original fragments > in frag_list and then process the overall skb as a unit in netfilter. > > On output we simply fragment according to the original frag_list. > > The only thing to watch out for is to eliminate anything in the > middle that tries to linearise the skb.
Netfilter may change the contents of the packet, even change its size. It is *really* hard to do this while keeping the original fragments intact. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html