MPLS: buffer over-run with incorrectly init'd vector. fix VAT dump 34/16334/2
authorNeale Ranns <nranns@cisco.com>
Tue, 4 Dec 2018 09:39:40 +0000 (09:39 +0000)
committerDamjan Marion <dmarion@me.com>
Tue, 4 Dec 2018 12:02:51 +0000 (12:02 +0000)
Change-Id: Ifdbb4c4cffd90c4ec8b39513d284ebf7be39eca5
Signed-off-by: Neale Ranns <nranns@cisco.com>
src/vat/api_format.c
src/vnet/mpls/interface.c

index 599b29b..f54aa02 100644 (file)
@@ -20381,14 +20381,14 @@ vl_api_mpls_fib_path_print (vat_main_t * vam, vl_api_fib_path_t * fp)
     print (vam->ofp,
           "  weight %d, sw_if_index %d, is_local %d, is_drop %d, "
           "is_unreach %d, is_prohitbit %d, afi %d, next_hop %U",
-          ntohl (fp->weight), ntohl (fp->sw_if_index), fp->is_local,
+          fp->weight, ntohl (fp->sw_if_index), fp->is_local,
           fp->is_drop, fp->is_unreach, fp->is_prohibit, fp->afi,
           format_ip6_address, fp->next_hop);
   else if (fp->afi == IP46_TYPE_IP4)
     print (vam->ofp,
           "  weight %d, sw_if_index %d, is_local %d, is_drop %d, "
           "is_unreach %d, is_prohitbit %d, afi %d, next_hop %U",
-          ntohl (fp->weight), ntohl (fp->sw_if_index), fp->is_local,
+          fp->weight, ntohl (fp->sw_if_index), fp->is_local,
           fp->is_drop, fp->is_unreach, fp->is_prohibit, fp->afi,
           format_ip4_address, fp->next_hop);
 }
index ec541f7..46d80f0 100644 (file)
@@ -62,7 +62,7 @@ mpls_sw_interface_enable_disable (mpls_main_t * mm,
       fib_table_lock(lfib_index, FIB_PROTOCOL_MPLS,
                      (is_api? FIB_SOURCE_API: FIB_SOURCE_CLI));
 
-      vec_validate(mm->fib_index_by_sw_if_index, 0);
+      vec_validate(mm->fib_index_by_sw_if_index, sw_if_index);
       mm->fib_index_by_sw_if_index[sw_if_index] = lfib_index;
     }
   else