chiark / gitweb /
move selinux noops to udev.h
authorKay Sievers <kay.sievers@vrfy.org>
Fri, 3 Oct 2008 12:49:29 +0000 (14:49 +0200)
committerKay Sievers <kay.sievers@vrfy.org>
Fri, 3 Oct 2008 12:49:29 +0000 (14:49 +0200)
TODO
extras/floppy/Makefile.am
udev/Makefile.am
udev/udev.h
udev/udev_selinux.c

diff --git a/TODO b/TODO
index ac996f4..f960f24 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,5 +1,3 @@
-  add DEVTYPE
-
   o handle spaces in SYMLINK+=, do not create multiple links
   o use libudev device in udev_rules.c
       get rid of udevice, store rule matching state in rule iterator
index 337e7a3..357129e 100644 (file)
@@ -9,10 +9,11 @@ create_floppy_devices_SOURCES = \
        ../../udev/lib/libudev.h \
        ../../udev/lib/libudev.c \
        ../../udev/lib/libudev-util.c \
-       ../../udev/udev_utils.c \
-       ../../udev/udev_selinux.c
+       ../../udev/udev_utils.c
 
 if USE_SELINUX
+create_floppy_devices_SOURCES += \
+       ../../udev/udev_selinux.c
 create_floppy_devices_LDADD = \
        $(SELINUX_LIBS)
 endif
index b9e2e89..c0df391 100644 (file)
@@ -25,7 +25,6 @@ common_files = \
        udev_sysfs.c \
        udev_utils.c \
        udev_utils_file.c \
-       udev_selinux.c \
        list.h \
        lib/libudev.h \
        lib/libudev-private.h \
@@ -39,6 +38,8 @@ common_files = \
        lib/libudev-ctrl.c
 
 if USE_SELINUX
+common_files += \
+       udev_selinux.c
 common_ldadd += \
        $(SELINUX_LIBS)
 endif
index b54d313..6a685e6 100644 (file)
@@ -168,11 +168,19 @@ extern void file_unmap(void *buf, size_t bufsize);
 extern size_t buf_get_line(const char *buf, size_t buflen, size_t cur);
 
 /* udev_selinux */
+#ifndef USE_SELINUX
+static inline void selinux_init(struct udev *udev) {}
+static inline void selinux_exit(struct udev *udev) {}
+static inline void udev_selinux_lsetfilecon(struct udev *udev, const char *file, unsigned int mode) {}
+static inline void udev_selinux_setfscreatecon(struct udev *udev, const char *file, unsigned int mode) {}
+static inline void udev_selinux_resetfscreatecon(struct udev *udev) {}
+#else
 extern void selinux_init(struct udev *udev);
 extern void selinux_exit(struct udev *udev);
 extern void udev_selinux_lsetfilecon(struct udev *udev, const char *file, unsigned int mode);
 extern void udev_selinux_setfscreatecon(struct udev *udev, const char *file, unsigned int mode);
 extern void udev_selinux_resetfscreatecon(struct udev *udev);
+#endif
 
 /* udevadm commands */
 extern int udevadm_monitor(struct udev *udev, int argc, char *argv[]);
index 499f53c..cf7f434 100644 (file)
 #include <stddef.h>
 #include <stdarg.h>
 #include <unistd.h>
+#include <selinux/selinux.h>
 
 #include "udev.h"
 
-#ifndef USE_SELINUX
-void selinux_init(struct udev *udev) {}
-void selinux_exit(struct udev *udev) {}
-void udev_selinux_lsetfilecon(struct udev *udev, const char *file, unsigned int mode) {}
-void udev_selinux_setfscreatecon(struct udev *udev, const char *file, unsigned int mode) {}
-void udev_selinux_resetfscreatecon(struct udev *udev) {}
-#else
-#include <selinux/selinux.h>
-
 static int selinux_enabled;
 security_context_t selinux_prev_scontext;
 
@@ -96,4 +88,3 @@ void udev_selinux_resetfscreatecon(struct udev *udev)
        if (setfscreatecon(selinux_prev_scontext) < 0)
                err(udev, "setfscreatecon failed: %m\n");
 }
-#endif