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
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
R. Elliott Childre
5d76707ede
Bump deps and fix Clippy warns in example fuzzers ( #1043 )
...
* Mostly addressing changing the `uninlined_format_args` lint which was
changed to warn-by-default in rust clippy 1.67
* Bump dependencies:
bindgen: 0.61 -> 0.63
cc: 1.0 -> 1.0.42 (Exclue versions w/incompat rayon dependency)
clap: 3.x -> 4.0
rangemap: 0.1 -> 1
xz -> xz2: move to updated version
* Add fallthrough default return to `LLVMFuzzerTestOneInput` in
**/fuzz.c to prevent Clang's -Wreturn-type
* libafl_atheris: Improve POSIX compatibility and reduce warnings
* Check for .dylib and .so libraries
* `source` -> `.` for POSIX shells
* install wheel into the venv to support newer Python packaging
standards
* `LDPRELOAD` -> `LD_PRELOAD`
2023-02-05 21:53:45 +01:00
Andrea Fioraldi
eaf5ff9de0
Restart loading initial inputs even after a crash/timeout ( #1040 )
...
* Track initial inputs loading
* libfuzzer libpng
* fuzzbench
* fix no_std
* fix no_std
* clippy
* fuzzers
2023-02-03 11:56:47 +01:00
Dominik Maier
97e88af0c5
OnDiskCorpus: Write metadata by default, metadata gzip compression ( #995 )
...
* Write metadata by default
* fix fuzzers
* Cleanup, gzip feature
* Fix casing for ondisk corpus
* fix fmt, clippy
* clippy
* clippy for gdiplus fuzzer
* fmt
2023-01-13 01:07:36 +01:00
Dominik Maier
75f12bd0eb
Remodelling Observers/Examples that rely on UB, API cleanups ( #950 )
...
* Tackling UB
* PtrMut -> MutPtr, moved mapobservers to non-UB
* QEMU fixes
* test fixes
* qemu
* Change all interfaces, fix all fuzzers
* fixes
* fix more fixes
* fmt
* fix qemu sugar
* fix some qemus
* atheris
* fmt
* more fmt
* most fmt
* more fix
* nyx fyx
* fix qemu
* clippy, fixes
* more fixes
* no unfix, only fix
* fix
* fix
* more clippy
* fixes
* ListObserver
* fmt, clippy
* fix qemu on arm
* update zlib target
* fix?
* fix
* added migration guide
* ignore doc
* fix symcc
* fix new win fuzzer
* Fixes, rename PTR_SIZE to PTR_NUM
* Try fix linking on win
* Trying to fix win linking
* more cov
* trying to fix win some more
* trying to fix mac
* trying to fix mac
* Fix tests
* Fix tests
* trying to fix win
* more mac
* giving up for windows
* fmt
* python3
* mac?
* undo windows tests
2022-12-24 14:20:44 +01:00
Dominik Maier
e8b3d33bf4
Update dependencies, removed unused deps, CI fixes ( #839 )
...
* update clap, remove unused deps
* update grammartek
* update pyo3
* update pyo3
* undid clap update
* not changing nyx
* updated deps
* Update more deps, fixes
* not needed clippy
* fix windows
* try to enable deprecated pyproto for pyo3
* unused
* moving some things to clap4 after all
* initial move to clap 4
* fix clap
* more clap4, removed accidental file
* fixes, fmt
* fix
* all fix no play
* fix
2022-10-18 20:36:43 +02:00
syheliel
2504b6dae3
Add rustfmt.toml
( #722 )
...
* add `rustfmt.toml`
* format fix
Co-authored-by: syheliel <syheliel@gmail.com>
2022-08-12 02:28:32 +02:00
Dominik Maier
3a5118fc02
Moved core_affinity to bolts ( #655 )
...
* moved core_affinity to bolts crate
* clippy
* fixes
* ubuntu
* ubuntu++
* moved core_affinity to os
* fixed more imports
* fixed imports
* fixed test
* moved core_affinity out of os
* added affinity
* moved to windows crate
* fmt
* some tiny fixes
* more win
* refactoring
* win?
* win?
* clp
* upd
* more
* copy & paste & fix
* clp
* try
* fix
* more
* fix
Co-authored-by: tokatoka <tokazerkje@outlook.com>
2022-05-30 10:02:46 +02:00
Andrea Fioraldi
da537aae83
FeedbackState as metadata ( #627 )
...
* SerdeAny MapFeedbackState
* Fix macro syntax
* alloc
* fix
* Metadata calibrate and map feedback
* metadata feedback states
* compile
* fmt
* Register common generic types
* tests
* sugar
* no_std
* fix book
* alloc
* fix fuzzers
* fix
* fmt
* disable python bindings for libafl
* clippy
* fmt
* fixes
* fmt
* fix
* fix
* fix
* fix
* fix
* release autofix
* fix
* fix
* fix
* fmt
* fix
* fix
* name
* fix
Co-authored-by: Dominik Maier <dmnk@google.com>
2022-05-24 16:05:22 +02:00
Andrea Fioraldi
09cf136c63
Fix CI ( #562 )
...
* fix libfuzzer_libpng_ctx
* fix
* fix
2022-03-04 15:51:54 +01:00
Andrea Fioraldi
a56f4af7da
CorpusScheduler -> Scheduler and move them to the schedulers folder ( #560 )
...
* CorpusScheduler -> Scheduler
* fix book
* update fuzzers
* fix tests
* fix sugar
* fix
* fix tutorial
* fix tutorial
* fmt
* fix
* fmt
* fmt
2022-03-03 14:27:37 +01:00
Chaofan Shou
df84d39242
Add function call level granularity for coverage accounting ( #552 )
...
* Add func call level granularity for coverage accounting
* code linting
2022-02-24 10:16:12 +01:00
Dominik Maier
6810e6085b
Builder for CommandExecutor & Tokens Refactoring ( #508 )
...
* builder for CommandExecutor
* tokens api cleanup, clippy
* fix doctest
* cleanup
* added testcase, remodelled
* command executor builder fix
* fix fuzzer(?)
* implemented From for configurator
* nits
* clippy
* unused
* autotokens
* cleanup
* nits
* Err instead of empty tokens
* fix tokens fn
* fix err
* more error fixing
* tokens remodelling
* typo
* recoverable fail on missing autotokens
* clippy, nostd
* asslice, into_iter, etc. for tokens
* adapt fuzzers
* iter
* fixes, clippy
* fix
* more clippy
* no_std
* more fix
* fixed typo
* cmd_executor builds again
* bring back ASAN stuff to Command Executor
* forkserver speedup
* no need to static
* back to earlier
2022-02-01 10:10:47 +01:00
Dominik Maier
77e5965e97
Add AsSlice, AsMutSlice traits, refactor MapObservers to be iterable, and have associated types ( #477 )
...
* from warning
* fix latest clippy
* clippy fixes++
* renamed shmem parameters
* renamed map to shmem
* make forkserver executor work for any (non-system) shmem
* Mem -> ShMem
* rework windows
* fix nit
* fix symbolic
* refacctor map observers
* iterator for map observers
* removed unused ownedptr, added asslice trait to most functions
* make map entry type an associated type
* fix fuzzers
* fix docs
* typo fix
* fix windows, add try_from_slice to shmid
* missing import
* fix fuzzbench
* cleanup
* fmt
* more asslice
* fmt
* added doc link about token-level fuzzing
* cods
2022-01-19 00:02:33 +01:00
Dominik Maier
2dd88998bd
Clippy fixes for latest toolchain ( #471 )
...
* from warning
* fix latest clippy
* clippy fixes++
* more nits
2022-01-17 11:02:42 +01:00
Dominik Maier
30eb1508de
Add OwnedSlice::RefRaw to keep track of raw pointers ( #448 )
...
* add OwnedSlice::RefRaw to keep track of raw pointers
* clippy
* fmt
* new from ownedref
* clippy
* OwnedSliceInner
* fix,From
* as_slice()
* fmt
* fix doc
* OwnedSliceMut
* fixes
* clippy
* fix
* ownedmut -> owned
* to owned
* to_owned -> clone
* removed comment
Co-authored-by: tokatoka <tokazerkje@outlook.com>
2022-01-05 01:15:23 +01:00
Dominik Maier
6d9763c51f
Move to clap 3.0 ( #447 )
...
* move to clap 3.0
* fix cargo.toml
* update symcc to use clap3
2022-01-04 23:53:12 +01:00
Dongjia Zhang
b537539b54
Use MiMalloc for in-process fuzzers ( #439 )
...
* MiMalloc
* docu
* other fuzzers
* mention asan
2021-12-30 16:33:23 +01:00
Dominik Maier
217a7dee1d
Use Structopt instead of yaml for example fuzzers, introduce Cores API ( #420 )
...
* reworked generic_inmemory to structopt
* moved core parsing to a struct
* added Cores
* added structopt to libpng_ctx
* improved libafl, added structopt to libpng launcher
* fix deexit ub
* move more to structopt
* improve llvm-config detection
* move construct_automata to structopt
* clippy, fixes, ...
* no_std
* clippy
* frida core parsing
* fixed no-fork cores
* updated clap
* added missing import
* missing borrow
* reworked frida to structopt
* fixed build
* using Cores api for atheris
Co-authored-by: Dominik Maier <d.maier@avm.de>
2021-12-15 03:58:35 +01:00
Andrea Fioraldi
2fb1c3520a
More LLVM passes from AFL++ ( #394 )
...
* afl coverage pass
* working ctx coverage
* MAYBE_THREAD_LOCAL
* doh
* fix for msvc
* ci
* clippy
* atheris
* thread_local
2021-12-01 13:27:39 +01:00