diff --git a/src/utils/llist.c b/src/utils/llist.c
index dfc8fb99d18ecfeb6e38cc0a7339426854691704..613e53cc8a601701318560cc34a5947f29e365a5 100644 (file)
--- a/src/utils/llist.c
+++ b/src/utils/llist.c
sdb_object_t *
sdb_llist_search(sdb_llist_t *list,
- const sdb_object_t *key, sdb_llist_cmp_cb compare)
+ sdb_llist_lookup_cb lookup, void *user_data)
{
sdb_llist_elem_t *elem;
- if ((! list) || (! compare))
+ if ((! list) || (! lookup))
return NULL;
pthread_rwlock_rdlock(&list->lock);
for (elem = list->head; elem; elem = elem->next)
- if (! compare(elem->obj, key))
+ if (! lookup(elem->obj, user_data))
break;
pthread_rwlock_unlock(&list->lock);
-
if (elem)
return elem->obj;
return NULL;