Skip to content

Commit 514623c

Browse files
committed
misc
1 parent 8269b84 commit 514623c

8 files changed

Lines changed: 978 additions & 165 deletions

File tree

Cargo.lock

Lines changed: 960 additions & 158 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ rust-version = "1.90"
88

99
[dependencies]
1010
wat = "1.0"
11-
wasmparser = "0.243"
11+
wasmparser = "0.244"
1212
rustc-demangle = "0.1"
1313
clap = { version = "4.4", features = ["derive", "env"] }
1414
md5 = "0.8"

eval/container-runner.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,18 @@ def time_as_seconds(v: str):
109109
"libafl-libfuzzer-wasm2c",
110110
]
111111

112+
if args.fuzzer == ["wasmfuzz|pass-ablations"]:
113+
PASSES = [
114+
"baseline", "cmpcov_hamming", "cmpcov_absdist", "perffuzz_func",
115+
"perffuzz_bb", "perffuzz_edge", "perffuzz_edge_global", "func_rec_depth",
116+
"call_value_profile", "func_input_size", "memory_op_value", "memory_op_address",
117+
"path_hash_func", "path_hash_edge", "func_shortest_trace", "edge_shortest_trace",
118+
"func_longest_trace", "func_rec_depth", "call_value_profile", "func_input_size",
119+
"memory_op_value", "memory_op_address", "path_hash_func", "path_hash_edge",
120+
"func_shortest_trace", "edge_shortest_trace", "func_longest_trace",
121+
]
122+
fuzzers = [f"wasmfuzz|pass-ablation-{pass_}" for pass_ in PASSES]
123+
112124
class LibfuzzerMonitor:
113125
def __init__(self, bin_path: Path, bucket:str, target_name: str, interval_secs=30, only_new=False):
114126
self.bin_path = bin_path
84 Bytes
Binary file not shown.
346 Bytes
Binary file not shown.

harness-suite/suite-tag.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -477,9 +477,6 @@ def snapshot_summary(path):
477477
"39838838ec2d49021548f90cec60cc3d8f56b188",
478478
Tag.CRASHING,
479479
)
480-
tag_manually(
481-
"zlib-rs-end_to_end.wasm", "39838838ec2d49021548f90cec60cc3d8f56b188", Tag.CRASHING
482-
)
483480

484481
tag_manually("libzstd-rs-sys-decompress.wasm", "536f7b3017c07b9ab924af6ae1dcdb4b4ab0ef3d", Tag.CRASHING)
485482
tag_manually("libzstd-rs-sys-decompress_overlapping.wasm", "536f7b3017c07b9ab924af6ae1dcdb4b4ab0ef3d", Tag.CRASHING)

src/fuzzer/orc.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -559,7 +559,9 @@ impl Orchestrator {
559559
if self.opts.experiment == Some(Experiment::PassAblation) {
560560
let pass =
561561
std::env::var("FUZZER_PASS_ABLATION").expect("FUZZER_PASS_ABLATION must be set");
562-
opts.activate_from_str(&pass);
562+
if pass != "baseline" {
563+
opts.activate_from_str(&pass);
564+
}
563565
} else if !is_saturated && self.rng.random_ratio(8, 10) {
564566
let mut light_knobs = [
565567
&mut *cmpcov_absdist,

src/ir/parse.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ impl ModuleSpec {
117117
.parse_all(module_binary)
118118
.try_fold(Vec::new(), |mut acc, el| {
119119
if let Payload::ImportSection(imports) = el? {
120-
for import in imports {
120+
for import in imports.into_imports() {
121121
let import = import?;
122122
let name = format!("{}::{}", import.module, import.name);
123123
acc.push(name);
@@ -132,7 +132,7 @@ impl ModuleSpec {
132132
.parse_all(module_binary)
133133
.try_fold(Vec::new(), |mut acc, el| {
134134
if let Payload::ImportSection(imports) = el? {
135-
for import in imports {
135+
for import in imports.into_imports() {
136136
let import = import?;
137137
if let wasmparser::TypeRef::Func(tyidx) = import.ty {
138138
acc.push(tyidx);

0 commit comments

Comments
 (0)