diff options
author | Eric Biggers <ebiggers@google.com> | 2018-02-22 15:38:33 +0100 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2018-02-22 15:38:33 +0100 |
commit | 29f4a67c17e19314b7d74b8569be935e6c7edf50 (patch) | |
tree | debe9c0a045f56b09856b062baba842b65b80a25 /crypto/asymmetric_keys/pkcs7_trust.c | |
parent | PKCS#7: fix certificate chain verification (diff) | |
download | linux-29f4a67c17e19314b7d74b8569be935e6c7edf50.tar.xz linux-29f4a67c17e19314b7d74b8569be935e6c7edf50.zip |
PKCS#7: fix certificate blacklisting
If there is a blacklisted certificate in a SignerInfo's certificate
chain, then pkcs7_verify_sig_chain() sets sinfo->blacklisted and returns
0. But, pkcs7_verify() fails to handle this case appropriately, as it
actually continues on to the line 'actual_ret = 0;', indicating that the
SignerInfo has passed verification. Consequently, PKCS#7 signature
verification ignores the certificate blacklist.
Fix this by not considering blacklisted SignerInfos to have passed
verification.
Also fix the function comment with regards to when 0 is returned.
Fixes: 03bb79315ddc ("PKCS#7: Handle blacklisted certificates")
Cc: <stable@vger.kernel.org> # v4.12+
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions