Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct { // Instance name (used for identification and as GCE instance prefix). Name string `json:"name"` // Target OS/arch, e.g. "linux/arm64" or "linux/amd64/386" (amd64 OS with 386 test process). Target string `json:"target"` // TCP address to serve HTTP stats page (e.g. "localhost:50000"). HTTP string `json:"http"` // TCP address to serve RPC for fuzzer processes (optional). RPC string `json:"rpc"` Workdir string `json:"workdir"` // Directory with kernel object files. KernelObj string `json:"kernel_obj"` // Kernel source directory (if not set defaults to KernelObj). KernelSrc string `json:"kernel_src"` // Arbitrary optional tag that is saved along with crash reports (e.g. branch/commit). Tag string `json:"tag"` // Linux image for VMs. Image string `json:"image"` // SSH key for the image (may be empty for some VM types). SSHKey string `json:"sshkey"` // SSH user ("root" by default). SSHUser string `json:"ssh_user"` HubClient string `json:"hub_client"` HubAddr string `json:"hub_addr"` HubKey string `json:"hub_key"` // syz-manager will send crash emails to this list of emails using mailx (optional). EmailAddrs []string `json:"email_addrs"` DashboardClient string `json:"dashboard_client"` DashboardAddr string `json:"dashboard_addr"` DashboardKey string `json:"dashboard_key"` // Path to syzkaller checkout (syz-manager will look for binaries in bin subdir). Syzkaller string `json:"syzkaller"` // Number of parallel processes inside of every VM. Procs int `json:"procs"` // Type of sandbox to use during fuzzing: // "none": don't do anything special (has false positives, e.g. due to killing init), default // "setuid": impersonate into user nobody (65534) // "namespace": create a new namespace for fuzzer using CLONE_NEWNS/CLONE_NEWNET/CLONE_NEWPID/etc, // requires building kernel with CONFIG_NAMESPACES, CONFIG_UTS_NS, CONFIG_USER_NS, // CONFIG_PID_NS and CONFIG_NET_NS. Sandbox string `json:"sandbox"` // Use KCOV coverage (default: true). Cover bool `json:"cover"` // Reproduce, localize and minimize crashers (default: true). Reproduce bool `json:"reproduce"` EnabledSyscalls []string `json:"enable_syscalls"` DisabledSyscalls []string `json:"disable_syscalls"` // Don't save reports matching these regexps, but reboot VM after them, // matched against whole report output. Suppressions []string `json:"suppressions"` // Completely ignore reports matching these regexps (don't save nor reboot), // must match the first line of crash message. Ignores []string `json:"ignores"` // VM type (qemu, gce, android, isolated, etc). Type string `json:"type"` // VM-type-specific config. VM json.RawMessage `json:"vm"` // Implementation details beyond this point. // Parsed Target: TargetOS string `json:"-"` TargetArch string `json:"-"` TargetVMArch string `json:"-"` // Syzkaller binaries that we are going to use: SyzFuzzerBin string `json:"-"` SyzExecprogBin string `json:"-"` SyzExecutorBin string `json:"-"` }
func LoadPartialData ¶
func LoadPartialFile ¶
Click to show internal directories.
Click to hide internal directories.