nuclei/v2/pkg/workflows/workflows.go

34 lines
1.1 KiB
Go
Raw Normal View History

2020-06-26 10:23:54 +02:00
package workflows
2020-06-29 17:43:08 +05:30
// Workflow is a workflow to execute with chained requests, etc.
2020-06-26 10:23:54 +02:00
type Workflow struct {
// ID is the unique id for the template
ID string `yaml:"id"`
// Info contains information about the template
Info Info `yaml:"info"`
2020-07-16 16:32:42 +02:00
// CookieReuse makes all cookies shared by templates within the workflow
CookieReuse bool `yaml:"cookie-reuse,omitempty"`
2020-06-26 10:23:54 +02:00
// Variables contains the variables accessible to the pseudo-code
Variables map[string]string `yaml:"variables"`
// Logic contains the workflow pseudo-code
Logic string `yaml:"logic"`
path string
}
// GetPath of the workflow
func (w *Workflow) GetPath() string {
return w.path
2020-06-26 10:23:54 +02:00
}
// Info contains information about workflow
type Info struct {
// Name is the name of the workflow
Name string `yaml:"name"`
// Author is the name of the author of the workflow
Author string `yaml:"author"`
2020-06-29 17:43:08 +05:30
// Severity optionally describes the severity of the template
Severity string `yaml:"severity,omitempty"`
2020-07-08 20:01:21 +01:00
// Description optionally describes the template.
Description string `yaml:"description,omitempty"`
2020-06-26 10:23:54 +02:00
}