chiark / gitweb /
Revert "label: fix systemd-udev labeling of /run directory."
authorKay Sievers <kay@vrfy.org>
Thu, 31 May 2012 11:34:41 +0000 (13:34 +0200)
committerKay Sievers <kay@vrfy.org>
Thu, 31 May 2012 11:34:41 +0000 (13:34 +0200)
This reverts commit 9b5af248f04b6cad8a5bca836e89a39e9f6823d9.

Udev now explicitely labels only files/directories in /dev. The selinux
array API is not released and will not work on other distros at this moment.

src/shared/label.c
src/shared/label.h
src/test/test-udev.c
src/udev/udevadm.c
src/udev/udevd.c

index d912574..9a5f79d 100644 (file)
@@ -52,7 +52,7 @@ void label_retest_selinux(void) {
 
 #endif
 
-int label_init(const char *prefixes[]) {
+int label_init(const char *prefix) {
         int r = 0;
 
 #ifdef HAVE_SELINUX
@@ -68,9 +68,9 @@ int label_init(const char *prefixes[]) {
         before_mallinfo = mallinfo();
         before_timestamp = now(CLOCK_MONOTONIC);
 
-        if (prefixes) {
+        if (prefix) {
                 struct selinux_opt options[] = {
-                        { .type = SELABEL_OPT_SUBSET, .values = prefixes },
+                        { .type = SELABEL_OPT_SUBSET, .value = prefix },
                 };
 
                 label_hnd = selabel_open(SELABEL_CTX_FILE, options, ELEMENTSOF(options));
index 2eaabfa..4f404b2 100644 (file)
@@ -26,7 +26,7 @@
 #include <stdbool.h>
 #include <sys/socket.h>
 
-int label_init(const char *prefixes[]);
+int label_init(const char *prefix);
 void label_finish(void);
 
 int label_fix(const char *path, bool ignore_enoent);
index bd9c059..414eabc 100644 (file)
@@ -45,13 +45,12 @@ int main(int argc, char *argv[])
         const char *action;
         sigset_t mask, sigmask_orig;
         int err = -EINVAL;
-        const char *prefixes[] = { "/dev", "/run", NULL };
 
         udev = udev_new();
         if (udev == NULL)
                 exit(EXIT_FAILURE);
         log_debug("version %s\n", VERSION);
-        label_init(prefixes);
+        label_init("/dev");
 
         sigprocmask(SIG_SETMASK, NULL, &sigmask_orig);
 
index fafa31b..5217d7f 100644 (file)
@@ -91,7 +91,6 @@ int main(int argc, char *argv[])
                 { "version", no_argument, NULL, 'V' },
                 {}
         };
-        const char *prefixes[] = { "/dev", "/run", NULL };
         const char *command;
         unsigned int i;
         int rc = 1;
@@ -103,8 +102,7 @@ int main(int argc, char *argv[])
         log_open();
         log_parse_environment();
         udev_set_log_fn(udev, udev_main_log);
-
-        label_init(prefixes);
+        label_init("/dev");
 
         for (;;) {
                 int option;
index 43937db..7905310 100644 (file)
@@ -1030,7 +1030,6 @@ int main(int argc, char *argv[])
         int fd_ctrl = -1;
         int fd_netlink = -1;
         int fd_worker = -1;
-        const char *prefixes[] = { "/dev", "/run", NULL };
         struct epoll_event ep_ctrl, ep_inotify, ep_signal, ep_netlink, ep_worker;
         struct udev_ctrl_connection *ctrl_conn = NULL;
         int rc = 1;
@@ -1043,7 +1042,7 @@ int main(int argc, char *argv[])
         log_parse_environment();
         udev_set_log_fn(udev, udev_main_log);
         log_debug("version %s\n", VERSION);
-        label_init(prefixes);
+        label_init("/dev");
 
         for (;;) {
                 int option;