X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=blobdiff_plain;f=utils.h;h=cbb57759978e544b23d47694cc59dc202779dd71;hp=85d7dc6bdb0d23c6fd97641ac254eaa230558795;hb=10741b4974b85c825036eb0717ddc7112f96f5fb;hpb=64c271ed3bd50ce5ffbf69108d75bb79d279e8d9 diff --git a/utils.h b/utils.h index 85d7dc6..cbb5775 100644 --- a/utils.h +++ b/utils.h @@ -34,6 +34,14 @@ void __vlist_init(struct vlist_tree *tree, avl_tree_comp cmp, vlist_update_cb up #define vlist_init(tree, cmp, update, type, node, key) \ __vlist_init(tree, cmp, update, offsetof(type, key) - offsetof(type, node)) +#define vlist_find(tree, name, element, node_member) \ + avl_find_element(&(tree)->avl, name, element, node_member.avl) + +static inline void vlist_update(struct vlist_tree *tree) +{ + tree->version++; +} + void vlist_add(struct vlist_tree *tree, struct vlist_node *node); void vlist_delete(struct vlist_tree *tree, struct vlist_node *node); void vlist_flush(struct vlist_tree *tree);