MIP6: Transformation support mobility header.
Subsystems (3)
PATCH 20/20 MIP6: Transformation support mobility header.
Transformation support mobility header.
Based on MIPL2 kernel patch.
--- include/net/xfrm.h | 5 +++++ net/ipv6/xfrm6_policy.c | 15 +++++++++++++++ 2 files changed, 20 insertions(+), 0 deletions(-)
include/net/xfrm.h +5 -0
@@ -587,6 +587,11 @@ u16 xfrm_flowi_sport(struct flowi *fl)case IPPROTO_ICMPV6 : port =htons (fl->fl_icmp_type);break ; +#ifdef CONFIG_IPV6_MIP6 +case IPPROTO_MH : + port =htons (fl->fl_mh_type); +break ; +#endif default : port =0 ;/*XXX*/ }
net/ipv6/xfrm6_policy.c +15 -0
@@ -19,6 +19,9 @@ #include <net/xfrm.h>#include <net/ip.h> #include <net/ipv6.h> #include <net/ip6_route.h> +#ifdef CONFIG_IPV6_MIP6 +#include <net/mip6.h> +#endif static struct dst_ops xfrm6_dst_ops;static struct xfrm_policy_afinfo xfrm6_policy_afinfo;
@@ -247,6 +250,18 @@ _decode_session6(struct sk_buff *skb, st fl->proto = nexthdr;return ; +#ifdef CONFIG_IPV6_MIP6 +case IPPROTO_MH : +if (pskb_may_pull (skb, skb->nh.raw + offset +3 - skb->data)) { +struct ip6_mh *mh; + mh = (struct ip6_mh *)exthdr; + + fl->fl_mh_type = mh->ip6mh_type; + } + fl->proto = nexthdr; +return ; +#endif +/* XXX Why are there these headers? */ case IPPROTO_AH :case IPPROTO_ESP :
Signature · 1 line
1.4.1