| /* definitions straight from TianoCore */ |
| |
| typedef UINT32 EFI_IMAGE_EXECUTION_ACTION; |
| |
| #define EFI_IMAGE_EXECUTION_AUTHENTICATION 0x00000007 |
| #define EFI_IMAGE_EXECUTION_AUTH_UNTESTED 0x00000000 |
| #define EFI_IMAGE_EXECUTION_AUTH_SIG_FAILED 0x00000001 |
| #define EFI_IMAGE_EXECUTION_AUTH_SIG_PASSED 0x00000002 |
| #define EFI_IMAGE_EXECUTION_AUTH_SIG_NOT_FOUND 0x00000003 |
| #define EFI_IMAGE_EXECUTION_AUTH_SIG_FOUND 0x00000004 |
| #define EFI_IMAGE_EXECUTION_POLICY_FAILED 0x00000005 |
| #define EFI_IMAGE_EXECUTION_INITIALIZED 0x00000008 |
| |
| typedef struct { |
| /// |
| /// Describes the action taken by the firmware regarding this image. |
| /// |
| EFI_IMAGE_EXECUTION_ACTION Action; |
| /// |
| /// Size of all of the entire structure. |
| /// |
| UINT32 InfoSize; |
| /// |
| /// If this image was a UEFI device driver (for option ROM, for example) this is the |
| /// null-terminated, user-friendly name for the device. If the image was for an application, |
| /// then this is the name of the application. If this cannot be determined, then a simple |
| /// NULL character should be put in this position. |
| /// CHAR16 Name[]; |
| /// |
| |
| /// |
| /// For device drivers, this is the device path of the device for which this device driver |
| /// was intended. In some cases, the driver itself may be stored as part of the system |
| /// firmware, but this field should record the device's path, not the firmware path. For |
| /// applications, this is the device path of the application. If this cannot be determined, |
| /// a simple end-of-path device node should be put in this position. |
| /// EFI_DEVICE_PATH_PROTOCOL DevicePath; |
| /// |
| |
| /// |
| /// Zero or more image signatures. If the image contained no signatures, |
| /// then this field is empty. |
| /// |
| ///EFI_SIGNATURE_LIST Signature; |
| UINT8 Data[]; |
| } EFI_IMAGE_EXECUTION_INFO; |
| |
| typedef struct { |
| /// |
| /// Number of EFI_IMAGE_EXECUTION_INFO structures. |
| /// |
| UINTN NumberOfImages; |
| /// |
| /// Number of image instances of EFI_IMAGE_EXECUTION_INFO structures. |
| /// |
| EFI_IMAGE_EXECUTION_INFO InformationInfo[]; |
| } EFI_IMAGE_EXECUTION_INFO_TABLE; |
| |
| |
| void * |
| configtable_get_table(EFI_GUID *guid); |
| EFI_IMAGE_EXECUTION_INFO_TABLE * |
| configtable_get_image_table(void); |
| EFI_IMAGE_EXECUTION_INFO * |
| configtable_find_image(const EFI_DEVICE_PATH *DevicePath); |
| int |
| configtable_image_is_forbidden(const EFI_DEVICE_PATH *DevicePath); |
| |