+arp_ndp_lookup_init (gid_l2_arp_ndp_table_t * db)
+{
+ if (db->arp_ndp_lookup_table_nbuckets == 0)
+ db->arp_ndp_lookup_table_nbuckets =
+ ARP_NDP_LOOKUP_DEFAULT_HASH_NUM_BUCKETS;
+
+ db->arp_ndp_lookup_table_nbuckets =
+ 1 << max_log2 (db->arp_ndp_lookup_table_nbuckets);
+
+ if (db->arp_ndp_lookup_table_size == 0)
+ db->arp_ndp_lookup_table_size = ARP_NDP_LOOKUP_DEFAULT_HASH_MEMORY_SIZE;
+
+ BV (clib_bihash_init) (&db->arp_ndp_lookup_table, "arp ndp lookup table",
+ db->arp_ndp_lookup_table_nbuckets,
+ db->arp_ndp_lookup_table_size);
+}
+
+static void
+nsh_lookup_init (gid_nsh_table_t * db)