Documentation ¶
Index ¶
- Constants
- func AddDirToManifest(manifest map[string]string, archiveBasePath string, dir string) error
- func ExtractArchiveForTestsOnly(bundle, dir string) error
- func WriteArchive(out io.Writer, manifest map[string]string) error
- type CodeRevision
- type EngineOptions
- type Fuzzer
- type GitRevision
- type Metadata
- type RunEnvironment
Constants ¶
const MetadataFileName = "bundle.yaml"
MetadataFileName is the name of the meta information yaml file within an artifact archive.
Variables ¶
This section is empty.
Functions ¶
func AddDirToManifest ¶
AddDirToManifest traverses the directory dir recursively and adds its contents to the manifest under the base path archiveBasePath.
func ExtractArchiveForTestsOnly ¶
ExtractArchiveForTestsOnly extracts the bundle to dir.
func WriteArchive ¶
WriteArchive writes a GZip-compressed TAR to out containing the files and directories given in manifest. The keys in manifest correspond to the path within the archive, the corresponding value is expected to be the absolute path of the file or directory on disk. Note: WriteArchive *does not* (recursively) traverse directories to add their contents to the archive. If this is desired, use AddDirToManifest to explicitly add the contents to the manifest before calling WriteArchive.
Types ¶
type CodeRevision ¶
type CodeRevision struct {
Git *GitRevision `yaml:"git,omitempty"`
}
type EngineOptions ¶ added in v0.1.3
type Fuzzer ¶
type Fuzzer struct { Target string `yaml:"target"` Path string `yaml:"path"` Engine string `yaml:"engine"` Sanitizer string `yaml:"sanitizer,omitempty"` // The different YAML field name is *not* a typo: For historical reasons, the "build_dir" field is supposed to // include the root directory of the *source* rather than the build tree of the project. Rather than expose all // cifuzz devs to this inconsistency, we keep it in the serialization logic. ProjectDir string `yaml:"build_dir"` Dictionary string `yaml:"dictionary,omitempty"` Seeds string `yaml:"seeds,omitempty"` LibraryPaths []string `yaml:"library_paths,omitempty"` EngineOptions EngineOptions `yaml:"engine_options,omitempty"` MaxRunTime uint `yaml:"max_run_time,omitempty"` }
Fuzzer specifies the type and locations of fuzzers contained in the archive.
type GitRevision ¶
type Metadata ¶
type Metadata struct { *RunEnvironment `yaml:"run_environment"` CodeRevision *CodeRevision `yaml:"code_revision,omitempty"` Fuzzers []*Fuzzer `yaml:"fuzzers"` }
Metadata defines meta information for artifacts contained within a fuzzing artifact archive.
type RunEnvironment ¶
type RunEnvironment struct { // The docker image and tag to be used: eg. debian:stable Docker string }
RunEnvironment specifies the environment in which the fuzzers are to be run.