summary refs log tree commit diff
path: root/crypto
diff options
context:
space:
mode:
authorVivek Goyal <vgoyal@redhat.com>2014-07-08 18:10:46 +0100
committerDavid Howells <dhowells@redhat.com>2014-07-09 14:58:37 +0100
commitdd7d66f21b9eb6a3979d8c9ba910eba772cfbbc9 (patch)
tree745a0854a9deecb94701975d0e8afb41c06538f9 /crypto
parent4c0b4b1d1ae0cbc86f150e2905a1c3d2a17b7c1e (diff)
downloadlinux-dd7d66f21b9eb6a3979d8c9ba910eba772cfbbc9.tar.gz
pefile: Handle pesign using the wrong OID
The pesign utility had a bug where it was using OID_msIndividualSPKeyPurpose
instead of OID_msPeImageDataObjId - so allow both OIDs.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/asymmetric_keys/mscode_parser.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/crypto/asymmetric_keys/mscode_parser.c b/crypto/asymmetric_keys/mscode_parser.c
index 09336c32b3d4..214a992123cd 100644
--- a/crypto/asymmetric_keys/mscode_parser.c
+++ b/crypto/asymmetric_keys/mscode_parser.c
@@ -58,7 +58,13 @@ int mscode_note_content_type(void *context, size_t hdrlen,
 		return -EBADMSG;
 	}
 
-	if (oid != OID_msIndividualSPKeyPurpose) {
+	/*
+	 * pesign utility had a bug where it was putting
+	 * OID_msIndividualSPKeyPurpose instead of OID_msPeImageDataObjId
+	 * So allow both OIDs.
+	 */
+	if (oid != OID_msPeImageDataObjId &&
+	    oid != OID_msIndividualSPKeyPurpose) {
 		pr_err("Unexpected content type OID %u\n", oid);
 		return -EBADMSG;
 	}