Expand description

The Mach-o, mostly zero-copy, binary format parser and raw struct definitions

Re-exports

pub use self::constants::cputype;

Modules

Bind opcodes are interpreted by the dynamic linker to efficiently collect every symbol imported by this binary, and from which library using two-level namespacing

Miscellaneous constants used inside of and when constructing, Mach-o binaries

Symbols exported by this binary and available for dynamic linking are encoded in mach-o binaries using a special trie

A Mach-o fat binary is a multi-architecture binary container

A header contains minimal architecture information, the binary kind, the number of load commands, as well as an endianness hint

Dynamically linked symbolic imports

Load commands tell the kernel and dynamic linker anything from how to load this binary into memory, what the entry point is, apple specific information, to which libraries it requires for dynamic linking

“Nlist” style symbols in this binary - beware, like most symbol tables in most binary formats, they are strippable, and should not be relied upon, see the imports and exports modules for something more permanent.

Structs

Iterator over the fat architecture headers in a MultiArch container

A cross-platform, zero-copy, endian-aware, 32/64 bit Mach-o binary parser

Iterator over every MachO binary contained in this MultiArch container

A Mach-o multi architecture (Fat) binary container

Enums

Either a collection of multiple architectures, or a single mach-o binary

Functions

Parses a magic number, and an accompanying mach-o binary parsing context, according to the magic number.

Returns a big endian magical number