From: Harald Hoyer Date: Wed, 11 Apr 2007 23:10:08 +0000 (+0200) Subject: create_floppy_devices: create nodes with correct selinux context X-Git-Tag: 174~2002 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=7c70c25212fe1b4918c4d7f270c46430111ad365 create_floppy_devices: create nodes with correct selinux context --- diff --git a/extras/floppy/create_floppy_devices.c b/extras/floppy/create_floppy_devices.c index 7a3ddb2ff..7c1ea0715 100644 --- a/extras/floppy/create_floppy_devices.c +++ b/extras/floppy/create_floppy_devices.c @@ -155,6 +155,7 @@ int main(int argc, char **argv) if (type == 0) return 0; + udev_config_init(); selinux_init(); i = 0; diff --git a/udev_selinux.c b/udev_selinux.c index 42568e419..77c0e7dc4 100644 --- a/udev_selinux.c +++ b/udev_selinux.c @@ -118,10 +118,12 @@ void selinux_setfscreatecon(const char *file, const char *devname, unsigned int char *media; int ret = -1; - media = get_media(devname, mode); - if (media) { - ret = matchmediacon(media, &scontext); - free(media); + if (devname) { + media = get_media(devname, mode); + if (media) { + ret = matchmediacon(media, &scontext); + free(media); + } } if (ret < 0) @@ -152,6 +154,8 @@ void selinux_init(void) * restoration creation purposes. */ if (is_selinux_running()) { + if (!udev_root[0]) + err("selinux_init: udev_root not set\n"); matchpathcon_init_prefix(NULL, udev_root); if (getfscreatecon(&prev_scontext) < 0) { err("getfscreatecon failed\n");