fuzz

package
v5.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 15, 2026 License: MIT Imports: 0 Imported by: 0

Documentation

Overview

Package fuzz contains Go native fuzz targets.

These targets fuzz the boundary between dnsconfig.js and the Go code: a JSON document in the same shape that JSON.stringify(conf) produces is turned into a models.DNSConfig and pushed through the same pipeline that `dnscontrol` runs: record import, validation and normalization, and zonefile generation.

The targets are run as ordinary tests (seed corpus only) by `go test` and gotestsum. Actual fuzzing happens in the scheduled "Fuzzing" GitHub Actions workflow, which runs each target with -fuzz for a fixed time budget.

The JavaScript engine itself is intentionally not fuzzed: the PANIC() helper calls os.Exit(1), which kills fuzz workers, and the require()/glob() helpers expose the filesystem. Fuzzing the JS layer would need those to return errors instead.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL