From b18e0de1f9630fab8b3d6ffe85c7a6ee35a6fdac Mon Sep 17 00:00:00 2001 From: shwethab Date: Wed, 29 Mar 2017 11:36:37 +0000 Subject: SR replicate mheap corruption fix VPP-672 Change-Id: If1c68fc63fa71fab198f2bf4f79bdd7a9841c2e8 Signed-off-by: shwethab Signed-off-by: Pablo Camarillo --- src/vnet/sr/sr_policy_rewrite.c | 9 --------- src/vnet/sr/sr_steering.c | 6 ++++-- 2 files changed, 4 insertions(+), 11 deletions(-) (limited to 'src/vnet/sr') diff --git a/src/vnet/sr/sr_policy_rewrite.c b/src/vnet/sr/sr_policy_rewrite.c index de6c1616704..61cf4437125 100755 --- a/src/vnet/sr/sr_policy_rewrite.c +++ b/src/vnet/sr/sr_policy_rewrite.c @@ -518,11 +518,6 @@ update_replicate (ip6_sr_policy_t * sr_policy) replicate_multipath_update (&sr_policy->ip6_dpo, ip6_path_vector); if (sr_policy->is_encap) replicate_multipath_update (&sr_policy->ip4_dpo, ip4_path_vector); - - /* Cleanup */ - vec_free (b_path_vector); - vec_free (ip6_path_vector); - vec_free (ip4_path_vector); } /******************************* SR rewrite API *******************************/ @@ -606,10 +601,6 @@ sr_policy_add (ip6_address_t * bsid, ip6_address_t * segments, "SRv6 steering of IP6 prefixes through BSIDs"); sm->fib_table_ip4 = fib_table_create_and_lock (FIB_PROTOCOL_IP6, "SRv6 steering of IP4 prefixes through BSIDs"); - fib_table_flush (sm->fib_table_ip6, FIB_PROTOCOL_IP6, - FIB_SOURCE_SPECIAL); - fib_table_flush (sm->fib_table_ip4, FIB_PROTOCOL_IP6, - FIB_SOURCE_SPECIAL); } /* Create IPv6 FIB for the BindingSID attached to the DPO of the only SL */ diff --git a/src/vnet/sr/sr_steering.c b/src/vnet/sr/sr_steering.c index 1699d888d02..5156b20474c 100755 --- a/src/vnet/sr/sr_steering.c +++ b/src/vnet/sr/sr_steering.c @@ -308,7 +308,8 @@ update_fib: (table_id != (u32) ~ 0 ? table_id : 0)), - &pfx, FIB_SOURCE_CLI, FIB_ENTRY_FLAG_NONE, + &pfx, FIB_SOURCE_SR, + FIB_ENTRY_FLAG_LOOSE_URPF_EXEMPT, FIB_PROTOCOL_IP6, (ip46_address_t *) & sr_policy->bsid, ~0, sm->fib_table_ip6, 1, NULL, @@ -324,7 +325,8 @@ update_fib: (table_id != (u32) ~ 0 ? table_id : 0)), - &pfx, FIB_SOURCE_CLI, FIB_ENTRY_FLAG_NONE, + &pfx, FIB_SOURCE_SR, + FIB_ENTRY_FLAG_LOOSE_URPF_EXEMPT, FIB_PROTOCOL_IP6, (ip46_address_t *) & sr_policy->bsid, ~0, sm->fib_table_ip4, 1, NULL, -- cgit 1.2.3-korg