Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
vppinfra: bihash walk cb typedef and continue/stop controls
[vpp.git]
/
src
/
vnet
/
lisp-cp
/
gid_dictionary.c
diff --git
a/src/vnet/lisp-cp/gid_dictionary.c
b/src/vnet/lisp-cp/gid_dictionary.c
index
3fd98c7
..
c1b4ada
100644
(file)
--- a/
src/vnet/lisp-cp/gid_dictionary.c
+++ b/
src/vnet/lisp-cp/gid_dictionary.c
@@
-31,7
+31,7
@@
static u32 ip4_lookup (gid_ip4_table_t * db, u32 vni, ip_prefix_t * key);
static u32 ip6_lookup (gid_ip6_table_t * db, u32 vni, ip_prefix_t * key);
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;
foreach_sfib4_subprefix (BVT (clib_bihash_kv) * kvp, void *arg)
{
sfib_entry_arg_t *a = arg;
@@
-51,6
+51,7
@@
foreach_sfib4_subprefix (BVT (clib_bihash_kv) * kvp, void *arg)
/* found sub-prefix of src prefix */
(a->cb) (kvp->value, a->arg);
}
/* found sub-prefix of src prefix */
(a->cb) (kvp->value, a->arg);
}
+ return (BIHASH_WALK_CONTINUE);
}
static void
}
static void
@@
-77,7
+78,7
@@
gid_dict_foreach_ip4_subprefix (gid_dictionary_t * db, u32 vni,
foreach_sfib4_subprefix, &a);
}
foreach_sfib4_subprefix, &a);
}
-static
void
+static
int
foreach_sfib6_subprefix (BVT (clib_bihash_kv) * kvp, void *arg)
{
sfib_entry_arg_t *a = arg;
foreach_sfib6_subprefix (BVT (clib_bihash_kv) * kvp, void *arg)
{
sfib_entry_arg_t *a = arg;
@@
-94,6
+95,7
@@
foreach_sfib6_subprefix (BVT (clib_bihash_kv) * kvp, void *arg)
/* found sub-prefix of src prefix */
(a->cb) (kvp->value, a->arg);
}
/* found sub-prefix of src prefix */
(a->cb) (kvp->value, a->arg);
}
+ return (BIHASH_WALK_CONTINUE);
}
static void
}
static void
@@
-139,9
+141,9
@@
gid_dict_foreach_subprefix (gid_dictionary_t * db, gid_address_t * eid,
}
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,
{
gid_l2_arp_ndp_table_t *tab = &db->arp_ndp_table;
BV (clib_bihash_foreach_key_value_pair) (&tab->arp_ndp_lookup_table, cb,