X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Finterface_format.c;h=7e94092b52e3d2f430d1324005190d2ddc943f17;hb=refs%2Fchanges%2F45%2F12645%2F8;hp=df7e938894ab730e15e0b041f8de74fe6089a999;hpb=abce509affe1f25bbb4905670371ad202529d5e0;p=vpp.git diff --git a/src/vnet/interface_format.c b/src/vnet/interface_format.c index df7e938894a..7e94092b52e 100644 --- a/src/vnet/interface_format.c +++ b/src/vnet/interface_format.c @@ -85,7 +85,7 @@ format_vnet_hw_interface (u8 * s, va_list * args) vnet_hw_interface_class_t *hw_class; vnet_device_class_t *dev_class; int verbose = va_arg (*args, int); - uword indent; + u32 indent; if (!hi) return format (s, "%=32s%=6s%=8s%s", "Name", "Idx", "Link", "Hardware"); @@ -165,16 +165,37 @@ format_vnet_sw_if_index_name (u8 * s, va_list * args) { vnet_main_t *vnm = va_arg (*args, vnet_main_t *); u32 sw_if_index = va_arg (*args, u32); - return format (s, "%U", - format_vnet_sw_interface_name, vnm, - vnet_get_sw_interface (vnm, sw_if_index)); + vnet_sw_interface_t *si; + + si = vnet_get_sw_interface_safe (vnm, sw_if_index); + + if (NULL == si) + { + return format (s, "DELETED"); + } + return format (s, "%U", format_vnet_sw_interface_name, vnm, si); +} + +u8 * +format_vnet_hw_if_index_name (u8 * s, va_list * args) +{ + vnet_main_t *vnm = va_arg (*args, vnet_main_t *); + u32 hw_if_index = va_arg (*args, u32); + vnet_hw_interface_t *hi; + + hi = vnet_get_hw_interface (vnm, hw_if_index); + + if (hi == 0) + return format (s, "DELETED"); + + return format (s, "%v", hi->name); } u8 * format_vnet_sw_interface_cntrs (u8 * s, vnet_interface_main_t * im, vnet_sw_interface_t * si) { - uword indent, n_printed; + u32 indent, n_printed; int i, j, n_counters; static vnet_main_t **my_vnet_mains;