Lines Matching refs:code
15 then tracks which areas of the code are reached, and generates mutations on the
16 corpus of input data in order to maximize the code coverage.
17 The code coverage
47 .. code-block:: c++
104 code under test. This corpus should ideally be seeded with a varied collection
105 of valid and invalid inputs for the code under test; for example, for a graphics
109 path in the code under test, then that mutation is saved to the corpus for
118 the code under test without problems.
124 .. code-block:: console
132 .. code-block:: console
142 .. code-block:: console
149 .. code-block:: console
154 trigger coverage of new paths through the code under test), those test cases
213 .. code-block:: console
240 .. code-block:: console
279 Exit code (default 77) used if libFuzzer reports a timeout.
281 Exit code (default 77) used if libFuzzer itself (not a sanitizer) reports a bug (leak, OOM, etc).
287 that trigger new code coverage will be merged into the first corpus
312 Use `coverage counters`_ to generate approximate counts of how often code
338 remove diagnostic output from target code (e.g. messages on assert failure).
368 Further output lines have the form of an event code and statistics. The
376 the initial input samples through the code under test.
378 The fuzzer has created a test input that covers new areas of the code
397 Total number of code blocks or edges covered by executing the current corpus.
399 libFuzzer uses different signals to evaluate the code coverage:
532 Sometimes the code under test is not fuzzing-friendly. Examples:
534 - The target code uses a PRNG seeded e.g. by system time and
535 thus two consequent invocations may potentially execute different code paths
539 - The target code uses checksums to protect from invalid inputs.
546 .. code-block:: c++
550 // In fuzzing mode the behavior of the code should be deterministic.
565 .. code-block:: console
581 One easy to use metric is, of course, code coverage.
585 to visualize and study your code coverage
603 .. code-block:: c++
613 .. code-block:: c++
622 If the code being fuzzed must provide its own `main`, it's possible to
627 .. code-block:: bash
634 .. code-block:: bash
638 From here, the code can do whatever setup it requires, and when it's ready
643 .. code-block:: c++
662 .. code-block:: c++
702 .. code-block:: console
718 users -- and we want more users to use this code.
721 any other large body of code (maybe not even STL). When coverage instrumentation
722 is enabled, it will also instrument the LLVM support code which will blow up the
767 small inputs, each input takes < 10ms to run, and the library code is not expected
790 * PCRE: Search for "LLVM fuzzer" in http://vcs.pcre.org/pcre2/code/trunk/ChangeLog?view=markup;
810 * `Linux Kernel's Crypto code <https://www.spinics.net/lists/stable/msg199712.html>`_