Interpreting additional architecture types

This commit is contained in:
Pierre Pronchery 2011-09-05 21:10:31 +00:00
parent 1a9f2080fb
commit 67da4ce715

View File

@ -158,9 +158,15 @@ struct pe_symbol
/* constants */ /* constants */
#define PE_IMAGE_HEADER_ROM 0x107 #define PE_IMAGE_HEADER_ROM 0x0107
#define PE_IMAGE_HEADER_PE32 0x10b #define PE_IMAGE_HEADER_PE32 0x010b
#define PE_IMAGE_HEADER_PE32_PLUS 0x20b #define PE_IMAGE_HEADER_PE32_PLUS 0x020b
/* machine types */
#define PE_IMAGE_FILE_MACHINE_AMD64 0x8664
#define PE_IMAGE_FILE_MACHINE_ARM 0x1c00
#define PE_IMAGE_FILE_MACHINE_I386 0x014c
#define PE_IMAGE_FILE_MACHINE_UNKNOWN 0x0000
/* variables */ /* variables */
@ -170,11 +176,13 @@ static const struct
uint16_t machine; uint16_t machine;
} _pe_arch[] = } _pe_arch[] =
{ {
{ "i386", 0x14c }, { "amd64", PE_IMAGE_FILE_MACHINE_AMD64 },
{ "i486", 0x14c }, { "arm", PE_IMAGE_FILE_MACHINE_ARM },
{ "i586", 0x14c }, { "i386", PE_IMAGE_FILE_MACHINE_I386 },
{ "i686", 0x14c }, { "i486", PE_IMAGE_FILE_MACHINE_I386 },
{ NULL, 0x0 } { "i586", PE_IMAGE_FILE_MACHINE_I386 },
{ "i686", PE_IMAGE_FILE_MACHINE_I386 },
{ NULL, PE_IMAGE_FILE_MACHINE_UNKNOWN }
}; };
static char const _pe_msdos_signature[2] = "MZ"; static char const _pe_msdos_signature[2] = "MZ";