* sample implementation of tracking enforcement (incomplete)
* helpful compiler output
* make it look like a real compiler output
* ensure that the macro may be used outside of libafl
* separate index/novelty tracking funcs
* default const generic values so that we don't need to change this everywhere
* fix tests
* rollback unnecessary specification of stdmapobserver
* register metadata in doc tests
* doc fixes
* doc cleanup
* doc cleanup 2
* reduce implementor overhead to zero
* renaming/docs fixes
* asref isn't reflexive??
* generalization stage updates
* add better documentation about require_{indices,novelties}_tracking
* remaining generic updates
* round one CI pass (knowingly introduces breaking changes)
* typo
* round 2 clippy
* rollback: libafl_frida changes
* fmt
* moar porting
* fix remaining fuzzers
* fix windows build, maybe
* fixup libafl_libfuzzer
* fmt nighlty all the things
* attempt to fix some broken additions
* fix fmt
* oops
* fix new invocation
* minimizer scheduler fixes
* fix accounting
* rename
* fix
* Fix build
* Sort generics
* Move more generics into the right place
* Rename A -> C
* Fix test
* Fix test some more
* Fix doc some more
* critical formatting
* More A->C
* CanTrack harder
---------
Co-authored-by: Dominik Maier <dmnk@google.com>
* introduce disabled field to Testcase
* separate executor's processing of execution (adding to corpus/solution/discarding) and execution of input
* introduce add_disabled_input function
* enable splicing mutators to fetch disabled inputs
* reset modified example
* clean up
* update docs
* update docs for count_with_disabled
* fix random_corpus_id for splicing mutator not considering disabled entries
* fmt
* update docs
* clippy
* fix corpus_btreemap not working
* fix clippy warnings
* fix python bindings
* typo in count_with_disabled implementations
* fix certain splicing mutators not considering disabled inputs
* rename count_with_disabled to count_all
* introduce count_disabled function
* update docs for count_all, count_disabled and count
* * introduce get_from_all and nth_from_all for corpus implementations so get() and nth() do not silently fetch disabled entries.
* remove boolean flag from random_corpus_id which allowed inclusion of disabled ids and make it into a new function random_corpus_id_with_disabled
* update docs
* remove boolean is_disabled flag from corpus::insert and make it into a separate function insert_disabled
* rename do_insert to _insert
* make get_from_all inline for cached and inmemory
* add missing functions implementation for PythonCorpus
prevent writing feedback when adding disabled testcases
* fix nth_from_all overfetching enabled corpus entries
* fix clippy & rename execute_with_res to execute_no_process
* refactor _insert for corpus_btreemap
* make LibfuzzerCorpus and ArtifactCorpus to accomodate disabled entries
* fix typo
* fix missing docs for map field
* fix clippy
* test
* (hopefully) fix CachedOnDiskCorpus using incorrect corpus when caching testcase
* fix typo in inmemory_ondisk leading to fetching disabled entry from enabled corpus
---------
Co-authored-by: aarnav <aarnav@srlabs.de>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
* ci
* ci
* ci
* aa
* aa
* a
* a
* a
* fix
* no fail fast
* system
* what is this lint...
* a
* clp
* disk
* ok no fastfail
* no qemu for now, reenable monday
* Move into_vec to extra trait
* fix no_std
* First step towards stages tuples as vecs
* Allow dyn in StagesTuple, add Current Testcase API, un-traitify Progress, cleanups
* Move from generics to impl keyword, more replacements with better API
* rename fn
* Fix additional stages, more cleanup, rename progress to retries
* Fix more fixes
* Fixes
* Rename ProgressHelper -> RestartHelper
* Fix sugar, python, add perform_restartable
* fixes
* remove prelude bs
* rename to restart_progress_should_run
* more cleanup, remove tests I don't understand (sorry)
* fix docs
* more fix
* fix miri
* unsafe safety annotations
* more comments
* last docs
* Mixed_attributes only allowed for bindgen
* fix lints.
* more lint fix.
* even more lint fixes.
* always more lint fixes.
* lint fix.
* allow unused qualifications for crate when it could be confusing.
* Still lint fixes.
* Lint fixes on generated code.
* Some lint fixes.
* libafl_targets: on macOS, do not provide a default implementation for weak functions
* libafl_libfuzzer: update README to talk about macOS specifics
* libafl_targets: allow __sanitizer_cov_pcs_init to be called more than once
---------
Co-authored-by: Dominik Maier <domenukk@gmail.com>
* move windows, inprocess fork to a different file, try new hook mechanism for the executor
* fix
* even more
* more
* more
* fix
* fix
* macosgit add -ugit add -u
* windows!
* windows!
* aa
* aa
* macos
* std
* wtf unresolved?
* Copy, Clone
* why you just don't have the same API!
* inproc
* next; inprocess
* windows?
* ci
* ci
* ci
* unused
* ci
* unused
* no_std
* windows no std
* fix
* inprocess
* fix
* windows
* fuzzers
* macos , book
* fix
* aa
* allow
* fix
* stop suggesting wrong lint AAAAAAAAAAAAAAAAA!!!
* stop suggesting wrong lint AAAAAAAAAAAAAAAAA!!!
* win
* fix
* wip
* wip2
* windows done?
* remove TimeoutExecutor
* ci
* ci
* miri
* fixfi
* compile on windows
* a
* clp
* no_std stuff
* windows no_std
* mac stuff
* m
* a
* ci
* ci
* deleting timeoutexecutor, gradually
* fucking macos
* ci
* test
* ci
* ci
* batch mode constructor
* fix
* ci
* aa
* miri
* aaa
* tmate again
* fix windows stuff
* final fix
* another win fix
* add
* let's add the new fix later
* more
* fi
* parse
* win clippy
* win no std
* safety
* fix
* DEFAULT
* final fix
* libafl_libfuzzer
* comments
* fix
* fix fuzzres
* fixxxxx
* fixxxxx
* last fix
* change name
* add
* rdm
* CHATGPT
* CHATDUMB
* different action
* no
* fix
* ci
* ci
* ci
* fuck
* dir
* checkout?
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* ci
* don't use shit
* ci
* ci
* ci
* add
* ci
* wip
* make type name more clear
* last
* add
* more fix
* chg
* fmt
* save changes
* fix_handler
* cfg
* win
* fix
* toml
* f
* more
* fix all the stuff
* fix
* revert fuzzers/fuzzbench to origin/main
* check
* clippy fmt fixing all the stuff
* restore Cargo.toml
* a
* ci
* ci
* a
* a
* workging?
* work
* ?
* why it worksgit add -u
* ci
* ci
* TMATE
* ci
* ci
* ci
* remove tmate
* less
* fuck; let's try with introspection first
* fucking macro
* another windows shit
* stop it
* i'm harassed by how shit windows is
* fixing
* ci
* ziopera
* fix from main
* ci
* ci
* switch and instruction pass copy paste
* FMT
* add cb
* put things in the functions
* fi
* working
* oops
* options
* no 128bit int on windows
* no 128bit on windows
* oops
* unix only
* windows
* PACKED
* let's stop using it, it's ugly
* fmt
* adjust
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>