diff options
author | Neale Ranns <nranns@cisco.com> | 2017-05-19 02:54:32 -0700 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2017-05-19 17:42:28 +0000 |
commit | c7409dc906ebff22d9803940e1ad73a0b79887c4 (patch) | |
tree | 60ec72ce63ae8e38d578439df3a997b26d235e25 /src | |
parent | 9793477a28c45e4eb5bba3f2050fe415e57e8ad8 (diff) |
mfib CLI bugs (VPP-852)
Change-Id: I1b71010e20742eee02693d672e24c85897e37759
Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'src')
-rwxr-xr-x | src/vnet/ip/lookup.c | 2 | ||||
-rw-r--r-- | src/vnet/mfib/ip4_mfib.c | 9 | ||||
-rw-r--r-- | src/vnet/mfib/ip6_mfib.c | 13 |
3 files changed, 16 insertions, 8 deletions
diff --git a/src/vnet/ip/lookup.c b/src/vnet/ip/lookup.c index b9b5caa542f..6547cad51b1 100755 --- a/src/vnet/ip/lookup.c +++ b/src/vnet/ip/lookup.c @@ -813,12 +813,14 @@ vnet_ip_mroute_cmd (vlib_main_t * vm, unformat_ip4_address, &pfx.fp_grp_addr.ip4, &pfx.fp_len)) { + memset (&pfx.fp_src_addr.ip4, 0, sizeof (pfx.fp_src_addr.ip4)); pfx.fp_proto = FIB_PROTOCOL_IP4; } else if (unformat (line_input, "%U/%d", unformat_ip6_address, &pfx.fp_grp_addr.ip6, &pfx.fp_len)) { + memset (&pfx.fp_src_addr.ip6, 0, sizeof (pfx.fp_src_addr.ip6)); pfx.fp_proto = FIB_PROTOCOL_IP6; } else if (unformat (line_input, "%U", diff --git a/src/vnet/mfib/ip4_mfib.c b/src/vnet/mfib/ip4_mfib.c index 3ed7cba7b6f..1849a3a4201 100644 --- a/src/vnet/mfib/ip4_mfib.c +++ b/src/vnet/mfib/ip4_mfib.c @@ -382,14 +382,17 @@ ip4_show_mfib (vlib_main_t * vm, matching = 1; mask = 64; } + else if (unformat (input, "%U/%d", unformat_ip4_address, &grp, &mask)) + { + memset(&src, 0, sizeof(src)); + matching = 1; + } else if (unformat (input, "%U", unformat_ip4_address, &grp)) { + memset(&src, 0, sizeof(src)); matching = 1; mask = 32; } - else if (unformat (input, "%U/%d", - unformat_ip4_address, &grp, &mask)) - matching = 1; else if (unformat (input, "table %d", &table_id)) ; else if (unformat (input, "index %d", &fib_index)) diff --git a/src/vnet/mfib/ip6_mfib.c b/src/vnet/mfib/ip6_mfib.c index 116fee2222a..5c6f8126e3a 100644 --- a/src/vnet/mfib/ip6_mfib.c +++ b/src/vnet/mfib/ip6_mfib.c @@ -585,16 +585,19 @@ ip6_show_mfib (vlib_main_t * vm, unformat_ip6_address, &grp)) { matching = 1; - mask = 64; + mask = 256; } - else if (unformat (input, "%U", unformat_ip6_address, &grp)) + else if (unformat (input, "%U/%d", unformat_ip6_address, &grp, &mask)) { + memset(&src, 0, sizeof(src)); matching = 1; - mask = 32; } - else if (unformat (input, "%U/%d", - unformat_ip6_address, &grp, &mask)) + else if (unformat (input, "%U", unformat_ip6_address, &grp)) + { + memset(&src, 0, sizeof(src)); matching = 1; + mask = 128; + } else if (unformat (input, "table %d", &table_id)) ; else if (unformat (input, "index %d", &fib_index)) |