31 _LIEF_EI(MH_BINDATLOAD) = 0x00000008u,
33 _LIEF_EI(MH_SPLIT_SEGS) = 0x00000020u,
34 _LIEF_EI(MH_LAZY_INIT) = 0x00000040u,
36 _LIEF_EI(MH_FORCE_FLAT) = 0x00000100u,
37 _LIEF_EI(MH_NOMULTIDEFS) = 0x00000200u,
38 _LIEF_EI(MH_NOFIXPREBINDING) = 0x00000400u,
39 _LIEF_EI(MH_PREBINDABLE) = 0x00000800u,
40 _LIEF_EI(MH_ALLMODSBOUND) = 0x00001000u,
41 _LIEF_EI(MH_SUBSECTIONS_VIA_SYMBOLS) = 0x00002000u,
42 _LIEF_EI(MH_CANONICAL) = 0x00004000u,
43 _LIEF_EI(MH_WEAK_DEFINES) = 0x00008000u,
44 _LIEF_EI(MH_BINDS_TO_WEAK) = 0x00010000u,
45 _LIEF_EI(MH_ALLOW_STACK_EXECUTION) = 0x00020000u,
46 _LIEF_EI(MH_ROOT_SAFE) = 0x00040000u,
47 _LIEF_EI(MH_SETUID_SAFE) = 0x00080000u,
48 _LIEF_EI(MH_NO_REEXPORTED_DYLIBS) = 0x00100000u,
50 _LIEF_EI(MH_DEAD_STRIPPABLE_DYLIB) = 0x00400000u,
51 _LIEF_EI(MH_HAS_TLV_DESCRIPTORS) = 0x00800000u,
52 _LIEF_EI(MH_NO_HEAP_EXECUTION) = 0x01000000u,
53 _LIEF_EI(MH_APP_EXTENSION_SAFE) = 0x02000000u
63 _LIEF_EI(LC_UNIXTHREAD) = 0x00000005u,
64 _LIEF_EI(LC_LOADFVMLIB) = 0x00000006u,
70 _LIEF_EI(LC_LOAD_DYLIB) = 0x0000000Cu,
72 _LIEF_EI(LC_LOAD_DYLINKER) = 0x0000000Eu,
73 _LIEF_EI(LC_ID_DYLINKER) = 0x0000000Fu,
74 _LIEF_EI(LC_PREBOUND_DYLIB) = 0x00000010u,
76 _LIEF_EI(LC_SUB_FRAMEWORK) = 0x00000012u,
77 _LIEF_EI(LC_SUB_UMBRELLA) = 0x00000013u,
78 _LIEF_EI(LC_SUB_CLIENT) = 0x00000014u,
79 _LIEF_EI(LC_SUB_LIBRARY) = 0x00000015u,
80 _LIEF_EI(LC_TWOLEVEL_HINTS) = 0x00000016u,
81 _LIEF_EI(LC_PREBIND_CKSUM) = 0x00000017u,
82 _LIEF_EI(LC_LOAD_WEAK_DYLIB) = 0x80000018u,
83 _LIEF_EI(LC_SEGMENT_64) = 0x00000019u,
84 _LIEF_EI(LC_ROUTINES_64) = 0x0000001Au,
87 _LIEF_EI(LC_CODE_SIGNATURE) = 0x0000001Du,
88 _LIEF_EI(LC_SEGMENT_SPLIT_INFO) = 0x0000001Eu,
89 _LIEF_EI(LC_REEXPORT_DYLIB) = 0x8000001Fu,
90 _LIEF_EI(LC_LAZY_LOAD_DYLIB) = 0x00000020u,
91 _LIEF_EI(LC_ENCRYPTION_INFO) = 0x00000021u,
92 _LIEF_EI(LC_DYLD_INFO) = 0x00000022u,
93 _LIEF_EI(LC_DYLD_INFO_ONLY) = 0x80000022u,
94 _LIEF_EI(LC_LOAD_UPWARD_DYLIB) = 0x80000023u,
95 _LIEF_EI(LC_VERSION_MIN_MACOSX) = 0x00000024u,
96 _LIEF_EI(LC_VERSION_MIN_IPHONEOS) = 0x00000025u,
97 _LIEF_EI(LC_FUNCTION_STARTS) = 0x00000026u,
98 _LIEF_EI(LC_DYLD_ENVIRONMENT) = 0x00000027u,
100 _LIEF_EI(LC_DATA_IN_CODE) = 0x00000029u,
101 _LIEF_EI(LC_SOURCE_VERSION) = 0x0000002Au,
102 _LIEF_EI(LC_DYLIB_CODE_SIGN_DRS) = 0x0000002Bu,
103 _LIEF_EI(LC_ENCRYPTION_INFO_64) = 0x0000002Cu,
104 _LIEF_EI(LC_LINKER_OPTION) = 0x0000002Du,
105 _LIEF_EI(LC_LINKER_OPTIMIZATION_HINT) = 0x0000002Eu,
106 _LIEF_EI(LC_VERSION_MIN_TVOS) = 0x0000002Fu,
107 _LIEF_EI(LC_VERSION_MIN_WATCHOS) = 0x00000030u,
109 _LIEF_EI(LC_BUILD_VERSION) = 0x00000032u,
110 _LIEF_EI(LC_DYLD_EXPORTS_TRIE) = 0x80000033u,
111 _LIEF_EI(LC_DYLD_CHAINED_FIXUPS) = 0x80000034u,
112 _LIEF_EI(LC_FILESET_ENTRY) = 0x80000035u,
122enum _LIEF_EN(MACHO_SEGMENTS_FLAGS) {
127 _LIEF_EI(SG_PROTECTED_VERSION_1) = 0x8u,
130enum _LIEF_EN(SECTION_FLAGS_HELPER) {
133 _LIEF_EI(SECTION_TYPE_MASK) = 0x000000ffu,
134 _LIEF_EI(SECTION_FLAGS_MASK) = 0xffffff00u,
135 _LIEF_EI(SECTION_FLAGS_USR_MASK) = 0xff000000u,
136 _LIEF_EI(SECTION_FLAGS_SYS_MASK) = 0x00ffff00u
148 _LIEF_EI(S_CSTRING_LITERALS) = 0x02u,
151 _LIEF_EI(S_LITERAL_POINTERS) = 0x05u,
152 _LIEF_EI(S_NON_LAZY_SYMBOL_POINTERS) = 0x06u,
153 _LIEF_EI(S_LAZY_SYMBOL_POINTERS) = 0x07u,
155 _LIEF_EI(S_MOD_INIT_FUNC_POINTERS) = 0x09u,
156 _LIEF_EI(S_MOD_TERM_FUNC_POINTERS) = 0x0au,
160 _LIEF_EI(S_16BYTE_LITERALS) = 0x0eu,
162 _LIEF_EI(S_LAZY_DYLIB_SYMBOL_POINTERS) = 0x10u,
163 _LIEF_EI(S_THREAD_LOCAL_REGULAR) = 0x11u,
164 _LIEF_EI(S_THREAD_LOCAL_ZEROFILL) = 0x12u,
165 _LIEF_EI(S_THREAD_LOCAL_VARIABLES) = 0x13u,
166 _LIEF_EI(S_THREAD_LOCAL_VARIABLE_POINTERS) = 0x14u,
167 _LIEF_EI(S_THREAD_LOCAL_INIT_FUNCTION_POINTERS) = 0x15u,
169 _LIEF_EI(LAST_KNOWN_SECTION_TYPE) = 0x15u,
176 _LIEF_EI(S_ATTR_PURE_INSTRUCTIONS) = 0x80000000u,
177 _LIEF_EI(S_ATTR_NO_TOC) = 0x40000000u,
178 _LIEF_EI(S_ATTR_STRIP_STATIC_SYMS) = 0x20000000u,
179 _LIEF_EI(S_ATTR_NO_DEAD_STRIP) = 0x10000000u,
180 _LIEF_EI(S_ATTR_LIVE_SUPPORT) = 0x08000000u,
181 _LIEF_EI(S_ATTR_SELF_MODIFYING_CODE) = 0x04000000u,
182 _LIEF_EI(S_ATTR_DEBUG) = 0x02000000u,
186 _LIEF_EI(S_ATTR_SOME_INSTRUCTIONS) = 0x00000400u,
187 _LIEF_EI(S_ATTR_EXT_RELOC) = 0x00000200u,
188 _LIEF_EI(S_ATTR_LOC_RELOC) = 0x00000100u,
192 _LIEF_EI(INDIRECT_SYMBOL_LOCAL) = 0x80000000u,
193 _LIEF_EI(INDIRECT_SYMBOL_ABS) = 0x40000000u
200 _LIEF_EI(DICE_KIND_JUMP_TABLE8) = 2u,
201 _LIEF_EI(DICE_KIND_JUMP_TABLE16) = 3u,
202 _LIEF_EI(DICE_KIND_JUMP_TABLE32) = 4u,
203 _LIEF_EI(DICE_KIND_ABS_JUMP_TABLE32) = 5u
208 _LIEF_EI(REBASE_TYPE_TEXT_ABSOLUTE32) = 2u,
209 _LIEF_EI(REBASE_TYPE_TEXT_PCREL32) = 3u,
210 _LIEF_EI(REBASE_TYPE_THREADED) = 102u,
214 _LIEF_EI(REBASE_OPCODE_MASK) = 0xF0u,
215 _LIEF_EI(REBASE_IMMEDIATE_MASK) = 0x0Fu
221 _LIEF_EI(REBASE_OPCODE_DONE) = 0x00u,
222 _LIEF_EI(REBASE_OPCODE_SET_TYPE_IMM) = 0x10u,
223 _LIEF_EI(REBASE_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB) = 0x20u,
224 _LIEF_EI(REBASE_OPCODE_ADD_ADDR_ULEB) = 0x30u,
225 _LIEF_EI(REBASE_OPCODE_ADD_ADDR_IMM_SCALED) = 0x40u,
226 _LIEF_EI(REBASE_OPCODE_DO_REBASE_IMM_TIMES) = 0x50u,
227 _LIEF_EI(REBASE_OPCODE_DO_REBASE_ULEB_TIMES) = 0x60u,
228 _LIEF_EI(REBASE_OPCODE_DO_REBASE_ADD_ADDR_ULEB) = 0x70u,
229 _LIEF_EI(REBASE_OPCODE_DO_REBASE_ULEB_TIMES_SKIPPING_ULEB) = 0x80u
241 _LIEF_EI(BIND_CLASS_THREADED) = 100u
247 _LIEF_EI(BIND_TYPE_TEXT_ABSOLUTE32) = 2u,
248 _LIEF_EI(BIND_TYPE_TEXT_PCREL32) = 3u
252 _LIEF_EI(BIND_SPECIAL_DYLIB_SELF) = 0,
253 _LIEF_EI(BIND_SPECIAL_DYLIB_MAIN_EXECUTABLE) = -1,
254 _LIEF_EI(BIND_SPECIAL_DYLIB_FLAT_LOOKUP) = -2
258 _LIEF_EI(BIND_SYMBOL_FLAGS_WEAK_IMPORT) = 0x1u,
259 _LIEF_EI(BIND_SYMBOL_FLAGS_NON_WEAK_DEFINITION) = 0x8u,
262 _LIEF_EI(BIND_IMMEDIATE_MASK) = 0x0Fu
268 _LIEF_EI(BIND_OPCODE_SET_DYLIB_ORDINAL_IMM) = 0x10u,
269 _LIEF_EI(BIND_OPCODE_SET_DYLIB_ORDINAL_ULEB) = 0x20u,
270 _LIEF_EI(BIND_OPCODE_SET_DYLIB_SPECIAL_IMM) = 0x30u,
271 _LIEF_EI(BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM) = 0x40u,
272 _LIEF_EI(BIND_OPCODE_SET_TYPE_IMM) = 0x50u,
273 _LIEF_EI(BIND_OPCODE_SET_ADDEND_SLEB) = 0x60u,
274 _LIEF_EI(BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB) = 0x70u,
275 _LIEF_EI(BIND_OPCODE_ADD_ADDR_ULEB) = 0x80u,
276 _LIEF_EI(BIND_OPCODE_DO_BIND) = 0x90u,
277 _LIEF_EI(BIND_OPCODE_DO_BIND_ADD_ADDR_ULEB) = 0xA0u,
278 _LIEF_EI(BIND_OPCODE_DO_BIND_ADD_ADDR_IMM_SCALED) = 0xB0u,
279 _LIEF_EI(BIND_OPCODE_DO_BIND_ULEB_TIMES_SKIPPING_ULEB) = 0xC0u,
280 _LIEF_EI(BIND_OPCODE_THREADED) = 0xD0u,
282 _LIEF_EI(BIND_OPCODE_THREADED_APPLY) = 0xD0u | 0x01u,
283 _LIEF_EI(BIND_OPCODE_THREADED_SET_BIND_ORDINAL_TABLE_SIZE_ULEB) = 0xD0u | 0x00u,
286enum _LIEF_EN_2(BIND_SUBOPCODE_THREADED, uint8_t) {
287 _LIEF_EI(BIND_SUBOPCODE_THREADED_SET_BIND_ORDINAL_TABLE_SIZE_ULEB) = 0x00u,
288 _LIEF_EI(BIND_SUBOPCODE_THREADED_APPLY) = 0x01u,
292 _LIEF_EI(EXPORT_SYMBOL_FLAGS_KIND_MASK) = 0x03u,
293 _LIEF_EI(EXPORT_SYMBOL_FLAGS_WEAK_DEFINITION) = 0x04u,
294 _LIEF_EI(EXPORT_SYMBOL_FLAGS_REEXPORT) = 0x08u,
295 _LIEF_EI(EXPORT_SYMBOL_FLAGS_STUB_AND_RESOLVER) = 0x10u
299 _LIEF_EI(EXPORT_SYMBOL_FLAGS_KIND_REGULAR) = 0x00u,
300 _LIEF_EI(EXPORT_SYMBOL_FLAGS_KIND_THREAD_LOCAL) = 0x01u,
301 _LIEF_EI(EXPORT_SYMBOL_FLAGS_KIND_ABSOLUTE) = 0x02u
331 _LIEF_EI(REFERENCE_FLAG_UNDEFINED_NON_LAZY) = 0,
332 _LIEF_EI(REFERENCE_FLAG_UNDEFINED_LAZY) = 1,
333 _LIEF_EI(REFERENCE_FLAG_DEFINED) = 2,
334 _LIEF_EI(REFERENCE_FLAG_PRIVATE_DEFINED) = 3,
335 _LIEF_EI(REFERENCE_FLAG_PRIVATE_UNDEFINED_NON_LAZY) = 4,
336 _LIEF_EI(REFERENCE_FLAG_PRIVATE_UNDEFINED_LAZY) = 5,
339 _LIEF_EI(N_ARM_THUMB_DEF) = 0x0008u,
340 _LIEF_EI(REFERENCED_DYNAMICALLY) = 0x0010u,
341 _LIEF_EI(N_NO_DEAD_STRIP) = 0x0020u,
344 _LIEF_EI(N_SYMBOL_RESOLVER) = 0x0100u,
349 _LIEF_EI(SELF_LIBRARY_ORDINAL) = 0x0,
350 _LIEF_EI(MAX_LIBRARY_ORDINAL) = 0xfd,
351 _LIEF_EI(DYNAMIC_LOOKUP_ORDINAL) = 0xfe,
411 _LIEF_EI(SYM_ORIGIN_DYLD_EXPORT) = 1,
417 _LIEF_EI(GENERIC_RELOC_VANILLA) = 0,
419 _LIEF_EI(GENERIC_RELOC_SECTDIFF) = 2,
420 _LIEF_EI(GENERIC_RELOC_PB_LA_PTR) = 3,
421 _LIEF_EI(GENERIC_RELOC_LOCAL_SECTDIFF) = 4,
427 _LIEF_EI(X86_64_RELOC_UNSIGNED) = 0,
430 _LIEF_EI(X86_64_RELOC_GOT_LOAD) = 3,
432 _LIEF_EI(X86_64_RELOC_SUBTRACTOR) = 5,
433 _LIEF_EI(X86_64_RELOC_SIGNED_1) = 6,
434 _LIEF_EI(X86_64_RELOC_SIGNED_2) = 7,
435 _LIEF_EI(X86_64_RELOC_SIGNED_4) = 8,
451 _LIEF_EI(PPC_RELOC_HI16_SECTDIFF) = 10,
452 _LIEF_EI(PPC_RELOC_LO16_SECTDIFF) = 11,
453 _LIEF_EI(PPC_RELOC_HA16_SECTDIFF) = 12,
455 _LIEF_EI(PPC_RELOC_LO14_SECTDIFF) = 14,
456 _LIEF_EI(PPC_RELOC_LOCAL_SECTDIFF) = 15,
464 _LIEF_EI(ARM_RELOC_LOCAL_SECTDIFF) = 3,
468 _LIEF_EI(ARM_THUMB_32BIT_BRANCH) = 7,
470 _LIEF_EI(ARM_RELOC_HALF_SECTDIFF) = 9,
476 _LIEF_EI(ARM64_RELOC_SUBTRACTOR) = 1,
479 _LIEF_EI(ARM64_RELOC_PAGEOFF12) = 4,
480 _LIEF_EI(ARM64_RELOC_GOT_LOAD_PAGE21) = 5,
481 _LIEF_EI(ARM64_RELOC_GOT_LOAD_PAGEOFF12) = 6,
482 _LIEF_EI(ARM64_RELOC_POINTER_TO_GOT) = 7,
483 _LIEF_EI(ARM64_RELOC_TLVP_LOAD_PAGE21) = 8,
484 _LIEF_EI(ARM64_RELOC_TLVP_LOAD_PAGEOFF12) = 9,
499 _LIEF_EI(CPU_ARCH_MASK) = 0xff000000,
500 _LIEF_EI(CPU_ARCH_ABI64) = 0x01000000
508 _LIEF_EI(CPU_TYPE_X86_64) = 7 | 0x01000000,
512 _LIEF_EI(CPU_TYPE_ARM64) = 12 | 0x01000000,
515 _LIEF_EI(CPU_TYPE_POWERPC64) = 18 | 0x01000000,
520 _LIEF_EI(CPU_SUBTYPE_MASK) = 0xff000000,
521 _LIEF_EI(CPU_SUBTYPE_LIB64) = 0x80000000,
524 _LIEF_EI(CPU_SUBTYPE_MULTIPLE) = ~0u
535 _LIEF_EI(CPU_SUBTYPE_PENTPRO) = 0x16,
536 _LIEF_EI(CPU_SUBTYPE_PENTII_M3) = 0x36,
537 _LIEF_EI(CPU_SUBTYPE_PENTII_M5) = 0x56,
538 _LIEF_EI(CPU_SUBTYPE_CELERON) = 0x67,
539 _LIEF_EI(CPU_SUBTYPE_CELERON_MOBILE) = 0x77,
540 _LIEF_EI(CPU_SUBTYPE_PENTIUM_3) = 0x08,
541 _LIEF_EI(CPU_SUBTYPE_PENTIUM_3_M) = 0x18,
542 _LIEF_EI(CPU_SUBTYPE_PENTIUM_3_XEON) = 0x28,
543 _LIEF_EI(CPU_SUBTYPE_PENTIUM_M) = 0x09,
544 _LIEF_EI(CPU_SUBTYPE_PENTIUM_4) = 0x0a,
545 _LIEF_EI(CPU_SUBTYPE_PENTIUM_4_M) = 0x1a,
546 _LIEF_EI(CPU_SUBTYPE_ITANIUM) = 0x0b,
547 _LIEF_EI(CPU_SUBTYPE_ITANIUM_2) = 0x1b,
549 _LIEF_EI(CPU_SUBTYPE_XEON_MP) = 0x1c,
552 _LIEF_EI(CPU_SUBTYPE_X86_64_ALL) = 3,
553 _LIEF_EI(CPU_SUBTYPE_X86_ARCH1) = 4,
559 _LIEF_EI(CPU_SUBTYPE_INTEL_FAMILY_MAX) = 15,
560 _LIEF_EI(CPU_SUBTYPE_INTEL_MODEL_ALL) = 0
568 _LIEF_EI(CPU_SUBTYPE_ARM_V5TEJ) = 7,
569 _LIEF_EI(CPU_SUBTYPE_ARM_XSCALE) = 8,
587enum _LIEF_EN(CPU_SUBTYPES_POWERPC) {
588 _LIEF_EI(CPU_SUBTYPE_POWERPC_ALL) = 0,
589 _LIEF_EI(CPU_SUBTYPE_POWERPC_601) = 1,
590 _LIEF_EI(CPU_SUBTYPE_POWERPC_602) = 2,
591 _LIEF_EI(CPU_SUBTYPE_POWERPC_603) = 3,
592 _LIEF_EI(CPU_SUBTYPE_POWERPC_603e) = 4,
593 _LIEF_EI(CPU_SUBTYPE_POWERPC_603ev) = 5,
594 _LIEF_EI(CPU_SUBTYPE_POWERPC_604) = 6,
595 _LIEF_EI(CPU_SUBTYPE_POWERPC_604e) = 7,
596 _LIEF_EI(CPU_SUBTYPE_POWERPC_620) = 8,
597 _LIEF_EI(CPU_SUBTYPE_POWERPC_750) = 9,
598 _LIEF_EI(CPU_SUBTYPE_POWERPC_7400) = 10,
599 _LIEF_EI(CPU_SUBTYPE_POWERPC_7450) = 11,
600 _LIEF_EI(CPU_SUBTYPE_POWERPC_970) = 100,
602 _LIEF_EI(CPU_SUBTYPE_MC980000_ALL) = 0,
#define _LIEF_EI(X)
Definition enums.hpp:22
#define _LIEF_EN_2(N, TYPE)
Definition enums.hpp:21
#define _LIEF_EN(N)
Definition enums.hpp:20