pe-binary: add pe_is_native() for checking if PE is native
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
#include "log.h"
|
||||
#include "pe-binary.h"
|
||||
#include "string-util.h"
|
||||
#include "uki.h"
|
||||
|
||||
bool pe_header_is_64bit(const PeHeader *h) {
|
||||
assert(h);
|
||||
@@ -273,3 +274,13 @@ bool pe_is_addon(const PeHeader *pe_header, const IMAGE_SECTION_HEADER *sections
|
||||
pe_header_find_section(pe_header, sections, ".dtb") ||
|
||||
pe_header_find_section(pe_header, sections, ".ucode"));
|
||||
}
|
||||
|
||||
bool pe_is_native(const PeHeader *pe_header) {
|
||||
assert(pe_header);
|
||||
|
||||
#ifdef _IMAGE_FILE_MACHINE_NATIVE
|
||||
return le16toh(pe_header->pe.Machine) == _IMAGE_FILE_MACHINE_NATIVE;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -145,3 +145,5 @@ int pe_read_section_data_by_name(int fd, const PeHeader *pe_header, const IMAGE_
|
||||
|
||||
bool pe_is_uki(const PeHeader *pe_header, const IMAGE_SECTION_HEADER *sections);
|
||||
bool pe_is_addon(const PeHeader *pe_header, const IMAGE_SECTION_HEADER *sections);
|
||||
|
||||
bool pe_is_native(const PeHeader *pe_header);
|
||||
|
||||
Reference in New Issue
Block a user