diff options
| author | Russ White <russ@riw.us> | 2022-01-18 10:12:08 -0500 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-18 10:12:08 -0500 | 
| commit | 18ed776ca29533f6c49479b1a0dd95d36bb6b5ec (patch) | |
| tree | 2b03c65d7b92d5988f660f4f477191e14e6a3cc8 /isisd/isis_cli.c | |
| parent | 05786ac7744a6077a7f5aff9d2bfe1c92e54e17c (diff) | |
| parent | be95145ebc54d0c7e6105fa2de785b5ed37e49a6 (diff) | |
Merge pull request #9938 from Orange-OpenSource/isis_ls
isisd: Add Link State Traffic Engineering support
Diffstat (limited to 'isisd/isis_cli.c')
| -rw-r--r-- | isisd/isis_cli.c | 71 | 
1 files changed, 71 insertions, 0 deletions
diff --git a/isisd/isis_cli.c b/isisd/isis_cli.c index 21162045ad..9feabfa012 100644 --- a/isisd/isis_cli.c +++ b/isisd/isis_cli.c @@ -1140,6 +1140,43 @@ void cli_show_isis_mpls_te_router_addr(struct vty *vty,  		yang_dnode_get_string(dnode, NULL));  } +/* + * XPath: /frr-isisd:isis/instance/mpls-te/router-address-v6 + */ +DEFPY_YANG(isis_mpls_te_router_addr_v6, isis_mpls_te_router_addr_v6_cmd, +      "mpls-te router-address ipv6 X:X::X:X", +      MPLS_TE_STR +      "Stable IP address of the advertising router\n" +      "IPv6 address\n" +      "MPLS-TE router address in IPv6 address format\n") +{ +	nb_cli_enqueue_change(vty, "./mpls-te/router-address-v6", NB_OP_MODIFY, +			      ipv6_str); + +	return nb_cli_apply_changes(vty, NULL); +} + +DEFPY_YANG(no_isis_mpls_te_router_addr_v6, no_isis_mpls_te_router_addr_v6_cmd, +      "no mpls-te router-address ipv6 [X:X::X:X]", +      NO_STR MPLS_TE_STR +      "Delete IP address of the advertising router\n" +      "IPv6 address\n" +      "MPLS-TE router address in IPv6 address format\n") +{ +	nb_cli_enqueue_change(vty, "./mpls-te/router-address-v6", NB_OP_DESTROY, +			      NULL); + +	return nb_cli_apply_changes(vty, NULL); +} + +void cli_show_isis_mpls_te_router_addr_ipv6(struct vty *vty, +					    const struct lyd_node *dnode, +					    bool show_defaults) +{ +	vty_out(vty, " mpls-te router-address ipv6 %s\n", +		yang_dnode_get_string(dnode, NULL)); +} +  DEFPY_YANG(isis_mpls_te_inter_as, isis_mpls_te_inter_as_cmd,        "[no] mpls-te inter-as [level-1|level-1-2|level-2-only]",        NO_STR MPLS_TE_STR @@ -1153,6 +1190,36 @@ DEFPY_YANG(isis_mpls_te_inter_as, isis_mpls_te_inter_as_cmd,  }  /* + * XPath: /frr-isisd:isis/instance/mpls-te/export + */ +DEFPY_YANG(isis_mpls_te_export, isis_mpls_te_export_cmd, "mpls-te export", +      MPLS_TE_STR "Enable export of MPLS-TE Link State information\n") +{ +	nb_cli_enqueue_change(vty, "./mpls-te/export", NB_OP_MODIFY, "true"); + +	return nb_cli_apply_changes(vty, NULL); +} + +DEFPY_YANG(no_isis_mpls_te_export, no_isis_mpls_te_export_cmd, +      "no mpls-te export", +      NO_STR MPLS_TE_STR +      "Disable export of MPLS-TE  Link State information\n") +{ +	nb_cli_enqueue_change(vty, "./mpls-te/export", NB_OP_MODIFY, "false"); + +	return nb_cli_apply_changes(vty, NULL); +} + +void cli_show_isis_mpls_te_export(struct vty *vty, const struct lyd_node *dnode, +				  bool show_defaults) +{ +	if (!yang_dnode_get_bool(dnode, NULL)) +		vty_out(vty, " no"); + +	vty_out(vty, " mpls-te export\n"); +} + +/*   * XPath: /frr-isisd:isis/instance/default-information-originate   */  DEFPY_YANG(isis_default_originate, isis_default_originate_cmd, @@ -3125,7 +3192,11 @@ void isis_cli_init(void)  	install_element(ISIS_NODE, &no_isis_mpls_te_on_cmd);  	install_element(ISIS_NODE, &isis_mpls_te_router_addr_cmd);  	install_element(ISIS_NODE, &no_isis_mpls_te_router_addr_cmd); +	install_element(ISIS_NODE, &isis_mpls_te_router_addr_v6_cmd); +	install_element(ISIS_NODE, &no_isis_mpls_te_router_addr_v6_cmd);  	install_element(ISIS_NODE, &isis_mpls_te_inter_as_cmd); +	install_element(ISIS_NODE, &isis_mpls_te_export_cmd); +	install_element(ISIS_NODE, &no_isis_mpls_te_export_cmd);  	install_element(ISIS_NODE, &isis_default_originate_cmd);  	install_element(ISIS_NODE, &isis_redistribute_cmd);  | 
