Documentation
¶
Overview ¶
Package engine orchestrates a scan: it selects targets, runs the probes for every endpoint (repeated, with majority voting), measures throttling, classifies the results and streams progress events.
Index ¶
- Constants
- Variables
- type Engine
- func (e *Engine) DNSReport(ctx context.Context) *model.DNSReport
- func (e *Engine) NewReport(netinfo model.NetworkInfo) *model.Report
- func (e *Engine) Scan(ctx context.Context, sel catalog.Selection, netinfo model.NetworkInfo, ...) (*model.Report, error)
- func (e *Engine) Whitelist(ctx context.Context, events chan<- Event) (*model.WhitelistResult, error)
- type Event
- type EventKind
- type Options
Constants ¶
View Source
const ( PhasePrecheck = "precheck" PhaseBaseline = "baseline" PhaseTargets = "targets" PhaseDNS = "dns" PhaseWL = "whitelist" )
Phases reported through EventPhase.
Variables ¶
View Source
var ErrNoWhitelistConfig = errors.New("whitelist.yaml is not loaded")
ErrNoWhitelistConfig is returned when whitelist.yaml is missing.
Functions ¶
This section is empty.
Types ¶
type Engine ¶
type Engine struct {
Env *probe.Env
Catalog *catalog.Catalog
Opt Options
// contains filtered or unexported fields
}
Engine runs scans.
func (*Engine) NewReport ¶
func (e *Engine) NewReport(netinfo model.NetworkInfo) *model.Report
NewReport creates an empty report with tool metadata filled in.
type Event ¶
type Event struct {
Kind EventKind
Phase string
Done int
Total int
Target *model.TargetResult
Report *model.Report
}
Event is a progress notification.
Click to show internal directories.
Click to hide internal directories.