diff options
author | Eric Biggers <ebiggers@google.com> | 2017-12-08 15:13:28 +0000 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2017-12-08 15:13:28 +0000 |
commit | 8ecb506d3476aa58077e79ef1f75395625458fcc (patch) | |
tree | ba19f50ebd9fd36dd9e38830c36207b4ef09996f /crypto | |
parent | 8dfd2f22d3bf3ab7714f7495ad5d897b8845e8c1 (diff) | |
download | linux-8ecb506d3476aa58077e79ef1f75395625458fcc.tar.gz linux-8ecb506d3476aa58077e79ef1f75395625458fcc.tar.bz2 linux-8ecb506d3476aa58077e79ef1f75395625458fcc.zip |
pkcs7: return correct error code if pkcs7_check_authattrs() fails
If pkcs7_check_authattrs() returns an error code, we should pass that
error code on, rather than using ENOMEM.
Fixes: 99db44350672 ("PKCS#7: Appropriately restrict authenticated attributes and content type")
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: James Morris <james.l.morris@oracle.com>
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/asymmetric_keys/pkcs7_parser.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c index c1ca1e86f5c4..a6dcaa659aa8 100644 --- a/crypto/asymmetric_keys/pkcs7_parser.c +++ b/crypto/asymmetric_keys/pkcs7_parser.c @@ -148,8 +148,10 @@ struct pkcs7_message *pkcs7_parse_message(const void *data, size_t datalen) } ret = pkcs7_check_authattrs(ctx->msg); - if (ret < 0) + if (ret < 0) { + msg = ERR_PTR(ret); goto out; + } msg = ctx->msg; ctx->msg = NULL; |