+int plist_has_value(plist_t *list, void *value) {
+ plist_element_t *iter;
+
+ for (iter = plist_first(list); iter; iter = plist_element_get_next(iter)) {
+ if (plist_element_get_value(iter) == value)
+ return 1;
+ }
+
+ return 0;
+}
+
+plist_element_t *plist_find_value(plist_t *list, void *value) {
+ plist_element_t *iter;
+
+ for (iter = plist_first(list); iter; iter = plist_element_get_next(iter)) {
+ if (plist_element_get_value(iter) == value)
+ return iter;
+ }
+
+ return NULL;
+}
+