summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--vnet/vnet/ethernet/arp.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/vnet/vnet/ethernet/arp.c b/vnet/vnet/ethernet/arp.c
index 79ff44fd050..3548831688a 100644
--- a/vnet/vnet/ethernet/arp.c
+++ b/vnet/vnet/ethernet/arp.c
@@ -1138,14 +1138,17 @@ show_ip4_arp (vlib_main_t * vm,
es = 0;
pool_foreach (e, am->ip4_entry_pool, ({ vec_add1 (es, e[0]); }));
- vec_sort_with_function (es, ip4_arp_entry_sort);
- vlib_cli_output (vm, "%U", format_ethernet_arp_ip4_entry, vnm, 0);
- vec_foreach (e, es) {
- if (sw_if_index != ~0 && e->key.sw_if_index != sw_if_index)
- continue;
- vlib_cli_output (vm, "%U", format_ethernet_arp_ip4_entry, vnm, e);
- }
- vec_free (es);
+ if ( es )
+ {
+ vec_sort_with_function (es, ip4_arp_entry_sort);
+ vlib_cli_output (vm, "%U", format_ethernet_arp_ip4_entry, vnm, 0);
+ vec_foreach (e, es) {
+ if (sw_if_index != ~0 && e->key.sw_if_index != sw_if_index)
+ continue;
+ vlib_cli_output (vm, "%U", format_ethernet_arp_ip4_entry, vnm, e);
+ }
+ vec_free (es);
+ }
if (vec_len (am->proxy_arps))
{