summaryrefslogtreecommitdiffstats
path: root/KEYS-potential-uninitialized-variable.patch
diff options
context:
space:
mode:
authorJosh Boyer <jwboyer@fedoraproject.org>2016-06-15 09:37:42 -0400
committerJosh Boyer <jwboyer@fedoraproject.org>2016-06-15 09:40:52 -0400
commit0f872cd4568b47572a581f73a1661029d1db7987 (patch)
tree0b1679455bd2b1234a8722865a33b17fdb89b3b6 /KEYS-potential-uninitialized-variable.patch
parent6a80877ca93ede833c44c79981e622255bed2107 (diff)
downloadkernel-0f872cd4568b47572a581f73a1661029d1db7987.tar.gz
kernel-0f872cd4568b47572a581f73a1661029d1db7987.tar.xz
kernel-0f872cd4568b47572a581f73a1661029d1db7987.zip
CVE-2016-4470 keys: uninitialized variable crash (rhbz 1341716 1346626)
Diffstat (limited to 'KEYS-potential-uninitialized-variable.patch')
-rw-r--r--KEYS-potential-uninitialized-variable.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/KEYS-potential-uninitialized-variable.patch b/KEYS-potential-uninitialized-variable.patch
new file mode 100644
index 000000000..23cabbb2e
--- /dev/null
+++ b/KEYS-potential-uninitialized-variable.patch
@@ -0,0 +1,30 @@
+From 82a50018782f84e733e718d4b24e1653d19333be Mon Sep 17 00:00:00 2001
+From: Dan Carpenter <dan.carpenter@oracle.com>
+Date: Wed, 15 Jun 2016 09:31:45 -0400
+Subject: [PATCH] KEYS: potential uninitialized variable
+
+If __key_link_begin() failed then "edit" would be uninitialized. I've
+added a check to fix that.
+
+Fixes: f70e2e06196a ('KEYS: Do preallocation for __key_link()')
+Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
+---
+ security/keys/key.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/security/keys/key.c b/security/keys/key.c
+index bd5a272f28a6..346fbf201c22 100644
+--- a/security/keys/key.c
++++ b/security/keys/key.c
+@@ -597,7 +597,7 @@ int key_reject_and_link(struct key *key,
+
+ mutex_unlock(&key_construction_mutex);
+
+- if (keyring)
++ if (keyring && link_ret == 0)
+ __key_link_end(keyring, &key->index_key, edit);
+
+ /* wake up anyone waiting for a key to be constructed */
+--
+2.5.5
+