1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /* PE Binary parser bits
4 * Copyright (C) 2014 Red Hat, Inc. All Rights Reserved.
8 #include <crypto/pkcs7.h>
10 #include <crypto/hash_info.h>
12 #if CONFIG_IS_ENABLED(MBEDTLS_LIB_X509)
13 #include <mbedtls/asn1.h>
14 #include <mbedtls/oid.h>
17 struct pefile_context {
20 unsigned image_checksum_offset;
21 unsigned cert_dirent_offset;
22 unsigned n_data_dirents;
27 const struct section_header *secs;
30 /* PKCS#7 MS Individual Code Signing content */
31 const void *digest; /* Digest */
32 unsigned digest_len; /* Digest length */
33 const char *digest_algo; /* Digest algorithm */
37 #define kenter(FMT, ...) \
38 pr_devel("==> %s("FMT")\n", __func__, ##__VA_ARGS__)
39 #define kleave(FMT, ...) \
40 pr_devel("<== %s()"FMT"\n", __func__, ##__VA_ARGS__)
46 extern int mscode_parse(void *_ctx, const void *content_data, size_t data_len,