mirror of
https://github.com/systemd/systemd.git
synced 2025-06-02 17:07:47 +03:00
pe-binary: actually check if PE binary is UEFI binary when determining if UKI
If it's not a UEFI binary, then it's not a UKI.
This commit is contained in:
parent
16f094cfbb
commit
ef2dbc9c40
@ -231,6 +231,9 @@ bool pe_is_uki(const PeHeader *pe_header, const IMAGE_SECTION_HEADER *sections)
|
||||
assert(pe_header);
|
||||
assert(sections || le16toh(pe_header->pe.NumberOfSections) == 0);
|
||||
|
||||
if (le16toh(pe_header->optional.Subsystem) != IMAGE_SUBSYSTEM_EFI_APPLICATION)
|
||||
return false;
|
||||
|
||||
return
|
||||
pe_header_find_section(pe_header, sections, ".osrel") &&
|
||||
pe_header_find_section(pe_header, sections, ".linux") &&
|
||||
|
@ -123,6 +123,8 @@ typedef struct _packed_ _IMAGE_SECTION_HEADER {
|
||||
le32_t Characteristics;
|
||||
} IMAGE_SECTION_HEADER;
|
||||
|
||||
#define IMAGE_SUBSYSTEM_EFI_APPLICATION 10
|
||||
|
||||
bool pe_header_is_64bit(const PeHeader *h);
|
||||
|
||||
#define PE_HEADER_OPTIONAL_FIELD(h, field) \
|
||||
|
Loading…
x
Reference in New Issue
Block a user