1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun #ifndef PLATFORM_CERTS_INTERNAL_H 4*4882a593Smuzhiyun #define PLATFORM_CERTS_INTERNAL_H 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun #include <linux/efi.h> 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun void blacklist_hash(const char *source, const void *data, 9*4882a593Smuzhiyun size_t len, const char *type, 10*4882a593Smuzhiyun size_t type_len); 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun /* 13*4882a593Smuzhiyun * Blacklist an X509 TBS hash. 14*4882a593Smuzhiyun */ 15*4882a593Smuzhiyun void blacklist_x509_tbs(const char *source, const void *data, size_t len); 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun /* 18*4882a593Smuzhiyun * Blacklist the hash of an executable. 19*4882a593Smuzhiyun */ 20*4882a593Smuzhiyun void blacklist_binary(const char *source, const void *data, size_t len); 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* 23*4882a593Smuzhiyun * Return the handler for particular signature list types found in the db. 24*4882a593Smuzhiyun */ 25*4882a593Smuzhiyun efi_element_handler_t get_handler_for_db(const efi_guid_t *sig_type); 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun /* 28*4882a593Smuzhiyun * Return the handler for particular signature list types found in the dbx. 29*4882a593Smuzhiyun */ 30*4882a593Smuzhiyun efi_element_handler_t get_handler_for_dbx(const efi_guid_t *sig_type); 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun #endif 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun #ifndef UEFI_QUIRK_SKIP_CERT 35*4882a593Smuzhiyun #define UEFI_QUIRK_SKIP_CERT(vendor, product) \ 36*4882a593Smuzhiyun .matches = { \ 37*4882a593Smuzhiyun DMI_MATCH(DMI_BOARD_VENDOR, vendor), \ 38*4882a593Smuzhiyun DMI_MATCH(DMI_PRODUCT_NAME, product), \ 39*4882a593Smuzhiyun }, 40*4882a593Smuzhiyun #endif 41