summaryrefslogtreecommitdiffstats
path: root/ospf6d/ospf6_top.h
diff options
context:
space:
mode:
authorChirag Shah <chirag@cumulusnetworks.com>2018-02-27 20:24:16 +0100
committerChirag Shah <chirag@cumulusnetworks.com>2018-03-01 23:19:15 +0100
commit78c6ba61db8a84d1d262a9896e81bea97976753c (patch)
tree607d9fa931ef2de7d3653cc4c27399f4d157f485 /ospf6d/ospf6_top.h
parentMerge pull request #1784 from donaldsharp/documentation (diff)
downloadfrr-78c6ba61db8a84d1d262a9896e81bea97976753c.tar.xz
frr-78c6ba61db8a84d1d262a9896e81bea97976753c.zip
ospf6d: assign zebra router-id to ospf6 instance
Store zebra router-id in global structure. Before router ospf6 instance created, zebra router-id callback called. During ospf6 main execution zebra init happens, but default instance does not execute until cli replay 'router ospf6'. Call ospf6_router_id_change during 'router ospf6' to assign zebra router id to ospf6 instance. Ticket:CM-19937 Testing Done: Assign Loopback /32 (6.6.6.6/32) address, restart frr with (router ospf6 in frr.conf). ospf6 default instance assigned 6.6.6.6 router-id. Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
Diffstat (limited to 'ospf6d/ospf6_top.h')
-rw-r--r--ospf6d/ospf6_top.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/ospf6d/ospf6_top.h b/ospf6d/ospf6_top.h
index d7a3766b8..3ffcad056 100644
--- a/ospf6d/ospf6_top.h
+++ b/ospf6d/ospf6_top.h
@@ -24,6 +24,11 @@
#include "qobj.h"
#include "routemap.h"
+struct ospf6_master {
+
+ uint32_t zebra_router_id;
+};
+
/* OSPFv3 top level data structure */
struct ospf6 {
/* my router id */
@@ -109,10 +114,13 @@ DECLARE_QOBJ_TYPE(ospf6)
/* global pointer for OSPF top data structure */
extern struct ospf6 *ospf6;
+extern struct ospf6_master *om6;
/* prototypes */
+extern void ospf6_master_init(void);
extern void ospf6_top_init(void);
extern void ospf6_delete(struct ospf6 *o);
+extern void ospf6_router_id_update(void);
extern void ospf6_maxage_remove(struct ospf6 *o);