diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2007-10-18 00:29:25 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-10-18 00:29:25 -0400 |
commit | 33b5ecb8f64706d1ed472dcb44162ab3a7345724 (patch) | |
tree | 065d9cc0592bc08db34a562ff8753279cf52509c /net/ipv6/xfrm6_tunnel.c | |
parent | c4541b41c0e4b75b11125fed16db642fc03cb31c (diff) |
[IPSEC]: Get nexthdr from caller in xfrm6_rcv_spi
Currently xfrm6_rcv_spi gets the nexthdr value itself from the packet.
This means that we need to fix up the value in case we have a 4-on-6
tunnel. Moving this logic into the caller simplifies things and allows
us to merge the code with IPv4.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6/xfrm6_tunnel.c')
-rw-r--r-- | net/ipv6/xfrm6_tunnel.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/xfrm6_tunnel.c b/net/ipv6/xfrm6_tunnel.c index 6c67ac197ee0..fae90ff31087 100644 --- a/net/ipv6/xfrm6_tunnel.c +++ b/net/ipv6/xfrm6_tunnel.c | |||
@@ -257,7 +257,7 @@ static int xfrm6_tunnel_rcv(struct sk_buff *skb) | |||
257 | __be32 spi; | 257 | __be32 spi; |
258 | 258 | ||
259 | spi = xfrm6_tunnel_spi_lookup((xfrm_address_t *)&iph->saddr); | 259 | spi = xfrm6_tunnel_spi_lookup((xfrm_address_t *)&iph->saddr); |
260 | return xfrm6_rcv_spi(skb, spi) > 0 ? : 0; | 260 | return xfrm6_rcv_spi(skb, IPPROTO_IPV6, spi) > 0 ? : 0; |
261 | } | 261 | } |
262 | 262 | ||
263 | static int xfrm6_tunnel_err(struct sk_buff *skb, struct inet6_skb_parm *opt, | 263 | static int xfrm6_tunnel_err(struct sk_buff *skb, struct inet6_skb_parm *opt, |