static u32 ip6_lookup (gid_ip6_table_t * db, u32 vni, ip_prefix_t * key);
-static void
+static int
foreach_sfib4_subprefix (BVT (clib_bihash_kv) * kvp, void *arg)
{
sfib_entry_arg_t *a = arg;
/* found sub-prefix of src prefix */
(a->cb) (kvp->value, a->arg);
}
+ return (BIHASH_WALK_CONTINUE);
}
static void
foreach_sfib4_subprefix, &a);
}
-static void
+static int
foreach_sfib6_subprefix (BVT (clib_bihash_kv) * kvp, void *arg)
{
sfib_entry_arg_t *a = arg;
/* found sub-prefix of src prefix */
(a->cb) (kvp->value, a->arg);
}
+ return (BIHASH_WALK_CONTINUE);
}
static void
}
void
-gid_dict_foreach_l2_arp_ndp_entry (gid_dictionary_t * db, void (*cb)
- (BVT (clib_bihash_kv) * kvp, void *arg),
- void *ht)
+gid_dict_foreach_l2_arp_ndp_entry (gid_dictionary_t * db,
+ BV (clib_bihash_foreach_key_value_pair_cb)
+ cb, void *ht)
{
gid_l2_arp_ndp_table_t *tab = &db->arp_ndp_table;
BV (clib_bihash_foreach_key_value_pair) (&tab->arp_ndp_lookup_table, cb,
kv->key[0] = ((u64) bd << 32) | (u32) ip_addr_version (addr);
if (ip_addr_version (addr) == AF_IP4)
{
- kv->key[1] = (u64) addr->ip.v4.as_u32;
+ kv->key[1] = (u64) ip_addr_v4 (addr).as_u32;
kv->key[2] = (u64) 0;
}
else
{
- kv->key[1] = (u64) addr->ip.v6.as_u64[0];
- kv->key[2] = (u64) addr->ip.v6.as_u64[1];
+ kv->key[1] = (u64) ip_addr_v6 (addr).as_u64[0];
+ kv->key[2] = (u64) ip_addr_v6 (addr).as_u64[1];
}
}