diff options
Diffstat (limited to 'pimd/pim_cmd.c')
| -rw-r--r-- | pimd/pim_cmd.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/pimd/pim_cmd.c b/pimd/pim_cmd.c index f4cec7005b..a34fb344fe 100644 --- a/pimd/pim_cmd.c +++ b/pimd/pim_cmd.c @@ -7624,6 +7624,24 @@ DEFPY(msdp_peer_sa_limit, msdp_peer_sa_limit_cmd, return nb_cli_apply_changes(vty, "%s", xpath); } +DEFPY(msdp_originator_id, msdp_originator_id_cmd, + "[no] msdp originator-id ![A.B.C.D$originator_id]", + NO_STR + CFG_MSDP_STR + "Configure MSDP RP originator\n" + "MSDP RP originator identifier\n") +{ + char xpath_value[XPATH_MAXLEN]; + + snprintf(xpath_value, sizeof(xpath_value), "./msdp/originator-id"); + if (no) + nb_cli_enqueue_change(vty, xpath_value, NB_OP_DESTROY, NULL); + else + nb_cli_enqueue_change(vty, xpath_value, NB_OP_MODIFY, originator_id_str); + + return nb_cli_apply_changes(vty, NULL); +} + static void ip_msdp_show_mesh_group(struct vty *vty, struct pim_msdp_mg *mg, struct json_object *json) { @@ -9038,6 +9056,7 @@ void pim_cmd_init(void) install_element(PIM_NODE, &msdp_log_sa_changes_cmd); install_element(PIM_NODE, &msdp_shutdown_cmd); install_element(PIM_NODE, &msdp_peer_sa_limit_cmd); + install_element(PIM_NODE, &msdp_originator_id_cmd); install_element(PIM_NODE, &pim_bsr_candidate_rp_cmd); install_element(PIM_NODE, &pim_bsr_candidate_rp_group_cmd); |
