summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/vnet/ip/ip6_ll_table.c7
-rw-r--r--test/test_ip6.py4
2 files changed, 9 insertions, 2 deletions
diff --git a/src/vnet/ip/ip6_ll_table.c b/src/vnet/ip/ip6_ll_table.c
index b3f42daf26c..3dc251707bb 100644
--- a/src/vnet/ip/ip6_ll_table.c
+++ b/src/vnet/ip/ip6_ll_table.c
@@ -111,8 +111,13 @@ ip6_ll_table_entry_update (const ip6_ll_prefix_t * ilp,
.frp_flags = flags,
.frp_sw_if_index = ilp->ilp_sw_if_index,
.frp_proto = DPO_PROTO_IP6,
+ .frp_fib_index = ~0,
+ .frp_weight = 1,
};
- fib_prefix_t fp;
+ fib_prefix_t fp = { 0 };
+
+ if (flags & FIB_ROUTE_PATH_LOCAL)
+ rpath.frp_addr.ip6 = ilp->ilp_addr;
vec_validate_init_empty (ip6_ll_table.ilt_fibs, ilp->ilp_sw_if_index, ~0);
diff --git a/test/test_ip6.py b/test/test_ip6.py
index 01a6d94288c..38bce973e86 100644
--- a/test/test_ip6.py
+++ b/test/test_ip6.py
@@ -274,7 +274,7 @@ class TestIPv6(TestIPv6ND):
def tearDown(self):
"""Run standard test teardown and log ``show ip6 neighbors``."""
- for i in self.interfaces:
+ for i in reversed(self.interfaces):
i.unconfig_ip6()
i.admin_down()
for i in self.sub_interfaces:
@@ -1100,6 +1100,8 @@ class TestIPv6(TestIPv6ND):
self.pg_start()
subitf = VppDot1QSubint(self, self.pg1, 99)
+ self.interfaces.append(subitf)
+ self.sub_interfaces.append(subitf)
subitf.admin_up()
subitf.config_ip6()