Documentation
¶
Overview ¶
Package bindiff provides functionality to run bindiff and parse the diffs.
Index ¶
- type BasicBlockAlgorithm
- type BasicBlockMatch
- type BinDiff
- func (b *BinDiff) BasicBlockMatches() []BasicBlockMatch
- func (b *BinDiff) Close() error
- func (b *BinDiff) Files() []File
- func (b *BinDiff) FunctionMatches() []FunctionMatch
- func (b *BinDiff) Instructions() []Instruction
- func (b *BinDiff) Metadata() Metadata
- func (b *BinDiff) Read() (err error)
- func (b *BinDiff) Run() error
- type File
- type FunctionAlgorithm
- type FunctionMatch
- type Instruction
- type Metadata
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BasicBlockAlgorithm ¶ added in v0.1.2
type BasicBlockAlgorithm int
const ( BBAlgorithmNone BasicBlockAlgorithm = iota BBAlgorithmEdgesPrimeProduct BasicBlockAlgorithm = 1 BBAlgorithmHashMatchingFourInstMin BasicBlockAlgorithm = 2 BBAlgorithmPrimeMatchingFourInstMin BasicBlockAlgorithm = 3 BBAlgorithmCallReferenceMatching BasicBlockAlgorithm = 4 BBAlgorithmStringReferencesMatching BasicBlockAlgorithm = 5 BBAlgorithmEdgesMdIndexTopDown BasicBlockAlgorithm = 6 BBAlgorithmMdIndexMatchingTopDown BasicBlockAlgorithm = 7 BBAlgorithmEdgesMdIndexBottomUp BasicBlockAlgorithm = 8 BBAlgorithmMdIndexMatchingBottomUp BasicBlockAlgorithm = 9 BBAlgorithmRelaxedMdIndexMatching BasicBlockAlgorithm = 10 BBAlgorithmPrimeMatchingNoInstMin BasicBlockAlgorithm = 11 BBAlgorithmEdgesLengauerTarjanDominated BasicBlockAlgorithm = 12 BBAlgorithmLoopEntryMatching BasicBlockAlgorithm = 13 BBAlgorithmSelfLoopMatching BasicBlockAlgorithm = 14 BBAlgorithmEntryPointMatching BasicBlockAlgorithm = 15 BBAlgorithmExitPointMatching BasicBlockAlgorithm = 16 BBAlgorithmInstructionCountMatching BasicBlockAlgorithm = 17 BBAlgorithmJumpSequenceMatching BasicBlockAlgorithm = 18 BBAlgorithmPropagationSizeOne BasicBlockAlgorithm = 19 BBAlgorithmManual BasicBlockAlgorithm = 20 )
type BasicBlockMatch ¶ added in v0.1.2
type BasicBlockMatch struct { ID int `gorm:"primaryKey"` FunctionID int Address1 decimal.Decimal `gorm:"type:BIGINT"` Address2 decimal.Decimal `gorm:"type:BIGINT"` Algorithm BasicBlockAlgorithm Evalute bool }
func (BasicBlockMatch) String ¶ added in v0.1.2
func (bbm BasicBlockMatch) String() string
type BinDiff ¶
type BinDiff struct { ExportPrev string ExportNext string DiffFile string Output string // contains filtered or unexported fields }
func NewBinDiff ¶
func (*BinDiff) BasicBlockMatches ¶ added in v0.1.2
func (b *BinDiff) BasicBlockMatches() []BasicBlockMatch
func (*BinDiff) FunctionMatches ¶ added in v0.1.2
func (b *BinDiff) FunctionMatches() []FunctionMatch
func (*BinDiff) Instructions ¶ added in v0.1.2
func (b *BinDiff) Instructions() []Instruction
type FunctionAlgorithm ¶ added in v0.1.2
type FunctionAlgorithm int
const ( FAlgorithmNone FunctionAlgorithm = iota FAlgorithmNameHashMatching FunctionAlgorithm = 1 FAlgorithmHashMatching FunctionAlgorithm = 2 FAlgorithmEdgesFlowgraphMdIndex FunctionAlgorithm = 3 FAlgorithmEdgesCallgraphMdIndex FunctionAlgorithm = 4 FAlgorithmMdIndexMatchingFlowgraphTopDown FunctionAlgorithm = 5 FAlgorithmMdIndexMatchingFlowgraphBottomUp FunctionAlgorithm = 6 FAlgorithmPrimeSignatureMatching FunctionAlgorithm = 7 FAlgorithmMdIndexMatchingCallGraphTopDown FunctionAlgorithm = 8 FAlgorithmMdIndexMatchingCallGraphBottomUp FunctionAlgorithm = 9 FAlgorithmRelaxedMdIndexMatching FunctionAlgorithm = 10 FAlgorithmInstructionCount FunctionAlgorithm = 11 FAlgorithmAddressSequence FunctionAlgorithm = 12 FAlgorithmStringReferences FunctionAlgorithm = 13 FAlgorithmLoopCountMatching FunctionAlgorithm = 14 FAlgorithmCallSequenceMatchingExact FunctionAlgorithm = 15 FAlgorithmCallSequenceMatchingTopology FunctionAlgorithm = 16 FAlgorithmCallSequenceMatchingSequence FunctionAlgorithm = 17 FAlgorithmCallReferenceMatching FunctionAlgorithm = 18 FAlgorithmManual FunctionAlgorithm = 19 )
type FunctionMatch ¶ added in v0.1.2
type FunctionMatch struct { ID int `gorm:"primaryKey"` Address1 decimal.Decimal `gorm:"type:BIGINT"` Name1 string Address2 decimal.Decimal `gorm:"type:BIGINT"` Name2 string Similarity float64 Confidence float64 Flags int Algorithm FunctionAlgorithm Evalute bool Commentsported bool Basicblocks int Edges int Instructions int }
func (FunctionMatch) String ¶ added in v0.1.2
func (fm FunctionMatch) String() string
Click to show internal directories.
Click to hide internal directories.