X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fadj%2Fadj.c;h=c758ebeae3a653ed6702525ee8ac19198762dda9;hb=14053c9db;hp=bafa33618cbb4ec99138e1d22cb1365591f94185;hpb=eec541a55e7e9a0d9231e42c90ed96bafcb668cc;p=vpp.git diff --git a/src/vnet/adj/adj.c b/src/vnet/adj/adj.c index bafa33618cb..c758ebeae3a 100644 --- a/src/vnet/adj/adj.c +++ b/src/vnet/adj/adj.c @@ -139,6 +139,10 @@ format_ip_adjacency (u8 * s, va_list * args) adj_index = va_arg (*args, u32); fiaf = va_arg (*args, format_ip_adjacency_flags_t); + + if (!adj_is_valid(adj_index)) + return format(s, ""); + adj = adj_get(adj_index); switch (adj->lookup_next_index) @@ -178,7 +182,7 @@ format_ip_adjacency (u8 * s, va_list * args) s = format (s, "\n flags:%U", format_adj_flags, adj->ia_flags); s = format (s, "\n counts:[%Ld:%Ld]", counts.packets, counts.bytes); s = format (s, "\n locks:%d", adj->ia_node.fn_locks); - s = format(s, "\n delegates:\n "); + s = format(s, "\n delegates:"); s = adj_delegate_format(s, adj); s = format(s, "\n children:"); @@ -401,10 +405,11 @@ adj_feature_update_walk_cb (adj_index_t ai, return (ADJ_WALK_RC_CONTINUE); } -void +static void adj_feature_update (u32 sw_if_index, u8 arc_index, - u8 is_enable) + u8 is_enable, + void *data) { /* * Walk all the adjacencies on the interface to update the cached @@ -586,6 +591,8 @@ adj_module_init (vlib_main_t * vm) adj_midchain_module_init(); adj_mcast_module_init(); + vnet_feature_register(adj_feature_update, NULL); + return (NULL); }