[IPSEC] proto: Move transport mode input path into xfrm_mode_transport
authorHerbert Xu <herbert@gondor.apana.org.au>
Sun, 28 May 2006 06:06:13 +0000 (23:06 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Sun, 18 Jun 2006 04:28:41 +0000 (21:28 -0700)
commit31a4ab93025719e62e7cf7ce899f71c34ecde5a0
tree60404c5fd1124882753b38e334656a15f8de0804
parentb59f45d0b2878ab76f8053b0973654e6621828ee
[IPSEC] proto: Move transport mode input path into xfrm_mode_transport

Now that we have xfrm_mode objects we can move the transport mode specific
input decapsulation code into xfrm_mode_transport.  This removes duplicate
code as well as unnecessary header movement in case of tunnel mode SAs
since we will discard the original IP header immediately.

This also fixes a minor bug for transport-mode ESP where the IP payload
length is set to the correct value minus the header length (with extension
headers for IPv6).

Of course the other neat thing is that we no longer have to allocate
temporary buffers to hold the IP headers for ESP and IPComp.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ah4.c
net/ipv4/esp4.c
net/ipv4/ipcomp.c
net/ipv4/xfrm4_mode_transport.c
net/ipv6/ah6.c
net/ipv6/esp6.c
net/ipv6/ipcomp6.c
net/ipv6/xfrm6_mode_transport.c