]> git.baikalelectronics.ru Git - kernel.git/commit
bridge: Save frag_max_size between PRE_ROUTING and POST_ROUTING
authorHerbert Xu <herbert@gondor.apana.org.au>
Sun, 5 Oct 2014 04:00:22 +0000 (12:00 +0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 7 Oct 2014 19:12:44 +0000 (15:12 -0400)
commit4370b8f81662c4eb98fedb5c335386f50cd5f11c
treeff0bf4593b59fbe837bbe74f659e44cf5817db17
parent65be7f68a4a4b69d71e400ff52cc62260e36603c
bridge: Save frag_max_size between PRE_ROUTING and POST_ROUTING

As we may defragment the packet in IPv4 PRE_ROUTING and refragment
it after POST_ROUTING we should save the value of frag_max_size.

This is still very wrong as the bridge is supposed to leave the
packets intact, meaning that the right thing to do is to use the
original frag_list for fragmentation.

Unfortunately we don't currently guarantee that the frag_list is
left untouched throughout netfilter so until this changes this is
the best we can do.

There is also a spot in FORWARD where it appears that we can
forward a packet without going through fragmentation, mark it
so that we can fix it later.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_netfilter.c
net/bridge/br_private.h