summaryrefslogtreecommitdiff
path: root/crypto/asymmetric_keys/x509_cert_parser.c
diff options
context:
space:
mode:
authorJames Morris <james.l.morris@oracle.com>2017-12-11 17:01:08 +1100
committerJames Morris <james.l.morris@oracle.com>2017-12-11 17:01:08 +1100
commit4a06f454768a7e11e8f10b900b450786546cbba1 (patch)
tree149f57c9ce794734883e326d63040b1381dc1a59 /crypto/asymmetric_keys/x509_cert_parser.c
parentfe6ec4634c4b41ea65f055ea709a6f3d5bf67bec (diff)
parent8dce1988dfaa3668372990f05ee2202d9d9521b5 (diff)
downloadlinux-crypto-4a06f454768a7e11e8f10b900b450786546cbba1.tar.gz
linux-crypto-4a06f454768a7e11e8f10b900b450786546cbba1.zip
Sync to v4.15-rc3 for security subsystem developers to work against.
Diffstat (limited to 'crypto/asymmetric_keys/x509_cert_parser.c')
-rw-r--r--crypto/asymmetric_keys/x509_cert_parser.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/asymmetric_keys/x509_cert_parser.c b/crypto/asymmetric_keys/x509_cert_parser.c
index dd03fead..ce2df8c9 100644
--- a/crypto/asymmetric_keys/x509_cert_parser.c
+++ b/crypto/asymmetric_keys/x509_cert_parser.c
@@ -409,6 +409,8 @@ int x509_extract_key_data(void *context, size_t hdrlen,
ctx->cert->pub->pkey_algo = "rsa";
/* Discard the BIT STRING metadata */
+ if (vlen < 1 || *(const u8 *)value != 0)
+ return -EBADMSG;
ctx->key = value + 1;
ctx->key_size = vlen - 1;
return 0;