AFLplusplus / LibAFL

Advanced Fuzzing Library - Slot your Fuzzer together in Rust! Scales across cores and machines. For Windows, Android, MacOS, Linux, no_std, ...
Other
1.9k stars 292 forks source link

Don't restart in deterministic stages. Don't restart where there's no restart safety. Make stage names unique #2331

Closed tokatoka closed 1 week ago

tokatoka commented 2 weeks ago

In order to make retryrestarting helper or exec counting helper work it is necessary that every created instance of stage have unique names to begin with.

tokatoka commented 2 weeks ago

Reasons for choosing the restarting helper

domenukk commented 1 week ago

At this point we could also decide to make handles always use ints instead of stings(?)

Would mean hashtable lookups get faster

tokatoka commented 1 week ago

it needs to be string as aarnav wants it to be similar to afl++ right?

domenukk commented 1 week ago

I mean we can still have the name, but hashtable lookups could be int

tokatoka commented 1 week ago

I mean we can still have the name, but hashtable lookups could be int

Maybe in a diffrent PR. but it's possible. We'd need change in trait Named for this. because we'll have name() for human-readable name, and another instance_id() to get the unique id for all the modules.

tokatoka commented 1 week ago

It fails because of network error, not my code's fault