X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fudev%2Fudevd.c;h=65d086e9eea742c7accd3bd08c46883bbbc4a892;hb=59fccdc587bc179c1638916ee16a24099f94f81f;hp=37db81c8bba9ba0f8c2a0ae32f7291333100fcf3;hpb=65fea570f03df51dadc06a3e0d261a71fe62aa01;p=elogind.git diff --git a/src/udev/udevd.c b/src/udev/udevd.c index 37db81c8b..65d086e9e 100644 --- a/src/udev/udevd.c +++ b/src/udev/udevd.c @@ -967,7 +967,7 @@ static void kernel_cmdline_options(struct udev *udev) { return; FOREACH_WORD_QUOTED(word, l, line, state) { - char *s, *opt; + char *s, *opt, *value; s = strndup(word, l); if (!s) @@ -979,24 +979,24 @@ static void kernel_cmdline_options(struct udev *udev) { else opt = s; - if (startswith(opt, "udev.log-priority=")) { + if ((value = startswith(opt, "udev.log-priority="))) { int prio; - prio = util_log_priority(opt + 18); + prio = util_log_priority(value); log_set_max_level(prio); udev_set_log_priority(udev, prio); - } else if (startswith(opt, "udev.children-max=")) { - r = safe_atoi(opt + 18, &arg_children_max); + } else if ((value = startswith(opt, "udev.children-max="))) { + r = safe_atoi(value, &arg_children_max); if (r < 0) - log_warning("Invalid udev.children-max ignored: %s", opt + 18); - } else if (startswith(opt, "udev.exec-delay=")) { - r = safe_atoi(opt + 16, &arg_exec_delay); + log_warning("Invalid udev.children-max ignored: %s", value); + } else if ((value = startswith(opt, "udev.exec-delay="))) { + r = safe_atoi(value, &arg_exec_delay); if (r < 0) - log_warning("Invalid udev.exec-delay ignored: %s", opt + 16); - } else if (startswith(opt, "udev.event-timeout=")) { - r = safe_atou64(opt + 16, &arg_event_timeout_usec); + log_warning("Invalid udev.exec-delay ignored: %s", value); + } else if ((value = startswith(opt, "udev.event-timeout="))) { + r = safe_atou64(value, &arg_event_timeout_usec); if (r < 0) { - log_warning("Invalid udev.event-timeout ignored: %s", opt + 16); + log_warning("Invalid udev.event-timeout ignored: %s", value); break; } arg_event_timeout_usec *= USEC_PER_SEC; @@ -1139,7 +1139,7 @@ int main(int argc, char *argv[]) { goto exit; } - r = label_init("/dev"); + r = mac_selinux_init("/dev"); if (r < 0) { log_error("could not initialize labelling: %s", strerror(-r)); goto exit; @@ -1155,7 +1155,7 @@ int main(int argc, char *argv[]) { umask(022); r = mkdir("/run/udev", 0755); - if (r < 0) { + if (r < 0 && errno != EEXIST) { log_error("could not create /run/udev: %m"); goto exit; } @@ -1542,7 +1542,7 @@ exit_daemonize: udev_monitor_unref(monitor); udev_ctrl_connection_unref(ctrl_conn); udev_ctrl_unref(udev_ctrl); - label_finish(); + mac_selinux_finish(); udev_unref(udev); log_close(); return rc;