summaryrefslogtreecommitdiffstats
path: root/ospf6d
diff options
context:
space:
mode:
Diffstat (limited to 'ospf6d')
-rw-r--r--ospf6d/ospf6_top.c5
-rw-r--r--ospf6d/ospf6_top.h3
2 files changed, 6 insertions, 2 deletions
diff --git a/ospf6d/ospf6_top.c b/ospf6d/ospf6_top.c
index 40c612381..95dafff84 100644
--- a/ospf6d/ospf6_top.c
+++ b/ospf6d/ospf6_top.c
@@ -136,7 +136,7 @@ static void ospf6_top_brouter_hook_remove(struct ospf6_route *route)
ospf6_abr_originate_summary(route);
}
-static struct ospf6 *ospf6_create(void)
+static struct ospf6 *ospf6_create(vrf_id_t vrf_id)
{
struct ospf6 *o;
@@ -144,6 +144,7 @@ static struct ospf6 *ospf6_create(void)
/* initialize */
monotime(&o->starttime);
+ o->vrf_id = vrf_id;
o->area_list = list_new();
o->area_list->cmp = ospf6_area_cmp;
o->lsdb = ospf6_lsdb_create(o);
@@ -325,7 +326,7 @@ DEFUN_NOSH (router_ospf6,
OSPF6_STR)
{
if (ospf6 == NULL) {
- ospf6 = ospf6_create();
+ ospf6 = ospf6_create(VRF_DEFAULT);
if (ospf6->router_id == 0)
ospf6_router_id_update();
}
diff --git a/ospf6d/ospf6_top.h b/ospf6d/ospf6_top.h
index 381027dcf..ba41fca65 100644
--- a/ospf6d/ospf6_top.h
+++ b/ospf6d/ospf6_top.h
@@ -31,6 +31,9 @@ struct ospf6_master {
/* OSPFv3 top level data structure */
struct ospf6 {
+ /* The relevant vrf_id */
+ vrf_id_t vrf_id;
+
/* my router id */
uint32_t router_id;