Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.com>2018-11-01 14:04:41 +1100
committerNeilBrown <neilb@suse.com>2018-11-01 14:05:31 +1100
commit6a13930b41cc0447e93abb47484e1b472ebeb022 (patch)
treeff21526ecf8531d584d819b448b52eb50b3c4a0b
parent9b17fb7418a6a9c112c3e107c1036153174cfa86 (diff)
autofs: mount point create should honour passed in mode
(git-fixes).
-rw-r--r--patches.fixes/autofs-mount-point-create-should-honour-passed-in-mo.patch38
-rw-r--r--series.conf1
2 files changed, 39 insertions, 0 deletions
diff --git a/patches.fixes/autofs-mount-point-create-should-honour-passed-in-mo.patch b/patches.fixes/autofs-mount-point-create-should-honour-passed-in-mo.patch
new file mode 100644
index 0000000000..8510ff19e6
--- /dev/null
+++ b/patches.fixes/autofs-mount-point-create-should-honour-passed-in-mo.patch
@@ -0,0 +1,38 @@
+From: Ian Kent <raven@themaw.net>
+Date: Fri, 20 Apr 2018 14:55:59 -0700
+Subject: [PATCH] autofs: mount point create should honour passed in mode
+Git-commit: 1e6306652ba18723015d1b4967fe9de55f042499
+Patch-mainline: v4.17
+References: git-fixes
+
+The autofs file system mkdir inode operation blindly sets the created
+directory mode to S_IFDIR | 0555, ingoring the passed in mode, which can
+cause selinux dac_override denials.
+
+But the function also checks if the caller is the daemon (as no-one else
+should be able to do anything here) so there's no point in not honouring
+the passed in mode, allowing the daemon to set appropriate mode when
+required.
+
+Link: http://lkml.kernel.org/r/152361593601.8051.14014139124905996173.stgit@pluto.themaw.net
+Signed-off-by: Ian Kent <raven@themaw.net>
+Cc: <stable@vger.kernel.org>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Acked-by: NeilBrown <neilb@suse.com>
+
+---
+ fs/autofs4/root.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/fs/autofs4/root.c
++++ b/fs/autofs4/root.c
+@@ -749,7 +749,7 @@ static int autofs4_dir_mkdir(struct inod
+
+ autofs4_del_active(dentry);
+
+- inode = autofs4_get_inode(dir->i_sb, S_IFDIR | 0555);
++ inode = autofs4_get_inode(dir->i_sb, S_IFDIR | mode);
+ if (!inode)
+ return -ENOMEM;
+ d_add(dentry, inode);
diff --git a/series.conf b/series.conf
index c12130da36..ecc79243bc 100644
--- a/series.conf
+++ b/series.conf
@@ -15186,6 +15186,7 @@
patches.suse/0219-md-raid1-exit-sync-request-if-MD_RECOVERY_INTR-is-se.patch
patches.suse/0220-raid1-copy-write-hint-from-master-bio-to-behind-bio.patch
patches.drivers/mmc-sdhci-pci-Only-do-AMD-tuning-for-HS200
+ patches.fixes/autofs-mount-point-create-should-honour-passed-in-mo.patch
patches.fixes/0001-kexec_file-do-not-add-extra-alignment-to-efi-memmap.patch
patches.fixes/mm-filemap.c-fix-NULL-pointer-in-page_cache_tree_ins.patch
patches.drivers/0014-arm64-kasan-avoid-pfn_to_nid-before-page-array-is-in.patch