summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIan Stakenvicius <axs@gentoo.org>2013-01-28 11:16:31 -0500
committerIan Stakenvicius <axs@gentoo.org>2013-01-28 12:12:41 -0500
commit26e92619267df364bac4aed29376a36669fb53d3 (patch)
tree903b84f302c56fc447341429b48e04bae333f657 /src
parent82f60023e3d4b33624c85a149915b411b504e426 (diff)
Add missing selinux code to udev core (convenience lib)
Original Author: Alexey D. (TZ86) Signed-off-by: Ian Stakenvicius <axs@gentoo.org> Signed-off-by: Matthew Thode <prometheanfire@gentoo.org>
Diffstat (limited to 'src')
-rw-r--r--src/udev/Makefile.am3
-rw-r--r--src/udev/label.c9
2 files changed, 10 insertions, 2 deletions
diff --git a/src/udev/Makefile.am b/src/udev/Makefile.am
index 972c275c8c..866d2c2537 100644
--- a/src/udev/Makefile.am
+++ b/src/udev/Makefile.am
@@ -72,7 +72,8 @@ libudev_core_la_CFLAGS = \
libudev_core_la_LIBADD = \
$(top_builddir)/src/libudev/libudev-private.la \
- $(BLKID_LIBS)
+ $(BLKID_LIBS) \
+ $(SELINUX_LIBS)
if HAVE_MODULES
libudev_core_la_SOURCES += \
diff --git a/src/udev/label.c b/src/udev/label.c
index d353da57ec..7e8d8f9277 100644
--- a/src/udev/label.c
+++ b/src/udev/label.c
@@ -31,12 +31,19 @@
#include "path-util.h"
#ifdef HAVE_SELINUX
-#include "selinux-util.h"
+#include <stdbool.h>
#include <selinux/selinux.h>
#include <selinux/label.h>
static struct selabel_handle *label_hnd = NULL;
+static int use_selinux_cached = -1;
+bool use_selinux(void) {
+ if (use_selinux_cached < 0)
+ use_selinux_cached = is_selinux_enabled() > 0;
+
+ return use_selinux_cached;
+}
#endif
int label_init(const char *prefix) {