X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev%2Flib%2Flibudev-list.c;h=e681e23e84c1506f62fcfcc070510c3683410e8d;hb=86b5778857522087e74182f26f0e565adea0c699;hp=76c2f7e93bd1847ded8fb4eb3250b02cd656b063;hpb=3feeb77c97a62cbb714bb95ed38ec8c44cb459ce;p=elogind.git diff --git a/udev/lib/libudev-list.c b/udev/lib/libudev-list.c index 76c2f7e93..e681e23e8 100644 --- a/udev/lib/libudev-list.c +++ b/udev/lib/libudev-list.c @@ -43,14 +43,14 @@ void udev_list_init(struct udev_list_node *list) list->prev = list; } -static int udev_list_is_empty(struct udev_list_node *list) +int udev_list_is_empty(struct udev_list_node *list) { return list->next == list; } static void udev_list_node_insert_between(struct udev_list_node *new, - struct udev_list_node *prev, - struct udev_list_node *next) + struct udev_list_node *prev, + struct udev_list_node *next) { next->prev = new; new->next = next; @@ -58,7 +58,12 @@ static void udev_list_node_insert_between(struct udev_list_node *new, prev->next = new; } -static void udev_list_node_remove(struct udev_list_node *entry) +void udev_list_node_append(struct udev_list_node *new, struct udev_list_node *list) +{ + udev_list_node_insert_between(new, list->prev, list); +} + +void udev_list_node_remove(struct udev_list_node *entry) { struct udev_list_node *prev = entry->prev; struct udev_list_node *next = entry->next; @@ -105,17 +110,17 @@ struct udev_list_entry *udev_list_entry_add(struct udev *udev, struct udev_list_ if (unique) udev_list_entry_foreach(entry_loop, udev_list_get_entry(list)) { if (strcmp(entry_loop->name, name) == 0) { - info(udev, "'%s' is already in the list\n", name); + dbg(udev, "'%s' is already in the list\n", name); free(entry_loop->value); if (value == NULL) { entry_loop->value = NULL; - info(udev, "'%s' value unset\n", name); + dbg(udev, "'%s' value unset\n", name); return entry_loop; } entry_loop->value = strdup(value); if (entry_loop->value == NULL) return NULL; - info(udev, "'%s' value replaced with '%s'\n", name, value); + dbg(udev, "'%s' value replaced with '%s'\n", name, value); return entry_loop; } } @@ -160,7 +165,7 @@ void udev_list_entry_remove(struct udev_list_entry *entry) free(entry); } -void udev_list_cleanup(struct udev *udev, struct udev_list_node *list) +void udev_list_cleanup_entries(struct udev *udev, struct udev_list_node *list) { struct udev_list_entry *entry_loop; struct udev_list_entry *entry_tmp;