File tree Expand file tree Collapse file tree 13 files changed +85
-52
lines changed
Expand file tree Collapse file tree 13 files changed +85
-52
lines changed Original file line number Diff line number Diff line change @@ -28,9 +28,9 @@ class MACHO_TYPES(enum.Enum):
2828
2929 CIGAM_64 = 3489328638
3030
31- FAT_MAGIC = 3405691582
31+ MAGIC_FAT = 3405691582
3232
33- FAT_CIGAM = 3199925962
33+ CIGAM_FAT = 3199925962
3434
3535 NEURAL_MODEL = 3203398350
3636
Original file line number Diff line number Diff line change @@ -26,12 +26,12 @@ namespace LIEF::MachO::py {
2626void init_enums (nb::module_& m) {
2727
2828 enum_<MACHO_TYPES>(m, " MACHO_TYPES" )
29- .value (PY_ENUM (MACHO_TYPES::MH_MAGIC ))
30- .value (PY_ENUM (MACHO_TYPES::MH_CIGAM ))
31- .value (PY_ENUM (MACHO_TYPES::MH_MAGIC_64 ))
32- .value (PY_ENUM (MACHO_TYPES::MH_CIGAM_64 ))
33- .value (PY_ENUM (MACHO_TYPES::FAT_MAGIC ))
34- .value (PY_ENUM (MACHO_TYPES::FAT_CIGAM ))
29+ .value (PY_ENUM (MACHO_TYPES::MAGIC ))
30+ .value (PY_ENUM (MACHO_TYPES::CIGAM ))
31+ .value (PY_ENUM (MACHO_TYPES::MAGIC_64 ))
32+ .value (PY_ENUM (MACHO_TYPES::CIGAM_64 ))
33+ .value (PY_ENUM (MACHO_TYPES::MAGIC_FAT ))
34+ .value (PY_ENUM (MACHO_TYPES::CIGAM_FAT ))
3535 .value (PY_ENUM (MACHO_TYPES::NEURAL_MODEL))
3636 ;
3737
Original file line number Diff line number Diff line change 4949 for rpath in macho.rpaths:
5050 rpath.path += ' /a/very/long/path/that/needs/expansion'
5151
52+ * To void ``#define `` conflicts with Apple SDK, the following enums have been renamed:
53+
54+ .. tabs ::
55+
56+ .. tab :: :fa:`brands fa-python` Python
57+
58+ .. code-block :: diff
59+
60+ - lief.MachO.FAT_MAGIC
61+ + lief.MachO.MAGIC_FAT
62+
63+ - lief.MachO.FAT_CIGAM
64+ + lief.MachO.CIGAM_FAT
65+
66+
67+ .. tab :: :fa:`regular fa-file-code` C++
68+
69+ .. code-block :: diff
70+
71+ - MACHO_TYPES::MH_MAGIC
72+ - MACHO_TYPES::MH_CIGAM
73+ - MACHO_TYPES::MH_MAGIC_64
74+ - MACHO_TYPES::MH_CIGAM_64
75+ - MACHO_TYPES::FAT_MAGIC
76+ - MACHO_TYPES::FAT_CIGAM
77+
78+ + MACHO_TYPES::MAGIC
79+ + MACHO_TYPES::CIGAM
80+ + MACHO_TYPES::MAGIC_64
81+ + MACHO_TYPES::CIGAM_64
82+ + MACHO_TYPES::MAGIC_FAT
83+ + MACHO_TYPES::CIGAM_FAT
84+
5285:ELF:
5386
5487 * LIEF inserted sections are not compatible with a ``strip `` after the
Original file line number Diff line number Diff line change @@ -269,7 +269,7 @@ class LIEF_API BinaryParser : public LIEF::Parser {
269269
270270 std::unique_ptr<BinaryStream> stream_;
271271 std::unique_ptr<Binary> binary_;
272- MACHO_TYPES type_ = MACHO_TYPES::MH_MAGIC_64 ;
272+ MACHO_TYPES type_ = MACHO_TYPES::MAGIC_64 ;
273273 bool is64_ = true ;
274274 ParserConfig config_;
275275 std::set<uint64_t > visited_;
Original file line number Diff line number Diff line change @@ -195,14 +195,14 @@ class LIEF_API Header : public Object {
195195
196196 // / True if the binary is 32-bit
197197 bool is_32bit () const {
198- return magic_ == MACHO_TYPES::MH_MAGIC ||
199- magic_ == MACHO_TYPES::MH_CIGAM ;
198+ return magic_ == MACHO_TYPES::MAGIC ||
199+ magic_ == MACHO_TYPES::CIGAM ;
200200 }
201201
202202 // / True if the binary is 64-bit
203203 bool is_64bit () const {
204- return magic_ == MACHO_TYPES::MH_MAGIC_64 ||
205- magic_ == MACHO_TYPES::MH_CIGAM_64 ;
204+ return magic_ == MACHO_TYPES::MAGIC_64 ||
205+ magic_ == MACHO_TYPES::CIGAM_64 ;
206206 }
207207
208208 void remove (FLAGS flag);
Original file line number Diff line number Diff line change @@ -21,13 +21,13 @@ namespace LIEF {
2121namespace MachO {
2222
2323enum class MACHO_TYPES : uint32_t {
24- UNKNOWN = 0 ,
25- MH_MAGIC = 0xFEEDFACEu , // /< 32-bit big-endian magic
26- MH_CIGAM = 0xCEFAEDFEu , // /< 32-bit little-endian magic
27- MH_MAGIC_64 = 0xFEEDFACFu , // /< 64-bit big-endian magic
28- MH_CIGAM_64 = 0xCFFAEDFEu , // /< 64-bit little-endian magic
29- FAT_MAGIC = 0xCAFEBABEu , // /< big-endian fat magic
30- FAT_CIGAM = 0xBEBAFECAu , // /< little-endian fat magic
24+ UNKNOWN = 0 ,
25+ MAGIC = 0xFEEDFACEu , // /< 32-bit big-endian magic
26+ CIGAM = 0xCEFAEDFEu , // /< 32-bit little-endian magic
27+ MAGIC_64 = 0xFEEDFACFu , // /< 64-bit big-endian magic
28+ CIGAM_64 = 0xCFFAEDFEu , // /< 64-bit little-endian magic
29+ MAGIC_FAT = 0xCAFEBABEu , // /< big-endian fat magic
30+ CIGAM_FAT = 0xBEBAFECAu , // /< little-endian fat magic
3131
3232 NEURAL_MODEL = 0xbeeffaceu ,
3333};
Original file line number Diff line number Diff line change @@ -210,14 +210,14 @@ Header Header::from(const MachO::Binary& macho) {
210210 }
211211 const MachO::Header& macho_hdr = macho.header ();
212212 const MachO::MACHO_TYPES magic = macho_hdr.magic ();
213- if (magic == MachO::MACHO_TYPES::MH_MAGIC_64 ||
214- magic == MachO::MACHO_TYPES::MH_CIGAM_64 )
213+ if (magic == MachO::MACHO_TYPES::MAGIC_64 ||
214+ magic == MachO::MACHO_TYPES::CIGAM_64 )
215215 {
216216 hdr.modes_ |= MODES::BITS_64;
217217 }
218218
219- if (magic == MachO::MACHO_TYPES::MH_MAGIC ||
220- magic == MachO::MACHO_TYPES::MH_CIGAM )
219+ if (magic == MachO::MACHO_TYPES::MAGIC ||
220+ magic == MachO::MACHO_TYPES::CIGAM )
221221 {
222222 hdr.modes_ |= MODES::BITS_32;
223223 }
Original file line number Diff line number Diff line change @@ -125,16 +125,16 @@ ok_error_t BinaryParser::init_and_parse() {
125125 }
126126 const auto type = static_cast <MACHO_TYPES>(*stream_->peek <uint32_t >());
127127
128- is64_ = type == MACHO_TYPES::MH_MAGIC_64 ||
129- type == MACHO_TYPES::MH_CIGAM_64 ||
128+ is64_ = type == MACHO_TYPES::MAGIC_64 ||
129+ type == MACHO_TYPES::CIGAM_64 ||
130130 type == MACHO_TYPES::NEURAL_MODEL;
131131
132132 binary_->is64_ = is64_;
133133 type_ = type;
134134 binary_->original_size_ = stream_->size ();
135135
136- bool should_swap = type == MACHO_TYPES::MH_CIGAM_64 ||
137- type == MACHO_TYPES::MH_CIGAM ;
136+ bool should_swap = type == MACHO_TYPES::CIGAM_64 ||
137+ type == MACHO_TYPES::CIGAM ;
138138
139139 stream_->set_endian_swap (should_swap);
140140
Original file line number Diff line number Diff line change @@ -976,7 +976,7 @@ ok_error_t BinaryParser::parse_load_commands() {
976976 auto type = static_cast <MACHO_TYPES>(*res_type);
977977
978978 // Fat binary
979- if (type == MACHO_TYPES::FAT_MAGIC || type == MACHO_TYPES::FAT_CIGAM ) {
979+ if (type == MACHO_TYPES::MAGIC_FAT || type == MACHO_TYPES::CIGAM_FAT ) {
980980 LIEF_ERR (" Mach-O is corrupted with a FAT Mach-O inside a fileset ?" );
981981 break ;
982982 }
Original file line number Diff line number Diff line change @@ -213,7 +213,7 @@ ok_error_t Builder::build_fat_header() {
213213
214214 std::memset (&header, 0 , sizeof (details::fat_header));
215215
216- header.magic = static_cast <uint32_t >(MACHO_TYPES::FAT_CIGAM );
216+ header.magic = static_cast <uint32_t >(MACHO_TYPES::CIGAM_FAT );
217217 header.nfat_arch = get_swapped_endian<uint32_t >(binaries_.size ());
218218
219219 raw_.seekp (0 );
You can’t perform that action at this time.
0 commit comments