diff options
author | Tom Gundersen <teg@jklm.no> | 2015-03-06 18:30:09 +0100 |
---|---|---|
committer | Tom Gundersen <teg@jklm.no> | 2015-03-12 11:59:04 +0100 |
commit | 1cd0a77022a4da17d1274f8f776b63e72c99fb05 (patch) | |
tree | 35662cbbbf0f62cdf131e6e5a2f4e20eaa9bd239 /src/libudev/libudev-device.c | |
parent | 4db7e6d781c2d9bba4e9124d26e811dd4addc1c5 (diff) |
libudev: introduce udev_device_properties_copy()
To copy properties from one device to another. Drop the equivalent functionality from udevd.
Diffstat (limited to 'src/libudev/libudev-device.c')
-rw-r--r-- | src/libudev/libudev-device.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/libudev/libudev-device.c b/src/libudev/libudev-device.c index 242a0d89b6..2604ad7051 100644 --- a/src/libudev/libudev-device.c +++ b/src/libudev/libudev-device.c @@ -2030,3 +2030,18 @@ struct udev_device *udev_device_new_from_nulstr(struct udev *udev, char *nulstr, return device; } + +int udev_device_copy_properties(struct udev_device *dst, struct udev_device *src) { + struct udev_list_entry *entry; + + for ((entry = udev_device_get_properties_list_entry(src)); entry; entry = udev_list_entry_get_next(entry)) { + const char *key, *value; + + key = udev_list_entry_get_name(entry); + value = udev_list_entry_get_value(entry); + + udev_device_add_property(dst, key, value); + } + + return 0; +} |