1 /* SPDX-License-Identifier: GPL-2.0-or-later * 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* PE Binary parser bits 2 /* PE Binary parser bits 3 * 3 * 4 * Copyright (C) 2014 Red Hat, Inc. All Rights 4 * Copyright (C) 2014 Red Hat, Inc. All Rights Reserved. 5 * Written by David Howells (dhowells@redhat.c 5 * Written by David Howells (dhowells@redhat.com) 6 */ 6 */ 7 7 8 #include <crypto/pkcs7.h> 8 #include <crypto/pkcs7.h> 9 #include <crypto/hash_info.h> 9 #include <crypto/hash_info.h> 10 10 11 struct pefile_context { 11 struct pefile_context { 12 unsigned header_size; 12 unsigned header_size; 13 unsigned image_checksum_offset; 13 unsigned image_checksum_offset; 14 unsigned cert_dirent_offset; 14 unsigned cert_dirent_offset; 15 unsigned n_data_dirents; 15 unsigned n_data_dirents; 16 unsigned n_sections; 16 unsigned n_sections; 17 unsigned certs_size; 17 unsigned certs_size; 18 unsigned sig_offset; 18 unsigned sig_offset; 19 unsigned sig_len; 19 unsigned sig_len; 20 const struct section_header *secs; 20 const struct section_header *secs; 21 21 22 /* PKCS#7 MS Individual Code Signing c 22 /* PKCS#7 MS Individual Code Signing content */ 23 const void *digest; 23 const void *digest; /* Digest */ 24 unsigned digest_len; 24 unsigned digest_len; /* Digest length */ 25 const char *digest_algo; 25 const char *digest_algo; /* Digest algorithm */ 26 }; 26 }; 27 27 28 #define kenter(FMT, ...) 28 #define kenter(FMT, ...) \ 29 pr_devel("==> %s("FMT")\n", __func__, 29 pr_devel("==> %s("FMT")\n", __func__, ##__VA_ARGS__) 30 #define kleave(FMT, ...) \ 30 #define kleave(FMT, ...) \ 31 pr_devel("<== %s()"FMT"\n", __func__, 31 pr_devel("<== %s()"FMT"\n", __func__, ##__VA_ARGS__) 32 32 33 /* 33 /* 34 * mscode_parser.c 34 * mscode_parser.c 35 */ 35 */ 36 extern int mscode_parse(void *_ctx, const void 36 extern int mscode_parse(void *_ctx, const void *content_data, size_t data_len, 37 size_t asn1hdrlen); 37 size_t asn1hdrlen); 38 38
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.