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 + +#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 */