summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarmine Scarpitta <carmine.scarpitta@uniroma2.it>2022-11-30 15:09:00 +0100
committerCarmine Scarpitta <carmine.scarpitta@uniroma2.it>2023-08-04 09:29:16 +0200
commit5e21aaf1e7249ff4edf2bef2802d5b982fc2a60d (patch)
tree3ed472c4b48388459386ed51bdb43f0e2421c48a
parent5fb8d335cac87d39250f61969cd749169b19fe5c (diff)
isisd: Add function to terminate the SRv6 module
`isis_srv6_area_term()` cleans up SRv6 information for a specific IS-IS area. This commit adds a new function `isis_srv6_term()` that will be used to perform global SRv6 cleanup. Signed-off-by: Carmine Scarpitta <carmine.scarpitta@uniroma2.it>
-rw-r--r--isisd/isis_main.c1
-rw-r--r--isisd/isis_srv6.c7
-rw-r--r--isisd/isis_srv6.h1
3 files changed, 9 insertions, 0 deletions
diff --git a/isisd/isis_main.c b/isisd/isis_main.c
index 2a93c3fb22..da4c7bc00a 100644
--- a/isisd/isis_main.c
+++ b/isisd/isis_main.c
@@ -93,6 +93,7 @@ static __attribute__((__noreturn__)) void terminate(int i)
{
isis_terminate();
isis_sr_term();
+ isis_srv6_term();
isis_zebra_stop();
exit(i);
}
diff --git a/isisd/isis_srv6.c b/isisd/isis_srv6.c
index a506b0770d..842e90dcc5 100644
--- a/isisd/isis_srv6.c
+++ b/isisd/isis_srv6.c
@@ -52,3 +52,10 @@ void isis_srv6_area_term(struct isis_area *area)
void isis_srv6_init(void)
{
}
+
+/**
+ * IS-IS SRv6 global terminate.
+ */
+void isis_srv6_term(void)
+{
+}
diff --git a/isisd/isis_srv6.h b/isisd/isis_srv6.h
index 8cd9c71574..0a493c8c7e 100644
--- a/isisd/isis_srv6.h
+++ b/isisd/isis_srv6.h
@@ -24,5 +24,6 @@ extern void isis_srv6_area_init(struct isis_area *area);
extern void isis_srv6_area_term(struct isis_area *area);
void isis_srv6_init(void);
+void isis_srv6_term(void);
#endif /* _FRR_ISIS_SRV6_H */