diff options
author | Eric Sesterhenn <eric.sesterhenn@x41-dsec.de> | 2017-10-08 21:02:32 +0300 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2017-10-18 11:12:41 +0300 |
commit | 68a1fdbbf8bd3378325e45c19e167a165f9ffc3a (patch) | |
tree | dd276ef26c59a8f63da54d64856c06df8c71165c | |
parent | ab5c69f01313c80df948e4f768efe616258f85f4 (diff) | |
download | linux-68a1fdbbf8bd3378325e45c19e167a165f9ffc3a.tar.xz |
pkcs7: Prevent NULL pointer dereference, since sinfo is not always set.
The ASN.1 parser does not necessarily set the sinfo field,
this patch prevents a NULL pointer dereference on broken
input.
Fixes: 99db44350672 ("PKCS#7: Appropriately restrict authenticated attributes and content type")
Signed-off-by: Eric Sesterhenn <eric.sesterhenn@x41-dsec.de>
Signed-off-by: David Howells <dhowells@redhat.com>
cc: stable@vger.kernel.org # 4.3+
-rw-r--r-- | crypto/asymmetric_keys/pkcs7_parser.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c index af4cd8649117..d140d8bb2c96 100644 --- a/crypto/asymmetric_keys/pkcs7_parser.c +++ b/crypto/asymmetric_keys/pkcs7_parser.c @@ -88,6 +88,9 @@ static int pkcs7_check_authattrs(struct pkcs7_message *msg) bool want = false; sinfo = msg->signed_infos; + if (!sinfo) + goto inconsistent; + if (sinfo->authattrs) { want = true; msg->have_authattrs = true; |