* Start on qemu_tmin
* WIP
* qemu_tmin working for single testcase.
Also some comment improvements.
* Add env_logger to baby_fuzzer
* Remove old reference.
* Added comment doc for qemu_tmin.
* Slight reorder for parallelisation
* Finished single-thread qemu_tmin
* Finishing touches to single thread version.
* A pre_commit.sh change I didn't notice.
* Duplicate to attempt multi-threaded version
* Fix taplo whine.
Mark "fork" mode as broken.
* Launcher for parallelisation implemented, but for one core.
* Running in parallel. Now need tidy up.
* Parallel version complete.
* Add comment
* Merged single-core/multi-core qemu_tmin into one crate
* Removed forkexecutor mode.
* Precommit fixes
* Add qemu_tmin to build_and_test.yml
* Clippy fixes
* Change tmin test cores to 0.
* Introduce HasAflStyleTargetArguments and restore parse_afl_cmdline for CommandExecutor
* clippy
* Fix imports
* Move envs to the shared trait
* Move to a standalone file
* Format
* Gate via std and unix
* Fix
* clippy
* move InputLocation to afl_args
* clippy
* Fix
* fmt
* Fix more
* Shall last missing
* Rename to AflTargetArgs
* Fmt
* move AflTargetArgs to libafl_bolts and adapt CMainArgsBuilder to use it
* use_stdin is no longer needed
* leaveout
* Fix again
* Renaming
* Leave out lib.rs
* Leave out fmt
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
* move to just
* fuzzbench
* shell check
* version
* rme
* fixer
* fixing
* libpng friends
* pwd
* ps
* ps
* no fail fast.. for now
* windows
* l
* no powershell
* a
* fk
* fixer
* a
* Revert "fixer"
This reverts commit 76ae72d68686ead01ef914b658c5d8dac5aaee32.
* plzplz
* aaaa
* aa
* aa
* use absolute path, use LIBAFL_CC and LIBAFL_CXX
* why tabs????
* this job is not fun
* aa
* tmate debug
* disable cacheing
* del
* deldelg
* rename
* aaaa
* lol
* aaa
* lol
* lol
* 2nd tmate ...
* a
* lol
* lll
* shell ck
* please i'm about to cry
---------
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Romain Malmain <romain.malmain@pm.me>
* move to just
* fuzzbench
* shell check
* version
* rme
* fixer
* fixing
* libpng friends
* pwd
* ps
* ps
* no fail fast.. for now
* windows
* l
* no powershell
* a
* fk
* fixer
* a
* Revert "fixer"
This reverts commit 76ae72d68686ead01ef914b658c5d8dac5aaee32.
* plzplz
---------
Co-authored-by: Your Name <you@example.com>
* testcase name logic
* implement locking
* implement logic for removing testcase
* minor modifications
* minor modifications to remove_testcase()
* extract generate_name() from trait Input (broken)
* Revert "extract generate_name() from trait Input (broken)"
This reverts commit 9e217be2810a8c33970846cdd380f542975cc05b.
* fix ci errors
* remove CorpusId from generate_name() calls
* toml formatting
* write from file instead of fs
* fmt and clippy
* fix windows clippy
* handle renaming of testcase
* fix failing cmplog test
* overwrite lockfile on remove testcase
* format
* bring back corpus id in generate_name
* missed windows executors hook
* fix failing tests
* some more errors
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
* Completely remove Input as an associated type in multiple traits
* Unify usage of Input as generic instead
* Remove many unused bounds, in particular HasCorpus
* fix multiple generic ordering
* update and fix CONTRIBUTING.md
* update MIGRATION
* use the same generic input type for new / with_max_iterations to make typing easier in most cases.
* Restore libafl_libfuzzer test in CI
* the first step of the last step
* wip
* 99% done
* 99.9% done
* 99.99
* Hello from windows
* aaa
* 99.999
* aa
* 1
* 2
* 3
* 4
* 5
* plz
* plzplzplz
---------
Co-authored-by: Your Name <you@example.com>
* first step
* wip
* lol
* making progress, slowly
* add
* a bit more
* progress
* 80%done
* 90% done
* done from linux
* Hello from windows
* 1
* 2
* 3
* 4
* 5
* 6
* 7
* Hello from windows
* 9
* 10
* 11
* 11
* 12
* 13
* aa
* fixer
* a
* oops
---------
Co-authored-by: Your Name <you@example.com>
* fixing empty multipart name
* fixing clippy
* New rules for the contributing (#2752)
* Rules
* more
* aa
* Improve Flexibility of DumpToDiskStage (#2753)
* fixing empty multipart name
* fixing clippy
* improve flexibility of DumpToDiskStage
* adding note to MIGRATION.md
* Update bindgen requirement from 0.70.1 to 0.71.1 (#2756)
Updates the requirements on [bindgen](https://github.com/rust-lang/rust-bindgen) to permit the latest version.
- [Release notes](https://github.com/rust-lang/rust-bindgen/releases)
- [Changelog](https://github.com/rust-lang/rust-bindgen/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/rust-bindgen/compare/v0.70.1...v0.71.1)
---
updated-dependencies:
- dependency-name: bindgen
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* No Use* from stages (#2745)
* no from stage
* fixer
* doc fix
* how was this working????
* more fixes
* delete more
* rq
* cargo-fuzz
* m
* aa
* Update CONTRIBUTING.md MIGRATION.md (#2762)
* No Uses* from `fuzzer` (#2761)
* go
* fixing stuf
* hello from windows
* more
* lolg
* lolf
* fix
* a
---------
Co-authored-by: Your Name <you@example.com>
* Remove useless cfgs (#2764)
* Link libresolv on all Apple OSs (#2767)
* Somewhat ugly CI fix... (#2768)
* Maybe fix CI
* does this help?
* Very dirty 'fix'
* Add Input Types and Mutators for Numeric Types (#2760)
* fixing empty multipart name
* fixing clippy
* New rules for the contributing (#2752)
* Rules
* more
* aa
* Improve Flexibility of DumpToDiskStage (#2753)
* fixing empty multipart name
* fixing clippy
* improve flexibility of DumpToDiskStage
* adding note to MIGRATION.md
* Introduce WrappingMutator
* introducing mutators for int types
* fixing no_std
* random fixes
* Add hash derivation for WrappingInput
* Revert fixes that broke things
* Derive Default on WrappingInput
* Add unit tests
* Fixes according to code review
* introduce mappable ValueInputs
* remove unnecessary comments
* Elide more lifetimes
* remove dead code
* simplify hashing
* improve docs
* improve randomization
* rename method to align with standard library
* add typedefs for int types for ValueMutRefInput
* rename test
* add safety notice to trait function
* improve randomize performance for i128/u128
* rename macro
* improve comment
* actually check return values in test
* make 128 bit int randomize even more efficient
* shifting signed values
---------
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
* Add HashMutator
* Fix docs
* Fix docs again
* introducing bloom filter
* fix tests
* Implement evaluate_filtered
* Add macros to libafl_bolts tuples for mapping and merging types (#2788)
* Add macros
* Use the macros for havoc_mutations
* Fix docs
* improve merge_tuple_list_type to accept n items
* libafl_cc: Automatically find llvm_ar path (#2790)
* imemory_ondisk: Don't fail write under any circumstances if locking is disabled (#2791)
* imemory_ondisk: Don't fail write under any circumstances if locking is disabled
* fmt
* inmemory_ondisk: Add a log message on failure
* clippy'
* micro optimization
* Revert changes to global Cargo.toml
* Hide std-dependent dependency behind std feature
* Fix example fuzzer
* Rename constructor for filtered fuzzer
* Reorder generics alphabetically
* Rename HashingMutator, add note to MutationResult about filtered fuzzers
* Improve StdFuzzer according to feedback
* rename hashing mutator
* Fix english in comment
* Cleanup of old PRs that break the CI
* Fix more CI bugs
* Code cleanup
* Remove unnecessary comments
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Sharad Khanna <sharad@mineo333.dev>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
Co-authored-by: s1341 <s1341@users.noreply.github.com>
* Use expect instead of allow, remove unnecessary allows
* Remove more whitelist lint warnings
* tranisitioning more subprojects
* Re-add some necessary allows
* Re-add more required allows
* Some more windows clippy fixes
* Re-add more whitelist items for expect
* More clippy whitelist fun
* Reset changes to generated files
* Reset generated files to correct version
* Move libafl_concolic to expect instead of allow
* Move libafl_frida to expect from allow
* Move libafl_libfuzzer to expect from allow
* Remove more whitelist items for macOS
* Fix unknown clippy allow
* Remove more unnecessary allow statements
* moving fuzzers
* Remove mistakenly added subdirs
* fixing imports
* Remove more unnecessary whitelisted lints
* Fix test for /home/ubuntu/LibAFL/fuzzers/inprocess/libfuzzer_libpng_accounting
* More clippy improvements for libafl_qemu
* fmt
* Some pedantic options
* Fix more stuff
* Remove Little-CMS again
* Add note to static_mut_refs
* Reset the changed testing routine since it is unnecessary
* Replace addr_of with &raw across the codebase
* fix fixes
* more fix
* undo clang fmt?
* oops
* fix?
* allocator fix
* more fix
* more more
* more docs
* more fix
* mas mas mas
* hm
* more
* fix Frida
* needed
* more error
* qemu
* compile-time edge module compilation trick
* clippy
* possible since rust 1.79
* split edge module in submodules
* Update frida to 0.14.0 (#2596)
* update frida crate to the latest version
* adapt libafl_frida to the latest version of frida
* tracers and generators private modules
* do not use star export.
* same for drcov
* forgot a file...
* first draft of generic-based edge module for ConstantLengthMapObserver.
* integration of OwnedSizedSlice.
replaced OwnedSlice in ConstMapObserver by the new OwnedSizedSlice.
* fix serde stuff
* no std
* import
* fixed qemu_cmin with new constant map abstraction.
* fix const map
* fix clippy from another pr...
* fix non-null usage
* fix ci?
* new feature stuff
* fixes
* minor fixes
* fmt
* non null
* im stupid
* fmt
* fix fuzzer
* fix fuzzers
* sized slice
* fuzzer fixes
* ptr::NonNull -> NonNull
* shorter trait length
* fmt
* feat(libafl_core): make executors and feedbacks more cleanly usable outside of LibAFLs Fuzzer loop
* cargo +nightly fmt
* updated type constraints
* reformatted and final type constraint fixes
* made unicode extraction stage useful separately
* fix libafl_cc error message
* fix state type constraint to be constrained on the method
* removed unnecessary observer constraint
* renamed unused variables
* fix unnecessary error wrapping in helper functions
* converted unicode conversion stage into associated function and fixed nautilus changes
* more update
* Remove extra I
* more fmt
* bounds?
* less bounds
* more less bounds
* different trait bounds again
* more less generics
* fix unicode
* fix list
* remove unneeded bound
---------
Co-authored-by: Lukas Dresel <Lukas-Dresel@users.noreply.github.com>
Co-authored-by: Toka <tokazerkje@outlook.com>
* nonzero_lit
* nonzero
* std instead of core
* a
* l
* test
* import
* api
* api
* aaaaa
* apiapi
* api
* api
* api
* mm
* api
* non zero
* FMT
* pls
* nnnaaasdfadsfafdsa
* pls
* MM
* fix
* a
* sat add
* aa
* mistake
* unreachable
* no generic
* api change
* a
* versioning unification: use x.y.z format everywhere
* do not compile low-level logs (< info level) by default in fuzzers
* update dependencies to the latest versions
* add members to workspace.
* use workspace for common dependencies
* add vscode native support
---------
Co-authored-by: Toka <tokazerkje@outlook.com>
* Rand below should take a NonZero parameter
* More
* more
* More
* fix build
* bit of clippy
* more clippy
* more clippy
* More clippy
* More more
* more nonzero
* fix multipart
* Cleanup, more unsafe
* fix
* fix unicode
* clippy, fmt
* more
* More safer and more better
* MaxStackPow
* fix merge fails
* make random_slize_size faster
* fix
* more
* fix