isisd: Add func to request an SRv6 locator chunk

Add a function to ask zebra to allocate a chunk from the SRv6 locator
specified as a parameter.

Signed-off-by: Carmine Scarpitta <carmine.scarpitta@uniroma2.it>
This commit is contained in:
Carmine Scarpitta 2023-02-02 12:54:48 +01:00
parent 2e8d254ac7
commit b822dc4bee
2 changed files with 14 additions and 0 deletions

View File

@ -820,6 +820,18 @@ static int isis_zebra_client_close_notify(ZAPI_CALLBACK_ARGS)
return ret;
}
/**
* Request an SRv6 locator chunk to the SRv6 Manager (zebra) asynchronously.
*
* @param locator_name Name of SRv6 locator
*
* @result 0 on success, -1 otherwise
*/
int isis_zebra_srv6_manager_get_locator_chunk(const char *name)
{
return srv6_manager_get_locator_chunk(zclient, name);
}
static zclient_handler *const isis_handlers[] = {
[ZEBRA_ROUTER_ID_UPDATE] = isis_router_id_update_zebra,
[ZEBRA_INTERFACE_ADDRESS_ADD] = isis_zebra_if_address_add,

View File

@ -57,4 +57,6 @@ void isis_zebra_vrf_register(struct isis *isis);
void isis_zebra_vrf_deregister(struct isis *isis);
int isis_zebra_ls_register(bool up);
extern int isis_zebra_srv6_manager_get_locator_chunk(const char *name);
#endif /* _ZEBRA_ISIS_ZEBRA_H */