Resolves: #1398913 - install,mkdir: fix handling of -DZ and -pZ, respectively

This commit is contained in:
Kamil Dudka 2017-03-02 10:25:23 +01:00
parent ff7a1bf5b1
commit fbd3619072
2 changed files with 59 additions and 1 deletions

View File

@ -0,0 +1,52 @@
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

View File

@ -1,7 +1,7 @@
Summary: A set of basic GNU tools commonly used in shell scripts
Name: coreutils
Version: 8.25
Release: 7%{?dist}
Release: 8%{?dist}
License: GPLv3+
Group: System Environment/Base
Url: http://www.gnu.org/software/coreutils/
@ -28,6 +28,8 @@ Patch953: coreutils-8.25-sort-thousands-sep.patch
Patch954: coreutils-8.25-ls-signal.patch
# md5sum,sha*sum: fix --ignore-missing with checksums starting with 00
Patch955: coreutils-8.25-sum-ignore-missing.patch
# install,mkdir: fix handling of -DZ and -pZ, respectively (#1398913)
Patch956: coreutils-8.25-mkdir-p-selinux.patch
# Our patches
#general patch to workaround koji build system issues
@ -212,6 +214,7 @@ including documentation and translations.
%patch953 -p1
%patch954 -p1
%patch955 -p1
%patch956 -p1
chmod a+x \
tests/df/direct.sh \
@ -379,6 +382,9 @@ fi
%license COPYING
%changelog
* Thu Mar 02 2017 Kamil Dudka <kdudka@redhat.com> - 8.25-8
- install,mkdir: fix handling of -DZ and -pZ, respectively (#1398913)
* Mon Oct 31 2016 Kamil Dudka <kdudka@redhat.com> - 8.25-7
- md5sum,sha*sum: fix --ignore-missing with checksums starting with 00
- ls: allow interruption when reading slow directories (#1365933)