X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcore%2Fselinux-setup.c;h=7a32ed59a0a8020c3f1b9431e119242eafc1d07d;hp=22ca820188b243dfa5db3b856bce7e7dcd781ee0;hb=128c3c5881e5708b3f15517ee24dd8c0a1c6307e;hpb=dbc655d58dd80d7381d63d4daab894cbb5379079 diff --git a/src/core/selinux-setup.c b/src/core/selinux-setup.c index 22ca82018..7a32ed59a 100644 --- a/src/core/selinux-setup.c +++ b/src/core/selinux-setup.c @@ -30,15 +30,18 @@ #endif #include "selinux-setup.h" +#include "selinux-util.h" +#include "label.h" #include "mount-setup.h" #include "macro.h" #include "util.h" #include "log.h" -#include "label.h" +#ifdef HAVE_SELINUX static int null_log(int type, const char *fmt, ...) { return 0; } +#endif int selinux_setup(bool *loaded_policy) { @@ -55,9 +58,6 @@ int selinux_setup(bool *loaded_policy) { cb.func_log = null_log; selinux_set_callback(SELINUX_CB_LOG, cb); - /* Make sure getcon() works, which needs /proc and /sys */ - mount_setup_early(); - /* Already initialized by somebody else? */ r = getcon_raw(&con); if (r == 0) { @@ -77,12 +77,11 @@ int selinux_setup(bool *loaded_policy) { /* Now load the policy */ before_load = now(CLOCK_MONOTONIC); r = selinux_init_load_policy(&enforce); - if (r == 0) { char timespan[FORMAT_TIMESPAN_MAX]; char *label; - label_retest_selinux(); + retest_selinux(); /* Transition to the new context */ r = label_get_create_label_from_exe(SYSTEMD_BINARY_PATH, &label); @@ -102,7 +101,7 @@ int selinux_setup(bool *loaded_policy) { after_load = now(CLOCK_MONOTONIC); log_info("Successfully loaded SELinux policy in %s.", - format_timespan(timespan, sizeof(timespan), after_load - before_load)); + format_timespan(timespan, sizeof(timespan), after_load - before_load, 0)); *loaded_policy = true;