diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2024-07-31 22:54:05 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2024-08-07 00:48:32 -0700 |
| commit | e0ffac4e3c2271a617616760f3084f5f01fb0785 (patch) | |
| tree | 5769c9280878ebb3cc5f76345cf00050012e8198 /lib/std/debug/SelfInfo.zig | |
| parent | ffc050e0557c5d951cd293ca365ed0cd3cdf83db (diff) | |
| download | zig-e0ffac4e3c2271a617616760f3084f5f01fb0785.tar.gz zig-e0ffac4e3c2271a617616760f3084f5f01fb0785.zip | |
introduce a web interface for fuzzing
* new .zig-cache subdirectory: 'v'
- stores coverage information with filename of hash of PCs that want
coverage. This hash is a hex encoding of the 64-bit coverage ID.
* build runner
* fixed bug in file system inputs when a compile step has an
overridden zig_lib_dir field set.
* set some std lib options optimized for the build runner
- no side channel mitigations
- no Transport Layer Security
- no crypto fork safety
* add a --port CLI arg for choosing the port the fuzzing web interface
listens on. it defaults to choosing a random open port.
* introduce a web server, and serve a basic single page application
- shares wasm code with autodocs
- assets are created live on request, for convenient development
experience. main.wasm is properly cached if nothing changes.
- sources.tar comes from file system inputs (introduced with the
`--watch` feature)
* receives coverage ID from test runner and sends it on a thread-safe
queue to the WebServer.
* test runner
- takes a zig cache directory argument now, for where to put coverage
information.
- sends coverage ID to parent process
* fuzzer
- puts its logs (in debug mode) in .zig-cache/tmp/libfuzzer.log
- computes coverage_id and makes it available with
`fuzzer_coverage_id` exported function.
- the memory-mapped coverage file is now namespaced by the coverage id
in hex encoding, in `.zig-cache/v`
* tokenizer
- add a fuzz test to check that several properties are upheld
Diffstat (limited to 'lib/std/debug/SelfInfo.zig')
0 files changed, 0 insertions, 0 deletions
