]> git.baikalelectronics.ru Git - kernel.git/commit
ipv6: Fix IPsec slowpath fragmentation problem
authorSteffen Klassert <steffen.klassert@secunet.com>
Tue, 11 Oct 2011 01:43:33 +0000 (01:43 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Oct 2011 03:53:10 +0000 (23:53 -0400)
commitc15bf297e4b55ba2a351a9a0b21143c4f013c0db
tree30e41c97fe4cef60540964495c15d0be121e3b3e
parent9083fb295cb881be31082fe0dda1882cbb4c5a7d
ipv6: Fix IPsec slowpath fragmentation problem

ip6_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/ipv6/ip6_output.c
net/ipv6/raw.c