loader

package
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 25, 2017 License: MIT Imports: 11 Imported by: 2

Documentation

Index

Constants

View Source
const (
	UNKNOWN = iota
	EXEC
	DYN
)

Variables

View Source
var UnknownMagic = errors.New("Could not identify file magic.")

Functions

func Load

func Load(r io.ReaderAt) (models.Loader, error)

func LoadArch

func LoadArch(r io.ReaderAt, arch string) (models.Loader, error)

func LoadFile

func LoadFile(path string) (models.Loader, error)

func LoadFileArch

func LoadFileArch(path string, arch string) (models.Loader, error)

func MatchCgc

func MatchCgc(r io.ReaderAt) bool

func MatchElf

func MatchElf(r io.ReaderAt) bool

func MatchMachO

func MatchMachO(r io.ReaderAt) bool

func NewCgcLoader

func NewCgcLoader(r io.ReaderAt, arch string) (models.Loader, error)

func NewElfLoader

func NewElfLoader(r io.ReaderAt, arch string) (models.Loader, error)

func NewMachOLoader

func NewMachOLoader(r io.ReaderAt, archHint string) (models.Loader, error)

func NewNullLoader

func NewNullLoader(arch, os string, byteOrder binary.ByteOrder, entry uint64) models.Loader

Types

type CgcLoader

type CgcLoader struct {
	models.Loader
}

func (*CgcLoader) OS

func (c *CgcLoader) OS() string

type ElfLoader

type ElfLoader struct {
	LoaderHeader
	// contains filtered or unexported fields
}

func (*ElfLoader) DWARF

func (e *ElfLoader) DWARF() (*dwarf.Data, error)

func (*ElfLoader) DataSegment

func (e *ElfLoader) DataSegment() (start, end uint64)

func (*ElfLoader) Header

func (e *ElfLoader) Header() (uint64, []byte, int)

func (*ElfLoader) Interp

func (e *ElfLoader) Interp() string

func (*ElfLoader) Segments

func (e *ElfLoader) Segments() ([]models.SegmentData, error)

func (*ElfLoader) Symbols

func (e *ElfLoader) Symbols() ([]models.Symbol, error)

func (*ElfLoader) Type

func (e *ElfLoader) Type() int

type FakeCgcReader

type FakeCgcReader struct {
	io.ReaderAt
}

func (*FakeCgcReader) ReadAt

func (f *FakeCgcReader) ReadAt(p []byte, off int64) (int, error)

type LoaderHeader

type LoaderHeader struct {
	// contains filtered or unexported fields
}

func (*LoaderHeader) Arch

func (l *LoaderHeader) Arch() string

func (*LoaderHeader) Bits

func (l *LoaderHeader) Bits() int

func (*LoaderHeader) ByteOrder

func (l *LoaderHeader) ByteOrder() binary.ByteOrder

func (*LoaderHeader) Entry

func (l *LoaderHeader) Entry() uint64

func (*LoaderHeader) OS

func (l *LoaderHeader) OS() string

type MachOLoader

type MachOLoader struct {
	LoaderHeader
	// contains filtered or unexported fields
}

func (*MachOLoader) DWARF

func (m *MachOLoader) DWARF() (*dwarf.Data, error)

func (*MachOLoader) DataSegment

func (m *MachOLoader) DataSegment() (start, end uint64)

func (*MachOLoader) Header

func (m *MachOLoader) Header() (uint64, []byte, int)

func (*MachOLoader) Interp

func (m *MachOLoader) Interp() string

func (*MachOLoader) Segments

func (m *MachOLoader) Segments() ([]models.SegmentData, error)

func (*MachOLoader) Symbols

func (m *MachOLoader) Symbols() ([]models.Symbol, error)

func (*MachOLoader) Type

func (m *MachOLoader) Type() int

type NullLoader

type NullLoader struct {
	LoaderHeader
}

func (*NullLoader) DWARF

func (n *NullLoader) DWARF() (*dwarf.Data, error)

func (*NullLoader) DataSegment

func (n *NullLoader) DataSegment() (uint64, uint64)

func (*NullLoader) Header

func (n *NullLoader) Header() (uint64, []byte, int)

func (*NullLoader) Interp

func (n *NullLoader) Interp() string

func (*NullLoader) Segments

func (n *NullLoader) Segments() ([]models.SegmentData, error)

func (*NullLoader) Symbols

func (n *NullLoader) Symbols() ([]models.Symbol, error)

func (*NullLoader) Type

func (n *NullLoader) Type() int

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL