diff options
-rw-r--r-- | libre/linux-libre/CVE-2016-0728.patch | 78 | ||||
-rw-r--r-- | libre/linux-libre/PKGBUILD | 11 |
2 files changed, 3 insertions, 86 deletions
diff --git a/libre/linux-libre/CVE-2016-0728.patch b/libre/linux-libre/CVE-2016-0728.patch deleted file mode 100644 index e915d8219..000000000 --- a/libre/linux-libre/CVE-2016-0728.patch +++ /dev/null @@ -1,78 +0,0 @@ -From 23567fd052a9abb6d67fe8e7a9ccdd9800a540f2 Mon Sep 17 00:00:00 2001 -From: Yevgeny Pats <yevgeny@perception-point.io> -Date: Tue, 19 Jan 2016 22:09:04 +0000 -Subject: [PATCH] KEYS: Fix keyring ref leak in join_session_keyring() - -This fixes CVE-2016-0728. - -If a thread is asked to join as a session keyring the keyring that's already -set as its session, we leak a keyring reference. - -This can be tested with the following program: - - #include <stddef.h> - #include <stdio.h> - #include <sys/types.h> - #include <keyutils.h> - - int main(int argc, const char *argv[]) - { - int i = 0; - key_serial_t serial; - - serial = keyctl(KEYCTL_JOIN_SESSION_KEYRING, - "leaked-keyring"); - if (serial < 0) { - perror("keyctl"); - return -1; - } - - if (keyctl(KEYCTL_SETPERM, serial, - KEY_POS_ALL | KEY_USR_ALL) < 0) { - perror("keyctl"); - return -1; - } - - for (i = 0; i < 100; i++) { - serial = keyctl(KEYCTL_JOIN_SESSION_KEYRING, - "leaked-keyring"); - if (serial < 0) { - perror("keyctl"); - return -1; - } - } - - return 0; - } - -If, after the program has run, there something like the following line in -/proc/keys: - -3f3d898f I--Q--- 100 perm 3f3f0000 0 0 keyring leaked-keyring: empty - -with a usage count of 100 * the number of times the program has been run, -then the kernel is malfunctioning. If leaked-keyring has zero usages or -has been garbage collected, then the problem is fixed. - -Reported-by: Yevgeny Pats <yevgeny@perception-point.io> -Signed-off-by: David Howells <dhowells@redhat.com> -Acked-by: Don Zickus <dzickus@redhat.com> -Acked-by: Prarit Bhargava <prarit@redhat.com> -Acked-by: Jarod Wilson <jarod@redhat.com> -Signed-off-by: James Morris <james.l.morris@oracle.com> ---- - security/keys/process_keys.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/security/keys/process_keys.c b/security/keys/process_keys.c -index a3f85d2a..e6d50172 100644 ---- a/security/keys/process_keys.c -+++ b/security/keys/process_keys.c -@@ -794,6 +794,7 @@ long join_session_keyring(const char *name) - ret = PTR_ERR(keyring); - goto error2; - } else if (keyring == new->session_keyring) { -+ key_put(keyring); - ret = 0; - goto error2; - } diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index e8ca2771c..fb6e0f776 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -11,7 +11,7 @@ pkgbase=linux-libre # Build stock kernel #pkgbase=linux-libre-custom # Build kernel with a different name _pkgbasever=4.3-gnu -_pkgver=4.3.3-gnu +_pkgver=4.3.4-gnu _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname _replacesoldkernels=() # '%' gets replaced with _kernelname @@ -20,7 +20,7 @@ _replacesoldmodules=() # '%' gets replaced with _kernelname _srcname=linux-${_pkgbasever%-*} _archpkgver=${_pkgver%-*} pkgver=${_pkgver//-/_} -pkgrel=3 +pkgrel=1 rcnrel=armv7-x1 arch=('i686' 'x86_64' 'armv7h') url="http://linux-libre.fsfla.org/" @@ -45,7 +45,6 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li # standard config files for mkinitcpio ramdisk 'linux.preset' 'change-default-console-loglevel.patch' - 'CVE-2016-0728.patch' '0001-disabling-primary-plane-in-the-noatomic-case.patch' '0001-drm-radeon-Make-the-driver-load-without-the-firmwares.patch' '0002-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch' @@ -63,7 +62,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li '0009-ARM-dts-dove-add-Dove-divider-clocks.patch') sha256sums=('1d280ae2730eb6c9b8c7e920cac2e8111c8db02c498db0c142860a84106cc169' 'SKIP' - '4e5d062db675a304a1b7bb99a9d2eb1ff617fd31fac9b28df059444b5a98b1d5' + '73ad579342bf4d4954953fa76a79454d81213a151694a7ac70d486808f1bdf3a' 'SKIP' 'bfd4a7f61febe63c880534dcb7c31c5b932dde6acf991810b41a939a93535494' 'SKIP' @@ -76,7 +75,6 @@ sha256sums=('1d280ae2730eb6c9b8c7e920cac2e8111c8db02c498db0c142860a84106cc169' 'b5e9a8200cbde221a4e75a6898b45820739a17205ec0c233fafcd0711989512f' 'f0d90e756f14533ee67afda280500511a62465b4f76adcc5effa95a40045179c' '1256b241cd477b265a3c2d64bdc19ffe3c9bbcee82ea3994c590c2c76e767d99' - '03bed5b1c6ef34a917e218a46d38cd1347c5ab5693131996113c6cad275dc4e9' 'abdd04bd6beecb7c961130a68d71e6332bd260462eeaa2f4f8e634de813dcc4d' '61370b766e0c60b407c29d2c44b3f55fc352e9049c448bc8fcddb0efc53e42fc' '3d3266bd082321dccf429cc2200d1a4d870d2031546f9f591b6dfbb698294808' @@ -138,9 +136,6 @@ prepare() { # add latest fixes from stable queue, if needed # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git - # fixes #47820 CVE-2016-0728.patch - patch -Np1 -i "${srcdir}/CVE-2016-0728.patch" - # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) |