mirror of
https://github.com/QuasarApp/LIEF.git
synced 2025-05-12 11:29:33 +00:00
Move to Pybind11 v2.4.3 and fix enum conflicts
This commit is contained in:
parent
d400ca429d
commit
934d84ffea
@ -25,15 +25,13 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(EXE_FORMATS::FORMAT_UNKNOWN))
|
||||
.value(PY_ENUM(EXE_FORMATS::FORMAT_ELF))
|
||||
.value(PY_ENUM(EXE_FORMATS::FORMAT_PE))
|
||||
.value(PY_ENUM(EXE_FORMATS::FORMAT_MACHO))
|
||||
.export_values();
|
||||
.value(PY_ENUM(EXE_FORMATS::FORMAT_MACHO));
|
||||
|
||||
py::enum_<OBJECT_TYPES>(m, "OBJECT_TYPES")
|
||||
.value(PY_ENUM(OBJECT_TYPES::TYPE_NONE))
|
||||
.value(PY_ENUM(OBJECT_TYPES::TYPE_EXECUTABLE))
|
||||
.value(PY_ENUM(OBJECT_TYPES::TYPE_LIBRARY))
|
||||
.value(PY_ENUM(OBJECT_TYPES::TYPE_OBJECT))
|
||||
.export_values();
|
||||
.value(PY_ENUM(OBJECT_TYPES::TYPE_OBJECT));
|
||||
|
||||
py::enum_<ARCHITECTURES>(m, "ARCHITECTURES")
|
||||
.value(PY_ENUM(ARCHITECTURES::ARCH_NONE))
|
||||
@ -45,8 +43,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ARCHITECTURES::ARCH_SPARC))
|
||||
.value(PY_ENUM(ARCHITECTURES::ARCH_SYSZ))
|
||||
.value(PY_ENUM(ARCHITECTURES::ARCH_XCORE))
|
||||
.value(PY_ENUM(ARCHITECTURES::ARCH_INTEL))
|
||||
.export_values();
|
||||
.value(PY_ENUM(ARCHITECTURES::ARCH_INTEL));
|
||||
|
||||
py::enum_<MODES>(m, "MODES")
|
||||
.value(PY_ENUM(MODES::MODE_NONE))
|
||||
@ -64,13 +61,11 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(MODES::MODE_V8))
|
||||
.value(PY_ENUM(MODES::MODE_V9))
|
||||
.value(PY_ENUM(MODES::MODE_MIPS32))
|
||||
.value(PY_ENUM(MODES::MODE_MIPS64))
|
||||
.export_values();
|
||||
.value(PY_ENUM(MODES::MODE_MIPS64));
|
||||
|
||||
py::enum_<ENDIANNESS>(m, "ENDIANNESS")
|
||||
.value(PY_ENUM(ENDIANNESS::ENDIAN_NONE))
|
||||
.value(PY_ENUM(ENDIANNESS::ENDIAN_BIG))
|
||||
.value(PY_ENUM(ENDIANNESS::ENDIAN_LITTLE))
|
||||
.export_values();
|
||||
.value(PY_ENUM(ENDIANNESS::ENDIAN_LITTLE));
|
||||
}
|
||||
}
|
||||
|
@ -25,8 +25,8 @@ message(STATUS "Python lib: ${PYTHON_LIBRARY}")
|
||||
message(STATUS "Python include: ${PYTHON_INCLUDE_DIR}")
|
||||
message(STATUS "Python interpreter: ${PYTHON_EXECUTABLE}")
|
||||
|
||||
set(PYBIND11_VERSION 2.2.4)
|
||||
set(PYBIND11_SHA256 SHA256=c62073cd8d4f9209ad64092279e757f5fd83327a5b17a72c04fd0fea27d0d593)
|
||||
set(PYBIND11_VERSION 2.4.3)
|
||||
set(PYBIND11_SHA256 SHA256=f1cc1e9c2836f9873aefdaf76a3280a55aae51068c759b27499a9cf34090d364)
|
||||
set(PYBIND11_URL "${THIRD_PARTY_DIRECTORY}/pybind11-${PYBIND11_VERSION}.zip" CACHE STRING "URL to the Pybind11 repo")
|
||||
ExternalProject_Add(lief_pybind11
|
||||
URL ${PYBIND11_URL}
|
||||
|
@ -33,8 +33,8 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_FINAL))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_SYNCHRONIZED))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_VOLATILE))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_BRIDGE))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_TRANSIENT))
|
||||
.value("BRIDGE", ACCESS_FLAGS::ACC_BRIDGE)
|
||||
.value("TRANSIENT", ACCESS_FLAGS::ACC_TRANSIENT)
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_VARARGS))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_NATIVE))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_INTERFACE))
|
||||
@ -44,9 +44,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_ANNOTATION))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_ENUM))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_CONSTRUCTOR))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_ABSTRACT))
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_DECLARED_SYNCHRONIZED))
|
||||
.export_values();
|
||||
.value(PY_ENUM(ACCESS_FLAGS::ACC_DECLARED_SYNCHRONIZED));
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -102,7 +102,6 @@ void create<CoreAuxv>(py::module& m) {
|
||||
|
||||
|
||||
LIEF::enum_<AUX_TYPE>(cls, "TYPES")
|
||||
.value(PY_ENUM(AUX_TYPE::AT_NULL))
|
||||
.value(PY_ENUM(AUX_TYPE::AT_NULL))
|
||||
.value(PY_ENUM(AUX_TYPE::AT_IGNORE))
|
||||
.value(PY_ENUM(AUX_TYPE::AT_EXECFD))
|
||||
|
@ -41,8 +41,8 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_SYSTEMV))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_HPUX))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_NETBSD))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_GNU))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_LINUX))
|
||||
.value("GNU", OS_ABI::ELFOSABI_GNU)
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_HURD))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_SOLARIS))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_AIX))
|
||||
@ -56,8 +56,8 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_AROS))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_FENIXOS))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_CLOUDABI))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_C6000_ELFABI))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_AMDGPU_HSA))
|
||||
.value("C6000_ELFABI", OS_ABI::ELFOSABI_C6000_ELFABI)
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_C6000_LINUX))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_ARM))
|
||||
.value(PY_ENUM(OS_ABI::ELFOSABI_STANDALONE));
|
||||
@ -92,7 +92,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ARCH::EM_MIPS_RS3_LE))
|
||||
.value(PY_ENUM(ARCH::EM_PARISC))
|
||||
.value(PY_ENUM(ARCH::EM_VPP500))
|
||||
.value(PY_ENUM(ARCH::EM_NONE))
|
||||
.value(PY_ENUM(ARCH::EM_SPARC32PLUS))
|
||||
.value(PY_ENUM(ARCH::EM_960))
|
||||
.value(PY_ENUM(ARCH::EM_PPC))
|
||||
.value(PY_ENUM(ARCH::EM_PPC64))
|
||||
@ -203,7 +203,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ARCH::EM_8051))
|
||||
.value(PY_ENUM(ARCH::EM_STXP7X))
|
||||
.value(PY_ENUM(ARCH::EM_NDS32))
|
||||
.value(PY_ENUM(ARCH::EM_ECOG1))
|
||||
.value("ECOG1", ARCH::EM_ECOG1)
|
||||
.value(PY_ENUM(ARCH::EM_ECOG1X))
|
||||
.value(PY_ENUM(ARCH::EM_MAXQ30))
|
||||
.value(PY_ENUM(ARCH::EM_XIMO16))
|
||||
@ -281,15 +281,14 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_GNU_verdef))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_GNU_verneed))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_GNU_versym))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_HIOS))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_LOPROC))
|
||||
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_ARM_EXIDX))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_ARM_PREEMPTMAP))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_ARM_ATTRIBUTES))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_ARM_DEBUGOVERLAY))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_ARM_OVERLAYSECTION))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_HEX_ORDERED))
|
||||
.value(PY_ENUM(ELF_SECTION_TYPES::SHT_X86_64_UNWIND))
|
||||
.value("X86_64_UNWIND", ELF_SECTION_TYPES::SHT_X86_64_UNWIND)
|
||||
//.value(PY_ENUM(ELF_SECTION_TYPES::SHT_MIPS_REGINFO))
|
||||
//.value(PY_ENUM(ELF_SECTION_TYPES::SHT_MIPS_OPTIONS))
|
||||
//.value(PY_ENUM(ELF_SECTION_TYPES::SHT_MIPS_ABIFLAGS))
|
||||
@ -312,20 +311,11 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_GROUP))
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_TLS))
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_EXCLUDE))
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::XCORE_SHF_CP_SECTION))
|
||||
.value("SHF_CP_SECTION", ELF_SECTION_FLAGS::XCORE_SHF_CP_SECTION)
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::XCORE_SHF_DP_SECTION))
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MASKOS))
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MASKPROC))
|
||||
.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_HEX_GPREL));
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_NODUPES))
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_NAMES))
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_LOCAL))
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_NOSTRIP))
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_GPREL))
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_MERGE))
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_ADDR))
|
||||
//.value(PY_ENUM(ELF_SECTION_FLAGS::SHF_MIPS_STRING));
|
||||
|
||||
|
||||
//! Enum for the *p_type* field of ElfXX_Phdr
|
||||
LIEF::enum_<SEGMENT_TYPES>(m, "SEGMENT_TYPES")
|
||||
@ -337,22 +327,12 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_SHLIB))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_PHDR))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_TLS))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_LOOS))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_HIOS))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_LOPROC))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_HIPROC))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_GNU_EH_FRAME))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_SUNW_EH_FRAME))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_SUNW_UNWIND))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_GNU_STACK))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_GNU_RELRO))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_ARM_ARCHEXT))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_ARM_EXIDX))
|
||||
.value(PY_ENUM(SEGMENT_TYPES::PT_ARM_UNWIND));
|
||||
//.value(PY_ENUM(SEGMENT_TYPES::PT_MIPS_REGINFO))
|
||||
//.value(PY_ENUM(SEGMENT_TYPES::PT_MIPS_RTPROC))
|
||||
//.value(PY_ENUM(SEGMENT_TYPES::PT_MIPS_OPTIONS))
|
||||
//.value(PY_ENUM(SEGMENT_TYPES::PT_MIPS_ABIFLAGS));
|
||||
.value("UNWIND", SEGMENT_TYPES::PT_ARM_UNWIND);
|
||||
|
||||
//! Enum for the *p_flags* field of ElfXX_Phdr
|
||||
LIEF::enum_<ELF_SEGMENT_FLAGS>(m, "SEGMENT_FLAGS", py::arithmetic())
|
||||
@ -361,8 +341,6 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ELF_SEGMENT_FLAGS::PF_W))
|
||||
.value(PY_ENUM(ELF_SEGMENT_FLAGS::PF_R));
|
||||
|
||||
|
||||
|
||||
LIEF::enum_<DYNAMIC_TAGS>(m, "DYNAMIC_TAGS")
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_NULL))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_NEEDED))
|
||||
@ -395,13 +373,8 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_FINI_ARRAYSZ))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_RUNPATH))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_FLAGS))
|
||||
//.value(PY_ENUM(DYNAMIC_TAGS::DT_ENCODING))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_PREINIT_ARRAY))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_PREINIT_ARRAYSZ))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_LOOS))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_HIOS))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_LOPROC))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_HIPROC))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_GNU_HASH))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_RELACOUNT))
|
||||
.value(PY_ENUM(DYNAMIC_TAGS::DT_RELCOUNT))
|
||||
@ -466,22 +439,14 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_FILE))
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_COMMON))
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_TLS))
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_GNU_IFUNC))
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_LOOS))
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_HIOS))
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_LOPROC))
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_HIPROC));
|
||||
.value(PY_ENUM(ELF_SYMBOL_TYPES::STT_GNU_IFUNC));
|
||||
|
||||
|
||||
LIEF::enum_<SYMBOL_BINDINGS>(m, "SYMBOL_BINDINGS")
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_LOCAL))
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_GLOBAL))
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_WEAK))
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_GNU_UNIQUE))
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_LOOS))
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_HIOS))
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_LOPROC))
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_HIPROC));
|
||||
.value(PY_ENUM(SYMBOL_BINDINGS::STB_GNU_UNIQUE));
|
||||
|
||||
|
||||
LIEF::enum_<RELOC_x86_64>(m, "RELOCATION_X86_64")
|
||||
@ -1128,14 +1093,8 @@ void init_enums(py::module& m) {
|
||||
|
||||
LIEF::enum_<SYMBOL_SECTION_INDEX>(m, "SYMBOL_SECTION_INDEX")
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_UNDEF))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_LORESERVE))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_LOPROC))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_HIPROC))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_LOOS))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_HIOS))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_ABS))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_COMMON))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_XINDEX))
|
||||
.value(PY_ENUM(SYMBOL_SECTION_INDEX::SHN_HIRESERVE));
|
||||
|
||||
|
||||
@ -1181,8 +1140,6 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(ELF_SYMBOL_VISIBILITY::STV_INTERNAL))
|
||||
.value(PY_ENUM(ELF_SYMBOL_VISIBILITY::STV_PROTECTED));
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -23,8 +23,7 @@ void init_ELF32_sizes(py::module& m) {
|
||||
.value("VERNAUX", static_cast<SIZES>(sizeof(Elf32_Vernaux)))
|
||||
.value("AUXV", static_cast<SIZES>(sizeof(Elf32_Auxv)))
|
||||
.value("VERDEF", static_cast<SIZES>(sizeof(Elf32_Verdef)))
|
||||
.value("VERDAUX", static_cast<SIZES>(sizeof(Elf32_Verdaux)))
|
||||
.export_values();
|
||||
.value("VERDAUX", static_cast<SIZES>(sizeof(Elf32_Verdaux)));
|
||||
}
|
||||
|
||||
|
||||
@ -48,8 +47,7 @@ void init_ELF64_sizes(py::module& m) {
|
||||
.value("VERNAUX", static_cast<SIZES>(sizeof(Elf64_Vernaux)))
|
||||
.value("AUXV", static_cast<SIZES>(sizeof(Elf64_Auxv)))
|
||||
.value("VERDEF", static_cast<SIZES>(sizeof(Elf64_Verdef)))
|
||||
.value("VERDAUX", static_cast<SIZES>(sizeof(Elf64_Verdaux)))
|
||||
.export_values();
|
||||
.value("VERDAUX", static_cast<SIZES>(sizeof(Elf64_Verdaux)));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ void init_enums(py::module& m) {
|
||||
LIEF::enum_<LIEF::MachO::CPU_TYPES>(m, "CPU_TYPES")
|
||||
.value(PY_ENUM(LIEF::MachO::CPU_TYPES::CPU_TYPE_ANY))
|
||||
.value(PY_ENUM(LIEF::MachO::CPU_TYPES::CPU_TYPE_X86))
|
||||
.value(PY_ENUM(LIEF::MachO::CPU_TYPES::CPU_TYPE_I386))
|
||||
.value("I386", LIEF::MachO::CPU_TYPES::CPU_TYPE_I386)
|
||||
.value(PY_ENUM(LIEF::MachO::CPU_TYPES::CPU_TYPE_X86_64))
|
||||
.value(PY_ENUM(LIEF::MachO::CPU_TYPES::CPU_TYPE_MC98000))
|
||||
.value(PY_ENUM(LIEF::MachO::CPU_TYPES::CPU_TYPE_ARM))
|
||||
@ -298,8 +298,7 @@ void init_enums(py::module& m) {
|
||||
py::enum_<LIEF::MachO::EXPORT_SYMBOL_FLAGS>(m, "EXPORT_SYMBOL_FLAGS")
|
||||
.value(PY_ENUM(LIEF::MachO::EXPORT_SYMBOL_FLAGS::EXPORT_SYMBOL_FLAGS_WEAK_DEFINITION))
|
||||
.value(PY_ENUM(LIEF::MachO::EXPORT_SYMBOL_FLAGS::EXPORT_SYMBOL_FLAGS_REEXPORT))
|
||||
.value(PY_ENUM(LIEF::MachO::EXPORT_SYMBOL_FLAGS::EXPORT_SYMBOL_FLAGS_STUB_AND_RESOLVER))
|
||||
.export_values();
|
||||
.value(PY_ENUM(LIEF::MachO::EXPORT_SYMBOL_FLAGS::EXPORT_SYMBOL_FLAGS_STUB_AND_RESOLVER));
|
||||
|
||||
|
||||
LIEF::enum_<LIEF::MachO::VM_PROTECTIONS>(m, "VM_PROTECTIONS")
|
||||
|
@ -28,8 +28,7 @@ void init_enums(py::module& m) {
|
||||
py::enum_<OAT_CLASS_TYPES>(m, "OAT_CLASS_TYPES")
|
||||
.value(PY_ENUM(OAT_CLASS_TYPES::OAT_CLASS_ALL_COMPILED))
|
||||
.value(PY_ENUM(OAT_CLASS_TYPES::OAT_CLASS_SOME_COMPILED))
|
||||
.value(PY_ENUM(OAT_CLASS_TYPES::OAT_CLASS_NONE_COMPILED))
|
||||
.export_values();
|
||||
.value(PY_ENUM(OAT_CLASS_TYPES::OAT_CLASS_NONE_COMPILED));
|
||||
|
||||
py::enum_<OAT_CLASS_STATUS>(m, "OAT_CLASS_STATUS")
|
||||
.value(PY_ENUM(OAT_CLASS_STATUS::STATUS_RETIRED))
|
||||
@ -44,8 +43,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(OAT_CLASS_STATUS::STATUS_VERIFYING_AT_RUNTIME))
|
||||
.value(PY_ENUM(OAT_CLASS_STATUS::STATUS_VERIFIED))
|
||||
.value(PY_ENUM(OAT_CLASS_STATUS::STATUS_INITIALIZING))
|
||||
.value(PY_ENUM(OAT_CLASS_STATUS::STATUS_INITIALIZED))
|
||||
.export_values();
|
||||
.value(PY_ENUM(OAT_CLASS_STATUS::STATUS_INITIALIZED));
|
||||
|
||||
py::enum_<HEADER_KEYS>(m, "HEADER_KEYS")
|
||||
.value(PY_ENUM(HEADER_KEYS::KEY_IMAGE_LOCATION))
|
||||
@ -58,8 +56,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(HEADER_KEYS::KEY_COMPILER_FILTER))
|
||||
.value(PY_ENUM(HEADER_KEYS::KEY_CLASS_PATH))
|
||||
.value(PY_ENUM(HEADER_KEYS::KEY_BOOT_CLASS_PATH))
|
||||
.value(PY_ENUM(HEADER_KEYS::KEY_CONCURRENT_COPYING))
|
||||
.export_values();
|
||||
.value(PY_ENUM(HEADER_KEYS::KEY_CONCURRENT_COPYING));
|
||||
|
||||
|
||||
py::enum_<INSTRUCTION_SETS>(m, "INSTRUCTION_SETS")
|
||||
@ -70,8 +67,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(INSTRUCTION_SETS::INST_SET_X86))
|
||||
.value(PY_ENUM(INSTRUCTION_SETS::INST_SET_X86_64))
|
||||
.value(PY_ENUM(INSTRUCTION_SETS::INST_SET_MIPS))
|
||||
.value(PY_ENUM(INSTRUCTION_SETS::INST_SET_MIPS_64))
|
||||
.export_values();
|
||||
.value(PY_ENUM(INSTRUCTION_SETS::INST_SET_MIPS_64));
|
||||
|
||||
}
|
||||
|
||||
|
@ -237,7 +237,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR))
|
||||
.value(PY_ENUM(LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_SECTION))
|
||||
.value(PY_ENUM(LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_REL))
|
||||
.value(PY_ENUM(LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR16))
|
||||
.value("JMPADDR16", LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR16)
|
||||
.value(PY_ENUM(LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_IA64_IMM64))
|
||||
.value(PY_ENUM(LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_DIR64))
|
||||
.value(PY_ENUM(LIEF::PE::RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGH3ADJ));
|
||||
@ -302,7 +302,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_CATALAN))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_CHINESE))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_CROATIAN))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_BOSNIAN))
|
||||
.value("BOSNIAN", LIEF::PE::RESOURCE_LANGS::LANG_BOSNIAN)
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_CZECH))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_DANISH))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_DIVEHI))
|
||||
@ -348,7 +348,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_ROMANIAN))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_RUSSIAN))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_SANSKRIT))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_SERBIAN))
|
||||
.value("SERBIAN", LIEF::PE::RESOURCE_LANGS::LANG_SERBIAN)
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_SINDHI))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_SLOVAK))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_SLOVENIAN))
|
||||
@ -365,7 +365,7 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_URDU))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_UZBEK))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_VIETNAMESE))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_GAELIC))
|
||||
.value("GAELIC", LIEF::PE::RESOURCE_LANGS::LANG_GAELIC)
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_MALTESE))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_MAORI))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_RHAETO_ROMANCE))
|
||||
@ -384,12 +384,12 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_BRETON))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_INUKTITUT))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_IRISH))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_LOWER_SORBIAN))
|
||||
.value("LOWER_SORBIAN", LIEF::PE::RESOURCE_LANGS::LANG_LOWER_SORBIAN)
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_PULAR))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_QUECHUA))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_TAMAZIGHT))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_TIGRINYA))
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_LANGS::LANG_VALENCIAN));
|
||||
.value("VALENCIAN", LIEF::PE::RESOURCE_LANGS::LANG_VALENCIAN);
|
||||
|
||||
LIEF::enum_<LIEF::PE::RESOURCE_SUBLANGS>(m, "RESOURCE_SUBLANGS")
|
||||
.value(PY_ENUM(LIEF::PE::RESOURCE_SUBLANGS::SUBLANG_AFRIKAANS_SOUTH_AFRICA))
|
||||
@ -637,9 +637,9 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_RIGHT))
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_LEFT))
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_RTLREADING))
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_LTRREADING))
|
||||
.value("LTRREADING", LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_LTRREADING)
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_LEFTSCROLLBAR))
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_RIGHTSCROLLBAR))
|
||||
.value("RIGHTSCROLLBAR", LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_RIGHTSCROLLBAR)
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_CONTROLPARENT))
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_STATICEDGE))
|
||||
.value(PY_ENUM(LIEF::PE::EXTENDED_WINDOW_STYLES::WS_EX_APPWINDOW));
|
||||
@ -663,8 +663,8 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::WINDOW_STYLES::WS_HSCROLL))
|
||||
.value(PY_ENUM(LIEF::PE::WINDOW_STYLES::WS_SYSMENU))
|
||||
.value(PY_ENUM(LIEF::PE::WINDOW_STYLES::WS_THICKFRAME))
|
||||
.value(PY_ENUM(LIEF::PE::WINDOW_STYLES::WS_GROUP))
|
||||
.value(PY_ENUM(LIEF::PE::WINDOW_STYLES::WS_TABSTOP))
|
||||
.value("GROUP", LIEF::PE::WINDOW_STYLES::WS_GROUP)
|
||||
.value("TABSTOP", LIEF::PE::WINDOW_STYLES::WS_TABSTOP)
|
||||
.value(PY_ENUM(LIEF::PE::WINDOW_STYLES::WS_MINIMIZEBOX))
|
||||
.value(PY_ENUM(LIEF::PE::WINDOW_STYLES::WS_MAXIMIZEBOX));
|
||||
|
||||
@ -734,9 +734,9 @@ void init_enums(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_SOUND))
|
||||
.value(PY_ENUM(LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_SYSTEM))
|
||||
.value(PY_ENUM(LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_VERSIONED_PRINTER))
|
||||
.value(PY_ENUM(LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_RASTER))
|
||||
.value(PY_ENUM(LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_TRUETYPE))
|
||||
.value(PY_ENUM(LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_VECTOR))
|
||||
.value("FONT_RASTER", LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_RASTER)
|
||||
.value("FONT_TRUETYPE", LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_TRUETYPE)
|
||||
.value("FONT_VECTOR", LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_VECTOR)
|
||||
.value(PY_ENUM(LIEF::PE::FIXED_VERSION_FILE_SUB_TYPES::VFT2_UNKNOWN));
|
||||
|
||||
LIEF::enum_<LIEF::PE::CODE_PAGES>(m, "CODE_PAGES")
|
||||
|
@ -30,8 +30,7 @@ void init_LIEF_Logger(py::module& m) {
|
||||
.value(PY_ENUM(LIEF::LOGGING_LEVEL::LOG_WARNING))
|
||||
.value(PY_ENUM(LIEF::LOGGING_LEVEL::LOG_INFO))
|
||||
.value(PY_ENUM(LIEF::LOGGING_LEVEL::LOG_VERBOSE))
|
||||
.value(PY_ENUM(LIEF::LOGGING_LEVEL::LOG_UNKNOWN))
|
||||
.export_values();
|
||||
.value(PY_ENUM(LIEF::LOGGING_LEVEL::LOG_UNKNOWN));
|
||||
|
||||
py::class_<LIEF::Logger>(m, "Logger")
|
||||
.def_static("disable",
|
||||
|
@ -711,7 +711,7 @@ enum _LIEF_EN(SECTION_CHARACTERISTICS) {
|
||||
_LIEF_EI(IMAGE_SCN_LNK_REMOVE) = 0x00000800,
|
||||
_LIEF_EI(IMAGE_SCN_LNK_COMDAT) = 0x00001000,
|
||||
_LIEF_EI(IMAGE_SCN_GPREL) = 0x00008000,
|
||||
_LIEF_EI(IMAGE_SCN_MEM_PURGEABLE) = 0x00020000,
|
||||
_LIEF_EI(IMAGE_SCN_MEM_PURGEABLE) = 0x00010000,
|
||||
_LIEF_EI(IMAGE_SCN_MEM_16BIT) = 0x00020000,
|
||||
_LIEF_EI(IMAGE_SCN_MEM_LOCKED) = 0x00040000,
|
||||
_LIEF_EI(IMAGE_SCN_MEM_PRELOAD) = 0x00080000,
|
||||
@ -860,9 +860,11 @@ enum _LIEF_EN(FIXED_VERSION_FILE_SUB_TYPES) {
|
||||
_LIEF_EI(VFT2_DRV_SOUND) = 0x00000009L,
|
||||
_LIEF_EI(VFT2_DRV_SYSTEM) = 0x00000007L,
|
||||
_LIEF_EI(VFT2_DRV_VERSIONED_PRINTER) = 0x0000000CL,
|
||||
|
||||
_LIEF_EI(VFT2_FONT_RASTER) = 0x00000001L,
|
||||
_LIEF_EI(VFT2_FONT_TRUETYPE) = 0x00000003L,
|
||||
_LIEF_EI(VFT2_FONT_VECTOR) = 0x00000002L,
|
||||
|
||||
_LIEF_EI(VFT2_UNKNOWN) = 0x00000000L,
|
||||
};
|
||||
|
||||
|
@ -49,7 +49,7 @@ const char* to_string(MapItem::TYPES e) {
|
||||
|
||||
|
||||
const char* to_string(ACCESS_FLAGS e) {
|
||||
CONST_MAP(ACCESS_FLAGS, const char*, 20) enumStrings {
|
||||
CONST_MAP(ACCESS_FLAGS, const char*, 18) enumStrings {
|
||||
{ ACCESS_FLAGS::ACC_UNKNOWN, "UNKNOWN" },
|
||||
{ ACCESS_FLAGS::ACC_PUBLIC, "PUBLIC" },
|
||||
{ ACCESS_FLAGS::ACC_PRIVATE, "PRIVATE" },
|
||||
@ -58,8 +58,6 @@ const char* to_string(ACCESS_FLAGS e) {
|
||||
{ ACCESS_FLAGS::ACC_FINAL, "FINAL" },
|
||||
{ ACCESS_FLAGS::ACC_SYNCHRONIZED, "SYNCHRONIZED" },
|
||||
{ ACCESS_FLAGS::ACC_VOLATILE, "VOLATILE" },
|
||||
{ ACCESS_FLAGS::ACC_BRIDGE, "BRIDGE" },
|
||||
{ ACCESS_FLAGS::ACC_TRANSIENT, "TRANSIENT" },
|
||||
{ ACCESS_FLAGS::ACC_VARARGS, "VARARGS" },
|
||||
{ ACCESS_FLAGS::ACC_NATIVE, "NATIVE" },
|
||||
{ ACCESS_FLAGS::ACC_INTERFACE, "INTERFACE" },
|
||||
|
@ -23,15 +23,11 @@ namespace LIEF {
|
||||
namespace ELF {
|
||||
|
||||
const char* to_string(SYMBOL_BINDINGS e) {
|
||||
CONST_MAP(SYMBOL_BINDINGS, const char*, 8) enumStrings {
|
||||
CONST_MAP(SYMBOL_BINDINGS, const char*, 4) enumStrings {
|
||||
{ SYMBOL_BINDINGS::STB_LOCAL, "LOCAL" },
|
||||
{ SYMBOL_BINDINGS::STB_GLOBAL, "GLOBAL" },
|
||||
{ SYMBOL_BINDINGS::STB_WEAK, "WEAK" },
|
||||
{ SYMBOL_BINDINGS::STB_GNU_UNIQUE, "GNU_UNIQUE" },
|
||||
{ SYMBOL_BINDINGS::STB_LOOS, "LOOS" },
|
||||
{ SYMBOL_BINDINGS::STB_HIOS, "HIOS" },
|
||||
{ SYMBOL_BINDINGS::STB_LOPROC, "LOPROC" },
|
||||
{ SYMBOL_BINDINGS::STB_HIPROC, "HIPROC" }
|
||||
};
|
||||
auto it = enumStrings.find(e);
|
||||
return it == enumStrings.end() ? "UNDEFINED" : it->second;
|
||||
@ -277,7 +273,7 @@ const char* to_string(SEGMENT_TYPES e) {
|
||||
}
|
||||
|
||||
const char* to_string(DYNAMIC_TAGS e) {
|
||||
CONST_MAP(DYNAMIC_TAGS, const char*, 91) enumStrings {
|
||||
CONST_MAP(DYNAMIC_TAGS, const char*, 87) enumStrings {
|
||||
{ DYNAMIC_TAGS::DT_NULL, "NULL"},
|
||||
{ DYNAMIC_TAGS::DT_NEEDED, "NEEDED"},
|
||||
{ DYNAMIC_TAGS::DT_PLTRELSZ, "PLTRELSZ"},
|
||||
@ -312,10 +308,6 @@ const char* to_string(DYNAMIC_TAGS e) {
|
||||
//{ DYNAMIC_TAGS::DT_ENCODING, "ENCODING"}, // SKIPED
|
||||
{ DYNAMIC_TAGS::DT_PREINIT_ARRAY, "PREINIT_ARRAY"},
|
||||
{ DYNAMIC_TAGS::DT_PREINIT_ARRAYSZ, "PREINIT_ARRAYSZ"},
|
||||
{ DYNAMIC_TAGS::DT_LOOS, "LOOS"},
|
||||
{ DYNAMIC_TAGS::DT_HIOS, "HIOS"},
|
||||
{ DYNAMIC_TAGS::DT_LOPROC, "LOPROC"},
|
||||
{ DYNAMIC_TAGS::DT_HIPROC, "HIPROC"},
|
||||
{ DYNAMIC_TAGS::DT_GNU_HASH, "GNU_HASH"},
|
||||
{ DYNAMIC_TAGS::DT_RELACOUNT, "RELACOUNT"},
|
||||
{ DYNAMIC_TAGS::DT_RELCOUNT, "RELCOUNT"},
|
||||
@ -455,7 +447,7 @@ const char* to_string(ELF_SECTION_FLAGS e) {
|
||||
|
||||
|
||||
const char* to_string(ELF_SYMBOL_TYPES e) {
|
||||
CONST_MAP(ELF_SYMBOL_TYPES, const char*, 12) enumStrings {
|
||||
CONST_MAP(ELF_SYMBOL_TYPES, const char*, 8) enumStrings {
|
||||
{ ELF_SYMBOL_TYPES::STT_NOTYPE, "NOTYPE"},
|
||||
{ ELF_SYMBOL_TYPES::STT_OBJECT, "OBJECT"},
|
||||
{ ELF_SYMBOL_TYPES::STT_FUNC, "FUNC"},
|
||||
@ -464,10 +456,6 @@ const char* to_string(ELF_SYMBOL_TYPES e) {
|
||||
{ ELF_SYMBOL_TYPES::STT_COMMON, "COMMON"},
|
||||
{ ELF_SYMBOL_TYPES::STT_TLS, "TLS"},
|
||||
{ ELF_SYMBOL_TYPES::STT_GNU_IFUNC, "GNU_IFUNC"},
|
||||
{ ELF_SYMBOL_TYPES::STT_LOOS, "LOOS"},
|
||||
{ ELF_SYMBOL_TYPES::STT_HIOS, "HIOS"},
|
||||
{ ELF_SYMBOL_TYPES::STT_LOPROC, "LOPROC"},
|
||||
{ ELF_SYMBOL_TYPES::STT_HIPROC, "HIPROC"}
|
||||
};
|
||||
auto it = enumStrings.find(e);
|
||||
return it == enumStrings.end() ? "UNDEFINED" : it->second;
|
||||
@ -855,7 +843,7 @@ const char* to_string(RELOC_POWERPC32 e) {
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR32, "ADDR32" },
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR24, "ADDR24" },
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR16, "ADDR16" },
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR16_LO, "ADDR16" },
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR16_LO, "ADDR16_LO" },
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR16_HI, "ADDR16_HI" },
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR16_HA, "ADDR16_HA" },
|
||||
{ RELOC_POWERPC32::R_PPC_ADDR14, "ADDR14" },
|
||||
|
@ -112,10 +112,10 @@ const char* to_string(LOAD_COMMAND_TYPES e) {
|
||||
}
|
||||
|
||||
const char* to_string(CPU_TYPES e) {
|
||||
CONST_MAP(CPU_TYPES, const char*, 10) enumStrings {
|
||||
CONST_MAP(CPU_TYPES, const char*, 9) enumStrings {
|
||||
{ CPU_TYPES::CPU_TYPE_ANY, "ANY"},
|
||||
{ CPU_TYPES::CPU_TYPE_X86, "x86"},
|
||||
{ CPU_TYPES::CPU_TYPE_I386, "i386"},
|
||||
//{ CPU_TYPES::CPU_TYPE_I386, "i386"},
|
||||
{ CPU_TYPES::CPU_TYPE_X86_64, "x86_64"},
|
||||
//{ CPU_TYPES::CPU_TYPE_MIPS, "MIPS"},
|
||||
{ CPU_TYPES::CPU_TYPE_MC98000, "MC98000"},
|
||||
|
@ -364,7 +364,7 @@ const char* to_string(RELOCATIONS_ARM e) {
|
||||
|
||||
|
||||
const char* to_string(RELOCATIONS_BASE_TYPES e) {
|
||||
CONST_MAP(RELOCATIONS_BASE_TYPES, const char*, 12) enumStrings {
|
||||
CONST_MAP(RELOCATIONS_BASE_TYPES, const char*, 11) enumStrings {
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_ABSOLUTE, "ABSOLUTE" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGH, "HIGH" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_LOW, "LOW" },
|
||||
@ -373,7 +373,6 @@ const char* to_string(RELOCATIONS_BASE_TYPES e) {
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR, "JMPADDR" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_SECTION, "SECTION" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_REL, "REL" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_MIPS_JMPADDR16, "JMPADDR16" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_IA64_IMM64, "IMM64" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_DIR64, "DIR64" },
|
||||
{ RELOCATIONS_BASE_TYPES::IMAGE_REL_BASED_HIGH3ADJ, "HIGH3ADJ" }
|
||||
@ -387,23 +386,23 @@ const char* to_string(RELOCATIONS_BASE_TYPES e) {
|
||||
|
||||
const char* to_string(DEBUG_TYPES e) {
|
||||
CONST_MAP(DEBUG_TYPES, const char*, 17) enumStrings {
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_UNKNOWN, "UNKNOWN" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_COFF, "COFF" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_CODEVIEW, "CODEVIEW" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_FPO, "FPO" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_MISC, "MISC" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_EXCEPTION, "EXCEPTION" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_FIXUP, "FIXUP" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_OMAP_TO_SRC, "SRC" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_OMAP_FROM_SRC, "SRC" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_BORLAND, "BORLAND" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_RESERVED10, "RESERVED" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_CLSID, "CLSID" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_VC_FEATURE, "VC_FEATURE" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_POGO, "POGO" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_ILTCG, "ILTCG" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_MPX, "MPX" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_REPRO, "REPRO" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_UNKNOWN, "UNKNOWN" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_COFF, "COFF" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_CODEVIEW, "CODEVIEW" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_FPO, "FPO" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_MISC, "MISC" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_EXCEPTION, "EXCEPTION" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_FIXUP, "FIXUP" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_OMAP_TO_SRC, "OMAP_TO_SRC" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_OMAP_FROM_SRC, "OMAP_FROM_SRC" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_BORLAND, "BORLAND" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_RESERVED10, "RESERVED" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_CLSID, "CLSID" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_VC_FEATURE, "VC_FEATURE" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_POGO, "POGO" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_ILTCG, "ILTCG" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_MPX, "MPX" },
|
||||
{ DEBUG_TYPES::IMAGE_DEBUG_TYPE_REPRO, "REPRO" },
|
||||
};
|
||||
|
||||
auto it = enumStrings.find(e);
|
||||
@ -441,7 +440,7 @@ const char* to_string(RESOURCE_TYPES e) {
|
||||
}
|
||||
|
||||
const char* to_string(RESOURCE_LANGS e) {
|
||||
CONST_MAP(RESOURCE_LANGS, const char*, 103) enumStrings {
|
||||
CONST_MAP(RESOURCE_LANGS, const char*, 98) enumStrings {
|
||||
{ RESOURCE_LANGS::LANG_NEUTRAL, "NEUTRAL" },
|
||||
{ RESOURCE_LANGS::LANG_INVARIANT, "INVARIANT" },
|
||||
{ RESOURCE_LANGS::LANG_AFRIKAANS, "AFRIKAANS" },
|
||||
@ -457,7 +456,6 @@ const char* to_string(RESOURCE_LANGS e) {
|
||||
{ RESOURCE_LANGS::LANG_CATALAN, "CATALAN" },
|
||||
{ RESOURCE_LANGS::LANG_CHINESE, "CHINESE" },
|
||||
{ RESOURCE_LANGS::LANG_CROATIAN, "CROATIAN" },
|
||||
{ RESOURCE_LANGS::LANG_BOSNIAN, "BOSNIAN" },
|
||||
{ RESOURCE_LANGS::LANG_CZECH, "CZECH" },
|
||||
{ RESOURCE_LANGS::LANG_DANISH, "DANISH" },
|
||||
{ RESOURCE_LANGS::LANG_DIVEHI, "DIVEHI" },
|
||||
@ -503,7 +501,6 @@ const char* to_string(RESOURCE_LANGS e) {
|
||||
{ RESOURCE_LANGS::LANG_ROMANIAN, "ROMANIAN" },
|
||||
{ RESOURCE_LANGS::LANG_RUSSIAN, "RUSSIAN" },
|
||||
{ RESOURCE_LANGS::LANG_SANSKRIT, "SANSKRIT" },
|
||||
{ RESOURCE_LANGS::LANG_SERBIAN, "SERBIAN" },
|
||||
{ RESOURCE_LANGS::LANG_SINDHI, "SINDHI" },
|
||||
{ RESOURCE_LANGS::LANG_SLOVAK, "SLOVAK" },
|
||||
{ RESOURCE_LANGS::LANG_SLOVENIAN, "SLOVENIAN" },
|
||||
@ -520,7 +517,6 @@ const char* to_string(RESOURCE_LANGS e) {
|
||||
{ RESOURCE_LANGS::LANG_URDU, "URDU" },
|
||||
{ RESOURCE_LANGS::LANG_UZBEK, "UZBEK" },
|
||||
{ RESOURCE_LANGS::LANG_VIETNAMESE, "VIETNAMESE" },
|
||||
{ RESOURCE_LANGS::LANG_GAELIC, "GAELIC" },
|
||||
{ RESOURCE_LANGS::LANG_MALTESE, "MALTESE" },
|
||||
{ RESOURCE_LANGS::LANG_MAORI, "MAORI" },
|
||||
{ RESOURCE_LANGS::LANG_RHAETO_ROMANCE, "RHAETO_ROMANCE" },
|
||||
@ -539,12 +535,10 @@ const char* to_string(RESOURCE_LANGS e) {
|
||||
{ RESOURCE_LANGS::LANG_BRETON, "BRETON" },
|
||||
{ RESOURCE_LANGS::LANG_INUKTITUT, "INUKTITUT" },
|
||||
{ RESOURCE_LANGS::LANG_IRISH, "IRISH" },
|
||||
{ RESOURCE_LANGS::LANG_LOWER_SORBIAN, "LOWER_SORBIAN" },
|
||||
{ RESOURCE_LANGS::LANG_PULAR, "PULAR" },
|
||||
{ RESOURCE_LANGS::LANG_QUECHUA, "QUECHUA" },
|
||||
{ RESOURCE_LANGS::LANG_TAMAZIGHT, "TAMAZIGHT" },
|
||||
{ RESOURCE_LANGS::LANG_TIGRINYA, "TIGRINYA" },
|
||||
{ RESOURCE_LANGS::LANG_VALENCIAN, "VALENCIAN" },
|
||||
};
|
||||
|
||||
auto it = enumStrings.find(e);
|
||||
@ -789,7 +783,7 @@ const char* to_string(RESOURCE_SUBLANGS e) {
|
||||
}
|
||||
|
||||
const char* to_string(EXTENDED_WINDOW_STYLES e) {
|
||||
CONST_MAP(EXTENDED_WINDOW_STYLES, const char*, 19) enumStrings {
|
||||
CONST_MAP(EXTENDED_WINDOW_STYLES, const char*, 17) enumStrings {
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_DLGMODALFRAME, "DLGMODALFRAME" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_NOPARENTNOTIFY, "NOPARENTNOTIFY" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_TOPMOST, "TOPMOST" },
|
||||
@ -803,9 +797,7 @@ const char* to_string(EXTENDED_WINDOW_STYLES e) {
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_RIGHT, "RIGHT" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_LEFT, "LEFT" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_RTLREADING, "RTLREADING" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_LTRREADING, "LTRREADING" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_LEFTSCROLLBAR, "LEFTSCROLLBAR" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_RIGHTSCROLLBAR, "RIGHTSCROLLBAR" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_CONTROLPARENT, "CONTROLPARENT" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_STATICEDGE, "STATICEDGE" },
|
||||
{ EXTENDED_WINDOW_STYLES::WS_EX_APPWINDOW, "APPWINDOW" },
|
||||
@ -817,7 +809,7 @@ const char* to_string(EXTENDED_WINDOW_STYLES e) {
|
||||
|
||||
|
||||
const char* to_string(WINDOW_STYLES e) {
|
||||
CONST_MAP(WINDOW_STYLES, const char*, 20) enumStrings {
|
||||
CONST_MAP(WINDOW_STYLES, const char*, 18) enumStrings {
|
||||
{ WINDOW_STYLES::WS_OVERLAPPED, "OVERLAPPED" },
|
||||
{ WINDOW_STYLES::WS_POPUP, "POPUP" },
|
||||
{ WINDOW_STYLES::WS_CHILD, "CHILD" },
|
||||
@ -834,8 +826,6 @@ const char* to_string(WINDOW_STYLES e) {
|
||||
{ WINDOW_STYLES::WS_HSCROLL, "HSCROLL" },
|
||||
{ WINDOW_STYLES::WS_SYSMENU, "SYSMENU" },
|
||||
{ WINDOW_STYLES::WS_THICKFRAME, "THICKFRAME" },
|
||||
{ WINDOW_STYLES::WS_GROUP, "GROUP" },
|
||||
{ WINDOW_STYLES::WS_TABSTOP, "TABSTOP" },
|
||||
{ WINDOW_STYLES::WS_MINIMIZEBOX, "MINIMIZEBOX" },
|
||||
{ WINDOW_STYLES::WS_MAXIMIZEBOX, "MAXIMIZEBOX" },
|
||||
};
|
||||
@ -921,7 +911,7 @@ const char* to_string(FIXED_VERSION_FILE_TYPES e) {
|
||||
|
||||
|
||||
const char* to_string(FIXED_VERSION_FILE_SUB_TYPES e) {
|
||||
CONST_MAP(FIXED_VERSION_FILE_SUB_TYPES, const char*, 15) enumStrings {
|
||||
CONST_MAP(FIXED_VERSION_FILE_SUB_TYPES, const char*, 12) enumStrings {
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_COMM, "DRV_COMM" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_DISPLAY, "DRV_DISPLAY" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_INSTALLABLE, "DRV_INSTALLABLE" },
|
||||
@ -933,9 +923,6 @@ const char* to_string(FIXED_VERSION_FILE_SUB_TYPES e) {
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_SOUND, "DRV_SOUND" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_SYSTEM, "DRV_SYSTEM" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_DRV_VERSIONED_PRINTER, "DRV_VERSIONED_PRINTER" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_RASTER, "FONT_RASTER" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_TRUETYPE, "FONT_TRUETYPE" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_FONT_VECTOR, "FONT_VECTOR" },
|
||||
{ FIXED_VERSION_FILE_SUB_TYPES::VFT2_UNKNOWN, "UNKNOWN" },
|
||||
};
|
||||
auto it = enumStrings.find(e);
|
||||
|
@ -56,7 +56,7 @@ class TestSimple(TestCase):
|
||||
self.assertEqual(LOAD_0.virtual_address, 0)
|
||||
self.assertEqual(LOAD_0.physical_size, 0x00b34)
|
||||
self.assertEqual(LOAD_0.virtual_size, 0x00b34)
|
||||
self.assertEqual(LOAD_0.flags, lief.ELF.SEGMENT_FLAGS.R | lief.ELF.SEGMENT_FLAGS.X)
|
||||
self.assertEqual(int(LOAD_0.flags), lief.ELF.SEGMENT_FLAGS.R | lief.ELF.SEGMENT_FLAGS.X)
|
||||
|
||||
self.assertEqual(LOAD_1.type, lief.ELF.SEGMENT_TYPES.LOAD)
|
||||
self.assertEqual(LOAD_1.file_offset, 0x000ed8)
|
||||
@ -64,7 +64,7 @@ class TestSimple(TestCase):
|
||||
self.assertEqual(LOAD_1.physical_address, 0x00001ed8)
|
||||
self.assertEqual(LOAD_1.physical_size, 0x00148)
|
||||
self.assertEqual(LOAD_1.virtual_size, 0x0014c)
|
||||
self.assertEqual(LOAD_1.flags, lief.ELF.SEGMENT_FLAGS.R | lief.ELF.SEGMENT_FLAGS.W)
|
||||
self.assertEqual(int(LOAD_1.flags), lief.ELF.SEGMENT_FLAGS.R | lief.ELF.SEGMENT_FLAGS.W)
|
||||
|
||||
|
||||
def test_dynamic(self):
|
||||
@ -218,7 +218,7 @@ class TestTiny(TestCase):
|
||||
self.assertEqual(segment.virtual_address, 0x8048000)
|
||||
self.assertEqual(segment.physical_size, 0x5a)
|
||||
self.assertEqual(segment.virtual_size, 0x5a)
|
||||
self.assertEqual(segment.flags, lief.ELF.SEGMENT_FLAGS.R | lief.ELF.SEGMENT_FLAGS.X)
|
||||
self.assertEqual(int(segment.flags), lief.ELF.SEGMENT_FLAGS.R | lief.ELF.SEGMENT_FLAGS.X)
|
||||
|
||||
|
||||
|
||||
|
@ -142,62 +142,62 @@ class TestMachODyld(TestCase):
|
||||
|
||||
self.assertEqual(relocations[0].address, 0x00001010)
|
||||
self.assertEqual(relocations[0].pc_relative, False)
|
||||
self.assertEqual(relocations[0].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[0].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[0].section.name, "__data")
|
||||
self.assertEqual(relocations[0].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[1].address, 0x00001028)
|
||||
self.assertEqual(relocations[1].pc_relative, False)
|
||||
self.assertEqual(relocations[1].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[1].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[1].section.name, "__data")
|
||||
self.assertEqual(relocations[1].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[2].address, 0x00001030)
|
||||
self.assertEqual(relocations[2].pc_relative, False)
|
||||
self.assertEqual(relocations[2].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[2].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[2].section.name, "__data")
|
||||
self.assertEqual(relocations[2].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[3].address, 0x00001038)
|
||||
self.assertEqual(relocations[3].pc_relative, False)
|
||||
self.assertEqual(relocations[3].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[3].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[3].section.name, "__data")
|
||||
self.assertEqual(relocations[3].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[4].address, 0x00001040)
|
||||
self.assertEqual(relocations[4].pc_relative, False)
|
||||
self.assertEqual(relocations[4].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[4].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[4].section.name, "__data")
|
||||
self.assertEqual(relocations[4].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[5].address, 0x00001258)
|
||||
self.assertEqual(relocations[5].pc_relative, False)
|
||||
self.assertEqual(relocations[5].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[5].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[5].section.name, "__data")
|
||||
self.assertEqual(relocations[5].segment.name, "__DATA")
|
||||
|
||||
|
||||
self.assertEqual(relocations[6].address, 0x00001278)
|
||||
self.assertEqual(relocations[6].pc_relative, False)
|
||||
self.assertEqual(relocations[6].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[6].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[6].section.name, "__mystuff")
|
||||
self.assertEqual(relocations[6].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[7].address, 0x00001288)
|
||||
self.assertEqual(relocations[7].pc_relative, False)
|
||||
self.assertEqual(relocations[7].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[7].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[7].section.name, "__mystuff")
|
||||
self.assertEqual(relocations[7].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[8].address, 0x00001298)
|
||||
self.assertEqual(relocations[8].pc_relative, False)
|
||||
self.assertEqual(relocations[8].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[8].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[8].section.name, "__mystuff")
|
||||
self.assertEqual(relocations[8].segment.name, "__DATA")
|
||||
|
||||
self.assertEqual(relocations[9].address, 0x000012A8)
|
||||
self.assertEqual(relocations[9].pc_relative, False)
|
||||
self.assertEqual(relocations[9].type, lief.MachO.REBASE_TYPES.POINTER)
|
||||
self.assertEqual(relocations[9].type, int(lief.MachO.REBASE_TYPES.POINTER))
|
||||
self.assertEqual(relocations[9].section.name, "__mystuff")
|
||||
self.assertEqual(relocations[9].segment.name, "__DATA")
|
||||
|
||||
|
BIN
third-party/pybind11-2.2.4.zip
vendored
BIN
third-party/pybind11-2.2.4.zip
vendored
Binary file not shown.
BIN
third-party/pybind11-2.4.3.zip
vendored
Normal file
BIN
third-party/pybind11-2.4.3.zip
vendored
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user