geneve: Fix the byte swapping for the VNI
[vpp.git] / src / vnet / geneve / geneve.c
index 52664b3..1e04c66 100644 (file)
@@ -292,14 +292,15 @@ geneve_decap_next_is_valid (geneve_main_t * vxm, u32 is_ip6,
   return decap_next_index < r->n_next_nodes;
 }
 
-typedef CLIB_PACKED (union
-                    {
-                    struct
-                    {
-                    fib_node_index_t mfib_entry_index;
-                    adj_index_t mcast_adj_index;
-                    }; u64 as_u64;
-                    }) mcast_shared_t;
+typedef union
+{
+  struct
+  {
+    fib_node_index_t mfib_entry_index;
+    adj_index_t mcast_adj_index;
+  };
+  u64 as_u64;
+} __clib_packed mcast_shared_t;
 
 static inline mcast_shared_t
 mcast_shared_get (ip46_address_t * ip)
@@ -352,15 +353,13 @@ int vnet_geneve_add_del_tunnel
   if (!is_ip6)
     {
       key4.remote = a->remote.ip4.as_u32;
-      key4.vni =
-       clib_host_to_net_u32 ((a->vni << GENEVE_VNI_SHIFT) & GENEVE_VNI_MASK);
+      key4.vni = clib_host_to_net_u32 (a->vni << GENEVE_VNI_SHIFT);
       p = hash_get (vxm->geneve4_tunnel_by_key, key4.as_u64);
     }
   else
     {
       key6.remote = a->remote.ip6;
-      key6.vni =
-       clib_host_to_net_u32 ((a->vni << GENEVE_VNI_SHIFT) & GENEVE_VNI_MASK);
+      key6.vni = clib_host_to_net_u32 (a->vni << GENEVE_VNI_SHIFT);
       p = hash_get_mem (vxm->geneve6_tunnel_by_key, &key6);
     }