Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds custom executor, major refactor of fuzzer.rs #49

Draft
wants to merge 23 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
9acb9da
Adds our own basic executor
grebnetiew Nov 28, 2024
02f5aa1
Move the update of the stats to the post_exec of executor
grebnetiew Nov 28, 2024
ab59bc0
simplify fn chain
grebnetiew Dec 3, 2024
07e4323
move harness to executor
grebnetiew Dec 3, 2024
cda7079
Move client and its accessories to the executor
grebnetiew Dec 3, 2024
1fe36b7
refactor post_exec somewhat
grebnetiew Dec 4, 2024
f02f612
more logical order for impls
grebnetiew Dec 4, 2024
852723a
small refactors
grebnetiew Dec 4, 2024
11321a3
more small refactors
grebnetiew Dec 4, 2024
19b5861
document and simplify harness interface
grebnetiew Dec 4, 2024
2e1ff5a
Move manual interrupt to executor
ThomasTNO Dec 5, 2024
06b08e5
Implement near instant stop after ctrl+c
ThomasTNO Dec 6, 2024
be32758
Align more with libAFL by discarding stop request after processing it
ThomasTNO Dec 6, 2024
3d7927f
Properly implement timeout and move to executor +formatting
ThomasTNO Dec 6, 2024
9f558a9
clean-up
ThomasTNO Dec 6, 2024
4e6b391
Move interrupt to executor
ThomasTNO Dec 6, 2024
0674a8d
move reporter
ThomasTNO Dec 6, 2024
ebd330f
chore(deps): bump the all-dependencies group across 1 directory with …
dependabot[bot] Jan 15, 2025
b17335f
Cargo clippy nightly suggestions
grebnetiew Jan 15, 2025
c8d91eb
updates SBOM
grebnetiew Jan 15, 2025
3629886
Merge branch '1dcbdependabot/cargo/all-dependencies-91f9eeee57' into …
grebnetiew Jan 15, 2025
b96704a
some import reordering
grebnetiew Jan 16, 2025
012f477
Fix --report by looping state through harness into reporting
grebnetiew Jan 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
189 changes: 72 additions & 117 deletions Cargo.lock

Large diffs are not rendered by default.

26 changes: 13 additions & 13 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -42,17 +42,17 @@ cargo-license = "0.6.1"

