kopia lustrzana https://github.com/weetmuts/wmbusmeters
Add automatic telegram fuzz seed generation from existing test case simulations.
rodzic
838f89d576
commit
e39bfca44e
|
@ -8,3 +8,4 @@ tests_tmp/
|
||||||
*~
|
*~
|
||||||
config.log
|
config.log
|
||||||
autom4te.cache/
|
autom4te.cache/
|
||||||
|
fuzz_testcases/telegrams/
|
12
Makefile
12
Makefile
|
@ -349,10 +349,16 @@ build_fuzz: afl_prepared
|
||||||
$(MAKE) AFL_HARDEN=1 CXX=$(AFL_HOME)/afl-g++-fast FUZZFLAGS=-DFUZZING=true $(BUILD)/wmbusmeters
|
$(MAKE) AFL_HARDEN=1 CXX=$(AFL_HOME)/afl-g++-fast FUZZFLAGS=-DFUZZING=true $(BUILD)/wmbusmeters
|
||||||
|
|
||||||
run_fuzz_difvifparser:
|
run_fuzz_difvifparser:
|
||||||
${AFL_HOME}/afl-fuzz -i fuzz_testcases/difvifparser -o fuzz_findings/ build/fuzz
|
${AFL_HOME}/afl-fuzz -i fuzz_testcases/difvifparser -o fuzz_findings_difvifparser/ build/fuzz
|
||||||
|
|
||||||
run_fuzz_telegrams:
|
run_fuzz_telegrams: extract_fuzz_telegram_seeds
|
||||||
${AFL_HOME}/afl-fuzz -i fuzz_testcases/telegrams -o fuzz_findings/ build/wmbusmeters --listento=any stdin
|
${AFL_HOME}/afl-fuzz -i fuzz_testcases/telegrams -o fuzz_findings_telegrams/ build/wmbusmeters --listento=any stdin
|
||||||
|
|
||||||
|
extract_fuzz_telegram_seeds:
|
||||||
|
@cat simulations/simulation_* | grep "^telegram=" | tr -d '|' | sed 's/^telegram=//' > $(BUILD)/seeds
|
||||||
|
@mkdir -p fuzz_testcases/telegrams
|
||||||
|
@rm -f fuzz_testcases/telegrams/seed_*
|
||||||
|
@SEED=1; while read -r line; do echo "$${line}" | xxd -r -p - > "fuzz_testcases/telegrams/seed_$${SEED}"; SEED=$$((SEED + 1)); done < $(BUILD)/seeds; echo "Extracted $${SEED} seeds from simulations."
|
||||||
|
|
||||||
# Include dependency information generated by gcc in a previous compile.
|
# Include dependency information generated by gcc in a previous compile.
|
||||||
include $(wildcard $(patsubst %.o,%.d,$(METER_OBJS)))
|
include $(wildcard $(patsubst %.o,%.d,$(METER_OBJS)))
|
||||||
|
|
Ładowanie…
Reference in New Issue