ipv4: Fix IPsec slowpath fragmentation problem
authorSteffen Klassert <steffen.klassert@secunet.com>
Wed, 22 Jun 2011 01:05:37 +0000 (01:05 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 28 Jun 2011 03:34:26 +0000 (20:34 -0700)
commit353e5c9abd900de3d1a40925386ffe4abf76111e
tree0aeb8a65afb48fb4011d4ee4aa243288d24c8daf
parent33f99dc7fd948bbc808a24a0989c167f8973b643
ipv4: Fix IPsec slowpath fragmentation problem

ip_append_data() builds packets based on the mtu from dst_mtu(rt->dst.path).
On IPsec the effective mtu is lower because we need to add the protocol
headers and trailers later when we do the IPsec transformations. So after
the IPsec transformations the packet might be too big, which leads to a
slowpath fragmentation then. This patch fixes this by building the packets
based on the lower IPsec mtu from dst_mtu(&rt->dst) and adapts the exthdr
handling to this.

Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ip_output.c