[dependencies]
ahash = "0.8"
anyhow = "1.0.82"
anyhow = "1.0.95"
base64 = "0.22.0"
build_html = "2.4.0"
byteorder = "1.5.0"
cesu8 = "1.1.0"
chrono = "0.4.38"
clap = { version = "4.5.4", features = ["cargo", "derive", "env"] }
cookie = "0.17.0"
cookie_store = "0.20.0"
chrono = "0.4.39"
clap = { version = "4.5.26", features = ["cargo", "derive", "env"] }
cookie = "0.18.1"
cookie_store = "0.21.1"
ctrlc = "3.4.4"
env_logger = "0.11.3"
env_logger = "0.11.6"
indexmap = { version = "2.2.6", features = ["serde"] }
indicatif = "0.17.8"
iter-read = "1.0.1"
Expand All @@ -61,30 +61,30 @@ lazy_static = "1.4.0"
lcov = "0.8"
libafl = "=0.14.1"
libafl_bolts = { version = "0.14.1", features = ["prelude"] }
log = { version = "0.4.21", features = ["serde"] }
log = { version = "0.4.25", features = ["serde"] }
num = { version = "0.4.2", default-features = false }
num-derive = "0.4.2"
num-traits = { version = "0.2", default-features = false }
once_cell = "1.19.0"
openapiv3-extended = { version = "6.0.0", features = ["v2"] }
openssl = { version = "0.10", features = ["vendored"] }
petgraph = "0.6.4"
petgraph = "0.7.1"
porter-stemmer = "0.1.2"
rand = "0.8.5"
rand_regex = "0.17.0"
regex = "1.11.1"
reqwest = { version = "0.12.4", features = ["blocking", "json"] }
reqwest_cookie_store = "0.7.0"
rusqlite = { version = "0.31.0", features = ["bundled"] }
reqwest = { version = "0.12.12", features = ["blocking", "json"] }
reqwest_cookie_store = "0.8.0"
rusqlite = { version = "0.32.1", features = ["bundled"] }
serde = { version = "1.0", default-features = false, features = [
"alloc",
"derive",
] }
serde_json = "1.0"
serde_urlencoded = "0.7.1"
serde_yaml = "0.9.34"
tempfile = "3.10.1"
unicode-truncate = "1.1.0"
tempfile = "3.15.0"
unicode-truncate = "2.0.0"
url = "2.5.0"
urlencoding = "2.1.3"
walkdir = "2.5.0"
Expand Down
65 changes: 25 additions & 40 deletions SBOM.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ anstyle-query 1.1.2
anstyle-wincon 3.0.6
licensed under "Apache-2.0 OR MIT"
by unspecified authors
anyhow 1.0.93
anyhow 1.0.95
licensed under "Apache-2.0 OR MIT"
by David Tolnay <[email protected]>
arbitrary-int 1.2.7
Expand Down Expand Up @@ -73,19 +73,19 @@ cesu8 1.1.0
cfg-if 1.0.0
licensed under "Apache-2.0 OR MIT"
by Alex Crichton <[email protected]>
chrono 0.4.38
chrono 0.4.39
licensed under "Apache-2.0 OR MIT"
by unspecified authors
clap 4.5.21
clap 4.5.26
licensed under "Apache-2.0 OR MIT"
by unspecified authors
clap_builder 4.5.21
clap_builder 4.5.26
licensed under "Apache-2.0 OR MIT"
by unspecified authors
clap_derive 4.5.18
clap_derive 4.5.24
licensed under "Apache-2.0 OR MIT"
by unspecified authors
clap_lex 0.7.3
clap_lex 0.7.4
licensed under "Apache-2.0 OR MIT"
by unspecified authors
cobs 0.2.3
Expand All @@ -106,15 +106,9 @@ const_format_proc_macros 0.2.33
const_panic 0.2.10
licensed under "Zlib"
by rodrimati1992 <[email protected]>
cookie 0.17.0
licensed under "Apache-2.0 OR MIT"
by Sergio Benitez <[email protected]>|Alex Crichton <[email protected]>
cookie 0.18.1
licensed under "Apache-2.0 OR MIT"
by Sergio Benitez <[email protected]>|Alex Crichton <[email protected]>
cookie_store 0.20.0
licensed under "Apache-2.0 OR MIT"
by Patrick Fernie <[email protected]>
cookie_store 0.21.1
licensed under "Apache-2.0 OR MIT"
by Patrick Fernie <[email protected]>
Expand Down Expand Up @@ -160,7 +154,7 @@ env_filter 0.1.2
env_logger 0.9.3
licensed under "Apache-2.0 OR MIT"
by unspecified authors
env_logger 0.11.5
env_logger 0.11.6
licensed under "Apache-2.0 OR MIT"
by unspecified authors
equivalent 1.0.1
Expand All @@ -181,7 +175,7 @@ fallible-streaming-iterator 0.1.9
fastrand 2.2.0
licensed under "Apache-2.0 OR MIT"
by Stjepan Glavina <[email protected]>
fixedbitset 0.4.2
fixedbitset 0.5.7
licensed under "Apache-2.0 OR MIT"
by bluss
fnv 1.0.7
Expand Down Expand Up @@ -301,9 +295,6 @@ icu_provider 1.5.0
icu_provider_macros 1.5.0
licensed under "Unicode-3.0"
by The ICU4X Project Developers
idna 0.3.0
licensed under "Apache-2.0 OR MIT"
by The rust-url developers
idna 1.0.3
licensed under "Apache-2.0 OR MIT"
by The rust-url developers
Expand Down Expand Up @@ -361,7 +352,7 @@ libc 0.2.167
libm 0.2.11
licensed under "Apache-2.0) OR MIT AND (MIT"
by Jorge Aparicio <[email protected]>
libsqlite3-sys 0.28.0
libsqlite3-sys 0.30.1
licensed under "MIT"
by The rusqlite developers
linux-raw-sys 0.4.14
Expand All @@ -376,7 +367,7 @@ litrs 0.4.1
lock_api 0.4.12
licensed under "Apache-2.0 OR MIT"
by Amanieu d'Antras <[email protected]>
log 0.4.22
log 0.4.25
licensed under "Apache-2.0 OR MIT"
by The Rust Project Developers
mach 0.3.2
Expand Down Expand Up @@ -469,7 +460,7 @@ parking_lot_core 0.9.10
percent-encoding 2.3.1
licensed under "Apache-2.0 OR MIT"
by The rust-url developers
petgraph 0.6.5
petgraph 0.7.1
licensed under "Apache-2.0 OR MIT"
by bluss|mitchmindtree
pin-project-lite 0.2.15
Expand Down Expand Up @@ -529,16 +520,16 @@ regex-automata 0.4.9
regex-syntax 0.8.5
licensed under "Apache-2.0 OR MIT"
by The Rust Project Developers|Andrew Gallant <[email protected]>
reqwest 0.12.9
reqwest 0.12.12
licensed under "Apache-2.0 OR MIT"
by Sean McArthur <[email protected]>
reqwest_cookie_store 0.7.0
reqwest_cookie_store 0.8.0
licensed under "Apache-2.0 OR MIT"
by Patrick Fernie <[email protected]>
ring 0.17.8
licensed under "custom license"
by Brian Smith <[email protected]>
rusqlite 0.31.0
rusqlite 0.32.1
licensed under "MIT"
by The rusqlite developers
rustc-demangle 0.1.24
Expand Down Expand Up @@ -586,13 +577,13 @@ security-framework 2.11.1
security-framework-sys 2.12.1
licensed under "Apache-2.0 OR MIT"
by Steven Fackler <[email protected]>|Kornel <[email protected]>
serde 1.0.215
serde 1.0.217
licensed under "Apache-2.0 OR MIT"
by Erick Tryzelaar <[email protected]>|David Tolnay <[email protected]>
serde_derive 1.0.215
serde_derive 1.0.217
licensed under "Apache-2.0 OR MIT"
by Erick Tryzelaar <[email protected]>|David Tolnay <[email protected]>
serde_json 1.0.133
serde_json 1.0.135
licensed under "Apache-2.0 OR MIT"
by Erick Tryzelaar <[email protected]>|David Tolnay <[email protected]>
serde_urlencoded 0.7.1
Expand Down Expand Up @@ -646,7 +637,7 @@ system-configuration 0.6.1
system-configuration-sys 0.6.0
licensed under "Apache-2.0 OR MIT"
by Mullvad VPN
tempfile 3.14.0
tempfile 3.15.0
licensed under "Apache-2.0 OR MIT"
by Steven Allen <[email protected]>|The Rust Project Developers|Ashley Mannix <[email protected]>|Jason White <[email protected]>
thiserror 1.0.69
Expand All @@ -667,12 +658,6 @@ time-macros 0.2.18
tinystr 0.7.6
licensed under "Unicode-3.0"
by The ICU4X Project Developers
tinyvec 1.8.0
licensed under "Apache-2.0 OR MIT OR Zlib"
by Lokathor <[email protected]>
tinyvec_macros 0.1.1
licensed under "Apache-2.0 OR MIT OR Zlib"
by Soveu <[email protected]>
tokio 1.41.1
licensed under "MIT"
by Tokio Contributors <[email protected]>
Expand All @@ -685,6 +670,12 @@ tokio-rustls 0.26.0
tokio-util 0.7.12
licensed under "MIT"
by Tokio Contributors <[email protected]>
tower 0.5.2
licensed under "MIT"
by Tower Maintainers <[email protected]>
tower-layer 0.3.3
licensed under "MIT"
by Tower Maintainers <[email protected]>
tower-service 0.3.3
licensed under "MIT"
by Tower Maintainers <[email protected]>
Expand Down Expand Up @@ -718,19 +709,13 @@ typewit_proc_macros 1.8.1
uds 0.4.2
licensed under "Apache-2.0 OR MIT"
by Torbjørn Birch Moltu <[email protected]>
unicode-bidi 0.3.17
licensed under "Apache-2.0 OR MIT"
by The Servo Project Developers
unicode-ident 1.0.14
licensed under "(MIT OR Apache-2.0) AND Unicode-3.0"
by David Tolnay <[email protected]>
unicode-normalization 0.1.24
licensed under "Apache-2.0 OR MIT"
by kwantam <[email protected]>|Manish Goregaokar <[email protected]>
unicode-segmentation 1.12.0
licensed under "Apache-2.0 OR MIT"
by kwantam <[email protected]>|Manish Goregaokar <[email protected]>
unicode-truncate 1.1.0
unicode-truncate 2.0.0
licensed under "Apache-2.0 OR MIT"
by Aetf <[email protected]>
unicode-width 0.1.14
Expand Down
2 changes: 1 addition & 1 deletion src/coverage_clients/read_utilities.rs
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ pub fn read_var_int(readable: &mut dyn Read) -> Result<u32> {
return Ok(b as u32);
}
let nxt = read_var_int(readable)?;
Ok((b & 0x7f) as u32 | nxt << 7)
Ok((b & 0x7f) as u32 | (nxt << 7))
}

/// Reads a byte vector, preceded by a length given as little-endian u32.
Expand Down
Loading
Loading