53 lines
1.9 KiB
Diff
53 lines
1.9 KiB
Diff
From 8b89985a3904e0267750c430e01684edf008051b Mon Sep 17 00:00:00 2001
|
|
From: Kamil Dudka <kdudka@redhat.com>
|
|
Date: Mon, 28 Nov 2016 16:21:42 +0100
|
|
Subject: [PATCH] install,mkdir: fix handling of -DZ and -pZ, respectively
|
|
|
|
... in the case where two or more directories nested in each other are
|
|
created and each of them defaults to a different SELinux context.
|
|
|
|
* src/install.c (make_ancestor): When calling defaultcon(), give it the
|
|
same path that is given to mkdir(). The other path is not always valid
|
|
wrt. current working directory.
|
|
* src/mkdir.c (make_ancestor): Likewise.
|
|
* NEWS: Mention the bug fix.
|
|
|
|
Reported at https://bugzilla.redhat.com/1398913
|
|
|
|
Upstream-commit: d8104265f229ababd5a68a46eeccbccc07e72cdc
|
|
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
|
|
---
|
|
src/install.c | 2 +-
|
|
src/mkdir.c | 2 +-
|
|
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/install.c b/src/install.c
|
|
index 1b7a209..cae0a53 100644
|
|
--- a/src/install.c
|
|
+++ b/src/install.c
|
|
@@ -425,7 +425,7 @@ static int
|
|
make_ancestor (char const *dir, char const *component, void *options)
|
|
{
|
|
struct cp_options const *x = options;
|
|
- if (x->set_security_context && defaultcon (dir, S_IFDIR) < 0
|
|
+ if (x->set_security_context && defaultcon (component, S_IFDIR) < 0
|
|
&& ! ignorable_ctx_err (errno))
|
|
error (0, errno, _("failed to set default creation context for %s"),
|
|
quoteaf (dir));
|
|
diff --git a/src/mkdir.c b/src/mkdir.c
|
|
index 60fc08a..77af857 100644
|
|
--- a/src/mkdir.c
|
|
+++ b/src/mkdir.c
|
|
@@ -122,7 +122,7 @@ make_ancestor (char const *dir, char const *component, void *options)
|
|
{
|
|
struct mkdir_options const *o = options;
|
|
|
|
- if (o->set_security_context && defaultcon (dir, S_IFDIR) < 0
|
|
+ if (o->set_security_context && defaultcon (component, S_IFDIR) < 0
|
|
&& ! ignorable_ctx_err (errno))
|
|
error (0, errno, _("failed to set default creation context for %s"),
|
|
quoteaf (dir));
|
|
--
|
|
2.9.3
|
|
|