f13cbee12e 
								
							 
						 
						
							
							
								
								[libfuzzer] adding license headers to cpp files  
							
							... 
							
							
							
							Differential Revision: http://reviews.llvm.org/D18705 
llvm-svn: 265174 
							
						 
						
							2016-04-01 18:38:58 +00:00  
				
					
						
							
							
								 
						
							
								9e1a238357 
								
							 
						 
						
							
							
								
								[libFuzzer] more docs  
							
							... 
							
							
							
							llvm-svn: 264803 
							
						 
						
							2016-03-29 23:07:36 +00:00  
				
					
						
							
							
								 
						
							
								f3ab6d9e10 
								
							 
						 
						
							
							
								
								[libFuzzer] use fflush after every Printf  
							
							... 
							
							
							
							llvm-svn: 264459 
							
						 
						
							2016-03-25 20:31:26 +00:00  
				
					
						
							
							
								 
						
							
								f389ae12c1 
								
							 
						 
						
							
							
								
								[libFuzzer] handle SIGTERM  
							
							... 
							
							
							
							llvm-svn: 264338 
							
						 
						
							2016-03-24 21:03:58 +00:00  
				
					
						
							
							
								 
						
							
								315167339e 
								
							 
						 
						
							
							
								
								[libFuzzer] don't report memory leaks if we are dying due to a timeout (just use _Exit instead of exit in the timeout callback)  
							
							... 
							
							
							
							llvm-svn: 264237 
							
						 
						
							2016-03-24 01:32:08 +00:00  
				
					
						
							
							
								 
						
							
								6278f933a8 
								
							 
						 
						
							
							
								
								[libFuzzer] use fdopen+vfprintf instead of fsnprintf+write  
							
							... 
							
							
							
							llvm-svn: 264230 
							
						 
						
							2016-03-24 00:57:32 +00:00  
				
					
						
							
							
								 
						
							
								49e409068a 
								
							 
						 
						
							
							
								
								[libFuzzer] add a flag close_fd_mask so that we can silence spammy targets by closing stderr/stdout  
							
							... 
							
							
							
							llvm-svn: 263831 
							
						 
						
							2016-03-18 20:58:29 +00:00  
				
					
						
							
							
								 
						
							
								d96b0c14fb 
								
							 
						 
						
							
							
								
								[Fuzzer] Guard no_sanitize_memory attributes behind __has_feature.  
							
							... 
							
							
							
							Otherwise GCC fails to build it because it doesn't know the attribute.
llvm-svn: 263787 
							
						 
						
							2016-03-18 14:19:19 +00:00  
				
					
						
							
							
								 
						
							
								c43b584c1c 
								
							 
						 
						
							
							
								
								[libFuzzer] read corpus dirs recursively  
							
							... 
							
							
							
							llvm-svn: 263773 
							
						 
						
							2016-03-18 01:36:00 +00:00  
				
					
						
							
							
								 
						
							
								945761b8c2 
								
							 
						 
						
							
							
								
								[libFuzzer] improve -merge functionality  
							
							... 
							
							
							
							llvm-svn: 263769 
							
						 
						
							2016-03-18 00:23:29 +00:00  
				
					
						
							
							
								 
						
							
								c5575aabd6 
								
							 
						 
						
							
							
								
								[libFuzzer] deprecate several flags  
							
							... 
							
							
							
							llvm-svn: 263739 
							
						 
						
							2016-03-17 19:59:39 +00:00  
				
					
						
							
							
								 
						
							
								23dbc390af 
								
							 
						 
						
							
							
								
								[libFuzzer] add __attribute__((no_sanitize_memory)) to two functions that may be called from signal handler(s) or from msan. This will hopefully avoid msan false reports which I can't reproduce  
							
							... 
							
							
							
							llvm-svn: 263737 
							
						 
						
							2016-03-17 19:42:35 +00:00  
				
					
						
							
							
								 
						
							
								298516ffa9 
								
							 
						 
						
							
							
								
								[libfuzzer] speeding up corpus load  
							
							... 
							
							
							
							llvm-svn: 263591 
							
						 
						
							2016-03-15 21:47:21 +00:00  
				
					
						
							
							
								 
						
							
								0c5e3af862 
								
							 
						 
						
							
							
								
								[libFuzzer] use max_len exactly equal to the max size of input. Fix 32-bit build  
							
							... 
							
							
							
							llvm-svn: 263518 
							
						 
						
							2016-03-15 01:28:00 +00:00  
				
					
						
							
							
								 
						
							
								64d24578d8 
								
							 
						 
						
							
							
								
								[libFuzzer] try to use max_len based on the items of the corpus instead of blindly defaulting to 64 bytes.  
							
							... 
							
							
							
							llvm-svn: 263323 
							
						 
						
							2016-03-12 01:57:04 +00:00  
				
					
						
							
							
								 
						
							
								243fe2b3a0 
								
							 
						 
						
							
							
								
								[libfuzzer] adding std:string to allowed adaptable argument.  
							
							... 
							
							
							
							llvm-svn: 262757 
							
						 
						
							2016-03-04 23:18:01 +00:00  
				
					
						
							
							
								 
						
							
								5c3701c621 
								
							 
						 
						
							
							
								
								[libFuzzer] log less when re-loading files; fix a silly bug: when running single files actually run all of them, not just the first one  
							
							... 
							
							
							
							llvm-svn: 262754 
							
						 
						
							2016-03-04 22:35:40 +00:00  
				
					
						
							
							
								 
						
							
								b8627a89a6 
								
							 
						 
						
							
							
								
								[libfuzzer] arbitrary function adapter.  
							
							... 
							
							
							
							The adapter automates converting sequence of bytes into arbitrary
