diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2007-10-17 21:28:53 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-10-17 21:28:53 -0700 |
commit | c4541b41c0e4b75b11125fed16db642fc03cb31c (patch) | |
tree | 10627bc42cf56fd3f45aa93963d0852dfefa49ab /include/net | |
parent | 04663d0b8b3c8ce3804106279420cfe5bdfcce3c (diff) | |
download | op-kernel-dev-c4541b41c0e4b75b11125fed16db642fc03cb31c.zip op-kernel-dev-c4541b41c0e4b75b11125fed16db642fc03cb31c.tar.gz |
[IPSEC]: Move tunnel parsing for IPv4 out of xfrm4_input
This patch moves the tunnel parsing for IPv4 out of xfrm4_input and into
xfrm4_tunnel. This change is in line with what IPv6 does and will allow
us to merge the two input functions.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/xfrm.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/net/xfrm.h b/include/net/xfrm.h index 0e84484..680739f 100644 --- a/include/net/xfrm.h +++ b/include/net/xfrm.h @@ -1046,7 +1046,15 @@ extern void xfrm_replay_notify(struct xfrm_state *x, int event); extern int xfrm_state_mtu(struct xfrm_state *x, int mtu); extern int xfrm_init_state(struct xfrm_state *x); extern int xfrm_output(struct sk_buff *skb); +extern int xfrm4_rcv_encap(struct sk_buff *skb, int nexthdr, __be32 spi, + int encap_type); extern int xfrm4_rcv(struct sk_buff *skb); + +static inline int xfrm4_rcv_spi(struct sk_buff *skb, int nexthdr, __be32 spi) +{ + return xfrm4_rcv_encap(skb, nexthdr, spi, 0); +} + extern int xfrm4_output(struct sk_buff *skb); extern int xfrm4_tunnel_register(struct xfrm_tunnel *handler, unsigned short family); extern int xfrm4_tunnel_deregister(struct xfrm_tunnel *handler, unsigned short family); |