Skip to content

Commit

Permalink
zebra: Return error if v6 prefix is passed to show ip route
Browse files Browse the repository at this point in the history
Return error if IPv6 address or prefix is passed as an argument
to "show ip route" command.

UT:
r1# show ip route 2::3/128
% Cannot specify IPv6 address/prefix for IPv4 table
r1#
r1# show ip route 2::3
% Cannot specify IPv6 address/prefix for IPv4 table
r1#

Signed-off-by: Pooja Jagadeesh Doijode <[email protected]>
  • Loading branch information
Pdoijode committed Jan 22, 2025
1 parent 6c7de02 commit 8c6489b
Showing 1 changed file with 15 additions and 0 deletions.
15 changes: 15 additions & 0 deletions zebra/zebra_vty.c
Original file line number Diff line number Diff line change
Expand Up @@ -1789,9 +1789,24 @@ DEFPY (show_route_detail,
rib_dest_t *dest;
bool network_found = false;
bool show_ng = !!ng;
int idx = 0;

/*
* Return error if V6 address/prefix is passed as an argument to
* "show ip route" cmd.
*
* When "show ip route <X:X::X:X|X:X::X:X/M>" is queried,
* argv[idx]->text will be set to "ipv6" but argv[idx]->arg will be set
* to "ip".
*/
if (argv_find(argv, argc, "ipv6", &idx) && !strcmp(argv[idx]->arg, "ip")) {
vty_out(vty, "%% Cannot specify IPv6 address/prefix for IPv4 table\n");
return CMD_WARNING;
}

if (address_str)
prefix_str = address_str;

if (str2prefix(prefix_str, &p) < 0) {
vty_out(vty, "%% Malformed address\n");
return CMD_WARNING;
Expand Down

0 comments on commit 8c6489b

Please sign in to comment.