diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2016-01-12 10:56:32 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2016-01-12 11:56:46 +0000 |
commit | 50229ecc63b26f50545b1217efa05a64afab74af (patch) | |
tree | 98175467e251c0b602922f721012dd2206d5554f /main/linux-grsec | |
parent | ac06abf062fd9962e15d478fdb7f0c41bd616a61 (diff) | |
download | aports-50229ecc63b26f50545b1217efa05a64afab74af.tar.bz2 aports-50229ecc63b26f50545b1217efa05a64afab74af.tar.xz |
main/linux-grsec: fix for overlayfs
https://bugzilla.kernel.org/show_bug.cgi?id=110491
Diffstat (limited to 'main/linux-grsec')
-rw-r--r-- | main/linux-grsec/0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch | 33 | ||||
-rw-r--r-- | main/linux-grsec/APKBUILD | 6 |
2 files changed, 38 insertions, 1 deletions
diff --git a/main/linux-grsec/0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch b/main/linux-grsec/0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch new file mode 100644 index 0000000000..b3efdfd46d --- /dev/null +++ b/main/linux-grsec/0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch @@ -0,0 +1,33 @@ +From 8f54c162a20cf70ab9ef4b2ef44270fceea2e67b Mon Sep 17 00:00:00 2001 +From: Rui Wang <rui.y.wang@intel.com> +Date: Fri, 8 Jan 2016 22:44:14 +0800 +Subject: [PATCH] ovl: fix getcwd() failure after unsuccessful rmdir + +ovl_remove_upper() should do d_drop() only after it successfully +removes the dir, otherwise a subsequent getcwd() system call will +fail, breaking userspace programs. + +This is to fix: https://bugzilla.kernel.org/show_bug.cgi?id=110491 + +Signed-off-by: Rui Wang <rui.y.wang@intel.com> +--- + fs/overlayfs/dir.c | 3 ++- + 1 files changed, 2 insertions(+), 1 deletions(-) + +diff --git a/fs/overlayfs/dir.c b/fs/overlayfs/dir.c +index 692ceda..36d6a5b 100644 +--- a/fs/overlayfs/dir.c ++++ b/fs/overlayfs/dir.c +@@ -618,7 +618,8 @@ static int ovl_remove_upper(struct dentry *dentry, bool is_dir) + * sole user of this dentry. Too tricky... Just unhash for + * now. + */ +- d_drop(dentry); ++ if (!err) ++ d_drop(dentry); + mutex_unlock(&dir->i_mutex); + + return err; +-- +1.7.5.4 + diff --git a/main/linux-grsec/APKBUILD b/main/linux-grsec/APKBUILD index 0445aee049..c03fe852c9 100644 --- a/main/linux-grsec/APKBUILD +++ b/main/linux-grsec/APKBUILD @@ -7,7 +7,7 @@ case $pkgver in *.*.*) _kernver=${pkgver%.*};; *.*) _kernver=${pkgver};; esac -pkgrel=2 +pkgrel=3 pkgdesc="Linux kernel with grsecurity" url=http://grsecurity.net depends="mkinitfs" @@ -30,6 +30,7 @@ source="http://ftp.kernel.org/pub/linux/kernel/v4.x/linux-$_kernver.tar.xz net-add-validation-socket-syscall-protocol-argument.patch pptp-verify-sockaddr_len.patch ovl-fix-permission-checking-for-setattr.patch + 0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch keys-fix-race-between-destruction-and-finding-keyring-by-name.patch keys-fixes.patch @@ -226,6 +227,7 @@ b52be7e646d3572687e4d26d4291233e vivid-osd-fix-info-leak-in-ioctl.patch 730439fc2751795dc00f1fb3ec810b12 net-add-validation-socket-syscall-protocol-argument.patch e4590e034252bb838220d2bedc19be2e pptp-verify-sockaddr_len.patch 5f27a173424a42db509b46372c200e85 ovl-fix-permission-checking-for-setattr.patch +0ac0bfd35d8d857b790f3cf55028d967 0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch 0526ef5b0cb5c8b697ab8fcd337d303e keys-fix-race-between-destruction-and-finding-keyring-by-name.patch 370b4498d0dc52eb8a85a23a5973bebf keys-fixes.patch f8eec4df8fcd64f5f4810a2840e8cee7 config-grsec.x86 @@ -247,6 +249,7 @@ eb787ea2e4637708475569f7498c1ef0fa5e4e80ae22df5c5f44092615f86ebd kvm-svm-uncond 180af96ce8310913f6662be50ca69c9737af250ef8dd3fdefdc58bef5f55ca9e net-add-validation-socket-syscall-protocol-argument.patch 5d3f0311176addb6cbbe0739736962cdb3826816e5cc0384f52d34cbd7c2c2a0 pptp-verify-sockaddr_len.patch 79fa593d628d740c7bc2b68398ab381ad978293102d1f282919ee69aeab6a17d ovl-fix-permission-checking-for-setattr.patch +464fbfe582c2b841c629c78508d117108505aafdcc6fec8a2ae0b34193d04bbe 0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch c3a7a6d1ca5c23c98ea703c716144dc88b5bcf5052416a7ff3c766beed78d7db keys-fix-race-between-destruction-and-finding-keyring-by-name.patch 653bdfac4fdac0fed19b60c8ae34afe97a699bbabe0e00888584c1ef52a626e1 keys-fixes.patch b179db21c31861da5da8a49307994e11e6a6b83d88fb3dffcf20b369ab32f8e6 config-grsec.x86 @@ -268,6 +271,7 @@ c737219a382206894889ddf8e807836a6fd08bb983b5e2327fae9f8427a0fa591c17f896b6e3f8da d41f3b7c30d59a0fb43f877fff5a311c7fad8e12dfb51c519af368e8d1511202e6cceace3e051620a90e30f3c4b170847172764db045c9a5777663e2e9f2116c net-add-validation-socket-syscall-protocol-argument.patch 9454738454abee92200c7025a5b19e6870056ee71faf7e78dc10c0e7317e2d27c940ab031e2e53db856e1bea3b3fe5e32ce5aaa7c29dc833aa0f75d35bbf7a79 pptp-verify-sockaddr_len.patch 061d58353e8d8eb83a10ae1cdfd16ff5d982ee594decd115d42f438293747b9f4ea3cb16ce242685b34d52ca57feb3b8e9f344adc425e1894f0283abe47ef355 ovl-fix-permission-checking-for-setattr.patch +928492c522cc376abc244f9aec25b10abf0efc4cf19e5f3b7130ed8efed904e674975a05b70f3f46343dba5aa324c46981cb98eea7a619defbb7235742a3333e 0001-ovl-fix-getcwd-failure-after-unsuccessful-rmdir.patch d4d65eacdac1d9baed2ddf926f09a6d66b4dc42ea40ac9b118ad69dfd8dcc06052afb742aaf906fad54d70182d2243bdc1f0649eea7754a2402fc94447d568b1 keys-fix-race-between-destruction-and-finding-keyring-by-name.patch 2611db9cca53ac6851beb9f48e51651090e6b97a644d260671d6f4aa2b2d75ff71276b6d14d0b2e5908bc261c86fc6c2dc4bd88e093fdd74e144983c720f0a2b keys-fixes.patch b31862d0998cbe72882f2db3ab9452051bb5202a3921f5f4aebb24727a187227792af88c6b6ceef8ff28ab34123d1321bb8d06656f37c844afcf566571ba8865 config-grsec.x86 |