diff options
author | David Howells <dhowells@redhat.com> | 2014-07-01 16:02:52 +0100 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2014-07-09 14:58:37 +0100 |
commit | 4c0b4b1d1ae0cbc86f150e2905a1c3d2a17b7c1e (patch) | |
tree | bbb779c5438a9cef8260569fae85493abf2522eb /crypto/asymmetric_keys/verify_pefile.c | |
parent | 3968280c7699f11e27a21aeafacf50bc86c2ed25 (diff) |
pefile: Parse the "Microsoft individual code signing" data blob
The PKCS#7 certificate should contain a "Microsoft individual code signing"
data blob as its signed content. This blob contains a digest of the signed
content of the PE binary and the OID of the digest algorithm used (typically
SHA256).
Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'crypto/asymmetric_keys/verify_pefile.c')
-rw-r--r-- | crypto/asymmetric_keys/verify_pefile.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/crypto/asymmetric_keys/verify_pefile.c b/crypto/asymmetric_keys/verify_pefile.c index 13f3b44b5046..b975918e82d2 100644 --- a/crypto/asymmetric_keys/verify_pefile.c +++ b/crypto/asymmetric_keys/verify_pefile.c @@ -245,6 +245,13 @@ int verify_pefile_signature(const void *pebuf, unsigned pelen, goto error; } + ret = mscode_parse(&ctx); + if (ret < 0) + goto error; + + pr_debug("Digest: %u [%*ph]\n", + ctx.digest_len, ctx.digest_len, ctx.digest); + ret = -ENOANO; // Not yet complete error: |