X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Ftest%2Ftest-udev.c;h=4403624c5a5a785ed74730109a4ba519dd384ad6;hb=b6e676ce41508e2aeea22202fc8f234126177f52;hp=17825f12b4031cf5c1e0195c369916b7ad4fa1fd;hpb=1ca208fb4f93e5869704af1812cbff7130a2fc03;p=elogind.git diff --git a/src/test/test-udev.c b/src/test/test-udev.c index 17825f12b..4403624c5 100644 --- a/src/test/test-udev.c +++ b/src/test/test-udev.c @@ -19,27 +19,18 @@ ***/ #include -#include #include -#include -#include -#include #include #include -#include -#include #include #include #include #include "missing.h" +#include "selinux-util.h" #include "udev.h" #include "udev-util.h" -void udev_main_log(struct udev *udev, int priority, - const char *file, int line, const char *fn, - const char *format, va_list args) {} - static int fake_filesystems(void) { static const struct fakefs { const char *src; @@ -80,9 +71,7 @@ out: return err; } - -int main(int argc, char *argv[]) -{ +int main(int argc, char *argv[]) { _cleanup_udev_unref_ struct udev *udev = NULL; _cleanup_udev_event_unref_ struct udev_event *event = NULL; _cleanup_udev_device_unref_ struct udev_device *dev = NULL; @@ -101,20 +90,20 @@ int main(int argc, char *argv[]) if (udev == NULL) return EXIT_FAILURE; - log_debug("version %s\n", VERSION); - label_init("/dev"); + log_debug("version %s", VERSION); + mac_selinux_init("/dev"); sigprocmask(SIG_SETMASK, NULL, &sigmask_orig); action = argv[1]; if (action == NULL) { - log_error("action missing\n"); + log_error("action missing"); goto out; } devpath = argv[2]; if (devpath == NULL) { - log_error("devpath missing\n"); + log_error("devpath missing"); goto out; } @@ -123,7 +112,7 @@ int main(int argc, char *argv[]) strscpyl(syspath, sizeof(syspath), "/sys", devpath, NULL); dev = udev_device_new_from_syspath(udev, syspath); if (dev == NULL) { - log_debug("unknown device '%s'\n", devpath); + log_debug("unknown device '%s'", devpath); goto out; } @@ -152,17 +141,22 @@ int main(int argc, char *argv[]) mknod(udev_device_get_devnode(dev), mode, udev_device_get_devnum(dev)); } else { unlink(udev_device_get_devnode(dev)); - util_delete_path(udev, udev_device_get_devnode(dev)); + rmdir_parents(udev_device_get_devnode(dev), "/"); } } - err = udev_event_execute_rules(event, rules, &sigmask_orig); - if (err == 0) - udev_event_execute_run(event, NULL); + udev_event_execute_rules(event, + 3 * USEC_PER_SEC, USEC_PER_SEC, + NULL, + rules, + &sigmask_orig); + udev_event_execute_run(event, + 3 * USEC_PER_SEC, USEC_PER_SEC, + NULL); out: if (event != NULL && event->fd_signal >= 0) close(event->fd_signal); - label_finish(); + mac_selinux_finish(); return err ? EXIT_FAILURE : EXIT_SUCCESS; }