chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
udev: support "udevadm info /dev/sda; udevadm info /sys/class/block/sda"
[elogind.git]
/
src
/
shared
/
label.c
diff --git
a/src/shared/label.c
b/src/shared/label.c
index 3e5ea6746957ed7482bdb5b806aa4670fb2d60a6..9a5f79d7aef91d928d448557fc5a55bb15443006 100644
(file)
--- a/
src/shared/label.c
+++ b/
src/shared/label.c
@@
-52,7
+52,7
@@
void label_retest_selinux(void) {
#endif
#endif
-int label_init(const char *prefix
es[]
) {
+int label_init(const char *prefix) {
int r = 0;
#ifdef HAVE_SELINUX
int r = 0;
#ifdef HAVE_SELINUX
@@
-68,9
+68,9
@@
int label_init(const char *prefixes[]) {
before_mallinfo = mallinfo();
before_timestamp = now(CLOCK_MONOTONIC);
before_mallinfo = mallinfo();
before_timestamp = now(CLOCK_MONOTONIC);
- if (prefix
es
) {
+ if (prefix) {
struct selinux_opt options[] = {
struct selinux_opt options[] = {
- { .type = SELABEL_OPT_SUBSET, .value
s = prefixes
},
+ { .type = SELABEL_OPT_SUBSET, .value
= prefix
},
};
label_hnd = selabel_open(SELABEL_CTX_FILE, options, ELEMENTSOF(options));
};
label_hnd = selabel_open(SELABEL_CTX_FILE, options, ELEMENTSOF(options));
@@
-263,15
+263,14
@@
void label_free(const char *label) {
#endif
}
#endif
}
-int label_mkdir(const char *path, mode_t mode) {
+int label_mkdir(const char *path, mode_t mode
, bool apply
) {
/* Creates a directory and labels it according to the SELinux policy */
/* Creates a directory and labels it according to the SELinux policy */
-
#ifdef HAVE_SELINUX
int r;
security_context_t fcon = NULL;
#ifdef HAVE_SELINUX
int r;
security_context_t fcon = NULL;
- if (!use_selinux() || !label_hnd)
+ if (!
apply || !
use_selinux() || !label_hnd)
goto skipped;
if (path_is_absolute(path))
goto skipped;
if (path_is_absolute(path))