File tree Expand file tree Collapse file tree 1 file changed +15
-12
lines changed Expand file tree Collapse file tree 1 file changed +15
-12
lines changed Original file line number Diff line number Diff line change 1
- Fuzzing for LLVM-libc
2
- ---------------------
1
+ Fuzzing for LLVM-libc functions
2
+ ===============================
3
3
4
- Fuzzing tests are used to ensure quality and security of LLVM-libc
5
- implementations.
4
+ Fuzz tests are used to ensure quality and security of LLVM-libc implementations.
5
+ All fuzz tests live under the directory named ``fuzzing ``. Within this
6
+ directory, the fuzz test for a libc function lives in the same nested directory
7
+ as its implementation in the toplevel ``src `` directory. The build target
8
+ ``libc-fuzzer `` builds all of the enabled fuzz tests (but does not run them).
6
9
7
- Each fuzzing test lives under the fuzzing directory in a subdirectory
8
- corresponding with the src layout.
10
+ Types of fuzz tests
11
+ ===================
9
12
10
- Currently we use system libc for functions that have yet to be implemented,
11
- however as they are implemented the fuzzers will be changed to use our
12
- implementation to increase coverage for testing.
13
-
14
- Fuzzers will be run on ` oss-fuzz < https://github.com/google/oss-fuzz >`_ and the
15
- check- libc target will ensure that they build correctly .
13
+ As of this writing, there are two different kinds of fuzz tests. One kind are
14
+ the traditional fuzz tests which test one function at a time and only that
15
+ particular function. The other kind of tests are what we call as the
16
+ differential fuzz tests. These tests compare the behavior of LLVM libc
17
+ implementations with the behavior of the corresponding functions from the system
18
+ libc.
You can’t perform that action at this time.
0 commit comments