Documentation
¶
Index ¶
- type Addr
- type BinaryRegexp
- func (b *BinaryRegexp) FindBytesMatchStartingAt(bytes []byte, startAt int) (*binexp.Match, error)
- func (b *BinaryRegexp) FindNextMatch(m *binexp.Match) (*binexp.Match, error)
- func (b *BinaryRegexp) FindNextOverlappingMatch(m *binexp.Match) (*binexp.Match, error)
- func (b *BinaryRegexp) String() string
- type EntropyQualityIndex
- type Fingerprint
- type FingerprintComparison
- type Gadget
- type GadgetDecoderFunc
- type GadgetId
- type GadgetInstance
- type GadgetInstances
- type GadgetSpec
- type Instruction
- type InstructionDecoderFunc
- type InstructionInstance
- type Library
- type Octets
- type Offset
- type Process
- type RegionsResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Addr ¶
type Addr uint64
func (Addr) MarshalJSON ¶
func (Addr) MarshalText ¶ added in v0.0.8
func (*Addr) UnmarshalJSON ¶
func (*Addr) UnmarshalText ¶ added in v0.0.8
type BinaryRegexp ¶
type BinaryRegexp struct {
// contains filtered or unexported fields
}
func MustCompile ¶
func MustCompile(expr string) *BinaryRegexp
func (*BinaryRegexp) FindBytesMatchStartingAt ¶
func (*BinaryRegexp) FindNextMatch ¶
func (*BinaryRegexp) FindNextOverlappingMatch ¶
func (*BinaryRegexp) String ¶
func (b *BinaryRegexp) String() string
type EntropyQualityIndex ¶
type EntropyQualityIndex float64
type Fingerprint ¶
func FingerprintFromGadgets ¶
func FingerprintFromGadgets(gadgetInstances []*GadgetInstance) (Fingerprint, error)
func (Fingerprint) CompareTo ¶
func (f1 Fingerprint) CompareTo(f2 Fingerprint, includeSurvived bool) FingerprintComparison
type FingerprintComparison ¶
type FingerprintComparison struct { Survived int `json:"survived"` Moved int `json:"moved"` Dead int `json:"dead"` GadgetsByOffset map[Offset]int `json:"gadgetCountsByOffset"` GadgetDisplacements map[Addr]map[GadgetId][]Offset `json:"gadgetDisplacements"` NewGadgets map[GadgetId][]Addr `json:"newGadgets"` }
type GadgetDecoderFunc ¶
type GadgetInstance ¶
func (*GadgetInstance) String ¶
func (gi *GadgetInstance) String() string
type GadgetInstances ¶
type GadgetInstances []*GadgetInstance
func (GadgetInstances) SortAlphabetically ¶
func (gis GadgetInstances) SortAlphabetically()
func (GadgetInstances) SortByAddress ¶
func (gis GadgetInstances) SortByAddress()
func (GadgetInstances) SortByLength ¶
func (gis GadgetInstances) SortByLength()
func (GadgetInstances) String ¶
func (gis GadgetInstances) String() string
type GadgetSpec ¶
type GadgetSpec struct { Opcode *BinaryRegexp Size int Align Addr }
Specifies the termination conditions for a gadget A gadget is typically <Some instruction set> + <some termination condition> A termination is a control-flow change
type Instruction ¶
func (*Instruction) String ¶
func (i *Instruction) String() string
type InstructionDecoderFunc ¶
type InstructionDecoderFunc func([]byte) (*Instruction, error)
type InstructionInstance ¶ added in v0.0.8
type InstructionInstance struct { Address Addr `json:"address"` Octets Octets `json:"octets"` DisAsm string `json:"disasm"` }
func MakeInstructionInstance ¶ added in v0.0.8
func MakeInstructionInstance(instruction *Instruction, address Addr) *InstructionInstance
type Offset ¶
type Offset int64
func (Offset) MarshalJSON ¶
func (Offset) MarshalText ¶
func (*Offset) UnmarshalJSON ¶
func (*Offset) UnmarshalText ¶
type Process ¶
type Process struct { Info *process.ProcessInfo `json:"info"` Libraries []Library `json:"libraries"` }
type RegionsResult ¶ added in v0.0.10
type RegionsResult struct { Span *memaccess.MemoryRegion `json:"span"` Size uint `json:"size"` Regions []memaccess.MemoryRegion `json:"regions"` }
Click to show internal directories.
Click to hide internal directories.