// SPDX-License-Identifier: GPL-2.0-or-later /* Parse a Microsoft Individual Code Signing blob * * Copyright (C) 2014 Red Hat, Inc. All Rights Reserved. * Written by David Howells (dhowells@redhat.com)
*/
/* * Check the content type OID
*/ int mscode_note_content_type(void *context, size_t hdrlen, unsignedchar tag, constvoid *value, size_t vlen)
{ enum OID oid;
oid = look_up_OID(value, vlen); if (oid == OID__NR) { char buffer[50];
/* * 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;
}
return 0;
}
/* * Note the digest algorithm OID
*/ int mscode_note_digest_algo(void *context, size_t hdrlen, unsignedchar tag, constvoid *value, size_t vlen)
{ struct pefile_context *ctx = context; char buffer[50]; enum OID oid;
oid = look_up_OID(value, vlen); switch (oid) { case OID_sha1:
ctx->digest_algo = "sha1"; break; case OID_sha256:
ctx->digest_algo = "sha256"; break; case OID_sha384:
ctx->digest_algo = "sha384"; break; case OID_sha512:
ctx->digest_algo = "sha512"; break; case OID_sha3_256:
ctx->digest_algo = "sha3-256"; break; case OID_sha3_384:
ctx->digest_algo = "sha3-384"; break; case OID_sha3_512:
ctx->digest_algo = "sha3-512"; break;
/* * Note the digest we're guaranteeing with this certificate
*/ int mscode_note_digest(void *context, size_t hdrlen, unsignedchar tag, constvoid *value, size_t vlen)
{ struct pefile_context *ctx = context;
ctx->digest = kmemdup(value, vlen, GFP_KERNEL); if (!ctx->digest) return -ENOMEM;
ctx->digest_len = vlen;
return 0;
}
Messung V0.5
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.0Bemerkung:
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.