summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarmine Scarpitta <carmine.scarpitta@uniroma2.it>2023-01-16 11:24:29 +0100
committerCarmine Scarpitta <carmine.scarpitta@uniroma2.it>2023-08-04 09:29:15 +0200
commit0359045d978b55d7857dce97a58b967f17eaee1e (patch)
tree9440b7fbfd3709da5513dcce961fc6a4c9925b03
parent975ce69a27bb43bc4f06a91beb2d4f853cc30517 (diff)
isisd: Add function to initialize SRv6 DB
Add function to initialize per-area SRv6 DB (`area->srv6db`). Signed-off-by: Carmine Scarpitta <carmine.scarpitta@uniroma2.it>
-rw-r--r--isisd/isis_srv6.c24
-rw-r--r--isisd/isis_srv6.h2
2 files changed, 26 insertions, 0 deletions
diff --git a/isisd/isis_srv6.c b/isisd/isis_srv6.c
index 20fff4ace3..aa52c7c8e9 100644
--- a/isisd/isis_srv6.c
+++ b/isisd/isis_srv6.c
@@ -8,3 +8,27 @@
*/
#include <zebra.h>
+
+#include "isisd/isisd.h"
+#include "isisd/isis_srv6.h"
+
+/**
+ * IS-IS SRv6 initialization for given area.
+ *
+ * @param area IS-IS area
+ */
+void isis_srv6_area_init(struct isis_area *area)
+{
+ struct isis_srv6_db *srv6db;
+
+ if (!area)
+ return;
+
+ srv6db = &area->srv6db;
+
+ sr_debug("ISIS-SRv6 (%s): Initialize Segment Routing SRv6 DB",
+ area->area_tag);
+
+ /* Initialize SRv6 Data Base */
+ memset(srv6db, 0, sizeof(*srv6db));
+}
diff --git a/isisd/isis_srv6.h b/isisd/isis_srv6.h
index 3ae37148e9..7c6738da28 100644
--- a/isisd/isis_srv6.h
+++ b/isisd/isis_srv6.h
@@ -14,4 +14,6 @@
struct isis_srv6_db {
};
+extern void isis_srv6_area_init(struct isis_area *area);
+
#endif /* _FRR_ISIS_SRV6_H */