[XFRM] STATE: Add Mobile IPv6 route optimization protocols to netlink interface.
Add Mobile IPv6 route optimization protocols to netlink interface. Route optimization states carry care-of address. Based on MIPL2 kernel patch. Signed-off-by: Masahide NAKAMURA <nakam@linux-ipv6.org> Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
3d126890dd
commit
e23c7194a8
|
@ -28,6 +28,9 @@
|
||||||
#include <net/xfrm.h>
|
#include <net/xfrm.h>
|
||||||
#include <net/netlink.h>
|
#include <net/netlink.h>
|
||||||
#include <asm/uaccess.h>
|
#include <asm/uaccess.h>
|
||||||
|
#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
|
||||||
|
#include <linux/in6.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
static int verify_one_alg(struct rtattr **xfrma, enum xfrm_attr_type_t type)
|
static int verify_one_alg(struct rtattr **xfrma, enum xfrm_attr_type_t type)
|
||||||
{
|
{
|
||||||
|
@ -173,6 +176,19 @@ static int verify_newsa_info(struct xfrm_usersa_info *p,
|
||||||
goto out;
|
goto out;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
|
||||||
|
case IPPROTO_DSTOPTS:
|
||||||
|
case IPPROTO_ROUTING:
|
||||||
|
if (xfrma[XFRMA_ALG_COMP-1] ||
|
||||||
|
xfrma[XFRMA_ALG_AUTH-1] ||
|
||||||
|
xfrma[XFRMA_ALG_CRYPT-1] ||
|
||||||
|
xfrma[XFRMA_ENCAP-1] ||
|
||||||
|
xfrma[XFRMA_SEC_CTX-1] ||
|
||||||
|
!xfrma[XFRMA_COADDR-1])
|
||||||
|
goto out;
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
|
||||||
default:
|
default:
|
||||||
goto out;
|
goto out;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue