mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			21 lines
		
	
	
		
			682 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			682 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash -eux
 | |
| 
 | |
| ROOT_DIR=$(dirname $0)/../../
 | |
| INCLUDE_DIR=$ROOT_DIR/src/
 | |
| FUZZING_DIR=$ROOT_DIR/fuzzing/
 | |
| JSON_CORPUS_DIR=$FUZZING_DIR/my_corpus
 | |
| JSON_SEED_CORPUS_DIR=$FUZZING_DIR/seed_corpus
 | |
| 
 | |
| CXX="clang++-$CLANG"
 | |
| CXXFLAGS="-g -fprofile-instr-generate -fcoverage-mapping -fsanitize=address,fuzzer"
 | |
| 
 | |
| $CXX $CXXFLAGS -o json_fuzzer -I$INCLUDE_DIR $FUZZING_DIR/fuzzer.cpp
 | |
| 
 | |
| export ASAN_OPTIONS="detect_leaks=0"
 | |
| export LLVM_PROFILE_FILE="json_fuzzer.profraw"
 | |
| ./json_fuzzer "$JSON_CORPUS_DIR" "$JSON_SEED_CORPUS_DIR" -max_total_time=60
 | |
| 
 | |
| llvm-profdata-$CLANG merge -sparse json_fuzzer.profraw -o json_fuzzer.profdata
 | |
| 
 | |
| llvm-cov-$CLANG report ./json_fuzzer -instr-profile=json_fuzzer.profdata
 |