summaryrefslogtreecommitdiff
path: root/isisd/isis_zebra.c
diff options
context:
space:
mode:
authorCarmine Scarpitta <cscarpit@cisco.com>2024-05-09 09:17:49 +0200
committerCarmine Scarpitta <cscarpit@cisco.com>2024-06-18 18:33:29 +0200
commit9ae38eede814b14051179fb96f9d77ac04a45bf9 (patch)
treef6d1049d09c8a4097caa11c78d28f4666d5ce61e /isisd/isis_zebra.c
parent3fce2928e293c59bb63ef76455525dca602385dd (diff)
isisd: Deal with SRv6 locator instead of chunk
Currently, when SRv6 is enabled in IS-IS, IS-IS requests a locator chunk from Zebra. Zebra assigns a locator chunk to IS-IS, and then IS-IS can allocate SIDs from the locator chunk. Recently, the implementation of SRv6 in Zebra has been improved, and a new API has been introduced for obtaining/releasing the SIDs. Now, the daemons no longer need to request a chunk. Instead, the daemons interact with Zebra to obtain information about the locator and subsequently to allocate/release the SIDs. This commit extends IS-IS to use the new SRv6 API. In particular, it removes the chunk throughout the IS-IS code and modifies IS-IS to request/save/advertise the locator instead of the chunk. Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
Diffstat (limited to 'isisd/isis_zebra.c')
-rw-r--r--isisd/isis_zebra.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/isisd/isis_zebra.c b/isisd/isis_zebra.c
index 226ee56796..44ef182ba9 100644
--- a/isisd/isis_zebra.c
+++ b/isisd/isis_zebra.c
@@ -1369,6 +1369,9 @@ static int isis_zebra_process_srv6_locator_delete(ZAPI_CALLBACK_ARGS)
}
}
+ srv6_locator_free(area->srv6db.srv6_locator);
+ area->srv6db.srv6_locator = NULL;
+
/* Regenerate LSPs to advertise that the locator no longer
* exists */
lsp_regenerate_schedule(area, area->is_type, 0);