arguments.
Differential Revision: http://reviews.llvm.org/D17829 
llvm-svn: 262673 
							
						 
						
							2016-03-03 23:45:29 +00:00  
				
					
						
							
							
								 
						
							
								e483ed2825 
								
							 
						 
						
							
							
								
								[libFuzzer] when interrupted, call _Exit() instead of exit()  
							
							... 
							
							
							
							llvm-svn: 262667 
							
						 
						
							2016-03-03 22:36:37 +00:00  
				
					
						
							
							
								 
						
							
								4394b31e1d 
								
							 
						 
						
							
							
								
								[libFuzzer] add -Werror for libFuzzer build rule  
							
							... 
							
							
							
							llvm-svn: 262517 
							
						 
						
							2016-03-02 21:08:16 +00:00  
				
					
						
							
							
								 
						
							
								2eed1218e5 
								
							 
						 
						
							
							
								
								libfuzzer: fix compiler warnings  
							
							... 
							
							
							
							- unused sigaction/setitimer result (used in assert)
- unchecked fscanf return value
- signed/unsigned comparison
llvm-svn: 262472 
							
						 
						
							2016-03-02 09:54:40 +00:00  
				
					
						
							
							
								 
						
							
								3d95dd9149 
								
							 
						 
						
							
							
								
								[libFuzzer] deprecate exit_on_first flag  
							
							... 
							
							
							
							llvm-svn: 262417 
							
						 
						
							2016-03-01 22:33:14 +00:00  
				
					
						
							
							
								 
						
							
								228d5b1ce4 
								
							 
						 
						
							
							
								
								[libFuzzer] add generic signal handlers so that libFuzzer can report at least something if ASan is not handlig the signals for us. Remove abort_on_timeout flag.  
							
							... 
							
							
							
							llvm-svn: 262415 
							
						 
						
							2016-03-01 22:19:21 +00:00  
				
					
						
							
							
								 
						
							
								f84df30e4f 
								
							 
						 
						
							
							
								
								[libFuzzer] remove FuzzerSanitizerOptions.cpp  
							
							... 
							
							
							
							llvm-svn: 262354 
							
						 
						
							2016-03-01 17:46:32 +00:00  
				
					
						
							
							
								 
						
							
								5cd721ae12 
								
							 
						 
						
							
							
								
								Refactor duplicated code for linking with pthread.  
							
							... 
							
							
							
							llvm-svn: 262344 
							
						 
						
							2016-03-01 15:54:40 +00:00  
				
					
						
							
							
								 
						
							
								bf821db932 
								
							 
						 
						
							
							
								
								[libFuzzer] fixing the bot  
							
							... 
							
							
							
							llvm-svn: 262106 
							
						 
						
							2016-02-27 03:14:23 +00:00  
				
					
						
							
							
								 
						
							
								2d4f8f168b 
								
							 
						 
						
							
							
								
								[libFuzzer] speedup path coverage handling  
							
							... 
							
							
							
							llvm-svn: 262102 
							
						 
						
							2016-02-27 01:50:16 +00:00  
				
					
						
							
							
								 
						
							
								66ff0756e4 
								
							 
						 
						
							
							
								
								[libFuzzer] add -print_final_stats=1 flag  
							
							... 
							
							
							
							llvm-svn: 262084 
							
						 
						
							2016-02-26 22:42:23 +00:00  
				
					
						
							
							
								 
						
							
								da63c1d09a 
								
							 
						 
						
							
							
								
								[libFuzzer] initial implementation of path coverage based on -fsanitize-coverage=trace-pc. This does not scale well yet, but already cracks FullCoverageSetTest in seconds  
							
							... 
							
							
							
							llvm-svn: 262073 
							
						 
						
							2016-02-26 21:33:56 +00:00  
				
					
						
							
							
								 
						
							
								a35f7d383f 
								
							 
						 
						
							
							
								
								[libFuzzer] only read MaxLen bytes from every file in the corpus to speedup loading the corpus  
							
							... 
							
							
							
							llvm-svn: 261267 
							
						 
						
							2016-02-18 21:49:10 +00:00  
				
					
						
							
							
								 
						
							
								90bcdb512b 
								
							 
						 
						
							
							
								
								[libFuzzer] fix the libFuzzer bot  
							
							... 
							
							
							
							llvm-svn: 261184 
							
						 
						
							2016-02-18 02:02:40 +00:00  
				
					
						
							
							
								 
						
							
								cfbcf9097d 
								
							 
						 
						
							
							
								
								[libFuzzer] don't timeout when loading the corpus. Be a bit more verbose when loading large corpus.  
							
							... 
							
							
							
							llvm-svn: 261143 
							
						 
						
							2016-02-17 19:42:34 +00:00  
				
					
						
							
							
								 
						
							
								8a5bef0fcf 
								
							 
						 
						
							
							
								
								[libFuzzer] remove std::vector operations from hot paths, NFC  
							
							... 
							
							
							
							llvm-svn: 260829 
							
						 
						
							2016-02-13 17:56:51 +00:00  
				
					
						
							
							
								 
						
							
								1deb0498f5 
								
							 
						 
						
							
							
								
								[libFuzzer] don't require seed in fuzzer::Mutate, instead use the global Fuzzer object for fuzzer::Mutate. This makes custom mutators fast  
							
							... 
							
							
							
							llvm-svn: 260810 
							
						 
						
							2016-02-13 06:24:18 +00:00  
				
					
						
							
							
								 
						
							
								29bcb9f54e 
								
							 
						 
						
							
							
								
								[libFuzzer] remove the C++-ish variant of FuzzerDriver from the interface  
							
							... 
							
							
							
							llvm-svn: 260801 
							
						 
						
							2016-02-13 03:59:26 +00:00  
				
					
						
							
							
								 
						
							
								23194963f7 
								
							 
						 
						
							
							
								
								[libFuzzer] simplify CTOR of MutationDispatcher  
							
							... 
							
							
							
							llvm-svn: 260800 
							
						 
						
							2016-02-13 03:46:26 +00:00  
				
					
						
							
							
								 
						
							
								292cf0379c 
								
							 
						 
						
							
							
								
								[libFuzzer] get rid of MutationDispatcher::Impl (simplify the code; NFC)  
							
							... 
							
							
							
							llvm-svn: 260799 
							
						 
						
							2016-02-13 03:37:24 +00:00  
				
					
						
							
							
								 
						
							
								7ec0c56e07 
								
							 
						 
						
							
							
								
								[libFuzzer] get rid of UserSuppliedFuzzer; NFC  
							
							... 
							
							
							
							llvm-svn: 260798 
							
						 
						
							2016-02-13 03:25:16 +00:00  
				
					
						
							
							
								 
						
							
								a399221c32 
								
							 
						 
						
							
							
								
								[libFuzzer] simplify the code around Random. NFC  
							
							... 
							
							
							
							llvm-svn: 260797 
							
						 
						
							2016-02-13 03:00:53 +00:00  
				
					
						
							
							
								 
						
							
								ecab57b3ce 
								
							 
						 
						
							
							
								
								[libFuzzer] remove UserSuppliedFuzzer from the interface (it was a bad idea).  
							
							... 
							
							
							
							llvm-svn: 260796 
							
						 
						
							2016-02-13 02:39:30 +00:00  
				
					
						
							
							
								 
						
							
								22cc5e2375 
								
							 
						 
						
							
							
								
								[libFuzzer] provide a plain C interface for custom mutators (experimental)  
							
							... 
							
							
							
							llvm-svn: 260794 
							
						 
						
							2016-02-13 02:29:38 +00:00  
				
					
						
							
							
								 
						
							
								9d14e4bb15 
								
							 
						 
						
							
							
								
								[libFuzzer] make -runs=N flag also affect the simple runner (will execute every input N times)  
							
							... 
							
							
							
							llvm-svn: 260649 
							
						 
						
							2016-02-12 02:32:03 +00:00  
				
					
						
							
							
								 
						
							
								fcb06b4aa5 
								
							 
						 
						
							
							
								
								[libfuzzer] Removing coverage-related flags from asan options.  
							
							... 
							
							
							
							Summary:
