From 53b6bdd5c80016f835f19996a567855fa0739d8d Mon Sep 17 00:00:00 2001
From: TAKAMIYA Noriaki <takamiya@po.ntts.co.jp>
Date: Sat, 24 Feb 2007 02:13:16 +0900
Subject: [KERNELIF] XFRM: Don't use ifindex for acquire policy selector.

Older kernel has used ifindex for acquired policy selector
but it is not required for MIPv6 actually then since 2.6.19
kernel it doesn't support it anymore. This patch disables it.
---
 src/mn.c   |    2 +-
 src/xfrm.c |    6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/mn.c b/src/mn.c
index 6b3e88f..cf62a27 100644
--- a/src/mn.c
+++ b/src/mn.c
@@ -2185,7 +2185,7 @@ void mn_start_ro(struct in6_addr *cn, struct in6_addr *hoa, int iif)
 	pthread_rwlock_wrlock(&mn_lock);
 
 	hai = mn_get_home_addr(hoa);
-	if (!hai || hai->at_home || iif != hai->if_tunnel) {
+	if (!hai || hai->at_home) {
 		pthread_rwlock_unlock(&mn_lock);
 		return;
 	}
diff --git a/src/xfrm.c b/src/xfrm.c
index fd30d93..4330c52 100644
--- a/src/xfrm.c
+++ b/src/xfrm.c
@@ -1143,13 +1143,13 @@ int mn_ro_pol_add(struct home_addr_info *hai, int ifindex, int changed)
 		XDBG("Adding default RO triggering policies for all Correspondent Nodes\n");
 		create_trig_dstopt_tmpl(&otmpl, &in6addr_any, &hai->hoa.addr);
 		set_selector(&in6addr_any, &hai->hoa.addr, 0,
-			     0, 0, ifindex, &sel);
+			     0, 0, 0, &sel);
 		if (xfrm_mip_policy_add(&sel, 0, XFRM_POLICY_OUT,
 					XFRM_POLICY_ALLOW,
 					MIP6_PRIO_RO_TRIG_ANY, &otmpl, 1))
 			return -1;
 		set_selector(&hai->hoa.addr, &in6addr_any,
-			     0, 0, 0, ifindex, &sel);
+			     0, 0, 0, 0, &sel);
 		if (xfrm_mip_policy_add(&sel, 0, XFRM_POLICY_IN,
 					XFRM_POLICY_ALLOW,
 					MIP6_PRIO_RO_TRIG_ANY, &itmpl, 1))
@@ -1697,7 +1697,7 @@ int xfrm_post_ba_mod_bule(struct bulentry *bule)
 	prio = (bule->flags & IP6_MH_BU_HOME ?
 		MIP6_PRIO_HOME_DATA : MIP6_PRIO_RO_BULE_DATA);
 	set_selector(&bule->peer_addr, &bule->hoa, 0, 0, 0,
-		     bule->home->if_tunnel, &sel);
+		     0, &sel);
 	create_dstopt_tmpl(&tmpls[0], &bule->peer_addr, &bule->hoa);
 	return xfrm_mip_policy_add(&sel, 1, XFRM_POLICY_OUT,
 				   XFRM_POLICY_ALLOW, prio, tmpls, 1);
-- 
1.5.0.3

