Andrea Fioraldi
00033426e7
Bump to 0.11.1 ( #1491 )
2023-08-31 15:07:31 +02:00
Rowan Hart
bca14c041b
Update from unmaintained tui-rs to ratatui ( #1488 )
2023-08-31 02:02:36 +02:00
Dominik Maier
61ad4a6ee8
bolts: Make xxh3 hashing optional with xxh3
feature flag (else use ahash
for everything) ( #1478 )
...
* Make xxh3 hashing optional (and default to ahash)
* make xxh3 default anyway
* move import
* fix no_alloc
* No ahash without alloc
* fix import
* Keep xxh3 as default for libafl as well
* no randomness for xoshiro
2023-08-29 16:22:46 +02:00
Dominik Maier
7d2c854b71
Introduce document-features feature ( #1477 )
2023-08-29 12:40:35 +02:00
Andrea Fioraldi
7dd7c1a485
Bump to 0.11.0 ( #1469 )
...
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2023-08-28 15:36:43 +02:00
Dominik Maier
9208531951
Move from intervalltree to meminterval dep ( #1456 )
...
* Move from intervalltree to meminterval dep
* fixes
2023-08-24 14:15:24 +02:00
Dominik Maier
f68fe95f09
Document features ( #1453 )
...
* Document features
* Fix doctest
* remove link
* <<<<head
* Fix doc links
2023-08-24 13:27:37 +02:00
Dominik Maier
e89e8dbaab
Remove dependencies, add doc.rs metadata ( #1450 )
...
* Remove dependency, add doc.rs metadata
* remove lazy_static
* even less lazy_static
* serial_test no default
2023-08-24 11:34:38 +02:00
Dominik Maier
2f840ef92d
Windows dependency upgrade ( #1448 )
...
* Windows dependency upgrade
* update windows
* fmt
* expect is not fun but what can you do
* fmt, clippy
2023-08-24 08:15:31 +02:00
Manish Goregaokar
8f27b14eb8
Use postcard with default-features = false ( #1446 )
2023-08-23 19:53:25 +02:00
Dominik Maier
b0179b4498
Update some deps, clippy ( #1422 )
...
* More less default
* More clippy
* updated rangemap
* Clean up depencdencies
* Undo accidental remove
* Fix
* trying to fix qemu build
* hexagon be gone
2023-08-17 17:15:03 +02:00
Dominik Maier
e0d90aa67f
More Clippy fixes ( #1415 )
...
* More Clippy fixes
* Clippy
2023-08-13 01:17:34 +02:00
Dominik Maier
dfaf06a22e
Make bolts work without alloc ( #1401 )
...
* Make bolts work without alloc
* Use core::Error where available
* unstable_feature -> nightly
* windows no_alloc
2023-08-05 01:03:40 +02:00
Dominik Maier
a0c03fccc5
Add serdeany_autoreg
feature flag to allow disabling ctor
use ( #1398 )
...
* Add feature flag to allow disabling use
* fix typo
* undo cargo.toml change
* Fix no_std
* Backticks
* rename register_at_startup to create_register
* fix
* Move Tui_monitor to default instead of std
2023-08-04 15:36:48 +02:00
Dominik Maier
e9e9c457d6
Move Bolts to libafl_bolts
( #1335 )
...
* sort memebers
* Building bolts
* fixing python, feature flags
* Cleanup bolts Cargo.toml
* Fix tests
* cleanup libafl
* removed duplicate examples
* Info text
* reenable agpl CI
* fix impl_serdeany
* new fmt
* Moved bolts
* fix some builds
* fix
* fix more fixes
* serdeany
* no_std
* Dependency cleanup
* Fix docs
* Docker
* add python bolts bindings
* no_std test fix
* merge fail
* typo fix
* add bolts dependency to fuzzers
* tiny fixes
* merge fun
* clippy
* link no longer exists
* make sure python gets rebuilt
* fix pybind
* doc fix
* remove bolts ref
* LibAFL bolts
* More info
* deprecation notice for launcher
* fix python
* cargo fmt
* fix concolic
* fix
* clippy
* fix libafl_cc
* fix tutorial, clippy
* fix concolic fuzzer
* fix push_stage_harness fuzzer
* prelude
* fix testcase post-merge
* mute clippy
2023-08-02 17:36:26 +02:00
Abc Xyz
993eb62bb8
fix(libafl): update Z3 dependency ( #1372 )
...
See https://github.com/Z3Prover/z3/issues/5586 . libafl with `cmin` feature cannot be built for Android.
2023-07-24 15:12:16 +02:00
Addison Crump
81e9a9a60f
Fix build/clippy errors and update CASR ( #1375 )
...
* fix new exciting clippy errors
* fix CASR build errors
* bump casr version
* more clippy whack-a-mole
* allow needless pass by ref mut as it is improperly marked unnecessary
2023-07-24 15:11:24 +02:00
Andrea Fioraldi
3e0e753e9f
Update typed_builder to fix no_std ( #1360 )
2023-07-11 11:31:37 +02:00
Dongjia "toka" Zhang
1ad1b7cb17
revert typed builder version ( #1357 )
2023-07-10 14:16:24 +02:00
Andrea Fioraldi
65368408dd
Algorithm to choose to serialize the observers or not ( #1227 )
...
the algorithm is balancing between observers serialization and re-execution
2023-07-10 13:42:53 +02:00
Langston Barrett
cbf0952ec7
libafl{,_qemu}: Bump num_enum to 0.6 for syn 2 support ( #1350 )
...
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-07-10 13:13:53 +02:00
Langston Barrett
3f8c5f585b
libafl{,_concolic}: Bump ctor to 0.2 for syn 2 support ( #1347 )
2023-07-10 13:12:08 +02:00
Langston Barrett
2712430f93
libafl{,_sugar}: Use typed-builder 0.15 for syn 2 support ( #1346 )
2023-07-10 13:11:52 +02:00
Dominik Maier
f858e1a247
Add TcpEventManager ( #1302 )
...
* Tcp manager, initial commit
* no tokio by default
* Allow Any broker type
* Add tcp_manager example
* fix CI
2023-06-10 06:25:25 +02:00
Dominik Maier
62b1bde7a9
Fix AnyMap for TypeIds with 128 bit ( #1311 )
...
* Fix AnyMap for TypeIds with 128 bit
* make const
* added test, removed static_assertions
2023-06-09 14:06:42 +02:00
Dongjia "toka" Zhang
fa1e3fd504
CI ( #1301 )
...
* ci
* fi
* Revert "fi"
This reverts commit ed298d71057607f019e64d58687273a01d30e260.
* Revert "ci"
This reverts commit 6b65936990143a6069abd56dcbe633ac37be2ede.
* fi
2023-06-05 16:29:51 +02:00
Dongjia "toka" Zhang
6f21cb3848
Bump to 0.10.1 ( #1280 )
...
* bmp
* remove DEBUG env var
2023-05-22 12:42:36 +02:00
Kevin Phoenix
6883c776ef
Update pyo3 crate to 0.18.3 ( #1255 )
...
Co-authored-by: Dongjia "toka" Zhang <tokazerkje@outlook.com>
2023-05-10 20:01:51 +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
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
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
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
Langston Barrett
35e5b87188
Cargo feature to avoid regex dependency ( #1102 )
...
regex is a large crate, and is only used in a few specific spots. Users should
have the ability to avoid this transitive dependency if not using the features
in question.
2023-03-03 16:00:49 +01:00
R. Elliott Childre
64a57ad3e3
Move bytecount to dev-dependencies ( #1090 )
...
It is only used in test code
2023-02-23 13:52:43 +01:00
Addison Crump
bdac876dd4
Mutator sampling probability fixes ( #1030 )
...
* fixes for standard mutations
* more mutation updates for sampling probability, tests
* slight doc fix
* clippy gripe
* clippy fixes
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
2023-02-16 17:29:57 +01:00
Fabian Freyer
53dba5f49d
Use the log facade instead of println ( #1060 )
...
* switched a couple of println / dbg statements to use log crate
* Use pyo3-log for logging in python bindings
2023-02-14 10:01:51 +01:00
R. Elliott Childre
4d5a759955
Update deps for libafl ( #1042 )
...
Reduces total number of packages from 577 to 571 on building with:
`cargo +nightly build --workspace --all-features`
* ahash 0.7 -> 0.8
* Move `AHasher::new_with_keys` to `RandomState::with_seeds` given the
recommendation from: aHash maintainer:
https://github.com/tkaitchuck/aHash/issues/132#issuecomment-1288207069
* bindgen: 0.61 -> 0.63
* c2rust-bitfields: 0.3 -> 0.17
* criterion: 0.3 -> 0.4
* crossterm: 0.25 -> 0.26
* dynasmrt: 1.2 -> 2
* goblin: 0.5.3 -> 0.6
* hashbrown: 0.12 -> 0.13
* nix: 0.25 -> 0.26
* The `addr` arg of `mmap` is now of type `Option<NonZeroUsize>`
* The `length` arg of `mmap` is now of type `NonZeroUsize`
* Requires updating implementers to update `nix` as well
* prometheus-client: 0.18.0 -> 0.19
* Do not box metrics
* Gauges (a majority of the LibAFL metrics) are now i64 types so there
is a small chance of overflow, with the u64 values that LibAFL
tracks, but unlikely to be problematic.
* Keep `exec_rate` as a floating point value
* serial_test: 0.8 -> 1
* typed-builder: 0.10.0 -> 0.12
* windows: 0.42.0 -> 0.44
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2023-02-06 12:24:42 +01:00
Andrea Fioraldi
fdf579bcd5
Bump to 0.9.0 ( #946 )
...
* bump to 0.9.0
* fix libafl_tinyinst
* fix
---------
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2023-01-31 10:42:01 +01:00
Dominik Maier
e5c220519e
LLMP Broker: timeouts for inactive clients ( #1005 )
...
* LLMP Timeouts
* Make broker timeouts optional
* fix warning
* fix warning
2023-01-25 12:03:23 +01:00
Andrea Fioraldi
7fd9ac0952
SyncFromBrokerStage to sync from a broker with a different Input type ( #997 )
...
* ConverterLlmpEventManager
* docs
* SyncFromBrokerStage
* fix
* separate InputConverter
* nautilus
* nautilus_sync
* send testcases
* upd nautilus
* meta
* fix
* clippy
* fix
* Update build_and_test.yml
* fix
* fix
* Use find_libpython
* ci
* upd qemu
2023-01-20 17:16:29 +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
Andrea Fioraldi
ec84c71eae
Corpus maps ( #947 )
...
* hashmap corpus for inmemory
* corpus_btreemap feature
* CorpusId
* queue
* MinimizerScheduler::remove
* fixes
* continue
* keys
* working corpus
* ok
* weighted left
* wip
* port weighted scheduler
* it compiles
* doc
* fix mutators
* fix queue
* fix iter
* tests
* fix
* fix
* fix
* py
* clippy
* clippy
* clippy
* cmin
* fix
* fix
* fix
* clippy
* remove Corpus::random_id
2023-01-09 14:15:07 +01:00
Andrea Fioraldi
7b0039606b
Forksrv adaptive map size and AFL++ CmpLog support ( #896 )
...
* AFL++ cmplog map
* map size opt in forkserver
* MapObserver::downsize_map and adaptive map size in forkserver
* fix fokserver_simple cmd opts
* clippy
* fuzzbench forkserver with cmplog
* delete makefile in fuzzbench forkserver
* fuzzbench_forkserver is persistent
* ForkserverExecutorBuilder::build_dynamic_map
* fix
* clippy
* fix
* fix macos
* fix compilation
* fix bugs
* fixes
Co-authored-by: Dominik Maier <domenukk@gmail.com>
Co-authored-by: Dominik Maier <dmnk@google.com>
2022-11-22 10:33:15 +01:00
Peter Whiting
18f288e2d3
Monitor to export fuzzer metrics to Prometheus server ( #875 )
...
* add custom monitor prometheus as a baseline to build functionality
* working server, set up function to update metrics in the registry
* for a test
* metrics for corpus count, objective count, executions, execution rate are intermittently updated and exposed on /metrics
* add runtime metric, clean up some comments
* IP:PORT as argument instead of hardcoded
* add client # as label attached to fuzzer metrics for filtering by client. add clients_count as a tracked metric
* added support for custom metrics added to client_stats via feedbacks, such as edges count. cleaned up code
* cargo fmt
* clean up prometheus.rs
* ran autofix and fmt scripts, and put optional dependencies behind prometheus_monitor feature
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2022-11-07 19:01:59 +01:00
Dominik Maier
28ab5e224b
Fix baby_no_std ( #846 )
...
* Fixing baby_no_std
* Fixed warnings for no_std
* Fix aarch build, clippy
* oops nyx again
* Using CString from alloc
2022-10-19 14:14:10 +02: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
Andrea Fioraldi
089bc49d55
Bump to 0.8.2 and update versions script ( #828 )
2022-10-12 14:57:08 +02:00
Dominik Maier
b7d93a4bea
Hide prelude behind feature flag ( #782 )
...
* Hide prelude behind feature flag
* make prelude default
2022-09-30 20:30:28 +02:00