Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | [libFuzzer] fix minor inefficiency, PR24584 | Kostya Serebryany | 2015-08-26 | 1 | -1/+1 | |
| | | | | llvm-svn: 246087 | |||||
* | Fix missing space in libfuzzer's help text. | Lenny Maiorani | 2015-08-12 | 1 | -1/+1 | |
| | | | | llvm-svn: 244800 | |||||
* | [libFuzzer] add two flags, -tbm_depth and -tbm_width to control how the ↵ | Kostya Serebryany | 2015-08-12 | 7 | -12/+31 | |
| | | | | | | trace-based-mutations are applied llvm-svn: 244712 | |||||
* | [libFuzzer] add colons to the stats output to avoid confusion | Kostya Serebryany | 2015-08-12 | 1 | -2/+3 | |
| | | | | llvm-svn: 244708 | |||||
* | [libFuzzer] use raw C IO to reduce the risk of a deadlock in a signal handler. | Kostya Serebryany | 2015-08-12 | 1 | -2/+5 | |
| | | | | llvm-svn: 244707 | |||||
* | Fix unused variable 'X' in release builds. | Nick Lewycky | 2015-08-11 | 1 | -0/+2 | |
| | | | | llvm-svn: 244571 | |||||
* | [libFuzzer] add -only_ascii flag | Kostya Serebryany | 2015-08-11 | 5 | -2/+28 | |
| | | | | llvm-svn: 244559 | |||||
* | Add missing include guard to FuzzerInternal.h, NFC. | Yaron Keren | 2015-08-10 | 1 | -0/+6 | |
| | | | | llvm-svn: 244457 | |||||
* | [libFuzzer] move the mutators to public interface so that custom mutators ↵ | Kostya Serebryany | 2015-08-06 | 4 | -38/+33 | |
| | | | | | | may reuse these functions directly llvm-svn: 244250 | |||||
* | [libFuzzer] add one more mutation strategy: byte shuffling | Kostya Serebryany | 2015-08-06 | 4 | -2/+41 | |
| | | | | llvm-svn: 244188 | |||||
* | [libFuzzer] avoid build warnings in non-assert build (useful warning in this ↵ | Kostya Serebryany | 2015-08-05 | 1 | -1/+4 | |
| | | | | | | case) llvm-svn: 244177 | |||||
* | [libFuzzer] in dfsan mode, set labels every time we start recording traces ↵ | Kostya Serebryany | 2015-08-05 | 1 | -1/+3 | |
| | | | | | | as opposed to doing it at process startup. This ensures that the labels are fresh. llvm-svn: 244165 | |||||
* | [libFuzzer] add option -report_slow_units=Nsec to control when slow units ↵ | Kostya Serebryany | 2015-08-05 | 4 | -3/+8 | |
| | | | | | | are printed llvm-svn: 244152 | |||||
* | [libFuzzer] add a missing test file | Kostya Serebryany | 2015-08-05 | 1 | -0/+28 | |
| | | | | llvm-svn: 244151 | |||||
* | [libFuzzer] use data-flow feedback from strcmp | Kostya Serebryany | 2015-08-05 | 4 | -2/+44 | |
| | | | | llvm-svn: 244084 | |||||
* | [libFuzzer] more refactoring of the Mutator and adding tests to it | Kostya Serebryany | 2015-08-01 | 3 | -26/+133 | |
| | | | | llvm-svn: 243818 | |||||
* | [libFuzzer] start refactoring the Mutator and adding tests to it | Kostya Serebryany | 2015-08-01 | 5 | -14/+58 | |
| | | | | llvm-svn: 243817 | |||||
* | [libFuzzer] limit the size of the inputs printed to stderr | Kostya Serebryany | 2015-07-31 | 1 | -4/+10 | |
| | | | | llvm-svn: 243795 | |||||
* | [libFuzzer] make sure that 2-byte arguments of switch() are handled properly | Kostya Serebryany | 2015-07-31 | 3 | -13/+52 | |
| | | | | llvm-svn: 243781 | |||||
* | [libFuzzer] record traces from the switch statements only when told to do so | Kostya Serebryany | 2015-07-31 | 1 | -0/+1 | |
| | | | | llvm-svn: 243768 | |||||
* | [libFuzzer] support switch interception in dfsan mode | Kostya Serebryany | 2015-07-31 | 4 | -4/+41 | |
| | | | | llvm-svn: 243760 | |||||
* | [libFuzzer] trace switch statements and apply mutations based on the ↵ | Kostya Serebryany | 2015-07-31 | 4 | -0/+56 | |
| | | | | | | expected case values llvm-svn: 243726 | |||||
* | [libFuzzer] fix the strncmp interceptor -- it should respect short strings. | Kostya Serebryany | 2015-07-30 | 3 | -3/+31 | |
| | | | | llvm-svn: 243691 | |||||
* | [libFuzzer] implement strncmp hook for data-flow-guided fuzzing (w/ and w/o ↵ | Kostya Serebryany | 2015-07-30 | 6 | -4/+45 | |
| | | | | | | dfsan), add a test llvm-svn: 243611 | |||||
* | [libFuzzer] implement memcmp hook for data-flow-guided fuzzing (w/o dfsan), ↵ | Kostya Serebryany | 2015-07-30 | 5 | -3/+24 | |
| | | | | | | extend the memcmp fuzzer test llvm-svn: 243603 | |||||
* | [libFuzzer] ensure that the dfsan tracing hooks actually run (using ↵ | Kostya Serebryany | 2015-07-28 | 2 | -1/+5 | |
| | | | | | | -verbosity=3 in tests) llvm-svn: 243365 | |||||
* | [libFuzzer] when using cmp traces, first check that the CMP is evaluated to ↵ | Kostya Serebryany | 2015-07-28 | 1 | -4/+44 | |
| | | | | | | one value much more frequently than to the other value (heuristic) llvm-svn: 243363 | |||||
* | [libFuzzer] allow users to supply their own implementation of rand | Kostya Serebryany | 2015-07-24 | 10 | -32/+85 | |
| | | | | llvm-svn: 243078 | |||||
* | [libFuzzer] dump long running units to disk | Kostya Serebryany | 2015-07-23 | 3 | -8/+9 | |
| | | | | llvm-svn: 243031 | |||||
* | [Fuzzer] Rely on $PATH expansion instead of hardcoding paths in tests. NFC. | Alexey Samsonov | 2015-07-21 | 3 | -14/+15 | |
| | | | | llvm-svn: 242851 | |||||
* | [Fuzzer] Clearly separate regular and DFSan tests. NFC. | Alexey Samsonov | 2015-07-21 | 5 | -7/+10 | |
| | | | | llvm-svn: 242850 | |||||
* | [libFuzzer] require the files and directories passed to the fuzzer to exist | Kostya Serebryany | 2015-07-18 | 1 | -2/+8 | |
| | | | | llvm-svn: 242596 | |||||
* | [lib/Fuzzer] make assertions more informative and update comments for the ↵ | Kostya Serebryany | 2015-05-30 | 2 | -4/+8 | |
| | | | | | | user-supplied mutator llvm-svn: 238658 | |||||
* | [lib/Fuzzer] relax an assertion | Kostya Serebryany | 2015-05-29 | 1 | -2/+2 | |
| | | | | llvm-svn: 238608 | |||||
* | [lib/Fuzzer] make the fuzzing timeout 1200 seconds by default (was: infinity) | Kostya Serebryany | 2015-05-26 | 2 | -1/+3 | |
| | | | | llvm-svn: 238251 | |||||
* | [lib/Fuzzer] fix docs | Kostya Serebryany | 2015-05-26 | 1 | -2/+2 | |
| | | | | llvm-svn: 238236 | |||||
* | [lib/Fuzzer] fix build with assertions | Kostya Serebryany | 2015-05-26 | 2 | -3/+4 | |
| | | | | llvm-svn: 238235 | |||||
* | [lib/Fuzzer] doxygen-ify the comments for the user interface | Kostya Serebryany | 2015-05-23 | 1 | -13/+22 | |
| | | | | llvm-svn: 238086 | |||||
* | [lib/Fuzzer] fully get rid of std::cerr in libFuzzer | Kostya Serebryany | 2015-05-23 | 3 | -38/+23 | |
| | | | | llvm-svn: 238081 | |||||
* | [lib/Fuzzer] start getting rid of std::cerr. Sadly, these parts of C++ ↵ | Kostya Serebryany | 2015-05-23 | 4 | -56/+47 | |
| | | | | | | library used in libFuzzer badly interract with the same code used in the target function and also with dfsan. It's easier to just not use std::cerr than to defeat these issues. llvm-svn: 238078 | |||||
* | [lib/Fuzzer] remove -use_coverage_pairs=1, an experimental feature that is ↵ | Kostya Serebryany | 2015-05-22 | 5 | -30/+1 | |
| | | | | | | unlikely to ever scale llvm-svn: 238063 | |||||
* | [lib/Fuzzer] extend the fuzzer interface to allow user-supplied mutators | Kostya Serebryany | 2015-05-22 | 12 | -67/+258 | |
| | | | | llvm-svn: 238059 | |||||
* | [lib/Fuzzer] ignore flags that start with --; use git pull --rebase instead ↵ | Kostya Serebryany | 2015-05-21 | 2 | -2/+12 | |
| | | | | | | of just git pull llvm-svn: 237950 | |||||
* | [lib/Fuzzer] change the meaning of -timeout flag: now timeout is applied to ↵ | Kostya Serebryany | 2015-05-19 | 6 | -7/+22 | |
| | | | | | | every unit of work separately llvm-svn: 237735 | |||||
* | [lib/Fuzzer] more efficient reload logic; also don't spam git too much | Kostya Serebryany | 2015-05-19 | 3 | -8/+11 | |
| | | | | llvm-svn: 237649 | |||||
* | [lib/Fuzzer] when -sync_command=<CMD> is given, periodically execute 'CMD ↵ | Kostya Serebryany | 2015-05-18 | 6 | -1/+29 | |
| | | | | | | CORPUS' to synchronize with other processes llvm-svn: 237617 | |||||
* | Code cleanup: Reindent Fuzzer::MutateAndTestOne. | Logan Chien | 2015-05-17 | 1 | -2/+2 | |
| | | | | llvm-svn: 237533 | |||||
* | [lib/Fuzzer] Add SHA1 implementation from public domain. | Kostya Serebryany | 2015-05-14 | 5 | -38/+225 | |
| | | | | | | | | | | | | | | | | | | | | | | | Summary: This adds a SHA1 implementation taken from public domain code. The change is trivial, but as it involves third-party code I'd like a second pair of eyes before commit. LibFuzzer can not use SHA1 from openssl because openssl may not be available and because we may be fuzzing openssl itself. Using sha1sum via a pipe is too slow. Test Plan: n/a Reviewers: chandlerc Reviewed By: chandlerc Subscribers: majnemer, llvm-commits Differential Revision: http://reviews.llvm.org/D9733 llvm-svn: 237400 | |||||
* | [lib/Fuzzer] enable -use_counters=1 by default | Kostya Serebryany | 2015-05-13 | 1 | -1/+1 | |
| | | | | llvm-svn: 237272 | |||||
* | [lib/Fuzzer] A simple script to synchronise a fuzz test corpus with an ↵ | Kostya Serebryany | 2015-05-12 | 1 | -0/+17 | |
| | | | | | | external git repository. llvm-svn: 237208 |