diff options
author | Kay Sievers <kay@vrfy.org> | 2014-11-13 13:50:01 +0100 |
---|---|---|
committer | Kay Sievers <kay@vrfy.org> | 2014-11-13 13:50:01 +0100 |
commit | 41b848b0ea674dba135d5d5f82b87d126d967fcf (patch) | |
tree | efae88229c6d8a0b7a0f7350bd9035e7876001ed /src/udev/udevd.c | |
parent | 25e773eeb4f853804e1bf0dbd9a184f23e9b2a97 (diff) |
udev: move global property handling from libudev to udevd
Diffstat (limited to 'src/udev/udevd.c')
-rw-r--r-- | src/udev/udevd.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/udev/udevd.c b/src/udev/udevd.c index e03297de5b..6335b6c75a 100644 --- a/src/udev/udevd.c +++ b/src/udev/udevd.c @@ -54,12 +54,6 @@ #include "dev-setup.h" #include "fileio.h" -void udev_main_log(struct udev *udev, int priority, - const char *file, int line, const char *fn, - const char *format, va_list args) { - log_metav(priority, file, line, fn, format, args); -} - static struct udev_rules *rules; static struct udev_ctrl *udev_ctrl; static struct udev_monitor *monitor; @@ -82,6 +76,7 @@ static UDEV_LIST(event_list); static UDEV_LIST(worker_list); static char *udev_cgroup; static bool udev_exit; +static struct udev_list properties_list; enum event_state { EVENT_UNDEF, @@ -676,10 +671,10 @@ static struct udev_ctrl_connection *handle_ctrl_msg(struct udev_ctrl *uctrl) { val = &val[1]; if (val[0] == '\0') { log_debug("udevd message (ENV) received, unset '%s'", key); - udev_add_property(udev, key, NULL); + udev_list_entry_add(&properties_list, key, NULL); } else { log_debug("udevd message (ENV) received, set '%s=%s'", key, val); - udev_add_property(udev, key, val); + udev_list_entry_add(&properties_list, key, val); } } else { log_error("wrong key format '%s'", key); @@ -1147,6 +1142,8 @@ int main(int argc, char *argv[]) { umask(022); + udev_list_init(udev, &properties_list, true); + r = mkdir("/run/udev", 0755); if (r < 0 && errno != EEXIST) { log_error("could not create /run/udev: %m"); @@ -1535,6 +1532,7 @@ exit_daemonize: udev_monitor_unref(monitor); udev_ctrl_connection_unref(ctrl_conn); udev_ctrl_unref(udev_ctrl); + udev_list_cleanup(&properties_list); mac_selinux_finish(); udev_unref(udev); log_close(); |