Dongjia "toka" Zhang
cf79d13d17
Change DumpToDiskStage's callback ( #1242 )
2023-05-03 11:16:53 +02:00
Dongjia "toka" Zhang
c8fad7833d
Use InMemoryOnDiskCorpus in fuzzbench fuzzer ( #1240 )
...
* in memory
* f
* aaa
* nn
2023-05-02 15:18:17 +02:00
Dongjia "toka" Zhang
b2f9e23975
Fix double crash for solutions with the same filename ( #1232 ) ( #1236 )
...
* fix
* mre
* why delete it???
* fmt
* clp
* comment
2023-04-29 23:42:51 +02:00
ToSeven
f248a061ef
add the version information of fuzzers in the UI ( #1224 )
...
Co-authored-by: toseven <Byone.heng@gmail.com>
2023-04-26 16:52:21 +02:00
Dongjia "toka" Zhang
037b9551ea
Fix #1228 ( #1229 )
2023-04-26 12:00:36 +02:00
Andrea Fioraldi
8ade809588
Centralized Testcase evaluation EventManager ( #1216 )
...
* template
* moar
* merge
* compiles
* fuzzer
* forward event newtestcase
* clippy
2023-04-24 11:38:55 +02:00
Dongjia "toka" Zhang
39c0a2040b
Fix CI ( #1225 )
2023-04-20 19:04:31 +02:00
Dongjia "toka" Zhang
e2f4e83890
Fix CommandExecutor type params ( #1222 )
2023-04-20 16:34:41 +02:00
Dongjia "toka" Zhang
fc23782dc3
Fix is_valid
on Windows ( #1217 )
...
* git add -u
* fix cfg
* pub
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2023-04-18 12:15:47 +02:00
Dominik Maier
96e24d1c8b
Move Input
loading and dumping APIs from Testcase
to Corpus
( #1201 )
...
* Less allocatiosn for filenames
* clippy for wasm fuzzer
* Reworked filename and rename APIs
* python, clippy
* fmt
* More cleanup, fixed metadata location
* clippy
* fix fuzzbench_text / cached len, invert parameters (state first)
* clippy
* oops
* Caching for paths
* simplified, fixed
* no_std
* cached_len
* Nider API for input getting
2023-04-18 12:14:49 +02:00
Andrea Fioraldi
fd68c8a81f
Batch mode timeouts (Linux only ATM) ( #1193 )
...
* batch mode timeouts for linux
* batch_mode is linux only atm
* fix
* fix
* fix
* imports
* winfix
* more fix
* winfix
* fix
* fix
* fix
* fix
* clippy
* fix macos
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-04-17 18:16:44 +02:00
Andrea Fioraldi
fafa27a7e9
serial_test as normal optional dep enabled with std ( #1215 )
...
* sertial_test as a std and test only dependency
* serial_test as normal optional dep enabled with std
2023-04-17 18:16:29 +02:00
Dominik Maier
cdd3d8ace0
Tuneable stage with per-seed timeout ( #1209 )
...
* Tunable mutations with timeouts
* fix
* fmt
* Introspection fix
2023-04-13 15:30:47 +02:00
Langston Barrett
863a6b8b7c
Mark buffer_{self_,}copy
as unsafe, don't export them ( #1207 )
2023-04-12 17:42:16 +02:00
Langston Barrett
1b9ffcec74
LibAFL: LLMP manager docstring cleanup ( #1208 )
2023-04-12 17:40:16 +02:00
Langston Barrett
aa3f126100
LibAFL_qemu: Return errors from Emulator::new
instead of asserting ( #1197 )
...
* qemu: Return errors from Emulator::new instead of asserting
Libraries should not `assert!` except in cases of unrecoverable (library)
programmer error. These errors are all potentially recoverable, and aren't
internal errors in `libafl_qemu` itself.
* Respond to review comments
2023-04-09 21:27:27 +02:00
Elsa Granger
21ee8d2cae
Fix on_remove of MinimizerScheduler ( #1161 )
...
* Fix cursor not step
* Update ref_cnt after remove
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2023-04-08 16:58:25 +02:00
Vincent
b519d24981
Fix Testcase renaming on disk ( #1191 )
...
* fix set_filename
* use ? quantifier instead of expect
* fix clippy
* cargo fmt
* add rename old file to new file logic
* add cfg feature std
* add no_std set_filename
* fix create and remove lockfile logic
* fix cargo fmt
* remove unused import
* cargo fmt
* fix clippy
* fix lock filecondition
* remove useless import
* fix path
* revert fuzzer Makefile.toml
* fix fmt
---------
Co-authored-by: Dominik Maier <domenukk@gmail.com>
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-04-07 02:36:08 +02:00
Dominik Maier
f73e2006fc
Removed more new_ ( #1200 )
2023-04-07 02:34:28 +02:00
Andrea Fioraldi
0f633962ff
Bump to 0.10.0 ( #1156 )
...
* Bump to 0.10.0
* fix
* Fix CI
* Fix copyright
* fmt
---------
Co-authored-by: Dominik Maier <domenukk@gmail.com>
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-04-05 17:49:53 +02:00
Dominik Maier
0d446bab20
Updated dependencies ( #1174 )
...
* Updated deps
* win
* Revert "win"
This reverts commit a6dfd95f1c63a9471659481d92c5cbc480af6360.
* revert win
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-04-04 22:58:00 +02:00
Andrey Fedotov
807a534121
Use observers to handle crashes in run_target for TimeoutForkserverExecutor ( #1189 )
...
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-04-04 19:17:48 +02:00
Andrey Fedotov
1bd21509af
CASR deduplication for StacktraceObservers ( #1184 )
...
* Implement CasrAsanBacktraceObserver for dedupe crashes using libCASR and ASAN reports.
* Use casr observer with forkserver executor
* Add casr deduplication for AsanBacktraceObserver
* Add casr deduplication for BacktraceObserver
* Add Stacktrace filtering
* Move init_ignored_frames to constructors
* Add go ignore regexps for BacktraceObservers
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-04-04 19:03:11 +02:00
Dongjia "toka" Zhang
ccd1211cd2
Remove qemu_arm_launcher test from CI ( #1179 )
...
* remove qemu arm
* trigger all
* debug
* revert
* api chg
* fix
* try
* debug
* remove qemu
* no_std
* Update build_and_test.yml
* llvm16
* revert z3
* macos
* fix
* remove test
* don't grep on mac
* fix
* ok
* f
* f
* f
* aaa
2023-04-04 14:49:58 +02:00
Andrea Fioraldi
a01863696e
Implement restarting without serializing the corpus ( #1182 )
...
* Restart without serializing state option
* libfuzzer libpng example
* clippy
* libfuzzer_libpng_norestart
* fix
2023-03-30 14:35:58 +02:00
Dongjia "toka" Zhang
ae2caff990
Revert "Fix testcase set_filename ( #1092 )" ( #1175 )
...
This reverts commit a659dd821c484c4e0524d0a2bf88023dae5e259b.
2023-03-24 01:53:42 +09:00
Dominik Maier
66b2867ba2
Fix example fuzzers ( #1171 )
...
* Fix example fuzzers
* fmt
2023-03-23 11:02:18 +01:00
Vincent
a659dd821c
Fix testcase set_filename ( #1092 )
...
* fix set_filename
* use ? quantifier instead of expect
* fix clippy
* cargo fmt
* add rename old file to new file logic
* add cfg feature std
* add no_std set_filename
* fix create and remove lockfile logic
* fix cargo fmt
* remove unused import
* cargo fmt
* fix clippy
* fix lock filecondition
* remove useless import
---------
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2023-03-23 00:21:07 +01:00
David CARLIER
c9ea6ee6aa
core_affinity: freebsd constants are included in libc now. ( #1170 )
2023-03-23 00:11:02 +01:00
Dominik Maier
76e4f6031d
Fmt, no_std fixes ( #1167 )
...
* Fmt, no_std fixes
* push-stage fix
2023-03-23 00:10:01 +01:00
Arpan Kapoor
d98384e582
Fix SimplePrintingMonitor ( #1164 )
2023-03-22 15:39:07 +01:00
Dominik Maier
3f7d35bfdc
Install libz3-dev in CI ( #1163 )
...
* install z3 in CI
* Update logics.rs
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-03-22 15:38:33 +01:00
Alexander Zhang
c9a78f154b
Remove duplicate lines in attributes ( #1165 )
2023-03-22 19:08:32 +09:00
Dominik Maier
8f8e74d670
Don't build z3 from source by default (and add static_z3 feature) ( #1160 )
...
* Reduce build times by using preinstaled z3
* fix env order
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-03-20 10:04:27 +01:00
Dominik Maier
f4f23de32b
Fix fuzzers after HasTestcase ( #1123 ) ( #1162 )
...
* Fix fuzzers after HasTestcase (#1123 )
* Make the trait a trait
* Implement HasTestcase for Corpora
* fix
* fix
* a
* a
* fix
* wasm32
* a
* f
* f
* aa
---------
Co-authored-by: tokatoka <tokazerkje@outlook.com>
2023-03-19 11:58:32 +09:00
Dominik Maier
bbe4e85768
Removed new_
from constructors that don't need it (API consistency) ( #1159 )
...
* Removed new_ from constructors that don't need it (API consistency)
* un-change python bindings
2023-03-17 17:02:21 +01:00
Matheus Baptistella
104c170ade
Use the new metadata() function in more places ( #1155 )
2023-03-17 16:03:57 +01:00
Dongjia "toka" Zhang
d6ee2dbe12
IfStage ( #1157 )
...
* macro
* bracket
* IfStage
* remove macro
* revert
2023-03-17 23:25:01 +09:00
Dongjia "toka" Zhang
8245c7eda9
Logic stages ( #1148 )
...
* IfStage
* fmt clp
* constructor
* fmt
* else
* fmt
* while logic
* delete skippable
* fmt
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2023-03-17 10:21:51 +01:00
Dominik Maier
b9970cbdac
Implement From<CorpusId> for usize ( #1152 )
2023-03-16 16:12:00 +01:00
Dongjia "toka" Zhang
08fe6ab791
Fix mutator slowdown ( #1138 )
...
* perf stat
* fix except swap
* swap
* fix
* reveral-based byte swap
* Revert "reveral-based byte swap"
This reverts commit 2bc9609ece47fd4e8f6d96862f8ad3fb77f11aec.
* no introspection
* clp fmt
* change rand_range to have at least 1 length
* don't use modulo
---------
Co-authored-by: Addison Crump <addison.crump@cispa.de>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2023-03-16 15:58:03 +01:00
Dominik Maier
3c331e5a9b
Create SchedulerTestcaseMetadata if it doesn't exist ( #1151 )
...
* Create SchedulerTestcaseMetadata if it doesn't exist
* reset symcc
2023-03-16 14:29:40 +01:00
Dongjia "toka" Zhang
51bc1d0328
Fix infinite calibration ( #1147 )
...
* Fix infinite calibration
* fmt
* fix
* fix
2023-03-15 22:19:23 +09:00
Dongjia "toka" Zhang
0fa815f2b8
Rename MetaData to Metadata
2023-03-14 23:57:55 +09:00
Matheus Baptistella
c38405ef83
Shorthand functions to get typed metadata, renamed metatdata -> metadata_map ( #1123 )
...
* Created macro to get the metadata form State and Testcase
* Expanded the macros for mutable, or not, State and Testcase metadata
* Created functions on traits HasMetadata and HasNamedMetadatato get, mutable or not, metadata
* Created the functions to get metadata
* Added #[inline] attribute and renamed the functions
* Renamed the functions and added #[inline] attribute
* Temporarily added testcase() function
* Added testcase() function
* Changed Ref import to core::cell:Ref
* Added testcase_mut() and renamed occurences of metadata() and metadata_mut()
* Renamed more occurences
* Renamed the metadata() on impl HasMetadata for NopState
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2023-03-14 14:24:33 +01:00
Dominik Maier
8dfdee6fce
Fix UB for differential map observer example ( #1140 )
...
* Fix UB for differential map observer example
* clippy
* undo submodule foo
2023-03-14 13:50:50 +01:00
Dominik Maier
6894a37ceb
Added Truncate trait ( #1141 )
2023-03-13 17:34:58 +01:00
Dongjia "toka" Zhang
44b798c07e
AFL++ RedQueen ( #1087 )
...
* step 1
* step 2
* Vec
* comment
* Observer
* tmp
* TaintedTracingStage
* more
* more
* more
* Idea
* more
* more
* mmmmmore
* moremoremore
* more
* all
* clp
* comment
* core
* push temporary debug change
* note for myself
* working
* rename to AFLCmplogTracingStage
* rename
* revert fuzzers' change
2023-03-13 17:34:16 +01:00
lazymio
b72bf55555
Add From BytesInput trait for Vec<u8> ( #1135 )
...
* Allow take the ownership of the BytesInput
* Add must_use as told
* Implement From&Into for better interoperability
* Format code
* Remove into_bytes
* Remove From<&BytesInput> to avoid misuse
2023-03-09 02:12:09 +01:00
Dongjia "toka" Zhang
4d778dd64d
Fix fuzz_level related thing, separate on_replace/on_remove from Scheduler & various fixes ( #1119 )
...
* delete HasFuzzedCorpusId
* more
* fmt clp
* aa
* fixing
* delete
* a
* append parent id when Objective
* add HasCorpus inprocss executor
* ecofuzz, delete was_fuzzed, update fuzz_level
* fix
* RemovableScheduler for Tunable, Queue, Weighted
* clp
* no std
* import
* on_execution
* fix
* win
* fmt
* fix
* revert to on_evaluation and propogate in the accounting scheduler
* fix
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2023-03-08 19:43:32 +01:00