Documentation
¶
Index ¶
- type CallCov
- type Corpus
- func (corpus *Corpus) CallCover() map[string]*CallCov
- func (corpus *Corpus) ChooseProgram(r *rand.Rand) *prog.Prog
- func (corpus *Corpus) Cover() []uint64
- func (corpus *Corpus) Item(sig string) *Item
- func (corpus *Corpus) Items() []*Item
- func (corpus *Corpus) Minimize(cover bool)
- func (corpus *Corpus) Programs() []*prog.Prog
- func (corpus *Corpus) ProgsPerArea() map[string]int
- func (corpus *Corpus) Save(inp NewInput)
- func (corpus *Corpus) Signal() signal.Signal
- type FocusArea
- type Item
- type ItemUpdate
- type NewInput
- type NewItemEvent
- type ProgramsList
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Corpus ¶
type Corpus struct {
*ProgramsList
StatProgs *stat.Val
StatSignal *stat.Val
StatCover *stat.Val
// contains filtered or unexported fields
}
Corpus object represents a set of syzkaller-found programs that cover the kernel up to the currently reached frontiers.
func NewFocusedCorpus ¶
func NewFocusedCorpus(ctx context.Context, updates chan<- NewItemEvent, areas []FocusArea) *Corpus
func NewMonitoredCorpus ¶
func NewMonitoredCorpus(ctx context.Context, updates chan<- NewItemEvent) *Corpus
func (*Corpus) ProgsPerArea ¶
type Item ¶
type Item struct {
Sig string
Call int
Prog *prog.Prog
HasAny bool // whether the prog contains squashed arguments
Signal signal.Signal
Cover []uint64
Updates []ItemUpdate
// contains filtered or unexported fields
}
Item objects are to be treated as immutable, otherwise it's just too hard to synchonize accesses to them across the whole project. When Corpus updates one of its items, it saves a copy of it.
func (Item) StringCall ¶
type ItemUpdate ¶
It may happen that a single program is relevant because of several sysalls. In that case, there will be several ItemUpdate entities.
type NewItemEvent ¶
type ProgramsList ¶
type ProgramsList struct {
// contains filtered or unexported fields
}
Click to show internal directories.
Click to hide internal directories.