X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=udev_selinux.c;h=446fedc3c35aa67c47e724cb820f357d69d61196;hb=f051e340699286831b90b242d843eb1a38c2b19f;hp=6ec359edd4bd64d4578509876784372cde00ef28;hpb=df4e89bfa61b6aaea41619842aa9032dd1af072e;p=elogind.git diff --git a/udev_selinux.c b/udev_selinux.c index 6ec359edd..446fedc3c 100644 --- a/udev_selinux.c +++ b/udev_selinux.c @@ -30,8 +30,8 @@ #include #include +#include "udev.h" #include "udev_selinux.h" -#include "logging.h" static security_context_t prev_scontext = NULL; @@ -54,7 +54,7 @@ static char *get_media(const char *devname, int mode) int size; char *media = NULL; - if (!(mode && S_IFBLK)) + if (!(mode & S_IFBLK)) return NULL; snprintf(procfile, PATH_MAX, "/proc/ide/%s/media", devname); @@ -152,6 +152,7 @@ void selinux_init(void) * restoration creation purposes. */ if (is_selinux_running()) { + matchpathcon_init_prefix(NULL, udev_root); if (getfscreatecon(&prev_scontext) < 0) { err("getfscreatecon failed\n"); prev_scontext = NULL;