Documentation ¶
Index ¶
- Constants
- Variables
- func MatchCgc(r io.ReaderAt) bool
- func MatchElf(r io.ReaderAt) bool
- func MatchMachO(r io.ReaderAt) bool
- type CgcLoader
- type ComLoader
- type ElfLoader
- func (e *ElfLoader) DWARF() (*dwarf.Data, error)
- func (e *ElfLoader) DataSegment() (start, end uint64)
- func (e *ElfLoader) Header() (uint64, []byte, int)
- func (e *ElfLoader) Interp() string
- func (e *ElfLoader) Segments() ([]SegmentData, error)
- func (e *ElfLoader) Symbols() ([]Symbol, error)
- func (e *ElfLoader) Type() int
- type FakeCgcReader
- type Loader
- func Load(r io.ReaderAt) (Loader, error)
- func LoadArch(r io.ReaderAt, arch string, osHint string) (Loader, error)
- func LoadFile(path string) (Loader, error)
- func LoadFileArch(path string, arch, osHint string) (Loader, error)
- func LoaderFor(r io.ReaderAt) (Loader, error)
- func NewCgcLoader(r io.ReaderAt, arch string) (Loader, error)
- func NewComLoader(filename string) (Loader, error)
- func NewElfLoader(r io.ReaderAt, arch string, osHint string) (Loader, error)
- func NewMachOLoader(r io.ReaderAt, archHint string) (Loader, error)
- func NewNullLoader(arch, os string, byteOrder binary.ByteOrder, entry uint64) Loader
- type LoaderBase
- func (l *LoaderBase) Arch() string
- func (l *LoaderBase) Bits() int
- func (l *LoaderBase) ByteOrder() binary.ByteOrder
- func (l *LoaderBase) DWARF() (*dwarf.Data, error)
- func (l *LoaderBase) DataSegment() (uint64, uint64)
- func (l *LoaderBase) Entry() uint64
- func (l *LoaderBase) Header() (uint64, []byte, int)
- func (l *LoaderBase) Interp() string
- func (l *LoaderBase) OS() string
- func (l *LoaderBase) Segments() ([]SegmentData, error)
- func (l *LoaderBase) Symbols() ([]Symbol, error)
- func (l *LoaderBase) Type() int
- type MachOLoader
- func (m *MachOLoader) DWARF() (*dwarf.Data, error)
- func (m *MachOLoader) DataSegment() (start, end uint64)
- func (m *MachOLoader) Header() (uint64, []byte, int)
- func (m *MachOLoader) Interp() string
- func (m *MachOLoader) Segments() ([]SegmentData, error)
- func (m *MachOLoader) Symbols() ([]Symbol, error)
- func (m *MachOLoader) Type() int
- type NullLoader
- type Segment
- type SegmentData
- type Symbol
Constants ¶
View Source
const ( UNKNOWN = iota EXEC DYN )
View Source
const NoOSHint = ""
NoOSHint indicates that there is no os hint
Variables ¶
View Source
var UnknownMagic = errors.New("Could not identify file magic.")
Functions ¶
func MatchMachO ¶
Types ¶
type ComLoader ¶
type ComLoader struct { LoaderBase Size int // contains filtered or unexported fields }
func (*ComLoader) Segments ¶
func (r *ComLoader) Segments() ([]SegmentData, error)
type ElfLoader ¶
type ElfLoader struct { LoaderBase // contains filtered or unexported fields }
func (*ElfLoader) DataSegment ¶
func (*ElfLoader) Segments ¶
func (e *ElfLoader) Segments() ([]SegmentData, error)
type FakeCgcReader ¶
type Loader ¶
type Loader interface { Arch() string Bits() int ByteOrder() binary.ByteOrder OS() string Entry() uint64 Type() int Interp() string Header() (uint64, []byte, int) Symbols() ([]Symbol, error) Segments() ([]SegmentData, error) DataSegment() (uint64, uint64) DWARF() (*dwarf.Data, error) }
func NewComLoader ¶
type LoaderBase ¶
type LoaderBase struct {
// contains filtered or unexported fields
}
func (*LoaderBase) Arch ¶
func (l *LoaderBase) Arch() string
func (*LoaderBase) Bits ¶
func (l *LoaderBase) Bits() int
func (*LoaderBase) ByteOrder ¶
func (l *LoaderBase) ByteOrder() binary.ByteOrder
func (*LoaderBase) DataSegment ¶
func (l *LoaderBase) DataSegment() (uint64, uint64)
func (*LoaderBase) Entry ¶
func (l *LoaderBase) Entry() uint64
func (*LoaderBase) Interp ¶
func (l *LoaderBase) Interp() string
func (*LoaderBase) OS ¶
func (l *LoaderBase) OS() string
func (*LoaderBase) Segments ¶
func (l *LoaderBase) Segments() ([]SegmentData, error)
func (*LoaderBase) Symbols ¶
func (l *LoaderBase) Symbols() ([]Symbol, error)
func (*LoaderBase) Type ¶
func (l *LoaderBase) Type() int
type MachOLoader ¶
type MachOLoader struct { LoaderBase // contains filtered or unexported fields }
func (*MachOLoader) DataSegment ¶
func (m *MachOLoader) DataSegment() (start, end uint64)
func (*MachOLoader) Interp ¶
func (m *MachOLoader) Interp() string
func (*MachOLoader) Segments ¶
func (m *MachOLoader) Segments() ([]SegmentData, error)
func (*MachOLoader) Symbols ¶
func (m *MachOLoader) Symbols() ([]Symbol, error)
func (*MachOLoader) Type ¶
func (m *MachOLoader) Type() int
type NullLoader ¶
type NullLoader struct {
LoaderBase
}
type SegmentData ¶
func (*SegmentData) ContainsPhys ¶
func (s *SegmentData) ContainsPhys(addr uint64) bool
func (*SegmentData) ContainsVirt ¶
func (s *SegmentData) ContainsVirt(addr uint64) bool
func (*SegmentData) Data ¶
func (s *SegmentData) Data() ([]byte, error)
Click to show internal directories.
Click to hide internal directories.