summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDonatas Abraitis <donatas.abraitis@gmail.com>2021-10-21 21:52:14 +0200
committerDonatas Abraitis <donatas.abraitis@gmail.com>2021-10-31 19:26:06 +0100
commitc60dec369adb04773415f5c41a5bbcd59087e5a8 (patch)
treed781379bbef29bffb6740837ad31df388bd93188
parentMerge pull request #9920 from donaldsharp/zebra_seg6local_race (diff)
downloadfrr-c60dec369adb04773415f5c41a5bbcd59087e5a8.tar.xz
frr-c60dec369adb04773415f5c41a5bbcd59087e5a8.zip
lib: Add autocomplete for access-lists
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
-rw-r--r--babeld/babeld.c8
-rw-r--r--bgpd/bgp_routemap.c8
-rw-r--r--bgpd/bgp_vty.c8
-rw-r--r--eigrpd/eigrp_routemap.c12
-rw-r--r--isisd/isis_cli.c4
-rw-r--r--ldpd/ldp_vty_cmds.c10
-rw-r--r--lib/filter.c58
-rw-r--r--lib/filter_cli.c14
-rw-r--r--lib/routemap_cli.c12
-rw-r--r--ospf6d/ospf6_area.c12
-rw-r--r--ospfd/ospf_vty.c12
-rw-r--r--ripd/rip_cli.c6
-rw-r--r--ripngd/ripng_cli.c6
13 files changed, 111 insertions, 59 deletions
diff --git a/babeld/babeld.c b/babeld/babeld.c
index f61eac000..0104620cd 100644
--- a/babeld/babeld.c
+++ b/babeld/babeld.c
@@ -716,7 +716,7 @@ DEFUN (babel_set_smoothing_half_life,
DEFUN (babel_distribute_list,
babel_distribute_list_cmd,
- "distribute-list [prefix] WORD <in|out> [WORD]",
+ "distribute-list [prefix] ACCESSLIST4_NAME <in|out> [WORD]",
"Filter networks in routing updates\n"
"Specify a prefix\n"
"Access-list name\n"
@@ -736,7 +736,7 @@ DEFUN (babel_distribute_list,
DEFUN (babel_no_distribute_list,
babel_no_distribute_list_cmd,
- "no distribute-list [prefix] WORD <in|out> [WORD]",
+ "no distribute-list [prefix] ACCESSLIST4_NAME <in|out> [WORD]",
NO_STR
"Filter networks in routing updates\n"
"Specify a prefix\n"
@@ -758,7 +758,7 @@ DEFUN (babel_no_distribute_list,
DEFUN (babel_ipv6_distribute_list,
babel_ipv6_distribute_list_cmd,
- "ipv6 distribute-list [prefix] WORD <in|out> [WORD]",
+ "ipv6 distribute-list [prefix] ACCESSLIST6_NAME <in|out> [WORD]",
"IPv6\n"
"Filter networks in routing updates\n"
"Specify a prefix\n"
@@ -779,7 +779,7 @@ DEFUN (babel_ipv6_distribute_list,
DEFUN (babel_no_ipv6_distribute_list,
babel_no_ipv6_distribute_list_cmd,
- "no ipv6 distribute-list [prefix] WORD <in|out> [WORD]",
+ "no ipv6 distribute-list [prefix] ACCESSLIST6_NAME <in|out> [WORD]",
NO_STR
"IPv6\n"
"Filter networks in routing updates\n"
diff --git a/bgpd/bgp_routemap.c b/bgpd/bgp_routemap.c
index 3fc478bc9..aa59499b0 100644
--- a/bgpd/bgp_routemap.c
+++ b/bgpd/bgp_routemap.c
@@ -4004,7 +4004,7 @@ static void bgp_route_map_event(const char *rmap_name)
DEFUN_YANG (match_mac_address,
match_mac_address_cmd,
- "match mac address WORD",
+ "match mac address ACCESSLIST_MAC_NAME",
MATCH_STR
"mac address\n"
"Match address of route\n"
@@ -4024,7 +4024,7 @@ DEFUN_YANG (match_mac_address,
DEFUN_YANG (no_match_mac_address,
no_match_mac_address_cmd,
- "no match mac address WORD",
+ "no match mac address ACCESSLIST_MAC_NAME",
NO_STR
MATCH_STR
"mac\n"
@@ -4576,7 +4576,7 @@ DEFUN_YANG (no_match_probability,
DEFPY_YANG (match_ip_route_source,
match_ip_route_source_cmd,
- "match ip route-source WORD",
+ "match ip route-source ACCESSLIST4_NAME",
MATCH_STR
IP_STR
"Match advertising source address of route\n"
@@ -4600,7 +4600,7 @@ DEFPY_YANG (match_ip_route_source,
DEFUN_YANG (no_match_ip_route_source,
no_match_ip_route_source_cmd,
- "no match ip route-source [WORD]",
+ "no match ip route-source [ACCESSLIST4_NAME]",
NO_STR
MATCH_STR
IP_STR
diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c
index 772e20dc8..04c078e8d 100644
--- a/bgpd/bgp_vty.c
+++ b/bgpd/bgp_vty.c
@@ -7018,7 +7018,7 @@ DEFUN (no_neighbor_interface,
DEFUN (neighbor_distribute_list,
neighbor_distribute_list_cmd,
- "neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list WORD <in|out>",
+ "neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list ACCESSLIST_NAME <in|out>",
NEIGHBOR_STR
NEIGHBOR_ADDR_STR2
"Filter updates to/from this neighbor\n"
@@ -7049,7 +7049,7 @@ DEFUN (neighbor_distribute_list,
ALIAS_HIDDEN(
neighbor_distribute_list, neighbor_distribute_list_hidden_cmd,
- "neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list WORD <in|out>",
+ "neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list ACCESSLIST_NAME <in|out>",
NEIGHBOR_STR NEIGHBOR_ADDR_STR2
"Filter updates to/from this neighbor\n"
"IP Access-list name\n"
@@ -7058,7 +7058,7 @@ ALIAS_HIDDEN(
DEFUN (no_neighbor_distribute_list,
no_neighbor_distribute_list_cmd,
- "no neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list WORD <in|out>",
+ "no neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list ACCESSLIST_NAME <in|out>",
NO_STR
NEIGHBOR_STR
NEIGHBOR_ADDR_STR2
@@ -7088,7 +7088,7 @@ DEFUN (no_neighbor_distribute_list,
ALIAS_HIDDEN(
no_neighbor_distribute_list, no_neighbor_distribute_list_hidden_cmd,
- "no neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list WORD <in|out>",
+ "no neighbor <A.B.C.D|X:X::X:X|WORD> distribute-list ACCESSLIST_NAME <in|out>",
NO_STR NEIGHBOR_STR NEIGHBOR_ADDR_STR2
"Filter updates to/from this neighbor\n"
"IP Access-list name\n"
diff --git a/eigrpd/eigrp_routemap.c b/eigrpd/eigrp_routemap.c
index 65fa95b65..d9b500a8f 100644
--- a/eigrpd/eigrp_routemap.c
+++ b/eigrpd/eigrp_routemap.c
@@ -858,7 +858,7 @@ ALIAS(no_match_interface, no_match_interface_val_cmd, "no match interface WORD",
DEFUN (match_ip_next_hop,
match_ip_next_hop_cmd,
- "match ip next-hop WORD",
+ "match ip next-hop ACCESSLIST4_NAME",
MATCH_STR
IP_STR
"Match next-hop address of route\n"
@@ -884,7 +884,7 @@ DEFUN (no_match_ip_next_hop,
}
ALIAS(no_match_ip_next_hop, no_match_ip_next_hop_val_cmd,
- "no match ip next-hop WORD", NO_STR MATCH_STR IP_STR
+ "no match ip next-hop ACCESSLIST4_NAME", NO_STR MATCH_STR IP_STR
"Match next-hop address of route\n"
"IP Access-list name\n")
@@ -927,7 +927,7 @@ ALIAS(no_match_ip_next_hop_prefix_list,
DEFUN (match_ip_address,
match_ip_address_cmd,
- "match ip address WORD",
+ "match ip address ACCESSLIST4_NAME",
MATCH_STR
IP_STR
"Match address of route\n"
@@ -952,7 +952,7 @@ DEFUN (no_match_ip_address,
}
ALIAS(no_match_ip_address, no_match_ip_address_val_cmd,
- "no match ip address WORD", NO_STR MATCH_STR IP_STR
+ "no match ip address ACCESSLIST4_NAME", NO_STR MATCH_STR IP_STR
"Match address of route\n"
"IP Access-list name\n")
@@ -1124,7 +1124,7 @@ ALIAS(no_set_tag, no_set_tag_val_cmd, "no set tag (0-65535)", NO_STR SET_STR
DEFUN (eigrp_distribute_list,
eigrp_distribute_list_cmd,
- "distribute-list [prefix] WORD <in|out> [WORD]",
+ "distribute-list [prefix] ACCESSLIST_NAME <in|out> [WORD]",
"Filter networks in routing updates\n"
"Specify a prefix\n"
"Access-list name\n"
@@ -1144,7 +1144,7 @@ DEFUN (eigrp_distribute_list,
DEFUN (eigrp_no_distribute_list,
eigrp_no_distribute_list_cmd,
- "no distribute-list [prefix] WORD <in|out> [WORD]",
+ "no distribute-list [prefix] ACCESSLIST_NAME <in|out> [WORD]",
NO_STR
"Filter networks in routing updates\n"
"Specify a prefix\n"
diff --git a/isisd/isis_cli.c b/isisd/isis_cli.c
index 195a3fcd2..71bc8b1eb 100644
--- a/isisd/isis_cli.c
+++ b/isisd/isis_cli.c
@@ -1116,7 +1116,7 @@ void cli_show_isis_spf_ietf_backoff(struct vty *vty,
* XPath: /frr-isisd:isis/instance/spf/prefix-priorities/medium/access-list-name
*/
DEFPY_YANG(spf_prefix_priority, spf_prefix_priority_cmd,
- "spf prefix-priority <critical|high|medium>$priority WORD$acl_name",
+ "spf prefix-priority <critical|high|medium>$priority ACCESSLIST_NAME$acl_name",
"SPF configuration\n"
"Configure a prefix priority list\n"
"Specify critical priority prefixes\n"
@@ -1134,7 +1134,7 @@ DEFPY_YANG(spf_prefix_priority, spf_prefix_priority_cmd,
}
DEFPY_YANG(no_spf_prefix_priority, no_spf_prefix_priority_cmd,
- "no spf prefix-priority <critical|high|medium>$priority [WORD]",
+ "no spf prefix-priority <critical|high|medium>$priority [ACCESSLIST_NAME]",
NO_STR
"SPF configuration\n"
"Configure a prefix priority list\n"
diff --git a/ldpd/ldp_vty_cmds.c b/ldpd/ldp_vty_cmds.c
index 9d3d1a606..11d6930f0 100644
--- a/ldpd/ldp_vty_cmds.c
+++ b/ldpd/ldp_vty_cmds.c
@@ -253,7 +253,7 @@ DEFPY (ldp_allow_broken_lsps,
DEFPY (ldp_discovery_targeted_hello_accept,
ldp_discovery_targeted_hello_accept_cmd,
- "[no] discovery targeted-hello accept [from WORD$from_acl]",
+ "[no] discovery targeted-hello accept [from ACCESSLIST_NAME$from_acl]",
NO_STR
"Configure discovery parameters\n"
"LDP Targeted Hellos\n"
@@ -288,7 +288,7 @@ DEFPY (ldp_discovery_transport_address_ipv6,
DEFPY (ldp_label_local_advertise,
ldp_label_local_advertise_cmd,
- "[no] label local advertise [{to WORD$to_acl|for WORD$for_acl}]",
+ "[no] label local advertise [{to ACCESSLIST_NAME$to_acl|for ACCESSLIST_NAME$for_acl}]",
NO_STR
"Configure label control and policies\n"
"Configure local label control and policies\n"
@@ -303,7 +303,7 @@ DEFPY (ldp_label_local_advertise,
DEFPY (ldp_label_local_advertise_explicit_null,
ldp_label_local_advertise_explicit_null_cmd,
- "[no] label local advertise explicit-null [for WORD$for_acl]",
+ "[no] label local advertise explicit-null [for ACCESSLIST_NAME$for_acl]",
NO_STR
"Configure label control and policies\n"
"Configure local label control and policies\n"
@@ -317,7 +317,7 @@ DEFPY (ldp_label_local_advertise_explicit_null,
DEFPY (ldp_label_local_allocate,
ldp_label_local_allocate_cmd,
- "[no] label local allocate <host-routes$host_routes|for WORD$for_acl>",
+ "[no] label local allocate <host-routes$host_routes|for ACCESSLIST_NAME$for_acl>",
NO_STR
"Configure label control and policies\n"
"Configure local label control and policies\n"
@@ -331,7 +331,7 @@ DEFPY (ldp_label_local_allocate,
DEFPY (ldp_label_remote_accept,
ldp_label_remote_accept_cmd,
- "[no] label remote accept {from WORD$from_acl|for WORD$for_acl}",
+ "[no] label remote accept {from ACCESSLIST_NAME$from_acl|for ACCESSLIST_NAME$for_acl}",
NO_STR
"Configure label control and policies\n"
"Configure remote/peer label control and policies\n"
diff --git a/lib/filter.c b/lib/filter.c
index 3a86fbce9..9c80808fe 100644
--- a/lib/filter.c
+++ b/lib/filter.c
@@ -612,7 +612,7 @@ DEFUN (show_mac_access_list,
DEFUN (show_mac_access_list_name,
show_mac_access_list_name_cmd,
- "show mac access-list WORD",
+ "show mac access-list ACCESSLIST_MAC_NAME",
SHOW_STR
"mac access lists\n"
"List mac access lists\n"
@@ -635,7 +635,7 @@ DEFUN (show_ip_access_list,
DEFUN (show_ip_access_list_name,
show_ip_access_list_name_cmd,
- "show ip access-list WORD [json]",
+ "show ip access-list ACCESSLIST4_NAME [json]",
SHOW_STR
IP_STR
"List IP access lists\n"
@@ -661,7 +661,7 @@ DEFUN (show_ipv6_access_list,
DEFUN (show_ipv6_access_list_name,
show_ipv6_access_list_name_cmd,
- "show ipv6 access-list WORD [json]",
+ "show ipv6 access-list ACCESSLIST6_NAME [json]",
SHOW_STR
IPV6_STR
"List IPv6 access lists\n"
@@ -839,12 +839,62 @@ static void access_list_init_ipv4(void)
install_element(ENABLE_NODE, &show_ip_access_list_name_cmd);
}
+static void access_list_autocomplete_afi(afi_t afi, vector comps,
+ struct cmd_token *token)
+{
+ struct access_list *access;
+ struct access_list *next;
+ struct access_master *master;
+
+ master = access_master_get(afi);
+ if (master == NULL)
+ return;
+
+ for (access = master->str.head; access; access = next) {
+ next = access->next;
+ vector_set(comps, XSTRDUP(MTYPE_COMPLETION, access->name));
+ }
+}
+
static struct cmd_node access_ipv6_node = {
.name = "ipv6 access list",
.node = ACCESS_IPV6_NODE,
.prompt = "",
};
+static void access_list_autocomplete(vector comps, struct cmd_token *token)
+{
+ access_list_autocomplete_afi(AFI_IP, comps, token);
+ access_list_autocomplete_afi(AFI_IP6, comps, token);
+ access_list_autocomplete_afi(AFI_L2VPN, comps, token);
+}
+
+static void access_list4_autocomplete(vector comps, struct cmd_token *token)
+{
+ access_list_autocomplete_afi(AFI_IP, comps, token);
+}
+
+static void access_list6_autocomplete(vector comps, struct cmd_token *token)
+{
+ access_list_autocomplete_afi(AFI_IP6, comps, token);
+}
+
+static void access_list_mac_autocomplete(vector comps, struct cmd_token *token)
+{
+ access_list_autocomplete_afi(AFI_L2VPN, comps, token);
+}
+
+static const struct cmd_variable_handler access_list_handlers[] = {
+ {.tokenname = "ACCESSLIST_NAME",
+ .completions = access_list_autocomplete},
+ {.tokenname = "ACCESSLIST4_NAME",
+ .completions = access_list4_autocomplete},
+ {.tokenname = "ACCESSLIST6_NAME",
+ .completions = access_list6_autocomplete},
+ {.tokenname = "ACCESSLIST_MAC_NAME",
+ .completions = access_list_mac_autocomplete},
+ {.completions = NULL}};
+
static void access_list_reset_ipv6(void)
{
struct access_list *access;
@@ -874,6 +924,8 @@ static void access_list_init_ipv6(void)
void access_list_init(void)
{
+ cmd_variable_handler_register(access_list_handlers);
+
access_list_init_ipv4();
access_list_init_ipv6();
access_list_init_mac();
diff --git a/lib/filter_cli.c b/lib/filter_cli.c
index 43618094a..fb40c527d 100644
--- a/lib/filter_cli.c
+++ b/lib/filter_cli.c
@@ -822,7 +822,7 @@ DEFPY_YANG(
ALIAS(
no_ipv6_access_list_remark, no_ipv6_access_list_remark_line_cmd,
- "no ipv6 access-list WORD$name remark LINE...",
+ "no ipv6 access-list ACCESSLIST6_NAME$name remark LINE...",
NO_STR
IPV6_STR
ACCESS_LIST_STR
@@ -832,7 +832,7 @@ ALIAS(
DEFPY_YANG(
mac_access_list, mac_access_list_cmd,
- "mac access-list WORD$name [seq (1-4294967295)$seq] <deny|permit>$action <X:X:X:X:X:X$mac|any>",
+ "mac access-list ACCESSLIST_MAC_NAME$name [seq (1-4294967295)$seq] <deny|permit>$action <X:X:X:X:X:X$mac|any>",
MAC_STR
ACCESS_LIST_STR
ACCESS_LIST_ZEBRA_STR
@@ -898,7 +898,7 @@ DEFPY_YANG(
DEFPY_YANG(
no_mac_access_list, no_mac_access_list_cmd,
- "no mac access-list WORD$name [seq (1-4294967295)$seq] <deny|permit>$action <X:X:X:X:X:X$mac|any>",
+ "no mac access-list ACCESSLIST_MAC_NAME$name [seq (1-4294967295)$seq] <deny|permit>$action <X:X:X:X:X:X$mac|any>",
NO_STR
MAC_STR
ACCESS_LIST_STR
@@ -938,7 +938,7 @@ DEFPY_YANG(
DEFPY_YANG(
no_mac_access_list_all, no_mac_access_list_all_cmd,
- "no mac access-list WORD$name",
+ "no mac access-list ACCESSLIST_MAC_NAME$name",
NO_STR
MAC_STR
ACCESS_LIST_STR
@@ -955,7 +955,7 @@ DEFPY_YANG(
DEFPY_YANG(
mac_access_list_remark, mac_access_list_remark_cmd,
- "mac access-list WORD$name remark LINE...",
+ "mac access-list ACCESSLIST_MAC_NAME$name remark LINE...",
MAC_STR
ACCESS_LIST_STR
ACCESS_LIST_ZEBRA_STR
@@ -980,7 +980,7 @@ DEFPY_YANG(
DEFPY_YANG(
no_mac_access_list_remark, no_mac_access_list_remark_cmd,
- "no mac access-list WORD$name remark",
+ "no mac access-list ACCESSLIST_MAC_NAME$name remark",
NO_STR
MAC_STR
ACCESS_LIST_STR
@@ -1004,7 +1004,7 @@ DEFPY_YANG(
ALIAS(
no_mac_access_list_remark, no_mac_access_list_remark_line_cmd,
- "no mac access-list WORD$name remark LINE...",
+ "no mac access-list ACCESSLIST_MAC_NAME$name remark LINE...",
NO_STR
MAC_STR
ACCESS_LIST_STR
diff --git a/lib/routemap_cli.c b/lib/routemap_cli.c
index 918a2ebdc..d7d4a9a81 100644
--- a/lib/routemap_cli.c
+++ b/lib/routemap_cli.c
@@ -166,7 +166,7 @@ DEFPY_YANG(
DEFPY_YANG(
match_ip_address, match_ip_address_cmd,
- "match ip address WORD$name",
+ "match ip address ACCESSLIST4_NAME$name",
MATCH_STR
IP_STR
"Match address of route\n"
@@ -186,7 +186,7 @@ DEFPY_YANG(
DEFPY_YANG(
no_match_ip_address, no_match_ip_address_cmd,
- "no match ip address [WORD]",
+ "no match ip address [ACCESSLIST4_NAME]",
NO_STR
MATCH_STR
IP_STR
@@ -243,7 +243,7 @@ DEFPY_YANG(
DEFPY_YANG(
match_ip_next_hop, match_ip_next_hop_cmd,
- "match ip next-hop WORD$name",
+ "match ip next-hop ACCESSLIST4_NAME$name",
MATCH_STR
IP_STR
"Match next-hop address of route\n"
@@ -263,7 +263,7 @@ DEFPY_YANG(
DEFPY_YANG(
no_match_ip_next_hop, no_match_ip_next_hop_cmd,
- "no match ip next-hop [WORD]",
+ "no match ip next-hop [ACCESSLIST4_NAME]",
NO_STR
MATCH_STR
IP_STR
@@ -358,7 +358,7 @@ DEFPY_YANG(
DEFPY_YANG(
match_ipv6_address, match_ipv6_address_cmd,
- "match ipv6 address WORD$name",
+ "match ipv6 address ACCESSLIST6_NAME$name",
MATCH_STR
IPV6_STR
"Match IPv6 address of route\n"
@@ -378,7 +378,7 @@ DEFPY_YANG(
DEFPY_YANG(
no_match_ipv6_address, no_match_ipv6_address_cmd,
- "no match ipv6 address [WORD]",
+ "no match ipv6 address [ACCESSLIST6_NAME]",
NO_STR
MATCH_STR
IPV6_STR
diff --git a/ospf6d/ospf6_area.c b/ospf6d/ospf6_area.c
index 6caee259b..f35971ba8 100644
--- a/ospf6d/ospf6_area.c
+++ b/ospf6d/ospf6_area.c
@@ -879,12 +879,12 @@ void ospf6_plist_update(struct prefix_list *plist)
DEFUN (area_import_list,
area_import_list_cmd,
- "area <A.B.C.D|(0-4294967295)> import-list NAME",
+ "area <A.B.C.D|(0-4294967295)> import-list ACCESSLIST6_NAME",
"OSPF6 area parameters\n"
"OSPF6 area ID in IP address format\n"
"OSPF6 area ID as a decimal value\n"
"Set the filter for networks from other areas announced to the specified one\n"
- "Name of the acess-list\n")
+ "Name of the access-list\n")
{
int idx_ipv4 = 1;
int idx_name = 3;
@@ -911,7 +911,7 @@ DEFUN (area_import_list,
DEFUN (no_area_import_list,
no_area_import_list_cmd,
- "no area <A.B.C.D|(0-4294967295)> import-list NAME",
+ "no area <A.B.C.D|(0-4294967295)> import-list ACCESSLIST6_NAME",
NO_STR
"OSPF6 area parameters\n"
"OSPF6 area ID in IP address format\n"
@@ -940,12 +940,12 @@ DEFUN (no_area_import_list,
DEFUN (area_export_list,
area_export_list_cmd,
- "area <A.B.C.D|(0-4294967295)> export-list NAME",
+ "area <A.B.C.D|(0-4294967295)> export-list ACCESSLIST6_NAME",
"OSPF6 area parameters\n"
"OSPF6 area ID in IP address format\n"
"OSPF6 area ID as a decimal value\n"
"Set the filter for networks announced to other areas\n"
- "Name of the acess-list\n")
+ "Name of the access-list\n")
{
int idx_ipv4 = 1;
int idx_name = 3;
@@ -974,7 +974,7 @@ DEFUN (area_export_list,
DEFUN (no_area_export_list,
no_area_export_list_cmd,
- "no area <A.B.C.D|(0-4294967295)> export-list NAME",
+ "no area <A.B.C.D|(0-4294967295)> export-list ACCESSLIST6_NAME",
NO_STR
"OSPF6 area parameters\n"
"OSPF6 area ID in IP address format\n"
diff --git a/ospfd/ospf_vty.c b/ospfd/ospf_vty.c
index 2239f3160..3e37490c3 100644
--- a/ospfd/ospf_vty.c
+++ b/ospfd/ospf_vty.c
@@ -1775,7 +1775,7 @@ DEFUN (no_ospf_area_default_cost,
DEFUN (ospf_area_export_list,
ospf_area_export_list_cmd,
- "area <A.B.C.D|(0-4294967295)> export-list NAME",
+ "area <A.B.C.D|(0-4294967295)> export-list ACCESSLIST4_NAME",
"OSPF area parameters\n"
"OSPF area ID in IP address format\n"
"OSPF area ID as a decimal value\n"
@@ -1799,7 +1799,7 @@ DEFUN (ospf_area_export_list,
DEFUN (no_ospf_area_export_list,
no_ospf_area_export_list_cmd,
- "no area <A.B.C.D|(0-4294967295)> export-list NAME",
+ "no area <A.B.C.D|(0-4294967295)> export-list ACCESSLIST4_NAME",
NO_STR
"OSPF area parameters\n"
"OSPF area ID in IP address format\n"
@@ -1827,7 +1827,7 @@ DEFUN (no_ospf_area_export_list,
DEFUN (ospf_area_import_list,
ospf_area_import_list_cmd,
- "area <A.B.C.D|(0-4294967295)> import-list NAME",
+ "area <A.B.C.D|(0-4294967295)> import-list ACCESSLIST4_NAME",
"OSPF area parameters\n"
"OSPF area ID in IP address format\n"
"OSPF area ID as a decimal value\n"
@@ -1851,7 +1851,7 @@ DEFUN (ospf_area_import_list,
DEFUN (no_ospf_area_import_list,
no_ospf_area_import_list_cmd,
- "no area <A.B.C.D|(0-4294967295)> import-list NAME",
+ "no area <A.B.C.D|(0-4294967295)> import-list ACCESSLIST4_NAME",
NO_STR
"OSPF area parameters\n"
"OSPF area ID in IP address format\n"
@@ -9319,7 +9319,7 @@ DEFUN (no_ospf_redistribute_instance_source,
DEFUN (ospf_distribute_list_out,
ospf_distribute_list_out_cmd,
- "distribute-list WORD out " FRR_REDIST_STR_OSPFD,
+ "distribute-list ACCESSLIST4_NAME out " FRR_REDIST_STR_OSPFD,
"Filter networks in routing updates\n"
"Access-list name\n"
OUT_STR
@@ -9341,7 +9341,7 @@ DEFUN (ospf_distribute_list_out,
DEFUN (no_ospf_distribute_list_out,
no_ospf_distribute_list_out_cmd,
- "no distribute-list WORD out " FRR_REDIST_STR_OSPFD,
+ "no distribute-list ACCESSLIST4_NAME out " FRR_REDIST_STR_OSPFD,
NO_STR
"Filter networks in routing updates\n"
"Access-list name\n"
diff --git a/ripd/rip_cli.c b/ripd/rip_cli.c
index 5590b1833..58c28e54c 100644
--- a/ripd/rip_cli.c
+++ b/ripd/rip_cli.c
@@ -327,7 +327,7 @@ void cli_show_rip_network_interface(struct vty *vty,
*/
DEFPY_YANG (rip_offset_list,
rip_offset_list_cmd,
- "[no] offset-list WORD$acl <in|out>$direction (0-16)$metric [IFNAME]",
+ "[no] offset-list ACCESSLIST4_NAME$acl <in|out>$direction (0-16)$metric [IFNAME]",
NO_STR
"Modify RIP metric\n"
"Access-list name\n"
@@ -1026,7 +1026,7 @@ DEFPY_YANG (clear_ip_rip,
DEFUN (rip_distribute_list,
rip_distribute_list_cmd,
- "distribute-list [prefix] WORD <in|out> [WORD]",
+ "distribute-list [prefix] ACCESSLIST4_NAME <in|out> [WORD]",
"Filter networks in routing updates\n"
"Specify a prefix\n"
"Access-list name\n"
@@ -1046,7 +1046,7 @@ DEFUN (rip_distribute_list,
DEFUN (rip_no_distribute_list,
rip_no_distribute_list_cmd,
- "no distribute-list [prefix] WORD <in|out> [WORD]",
+ "no distribute-list [prefix] ACCESSLIST4_NAME <in|out> [WORD]",
NO_STR
"Filter networks in routing updates\n"
"Specify a prefix\n"
diff --git a/ripngd/ripng_cli.c b/ripngd/ripng_cli.c
index 63b75e723..5bf3103a7 100644
--- a/ripngd/ripng_cli.c
+++ b/ripngd/ripng_cli.c
@@ -233,7 +233,7 @@ void cli_show_ripng_network_interface(struct vty *vty,
*/
DEFPY_YANG (ripng_offset_list,
ripng_offset_list_cmd,
- "[no] offset-list WORD$acl <in|out>$direction (0-16)$metric [IFNAME]",
+ "[no] offset-list ACCESSLIST6_NAME$acl <in|out>$direction (0-16)$metric [IFNAME]",
NO_STR
"Modify RIPng metric\n"
"Access-list name\n"
@@ -511,7 +511,7 @@ DEFPY_YANG (clear_ipv6_rip,
DEFUN (ripng_ipv6_distribute_list,
ripng_ipv6_distribute_list_cmd,
- "ipv6 distribute-list [prefix] WORD <in|out> [WORD]",
+ "ipv6 distribute-list [prefix] ACCESSLIST6_NAME <in|out> [WORD]",
"IPv6\n"
"Filter networks in routing updates\n"
"Specify a prefix\n"
@@ -532,7 +532,7 @@ DEFUN (ripng_ipv6_distribute_list,
DEFUN (ripng_no_ipv6_distribute_list,
ripng_no_ipv6_distribute_list_cmd,
- "no ipv6 distribute-list [prefix] WORD <in|out> [WORD]",
+ "no ipv6 distribute-list [prefix] ACCESSLIST6_NAME <in|out> [WORD]",
NO_STR
"IPv6\n"
"Filter networks in routing updates\n"