diff options
Diffstat (limited to 'isisd/isis_cli.c')
| -rw-r--r-- | isisd/isis_cli.c | 186 |
1 files changed, 110 insertions, 76 deletions
diff --git a/isisd/isis_cli.c b/isisd/isis_cli.c index 28b98610b2..cd75116c50 100644 --- a/isisd/isis_cli.c +++ b/isisd/isis_cli.c @@ -46,7 +46,7 @@ /* * XPath: /frr-isisd:isis/instance */ -DEFPY_NOSH(router_isis, router_isis_cmd, "router isis WORD$tag", +DEFPY_YANG_NOSH(router_isis, router_isis_cmd, "router isis WORD$tag", ROUTER_STR "ISO IS-IS\n" "ISO Routing area tag\n") @@ -72,7 +72,7 @@ DEFPY_NOSH(router_isis, router_isis_cmd, "router isis WORD$tag", return ret; } -DEFPY(no_router_isis, no_router_isis_cmd, "no router isis WORD$tag", +DEFPY_YANG(no_router_isis, no_router_isis_cmd, "no router isis WORD$tag", NO_STR ROUTER_STR "ISO IS-IS\n" "ISO Routing area tag\n") @@ -126,7 +126,7 @@ void cli_show_router_isis(struct vty *vty, struct lyd_node *dnode, * XPath: /frr-interface:lib/interface/frr-isisd:isis/ipv6-routing * XPath: /frr-isisd:isis/instance */ -DEFPY(ip_router_isis, ip_router_isis_cmd, "ip router isis WORD$tag", +DEFPY_YANG(ip_router_isis, ip_router_isis_cmd, "ip router isis WORD$tag", "Interface Internet Protocol config commands\n" "IP router interface commands\n" "IS-IS routing protocol\n" @@ -196,7 +196,7 @@ DEFPY(ip_router_isis, ip_router_isis_cmd, "ip router isis WORD$tag", return nb_cli_apply_changes(vty, NULL); } -DEFPY(ip6_router_isis, ip6_router_isis_cmd, "ipv6 router isis WORD$tag", +DEFPY_YANG(ip6_router_isis, ip6_router_isis_cmd, "ipv6 router isis WORD$tag", "Interface Internet Protocol config commands\n" "IP router interface commands\n" "IS-IS routing protocol\n" @@ -266,7 +266,7 @@ DEFPY(ip6_router_isis, ip6_router_isis_cmd, "ipv6 router isis WORD$tag", return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_ip_router_isis, no_ip_router_isis_cmd, +DEFPY_YANG(no_ip_router_isis, no_ip_router_isis_cmd, "no <ip|ipv6>$ip router isis [WORD]$tag", NO_STR "Interface Internet Protocol config commands\n" @@ -327,11 +327,10 @@ void cli_show_ip_isis_ipv6(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/bfd-monitoring */ -DEFPY(isis_bfd, +DEFPY_YANG(isis_bfd, isis_bfd_cmd, "[no] isis bfd", - NO_STR - PROTO_HELP + NO_STR PROTO_HELP "Enable BFD support\n") { const struct lyd_node *dnode; @@ -343,25 +342,59 @@ DEFPY(isis_bfd, return CMD_SUCCESS; } - nb_cli_enqueue_change(vty, "./frr-isisd:isis/bfd-monitoring", + nb_cli_enqueue_change(vty, "./frr-isisd:isis/bfd-monitoring/enabled", NB_OP_MODIFY, no ? "false" : "true"); return nb_cli_apply_changes(vty, NULL); } +/* + * XPath: /frr-interface:lib/interface/frr-isisd:isis/bfd-monitoring/profile + */ +DEFPY_YANG(isis_bfd_profile, + isis_bfd_profile_cmd, + "[no] isis bfd profile WORD", + NO_STR PROTO_HELP + "Enable BFD support\n" + "Use a pre-configured profile\n" + "Profile name\n") +{ + const struct lyd_node *dnode; + + dnode = yang_dnode_get(vty->candidate_config->dnode, + "%s/frr-isisd:isis", VTY_CURR_XPATH); + if (dnode == NULL) { + vty_out(vty, "ISIS is not enabled on this circuit\n"); + return CMD_SUCCESS; + } + + nb_cli_enqueue_change(vty, "./frr-isisd:isis/bfd-monitoring/profile", + NB_OP_MODIFY, no ? NULL : profile); + + return nb_cli_apply_changes(vty, NULL); +} + void cli_show_ip_isis_bfd_monitoring(struct vty *vty, struct lyd_node *dnode, bool show_defaults) { - if (!yang_dnode_get_bool(dnode, NULL)) + const char *profile; + + if (!yang_dnode_get_bool(dnode, "./enabled")) vty_out(vty, " no"); vty_out(vty, " isis bfd\n"); + + if (yang_dnode_exists(dnode, "./profile")) { + profile = yang_dnode_get_string(dnode, "./profile"); + if (profile[0] != '\0') + vty_out(vty, " isis bfd profile %s\n", profile); + } } /* * XPath: /frr-isisd:isis/instance/area-address */ -DEFPY(net, net_cmd, "[no] net WORD", +DEFPY_YANG(net, net_cmd, "[no] net WORD", "Remove an existing Network Entity Title for this process\n" "A Network Entity Title for this process (OSI only)\n" "XX.XXXX. ... .XXX.XX Network entity title (NET)\n") @@ -381,7 +414,7 @@ void cli_show_isis_area_address(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/is-type */ -DEFPY(is_type, is_type_cmd, "is-type <level-1|level-1-2|level-2-only>$level", +DEFPY_YANG(is_type, is_type_cmd, "is-type <level-1|level-1-2|level-2-only>$level", "IS Level for this routing process (OSI only)\n" "Act as a station router only\n" "Act as both a station router and an area router\n" @@ -394,7 +427,7 @@ DEFPY(is_type, is_type_cmd, "is-type <level-1|level-1-2|level-2-only>$level", return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_is_type, no_is_type_cmd, +DEFPY_YANG(no_is_type, no_is_type_cmd, "no is-type [<level-1|level-1-2|level-2-only>]", NO_STR "IS Level for this routing process (OSI only)\n" @@ -428,7 +461,7 @@ void cli_show_isis_is_type(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/dynamic-hostname */ -DEFPY(dynamic_hostname, dynamic_hostname_cmd, "[no] hostname dynamic", +DEFPY_YANG(dynamic_hostname, dynamic_hostname_cmd, "[no] hostname dynamic", NO_STR "Dynamic hostname for IS-IS\n" "Dynamic hostname\n") @@ -451,7 +484,7 @@ void cli_show_isis_dynamic_hostname(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/overload */ -DEFPY(set_overload_bit, set_overload_bit_cmd, "[no] set-overload-bit", +DEFPY_YANG(set_overload_bit, set_overload_bit_cmd, "[no] set-overload-bit", "Reset overload bit to accept transit traffic\n" "Set overload bit to avoid any transit traffic\n") { @@ -472,7 +505,7 @@ void cli_show_isis_overload(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/attached */ -DEFPY(set_attached_bit, set_attached_bit_cmd, "[no] set-attached-bit", +DEFPY_YANG(set_attached_bit, set_attached_bit_cmd, "[no] set-attached-bit", "Reset attached bit\n" "Set attached bit to identify as L1/L2 router for inter-area traffic\n") { @@ -493,7 +526,7 @@ void cli_show_isis_attached(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/metric-style */ -DEFPY(metric_style, metric_style_cmd, +DEFPY_YANG(metric_style, metric_style_cmd, "metric-style <narrow|transition|wide>$style", "Use old-style (ISO 10589) or new-style packet formats\n" "Use old style of TLVs with narrow metric\n" @@ -505,7 +538,7 @@ DEFPY(metric_style, metric_style_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_metric_style, no_metric_style_cmd, +DEFPY_YANG(no_metric_style, no_metric_style_cmd, "no metric-style [narrow|transition|wide]", NO_STR "Use old-style (ISO 10589) or new-style packet formats\n" @@ -539,7 +572,7 @@ void cli_show_isis_metric_style(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/area-password */ -DEFPY(area_passwd, area_passwd_cmd, +DEFPY_YANG(area_passwd, area_passwd_cmd, "area-password <clear|md5>$pwd_type WORD$pwd [authenticate snp <send-only|validate>$snp]", "Configure the authentication password for an area\n" "Clear-text authentication type\n" @@ -578,7 +611,7 @@ void cli_show_isis_area_pwd(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/domain-password */ -DEFPY(domain_passwd, domain_passwd_cmd, +DEFPY_YANG(domain_passwd, domain_passwd_cmd, "domain-password <clear|md5>$pwd_type WORD$pwd [authenticate snp <send-only|validate>$snp]", "Set the authentication password for a routing domain\n" "Clear-text authentication type\n" @@ -600,7 +633,7 @@ DEFPY(domain_passwd, domain_passwd_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_area_passwd, no_area_passwd_cmd, +DEFPY_YANG(no_area_passwd, no_area_passwd_cmd, "no <area-password|domain-password>$cmd", NO_STR "Configure the authentication password for an area\n" @@ -629,7 +662,7 @@ void cli_show_isis_domain_pwd(struct vty *vty, struct lyd_node *dnode, * XPath: /frr-isisd:isis/instance/lsp/timers/level-1/generation-interval * XPath: /frr-isisd:isis/instance/lsp/timers/level-2/generation-interval */ -DEFPY(lsp_gen_interval, lsp_gen_interval_cmd, +DEFPY_YANG(lsp_gen_interval, lsp_gen_interval_cmd, "lsp-gen-interval [level-1|level-2]$level (1-120)$val", "Minimum interval between regenerating same LSP\n" "Set interval for level 1 only\n" @@ -648,7 +681,7 @@ DEFPY(lsp_gen_interval, lsp_gen_interval_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_lsp_gen_interval, no_lsp_gen_interval_cmd, +DEFPY_YANG(no_lsp_gen_interval, no_lsp_gen_interval_cmd, "no lsp-gen-interval [level-1|level-2]$level [(1-120)]", NO_STR "Minimum interval between regenerating same LSP\n" @@ -672,7 +705,7 @@ DEFPY(no_lsp_gen_interval, no_lsp_gen_interval_cmd, * XPath: /frr-isisd:isis/instance/lsp/timers/level-1/refresh-interval * XPath: /frr-isisd:isis/instance/lsp/timers/level-2/refresh-interval */ -DEFPY(lsp_refresh_interval, lsp_refresh_interval_cmd, +DEFPY_YANG(lsp_refresh_interval, lsp_refresh_interval_cmd, "lsp-refresh-interval [level-1|level-2]$level (1-65235)$val", "LSP refresh interval\n" "LSP refresh interval for Level 1 only\n" @@ -691,7 +724,7 @@ DEFPY(lsp_refresh_interval, lsp_refresh_interval_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_lsp_refresh_interval, no_lsp_refresh_interval_cmd, +DEFPY_YANG(no_lsp_refresh_interval, no_lsp_refresh_interval_cmd, "no lsp-refresh-interval [level-1|level-2]$level [(1-65235)]", NO_STR "LSP refresh interval\n" @@ -716,7 +749,7 @@ DEFPY(no_lsp_refresh_interval, no_lsp_refresh_interval_cmd, * XPath: /frr-isisd:isis/instance/lsp/timers/level-1/maximum-lifetime */ -DEFPY(max_lsp_lifetime, max_lsp_lifetime_cmd, +DEFPY_YANG(max_lsp_lifetime, max_lsp_lifetime_cmd, "max-lsp-lifetime [level-1|level-2]$level (350-65535)$val", "Maximum LSP lifetime\n" "Maximum LSP lifetime for Level 1 only\n" @@ -735,7 +768,7 @@ DEFPY(max_lsp_lifetime, max_lsp_lifetime_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_max_lsp_lifetime, no_max_lsp_lifetime_cmd, +DEFPY_YANG(no_max_lsp_lifetime, no_max_lsp_lifetime_cmd, "no max-lsp-lifetime [level-1|level-2]$level [(350-65535)]", NO_STR "Maximum LSP lifetime\n" @@ -759,7 +792,7 @@ DEFPY(no_max_lsp_lifetime, no_max_lsp_lifetime_cmd, * XPath: /frr-isisd:isis/instance/lsp/timers */ -DEFPY(lsp_timers, lsp_timers_cmd, +DEFPY_YANG(lsp_timers, lsp_timers_cmd, "lsp-timers [level-1|level-2]$level gen-interval (1-120)$gen refresh-interval (1-65235)$refresh max-lifetime (350-65535)$lifetime", "LSP-related timers\n" "LSP-related timers for Level 1 only\n" @@ -797,7 +830,7 @@ DEFPY(lsp_timers, lsp_timers_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_lsp_timers, no_lsp_timers_cmd, +DEFPY_YANG(no_lsp_timers, no_lsp_timers_cmd, "no lsp-timers [level-1|level-2]$level [gen-interval (1-120) refresh-interval (1-65235) max-lifetime (350-65535)]", NO_STR "LSP-related timers\n" @@ -869,7 +902,7 @@ void cli_show_isis_lsp_timers(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/lsp/mtu */ -DEFPY(area_lsp_mtu, area_lsp_mtu_cmd, "lsp-mtu (128-4352)$val", +DEFPY_YANG(area_lsp_mtu, area_lsp_mtu_cmd, "lsp-mtu (128-4352)$val", "Configure the maximum size of generated LSPs\n" "Maximum size of generated LSPs\n") { @@ -878,7 +911,7 @@ DEFPY(area_lsp_mtu, area_lsp_mtu_cmd, "lsp-mtu (128-4352)$val", return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_area_lsp_mtu, no_area_lsp_mtu_cmd, "no lsp-mtu [(128-4352)]", +DEFPY_YANG(no_area_lsp_mtu, no_area_lsp_mtu_cmd, "no lsp-mtu [(128-4352)]", NO_STR "Configure the maximum size of generated LSPs\n" "Maximum size of generated LSPs\n") @@ -897,7 +930,7 @@ void cli_show_isis_lsp_mtu(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/spf/minimum-interval */ -DEFPY(spf_interval, spf_interval_cmd, +DEFPY_YANG(spf_interval, spf_interval_cmd, "spf-interval [level-1|level-2]$level (1-120)$val", "Minimum interval between SPF calculations\n" "Set interval for level 1 only\n" @@ -914,7 +947,7 @@ DEFPY(spf_interval, spf_interval_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_spf_interval, no_spf_interval_cmd, +DEFPY_YANG(no_spf_interval, no_spf_interval_cmd, "no spf-interval [level-1|level-2]$level [(1-120)]", NO_STR "Minimum interval between SPF calculations\n" @@ -949,7 +982,7 @@ void cli_show_isis_spf_min_interval(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/spf/ietf-backoff-delay */ -DEFPY(spf_delay_ietf, spf_delay_ietf_cmd, +DEFPY_YANG(spf_delay_ietf, spf_delay_ietf_cmd, "spf-delay-ietf init-delay (0-60000) short-delay (0-60000) long-delay (0-60000) holddown (0-60000) time-to-learn (0-60000)", "IETF SPF delay algorithm\n" "Delay used while in QUIET state\n" @@ -979,7 +1012,7 @@ DEFPY(spf_delay_ietf, spf_delay_ietf_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_spf_delay_ietf, no_spf_delay_ietf_cmd, +DEFPY_YANG(no_spf_delay_ietf, no_spf_delay_ietf_cmd, "no spf-delay-ietf [init-delay (0-60000) short-delay (0-60000) long-delay (0-60000) holddown (0-60000) time-to-learn (0-60000)]", NO_STR "IETF SPF delay algorithm\n" @@ -1015,7 +1048,7 @@ void cli_show_isis_spf_ietf_backoff(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/purge-originator */ -DEFPY(area_purge_originator, area_purge_originator_cmd, "[no] purge-originator", +DEFPY_YANG(area_purge_originator, area_purge_originator_cmd, "[no] purge-originator", NO_STR "Use the RFC 6232 purge-originator\n") { nb_cli_enqueue_change(vty, "./purge-originator", NB_OP_MODIFY, @@ -1035,7 +1068,7 @@ void cli_show_isis_purge_origin(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/mpls-te */ -DEFPY(isis_mpls_te_on, isis_mpls_te_on_cmd, "mpls-te on", +DEFPY_YANG(isis_mpls_te_on, isis_mpls_te_on_cmd, "mpls-te on", MPLS_TE_STR "Enable the MPLS-TE functionality\n") { nb_cli_enqueue_change(vty, "./mpls-te", NB_OP_CREATE, @@ -1044,7 +1077,7 @@ DEFPY(isis_mpls_te_on, isis_mpls_te_on_cmd, "mpls-te on", return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_mpls_te_on, no_isis_mpls_te_on_cmd, "no mpls-te [on]", +DEFPY_YANG(no_isis_mpls_te_on, no_isis_mpls_te_on_cmd, "no mpls-te [on]", NO_STR "Disable the MPLS-TE functionality\n" "Disable the MPLS-TE functionality\n") @@ -1064,7 +1097,7 @@ void cli_show_isis_mpls_te(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/mpls-te/router-address */ -DEFPY(isis_mpls_te_router_addr, isis_mpls_te_router_addr_cmd, +DEFPY_YANG(isis_mpls_te_router_addr, isis_mpls_te_router_addr_cmd, "mpls-te router-address A.B.C.D", MPLS_TE_STR "Stable IP address of the advertising router\n" @@ -1076,7 +1109,7 @@ DEFPY(isis_mpls_te_router_addr, isis_mpls_te_router_addr_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_mpls_te_router_addr, no_isis_mpls_te_router_addr_cmd, +DEFPY_YANG(no_isis_mpls_te_router_addr, no_isis_mpls_te_router_addr_cmd, "no mpls-te router-address [A.B.C.D]", NO_STR MPLS_TE_STR "Delete IP address of the advertising router\n" @@ -1095,7 +1128,7 @@ void cli_show_isis_mpls_te_router_addr(struct vty *vty, struct lyd_node *dnode, yang_dnode_get_string(dnode, NULL)); } -DEFPY(isis_mpls_te_inter_as, isis_mpls_te_inter_as_cmd, +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 "Configure MPLS-TE Inter-AS support\n" @@ -1110,7 +1143,7 @@ DEFPY(isis_mpls_te_inter_as, isis_mpls_te_inter_as_cmd, /* * XPath: /frr-isisd:isis/instance/default-information-originate */ -DEFPY(isis_default_originate, isis_default_originate_cmd, +DEFPY_YANG(isis_default_originate, isis_default_originate_cmd, "[no] default-information originate <ipv4|ipv6>$ip <level-1|level-2>$level [always]$always [{metric (0-16777215)$metric|route-map WORD$rmap}]", NO_STR "Control distribution of default information\n" @@ -1186,7 +1219,7 @@ void cli_show_isis_def_origin_ipv6(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/redistribute */ -DEFPY(isis_redistribute, isis_redistribute_cmd, +DEFPY_YANG(isis_redistribute, isis_redistribute_cmd, "[no] redistribute <ipv4|ipv6>$ip " PROTO_REDIST_STR "$proto <level-1|level-2>$level [{metric (0-16777215)|route-map WORD}]", NO_STR REDIST_STR @@ -1245,7 +1278,7 @@ void cli_show_isis_redistribute_ipv6(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/multi-topology */ -DEFPY(isis_topology, isis_topology_cmd, +DEFPY_YANG(isis_topology, isis_topology_cmd, "[no] topology <ipv4-unicast|ipv4-mgmt|ipv6-unicast|ipv4-multicast|ipv6-multicast|ipv6-mgmt|ipv6-dstsrc>$topology [overload]$overload", NO_STR "Configure IS-IS topologies\n" @@ -1346,7 +1379,7 @@ void cli_show_isis_mt_ipv6_dstsrc(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/segment-routing/enabled */ -DEFPY (isis_sr_enable, +DEFPY_YANG (isis_sr_enable, isis_sr_enable_cmd, "segment-routing on", SR_STR @@ -1358,7 +1391,7 @@ DEFPY (isis_sr_enable, return nb_cli_apply_changes(vty, NULL); } -DEFPY (no_isis_sr_enable, +DEFPY_YANG (no_isis_sr_enable, no_isis_sr_enable_cmd, "no segment-routing [on]", NO_STR @@ -1383,7 +1416,7 @@ void cli_show_isis_sr_enabled(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/segment-routing/srgb */ -DEFPY (isis_sr_global_block_label_range, +DEFPY_YANG (isis_sr_global_block_label_range, isis_sr_global_block_label_range_cmd, "segment-routing global-block (16-1048575)$lower_bound (16-1048575)$upper_bound", SR_STR @@ -1399,7 +1432,7 @@ DEFPY (isis_sr_global_block_label_range, return nb_cli_apply_changes(vty, NULL); } -DEFPY (no_isis_sr_global_block_label_range, +DEFPY_YANG (no_isis_sr_global_block_label_range, no_isis_sr_global_block_label_range_cmd, "no segment-routing global-block [(16-1048575) (16-1048575)]", NO_STR @@ -1427,7 +1460,7 @@ void cli_show_isis_srgb(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/segment-routing/srlb */ -DEFPY (isis_sr_local_block_label_range, +DEFPY_YANG (isis_sr_local_block_label_range, isis_sr_local_block_label_range_cmd, "segment-routing local-block (16-1048575)$lower_bound (16-1048575)$upper_bound", SR_STR @@ -1443,7 +1476,7 @@ DEFPY (isis_sr_local_block_label_range, return nb_cli_apply_changes(vty, NULL); } -DEFPY (no_isis_sr_local_block_label_range, +DEFPY_YANG (no_isis_sr_local_block_label_range, no_isis_sr_local_block_label_range_cmd, "no segment-routing local-block [(16-1048575) (16-1048575)]", NO_STR @@ -1471,7 +1504,7 @@ void cli_show_isis_srlb(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/segment-routing/msd/node-msd */ -DEFPY (isis_sr_node_msd, +DEFPY_YANG (isis_sr_node_msd, isis_sr_node_msd_cmd, "segment-routing node-msd (1-16)$msd", SR_STR @@ -1484,7 +1517,7 @@ DEFPY (isis_sr_node_msd, return nb_cli_apply_changes(vty, NULL); } -DEFPY (no_isis_sr_node_msd, +DEFPY_YANG (no_isis_sr_node_msd, no_isis_sr_node_msd_cmd, "no segment-routing node-msd [(1-16)]", NO_STR @@ -1508,7 +1541,7 @@ void cli_show_isis_node_msd(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/segment-routing/prefix-sid-map/prefix-sid */ -DEFPY (isis_sr_prefix_sid, +DEFPY_YANG (isis_sr_prefix_sid, isis_sr_prefix_sid_cmd, "segment-routing prefix\ <A.B.C.D/M|X:X::X:X/M>$prefix\ @@ -1547,7 +1580,7 @@ DEFPY (isis_sr_prefix_sid, prefix_str); } -DEFPY (no_isis_sr_prefix_sid, +DEFPY_YANG (no_isis_sr_prefix_sid, no_isis_sr_prefix_sid_cmd, "no segment-routing prefix <A.B.C.D/M|X:X::X:X/M>$prefix\ [<absolute$sid_type (16-1048575)|index (0-65535)> [<no-php-flag|explicit-null>]]", @@ -1599,7 +1632,7 @@ void cli_show_isis_prefix_sid(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/passive */ -DEFPY(isis_passive, isis_passive_cmd, "[no] isis passive", +DEFPY_YANG(isis_passive, isis_passive_cmd, "[no] isis passive", NO_STR "IS-IS routing protocol\n" "Configure the passive mode for interface\n") @@ -1622,7 +1655,7 @@ void cli_show_ip_isis_passive(struct vty *vty, struct lyd_node *dnode, * XPath: /frr-interface:lib/interface/frr-isisd:isis/password */ -DEFPY(isis_passwd, isis_passwd_cmd, "isis password <md5|clear>$type WORD$pwd", +DEFPY_YANG(isis_passwd, isis_passwd_cmd, "isis password <md5|clear>$type WORD$pwd", "IS-IS routing protocol\n" "Configure the authentication password for a circuit\n" "HMAC-MD5 authentication\n" @@ -1639,7 +1672,7 @@ DEFPY(isis_passwd, isis_passwd_cmd, "isis password <md5|clear>$type WORD$pwd", return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_passwd, no_isis_passwd_cmd, "no isis password [<md5|clear> WORD]", +DEFPY_YANG(no_isis_passwd, no_isis_passwd_cmd, "no isis password [<md5|clear> WORD]", NO_STR "IS-IS routing protocol\n" "Configure the authentication password for a circuit\n" @@ -1664,7 +1697,7 @@ void cli_show_ip_isis_password(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/metric */ -DEFPY(isis_metric, isis_metric_cmd, +DEFPY_YANG(isis_metric, isis_metric_cmd, "isis metric [level-1|level-2]$level (0-16777215)$met", "IS-IS routing protocol\n" "Set default metric for circuit\n" @@ -1682,7 +1715,7 @@ DEFPY(isis_metric, isis_metric_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_metric, no_isis_metric_cmd, +DEFPY_YANG(no_isis_metric, no_isis_metric_cmd, "no isis metric [level-1|level-2]$level [(0-16777215)]", NO_STR "IS-IS routing protocol\n" @@ -1718,7 +1751,7 @@ void cli_show_ip_isis_metric(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/hello/interval */ -DEFPY(isis_hello_interval, isis_hello_interval_cmd, +DEFPY_YANG(isis_hello_interval, isis_hello_interval_cmd, "isis hello-interval [level-1|level-2]$level (1-600)$intv", "IS-IS routing protocol\n" "Set Hello interval\n" @@ -1738,7 +1771,7 @@ DEFPY(isis_hello_interval, isis_hello_interval_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_hello_interval, no_isis_hello_interval_cmd, +DEFPY_YANG(no_isis_hello_interval, no_isis_hello_interval_cmd, "no isis hello-interval [level-1|level-2]$level [(1-600)]", NO_STR "IS-IS routing protocol\n" @@ -1776,7 +1809,7 @@ void cli_show_ip_isis_hello_interval(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/hello/multiplier */ -DEFPY(isis_hello_multiplier, isis_hello_multiplier_cmd, +DEFPY_YANG(isis_hello_multiplier, isis_hello_multiplier_cmd, "isis hello-multiplier [level-1|level-2]$level (2-100)$mult", "IS-IS routing protocol\n" "Set multiplier for Hello holding time\n" @@ -1796,7 +1829,7 @@ DEFPY(isis_hello_multiplier, isis_hello_multiplier_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_hello_multiplier, no_isis_hello_multiplier_cmd, +DEFPY_YANG(no_isis_hello_multiplier, no_isis_hello_multiplier_cmd, "no isis hello-multiplier [level-1|level-2]$level [(2-100)]", NO_STR "IS-IS routing protocol\n" @@ -1835,7 +1868,7 @@ void cli_show_ip_isis_hello_multi(struct vty *vty, struct lyd_node *dnode, * XPath: * /frr-interface:lib/interface/frr-isisd:isis/disable-three-way-handshake */ -DEFPY(isis_threeway_adj, isis_threeway_adj_cmd, "[no] isis three-way-handshake", +DEFPY_YANG(isis_threeway_adj, isis_threeway_adj_cmd, "[no] isis three-way-handshake", NO_STR "IS-IS commands\n" "Enable/Disable three-way handshake\n") @@ -1858,7 +1891,7 @@ void cli_show_ip_isis_threeway_shake(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/hello/padding */ -DEFPY(isis_hello_padding, isis_hello_padding_cmd, "[no] isis hello padding", +DEFPY_YANG(isis_hello_padding, isis_hello_padding_cmd, "[no] isis hello padding", NO_STR "IS-IS routing protocol\n" "Add padding to IS-IS hello packets\n" @@ -1882,7 +1915,7 @@ void cli_show_ip_isis_hello_padding(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/csnp-interval */ -DEFPY(csnp_interval, csnp_interval_cmd, +DEFPY_YANG(csnp_interval, csnp_interval_cmd, "isis csnp-interval (1-600)$intv [level-1|level-2]$level", "IS-IS routing protocol\n" "Set CSNP interval in seconds\n" @@ -1902,7 +1935,7 @@ DEFPY(csnp_interval, csnp_interval_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_csnp_interval, no_csnp_interval_cmd, +DEFPY_YANG(no_csnp_interval, no_csnp_interval_cmd, "no isis csnp-interval [(1-600)] [level-1|level-2]$level", NO_STR "IS-IS routing protocol\n" @@ -1940,7 +1973,7 @@ void cli_show_ip_isis_csnp_interval(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/psnp-interval */ -DEFPY(psnp_interval, psnp_interval_cmd, +DEFPY_YANG(psnp_interval, psnp_interval_cmd, "isis psnp-interval (1-120)$intv [level-1|level-2]$level", "IS-IS routing protocol\n" "Set PSNP interval in seconds\n" @@ -1960,7 +1993,7 @@ DEFPY(psnp_interval, psnp_interval_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_psnp_interval, no_psnp_interval_cmd, +DEFPY_YANG(no_psnp_interval, no_psnp_interval_cmd, "no isis psnp-interval [(1-120)] [level-1|level-2]$level", NO_STR "IS-IS routing protocol\n" @@ -1998,7 +2031,7 @@ void cli_show_ip_isis_psnp_interval(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/multi-topology */ -DEFPY(circuit_topology, circuit_topology_cmd, +DEFPY_YANG(circuit_topology, circuit_topology_cmd, "[no] isis topology<ipv4-unicast|ipv4-mgmt|ipv6-unicast|ipv4-multicast|ipv6-multicast|ipv6-mgmt|ipv6-dstsrc>$topology", NO_STR "IS-IS routing protocol\n" @@ -2083,7 +2116,7 @@ void cli_show_ip_isis_mt_ipv6_dstsrc(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/circuit-type */ -DEFPY(isis_circuit_type, isis_circuit_type_cmd, +DEFPY_YANG(isis_circuit_type, isis_circuit_type_cmd, "isis circuit-type <level-1|level-1-2|level-2-only>$type", "IS-IS routing protocol\n" "Configure circuit type for interface\n" @@ -2098,7 +2131,7 @@ DEFPY(isis_circuit_type, isis_circuit_type_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_circuit_type, no_isis_circuit_type_cmd, +DEFPY_YANG(no_isis_circuit_type, no_isis_circuit_type_cmd, "no isis circuit-type [level-1|level-1-2|level-2-only]", NO_STR "IS-IS routing protocol\n" @@ -2176,7 +2209,7 @@ void cli_show_ip_isis_circ_type(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/network-type */ -DEFPY(isis_network, isis_network_cmd, "[no] isis network point-to-point", +DEFPY_YANG(isis_network, isis_network_cmd, "[no] isis network point-to-point", NO_STR "IS-IS routing protocol\n" "Set network type\n" @@ -2201,7 +2234,7 @@ void cli_show_ip_isis_network_type(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-interface:lib/interface/frr-isisd:isis/priority */ -DEFPY(isis_priority, isis_priority_cmd, +DEFPY_YANG(isis_priority, isis_priority_cmd, "isis priority (0-127)$prio [level-1|level-2]$level", "IS-IS routing protocol\n" "Set priority for Designated Router election\n" @@ -2219,7 +2252,7 @@ DEFPY(isis_priority, isis_priority_cmd, return nb_cli_apply_changes(vty, NULL); } -DEFPY(no_isis_priority, no_isis_priority_cmd, +DEFPY_YANG(no_isis_priority, no_isis_priority_cmd, "no isis priority [(0-127)] [level-1|level-2]$level", NO_STR "IS-IS routing protocol\n" @@ -2255,7 +2288,7 @@ void cli_show_ip_isis_priority(struct vty *vty, struct lyd_node *dnode, /* * XPath: /frr-isisd:isis/instance/log-adjacency-changes */ -DEFPY(log_adj_changes, log_adj_changes_cmd, "[no] log-adjacency-changes", +DEFPY_YANG(log_adj_changes, log_adj_changes_cmd, "[no] log-adjacency-changes", NO_STR "Log changes in adjacency state\n") { nb_cli_enqueue_change(vty, "./log-adjacency-changes", NB_OP_MODIFY, @@ -2281,6 +2314,7 @@ void isis_cli_init(void) install_element(INTERFACE_NODE, &ip6_router_isis_cmd); install_element(INTERFACE_NODE, &no_ip_router_isis_cmd); install_element(INTERFACE_NODE, &isis_bfd_cmd); + install_element(INTERFACE_NODE, &isis_bfd_profile_cmd); install_element(ISIS_NODE, &net_cmd); |
