verify_pefile.h 979 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /* PE Binary parser bits
  3. *
  4. * Copyright (C) 2014 Red Hat, Inc. All Rights Reserved.
  5. * Written by David Howells ([email protected])
  6. */
  7. #include <crypto/pkcs7.h>
  8. #include <crypto/hash_info.h>
  9. struct pefile_context {
  10. unsigned header_size;
  11. unsigned image_checksum_offset;
  12. unsigned cert_dirent_offset;
  13. unsigned n_data_dirents;
  14. unsigned n_sections;
  15. unsigned certs_size;
  16. unsigned sig_offset;
  17. unsigned sig_len;
  18. const struct section_header *secs;
  19. /* PKCS#7 MS Individual Code Signing content */
  20. const void *digest; /* Digest */
  21. unsigned digest_len; /* Digest length */
  22. const char *digest_algo; /* Digest algorithm */
  23. };
  24. #define kenter(FMT, ...) \
  25. pr_devel("==> %s("FMT")\n", __func__, ##__VA_ARGS__)
  26. #define kleave(FMT, ...) \
  27. pr_devel("<== %s()"FMT"\n", __func__, ##__VA_ARGS__)
  28. /*
  29. * mscode_parser.c
  30. */
  31. extern int mscode_parse(void *_ctx, const void *content_data, size_t data_len,
  32. size_t asn1hdrlen);