Documentation ¶
Index ¶
- Constants
- func Extract(bundle, dir string) error
- type ArchiveWriter
- func (w *ArchiveWriter) Close() error
- func (w *ArchiveWriter) GetSourcePath(archivePath string) string
- func (w *ArchiveWriter) HasFileEntry(archivePath string) bool
- func (w *ArchiveWriter) WriteDir(archiveBasePath string, sourceDir string) error
- func (w *ArchiveWriter) WriteFile(archivePath string, sourcePath string) error
- func (w *ArchiveWriter) WriteHardLink(target string, linkname 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 ¶
Types ¶
type ArchiveWriter ¶
ArchiveWriter provides functions to create a gzip-compressed tar archive.
func NewArchiveWriter ¶
func NewArchiveWriter(w io.Writer, compress bool) *ArchiveWriter
func (*ArchiveWriter) Close ¶
func (w *ArchiveWriter) Close() error
Close closes the tar writer and the gzip writer. It does not close the underlying io.Writer.
func (*ArchiveWriter) GetSourcePath ¶
func (w *ArchiveWriter) GetSourcePath(archivePath string) string
func (*ArchiveWriter) HasFileEntry ¶
func (w *ArchiveWriter) HasFileEntry(archivePath string) bool
func (*ArchiveWriter) WriteDir ¶
func (w *ArchiveWriter) WriteDir(archiveBasePath string, sourceDir string) error
WriteDir traverses sourceDir recursively and writes all regular files and symlinks to the archive.
func (*ArchiveWriter) WriteFile ¶
func (w *ArchiveWriter) WriteFile(archivePath string, sourcePath string) error
WriteFile writes the contents of sourcePath to the archive, with the filename archivePath (so when the archive is extracted, the file will be created at archivePath). Symlinks will be followed. WriteFile only handles regular files and symlinks.
func (*ArchiveWriter) WriteHardLink ¶
func (w *ArchiveWriter) WriteHardLink(target string, linkname string) error
WriteHardLink adds a hard link header to the archive. When the archive is extracted, a hard link to target with the name linkname is created.
type CodeRevision ¶
type CodeRevision struct {
Git *GitRevision `yaml:"git,omitempty"`
}
type EngineOptions ¶
type Fuzzer ¶
type Fuzzer struct { Target string `yaml:"target,omitempty"` Name string `yaml:"name,omitempty"` 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"` RuntimePaths []string `yaml:"runtime_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.
func MetadataFromPath ¶ added in v0.36.0
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.