ipsec: fix ipsec format overflow 68/19268/2
authorBenoît Ganne <bganne@cisco.com>
Mon, 29 Apr 2019 14:31:24 +0000 (16:31 +0200)
committerDamjan Marion <dmarion@me.com>
Wed, 1 May 2019 07:36:48 +0000 (07:36 +0000)
hi->name is not NULL-terminated. Use specialized format function which
does the right thing.

Change-Id: Iadda51461af0c1ad4f38a6d24b76e816020f35c8
Signed-off-by: Benoît Ganne <bganne@cisco.com>
src/vnet/ipsec/ipsec_format.c

index 44f064d..284dd6f 100644 (file)
@@ -336,7 +336,6 @@ format_ipsec_tunnel (u8 * s, va_list * args)
 {
   ipsec_main_t *im = &ipsec_main;
   u32 ti = va_arg (*args, u32);
-  vnet_hw_interface_t *hi;
   ipsec_tunnel_if_t *t;
 
   if (pool_is_free_index (im->tunnel_interfaces, ti))
@@ -350,9 +349,9 @@ format_ipsec_tunnel (u8 * s, va_list * args)
   if (t->hw_if_index == ~0)
     goto done;
 
-  hi = vnet_get_hw_interface (im->vnet_main, t->hw_if_index);
-
-  s = format (s, "%s\n", hi->name);
+  s =
+    format (s, "%U\n", format_vnet_hw_if_index_name, im->vnet_main,
+           t->hw_if_index);
 
   s = format (s, "   out-bound sa: ");
   s = format (s, "%U\n", format_ipsec_sa, t->output_sa_index,