pathd: add no pcep command

Add "no pcep" command in segment-routing/traffic-engineering context
to deconfigure the whole pcep configuration (pce-config, pce and pcc).

Signed-off-by: Farid Mihoub <farid.mihoub@6wind.com>
This commit is contained in:
Farid Mihoub 2023-10-31 11:35:29 +01:00
parent 444b08d16a
commit 465130ac2a

View File

@ -1822,6 +1822,35 @@ DEFPY_NOSH(
return CMD_SUCCESS; return CMD_SUCCESS;
} }
DEFPY(
pcep_cli_no_pcep,
pcep_cli_no_pcep_cmd,
"no pcep",
NO_STR
"PCEP configuration\n")
{
/* Delete PCCs */
path_pcep_cli_pcc_delete(vty);
for (int i = 0; i < MAX_PCE; i++) {
/* Delete PCEs */
if (pcep_g->pce_opts_cli[i] != NULL) {
XFREE(MTYPE_PCEP, pcep_g->pce_opts_cli[i]);
pcep_g->pce_opts_cli[i] = NULL;
pcep_g->num_pce_opts_cli--;
}
/* Delete PCE-CONFIGs */
if (pcep_g->config_group_opts[i] != NULL) {
XFREE(MTYPE_PCEP, pcep_g->config_group_opts[i]);
pcep_g->config_group_opts[i] = NULL;
pcep_g->num_config_group_opts--;
}
}
return CMD_SUCCESS;
}
DEFPY_NOSH( DEFPY_NOSH(
pcep_cli_pcep_pce_config, pcep_cli_pcep_pce_config,
pcep_cli_pcep_pce_config_cmd, pcep_cli_pcep_pce_config_cmd,
@ -2092,6 +2121,7 @@ void pcep_cli_init(void)
install_default(PCEP_NODE); install_default(PCEP_NODE);
install_element(SR_TRAFFIC_ENG_NODE, &pcep_cli_pcep_cmd); install_element(SR_TRAFFIC_ENG_NODE, &pcep_cli_pcep_cmd);
install_element(SR_TRAFFIC_ENG_NODE, &pcep_cli_no_pcep_cmd);
/* PCEP configuration group related configuration commands */ /* PCEP configuration group related configuration commands */
install_element(PCEP_NODE, &pcep_cli_pcep_pce_config_cmd); install_element(PCEP_NODE, &pcep_cli_pcep_pce_config_cmd);