aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/lib
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-11-02 07:43:40 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2017-11-02 07:43:40 -0700
commit6965f1aa7142a2989733c6ec53cc42ae97fd7f9d (patch)
treefbd13ab1bc848d3f44b821df307c8538ab965972 /lib
parentfutex: futex_wake_op, do not fail on invalid op (diff)
parentKEYS: fix out-of-bounds read during ASN.1 parsing (diff)
downloadwireguard-linux-6965f1aa7142a2989733c6ec53cc42ae97fd7f9d.tar.xz
wireguard-linux-6965f1aa7142a2989733c6ec53cc42ae97fd7f9d.zip
Merge branch 'fixes-v4.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
Pull key handling fixes from James Morris: "Fixes for the Keys subsystem by Eric Biggers" * 'fixes-v4.14-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: KEYS: fix out-of-bounds read during ASN.1 parsing KEYS: trusted: fix writing past end of buffer in trusted_read() KEYS: return full count in keyring_read() if buffer is too small
Diffstat (limited to 'lib')
-rw-r--r--lib/asn1_decoder.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/asn1_decoder.c b/lib/asn1_decoder.c
index 0bd8a611eb83..fef5d2e114be 100644
--- a/lib/asn1_decoder.c
+++ b/lib/asn1_decoder.c
@@ -284,6 +284,9 @@ next_op:
if (unlikely(len > datalen - dp))
goto data_overrun_error;
}
+ } else {
+ if (unlikely(len > datalen - dp))
+ goto data_overrun_error;
}
if (flags & FLAG_CONS) {