3198 Commits

Author SHA1 Message Date
Dongjia "toka" Zhang
336d7fcc4f
Refactor events/llmp.rs (#2234)
* push

* refactor

* FMT

* fixes

* aaaaaa

* done

* aa

* docdoc

* rename

* no std

* nautilus

* feature fix

* aa

---------

Co-authored-by: Your Name <you@example.com>
2024-05-22 12:58:44 +02:00
cube0x8
47d15ade81
Instrumentation filters remove generic bound (#2053)
* Removed S: UsesInput bound for HasInstrumentationFilter

* cargo fmt

* Removed S generic leftovers

* cargo fmt

* fix systemmode

* unused imports

* more verbose error.

* clippy

* debug test

* still debugging

* debug ci

* sudo

* debug

* debug

* debug

* add g++

* build-essential

* more deps...

* restore to sane state.

* remove useless comment.

---------

Co-authored-by: Romain Malmain <romain.malmain@pm.me>
2024-05-22 12:58:10 +02:00
Dominik Maier
684b31279e
Add BytesSubInput to mutate sub-parts of a bytes-backed input (#2220)
* Add BytesSubMutator that allows us to mutate sub-parts of a bytes-backed input

* no_std

* fix string mutator

* make build

* Fix clippy on macOS

* Docs

* More docs

* Better docs

* --amend

* Renamed bsi to sub_input. Too much BSI

* More more

* balance backticks

* Make splicing usable with sub_input (not that it makes sense)

* More annotations

* more input annotations?

* Implement HasMutatorBytes for &mut Vec

* clippy

* Use a wrapper type instead

* Add wrapper type for Vec as well

* Remove the duplicate BytesInput... lol
2024-05-22 01:50:07 +02:00
5342812cf7 build fixes 2024-05-21 18:50:55 +02:00
71ff7487e6 add feature dependencies 2024-05-21 18:48:46 +02:00
54fa7cce62 add edge filter 2024-05-21 18:47:12 +02:00
b9b6e1fc12 fix snakefile 2024-05-21 18:33:15 +02:00
e9c27b3065 fixes timing, scheduler 2024-05-21 18:24:23 +02:00
2886aafb65 remove dead code, restructure features 2024-05-21 16:06:53 +02:00
Dongjia "toka" Zhang
19ef29ed60
New forkserver (#2213)
* step 1

* done

* cmplog?

* targets

* check if working and add env_logger

* typo
2024-05-21 15:20:28 +02:00
Valentin Huber
b7e10ca7af
Making StdOutObserver and StdErrObserver implement Observer (#2236)
* making stdout and stderr observers implement observer

* fixing imports
2024-05-21 13:19:02 +02:00
3ed8ccd0c7 exclude QemuSystemStateObserver when not needed 2024-05-21 13:03:55 +02:00
7d8717ff15 remove shortcut cases and assertions from state 2024-05-21 12:59:56 +02:00
87ddf4a77d work around rare non-started abbs 2024-05-21 12:43:03 +02:00
3444fdd8ec fix interrupt shifter, isr tracer 2024-05-21 12:32:00 +02:00
f13412c175 fix interrupt shifter 2024-05-21 09:03:11 +02:00
ede6cf48a4 fix build 2024-05-21 01:57:23 +02:00
5edb6e5677 fix snakefile 2024-05-21 01:51:54 +02:00
21c97c8484 WIP: fix isr_starter 2024-05-21 00:22:50 +02:00
Dominik Maier
123f508fcc
Clean up samplig_rate, add docs (#2228)
* Clean up samplig_rate, add docs

* clippy
2024-05-20 14:24:24 +02:00
dependabot[bot]
aa47a5c5e6
Update addr2line requirement from 0.21 to 0.22 (#2230)
Updates the requirements on [addr2line](https://github.com/gimli-rs/addr2line) to permit the latest version.
- [Changelog](https://github.com/gimli-rs/addr2line/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gimli-rs/addr2line/compare/0.21.0...0.22.0)

---
updated-dependencies:
- dependency-name: addr2line
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 14:21:37 +02:00
dependabot[bot]
d6827b5aa2
Update goblin requirement from 0.7 to 0.8 (#2232)
Updates the requirements on [goblin](https://github.com/m4b/goblin) to permit the latest version.
- [Changelog](https://github.com/m4b/goblin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/m4b/goblin/commits)

---
updated-dependencies:
- dependency-name: goblin
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 14:21:25 +02:00
dependabot[bot]
767f5dffec
Update erased-serde requirement from 0.3.21 to 0.4.5 (#2233)
Updates the requirements on [erased-serde](https://github.com/dtolnay/erased-serde) to permit the latest version.
- [Release notes](https://github.com/dtolnay/erased-serde/releases)
- [Commits](https://github.com/dtolnay/erased-serde/compare/0.3.21...0.4.5)

---
updated-dependencies:
- dependency-name: erased-serde
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 14:19:22 +02:00
b9d6f41ac6 WIP: deprecate graph and use STG 2024-05-20 10:54:43 +02:00
s1341
864c2259e7
launcher: add launch_delay option (#2227)
* launcher: add launch_delay option

* Centralized too

* Use in test

* Undo

* Windows too

* Format

* Fix cfg guard
2024-05-20 10:06:33 +03:00
s1341
f324c60b02
Add testcase sampling rate (#2226)
* fuzzer: Add with_sampling_rate

* Format

* Fix clippy
2024-05-20 09:34:31 +03:00
Sharad Khanna
79f3b69fa8
Fix hook_func and implement deinit (#2180)
* Hook fix

* Implement deinit to pass tests

* Fix aarch64 errors as well as signficantly speed up startup on macos

* fmt

* Fix cmplog_rt

* Fix windows ci

* ci fix 2

* Fix clippy

* Revert hook implementation to new impl

* Add nolinkage option for hooks and fix some comments

* fmt

* Move hooking mechanism to entirely static mut

* fmt

* Fix clippy

* fix windows

* fmt

* Overall the function hook macro to ensure that the original function is correct and not the same function in a different library. Also change static muts to OnceLock
2024-05-20 07:41:44 +03:00
Dominik Maier
6a9ea73865
Confuse clippy less (#2223) 2024-05-20 04:03:23 +02:00
Dominik Maier
117741e1b1
Run Clippy on macOS (#2222)
* macos clippy

* Fix clippy on macOS
2024-05-20 02:58:42 +02:00
dependabot[bot]
cc71979826
Update hostname requirement from ^0.3 to ^0.4 (#2206)
Updates the requirements on [hostname](https://github.com/svartalf/hostname) to permit the latest version.
- [Release notes](https://github.com/svartalf/hostname/releases)
- [Changelog](https://github.com/svartalf/hostname/blob/master/CHANGELOG.md)
- [Commits](https://github.com/svartalf/hostname/compare/v0.3.0...v0.4.0)

---
updated-dependencies:
- dependency-name: hostname
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2024-05-20 02:32:36 +02:00
Dominik Maier
30f65512d8
Remove unused dependencies (#2221)
* Remove unused dependencies

* Add guard
2024-05-20 02:30:53 +02:00
Romain Malmain
2e5e2056b2
Faster fmt_all.sh (#2218)
* parallel fmt

* fix shellcheck

* fix shellcheck

* add check mode
2024-05-19 20:07:38 +02:00
Dominik Maier
31e1eee96e
Rename CurrentCorpusIdx -> CurrentCorpusId (#2216)
* Rename CurrentCorpusIdx -> CurrentCorpusId

* why ripgrep do you not find these

* ripgrep, why?
2024-05-19 18:12:45 +02:00
Dominik Maier
cf01d04151
Report 100% stability if no unstable edges are found (extends #2215) (#2217)
* Report 100% stability if no unstable edges are found

* Use metadtata

---------

Co-authored-by: sadeli413 <sadeli0x19d@gmail.com>
2024-05-19 14:41:28 +02:00
Romain Malmain
dfd3b3278e
QEMU command system refactoring (#2189)
* implemented generic command builder

* Added builder to `Emulator`.
2024-05-18 20:43:56 +02:00
cube0x8
3a087301ac
Fixed infinite loop on SyncDiskStage (#2193)
* Fixed infinite loop on SyncDiskStage

* cargo fmt

* added debug messages

* Add left to sync to metadata. Replace HashSet with Vec

* added check on state metadata to not crash in case it's None (start fuzzing without files to sync)

* fmt & clippy

---------

Co-authored-by: Dominik Maier <domenukk@gmail.com>
2024-05-18 20:25:38 +02:00
Max Ammann
6040133080
Use MultiMonitor when fuzzing in non-forking mode (#2192) 2024-05-18 20:24:41 +02:00
dependabot[bot]
8d54ee2c80
Update pyo3-build-config requirement from 0.18 to 0.21 (#2205)
Updates the requirements on [pyo3-build-config](https://github.com/pyo3/pyo3) to permit the latest version.
- [Release notes](https://github.com/pyo3/pyo3/releases)
- [Changelog](https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pyo3/pyo3/compare/v0.18.0...v0.21.2)

---
updated-dependencies:
- dependency-name: pyo3-build-config
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dominik Maier <domenukk@gmail.com>
2024-05-18 20:22:35 +02:00
Aarnav
baf07445e4
add AFL stage names for calibration, colorization, power and sync stages (#2209)
* add AFL stage names for calibration, colorization, power and sync stages

* clippy

* add missing name field in sync stage

* use consts instead of hardcoding in functions.
change set_name to with_name for PowerMutationalStage
remove irrelevant fn transforming

* make AFL++ name default for all stages
2024-05-18 14:49:38 +02:00
Dongjia "toka" Zhang
22d8e92b08
Ci fix (#2212)
* bbb

* ccc
2024-05-18 13:42:03 +02:00
Dongjia "toka" Zhang
f8f9da2a15
Trying to fix CI (#2211)
* test

* aaa

* 4.38

* 4.37
2024-05-18 00:13:11 +02:00
8f652f754c WIP: complet rework of STG 2024-05-17 15:57:44 +02:00
Dongjia "toka" Zhang
d05adf7f6e
Delete leftover println! (#2203) 2024-05-17 13:35:38 +02:00
dependabot[bot]
0777873aae
Update prometheus-client requirement from 0.21 to 0.22 (#2197)
Updates the requirements on [prometheus-client](https://github.com/prometheus/client_rust) to permit the latest version.
- [Release notes](https://github.com/prometheus/client_rust/releases)
- [Changelog](https://github.com/prometheus/client_rust/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_rust/compare/v0.21.0...v0.22.2)

---
updated-dependencies:
- dependency-name: prometheus-client
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-16 14:27:37 +02:00
Dongjia "toka" Zhang
e31658b914
Change when to setup the ctrl c handler. (#2198)
* copy

* fmt

* aa

* a

* Goodbye z3, i hope i won't build you forever

* doc

* fmt

* fix

* aa
2024-05-16 14:27:14 +02:00
dependabot[bot]
41d41f25bf
Update reqwest requirement from 0.11 to 0.12 (#2196)
Updates the requirements on [reqwest](https://github.com/seanmonstar/reqwest) to permit the latest version.
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.11.0...v0.12.4)

---
updated-dependencies:
- dependency-name: reqwest
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-16 14:11:52 +02:00
dependabot[bot]
7cf821bd82
Update toml requirement from 0.4.2 to 0.8.13 (#2195)
---
updated-dependencies:
- dependency-name: toml
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-16 14:06:53 +02:00
dependabot[bot]
b871037e70
Update cargo_toml requirement from 0.16 to 0.20 (#2194)
Updates the requirements on [cargo_toml](https://gitlab.com/lib.rs/cargo_toml) to permit the latest version.
- [Commits](https://gitlab.com/lib.rs/cargo_toml/compare/v0.16.1...v0.20.2)

---
updated-dependencies:
- dependency-name: cargo_toml
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-16 14:06:37 +02:00
Dominik Maier
34ec907456
Fix libafl_sugar docs build (#2188)
* Fix libafl_sugar docs build

* doc redoc

* fmt
2024-05-16 00:19:09 +02:00
Dongjia "toka" Zhang
c7303ace53
Static analysis pass (#2178)
* copy

* fmt

* aa

* a

* Goodbye z3, i hope i won't build you forever

* doc

* fmt
2024-05-15 16:50:20 +02:00