cnat: Add support for SNat ICMP
[vpp.git] / src / plugins / cnat / cnat_types.c
index ae485a4..9db953f 100644 (file)
@@ -80,9 +80,14 @@ cnat_types_init (vlib_main_t * vm)
                                         CNAT_FIB_SOURCE_PRIORITY,
                                         FIB_SOURCE_BH_SIMPLE);
 
+
   clib_rwlock_init (&cnat_main.ts_lock);
-  clib_spinlock_init (&cnat_main.src_ports_lock);
-  clib_bitmap_validate (cnat_main.src_ports, UINT16_MAX);
+  vec_validate (cnat_main.src_ports, CNAT_N_SPORT_PROTO);
+  for (int i = 0; i < CNAT_N_SPORT_PROTO; i++)
+    {
+      clib_spinlock_init (&cnat_main.src_ports[i].lock);
+      clib_bitmap_validate (cnat_main.src_ports[i].bmap, UINT16_MAX);
+    }
   throttle_init (&cnat_throttle, n_vlib_mains, 1e-3);
 
   return (NULL);