Struct goblin::mach::MachO[][src]

pub struct MachO<'a> {
    pub header: Header,
    pub load_commands: Vec<LoadCommand>,
    pub segments: Segments<'a>,
    pub symbols: Option<Symbols<'a>>,
    pub libs: Vec<&'a str>,
    pub rpaths: Vec<&'a str>,
    pub entry: u64,
    pub old_style_entry: bool,
    pub name: Option<&'a str>,
    pub little_endian: bool,
    pub is_64: bool,
    // some fields omitted
}
Expand description

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

Fields

header: Header

The mach-o header

load_commands: Vec<LoadCommand>

The load commands tell the kernel and dynamic linker how to use/interpret this binary

segments: Segments<'a>

The load command “segments” - typically the pieces of the binary that are loaded into memory

symbols: Option<Symbols<'a>>

The “Nlist” style symbols in this binary - strippable

libs: Vec<&'a str>

The dylibs this library depends on

rpaths: Vec<&'a str>

The runtime search paths for dylibs this library depends on

entry: u64

The entry point (as a virtual memory address), 0 if none

old_style_entry: bool

Whether entry refers to an older LC_UNIXTHREAD instead of the newer LC_MAIN entrypoint

name: Option<&'a str>

The name of the dylib, if any

little_endian: bool

Are we a little-endian binary?

is_64: bool

Are we a 64-bit binary

Implementations

Is this a relocatable object file?

Return an iterator over all the symbols in this binary

Return a vector of the relocations in this binary

Return the exported symbols in this binary (if any)

Return the imported symbols in this binary that dyld knows about (if any)

Parses the Mach-o binary from bytes at offset

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.