Reasons to remove are twofold:
 - we don't really need coverage=1 for libfuzzer operation
 - makes controlling coverage for fuzzer processes non-trivial.
Differential Revision: http://reviews.llvm.org/D17168 
llvm-svn: 260611 
							
						 
						
							2016-02-11 22:20:34 +00:00  
				
					
						
							
							
								 
						
							
								ce925c580e 
								
							 
						 
						
							
							
								
								[libFuzzer] hot fix a test  
							
							... 
							
							
							
							llvm-svn: 259732 
							
						 
						
							2016-02-04 00:12:28 +00:00  
				
					
						
							
							
								 
						
							
								b92602ada0 
								
							 
						 
						
							
							
								
								[libFuzzer] don't write the test unit when a leak is detected (since we don't know which unit causes the leak)  
							
							... 
							
							
							
							llvm-svn: 259731 
							
						 
						
							2016-02-04 00:02:17 +00:00  
				
					
						
							
							
								 
						
							
								d88d1305c4 
								
							 
						 
						
							
							
								
								[libFuzzer] don't create too many trace-based mutations as it may be too slow  
							
							... 
							
							
							
							llvm-svn: 259600 
							
						 
						
							2016-02-02 23:17:45 +00:00  
				
					
						
							
							
								 
						
							
								bfbe7fc404 
								
							 
						 
						
							
							
								
								[libFuzzer] allow passing 1 or more files as individual inputs  
							
							... 
							
							
							
							llvm-svn: 259459 
							
						 
						
							2016-02-02 03:03:47 +00:00  
				
					
						
							
							
								 
						
							
								078e984d8d 
								
							 
						 
						
							
							
								
								[libFuzzer] fail if the corpus dir does not exist  
							
							... 
							
							
							
							llvm-svn: 259454 
							
						 
						
							2016-02-02 02:07:26 +00:00  
				
					
						
							
							
								 
						
							
								54a6363a8f 
								
							 
						 
						
							
							
								
								[libFuzzer] add -timeout_exitcode option  
							
							... 
							
							
							
							llvm-svn: 259265 
							
						 
						
							2016-01-29 23:30:07 +00:00  
				
					
						
							
							
								 
						
							
								085ca4131f 
								
							 
						 
						
							
							
								
								[libFuzzer] re-enable  test for -abort_on_timeout=1, this time protecting from ASAN_OPTIONS set outside  
							
							... 
							
							
							
							llvm-svn: 259263 
							
						 
						
							2016-01-29 23:19:00 +00:00