* Allow setting the max iterations
* Rename API
* Fix baby_fuzzer_grimoire
* Relax bound
* Also add a new API for transforming
* Revert back grimoire fix
* Revert bound relax
* Make some functions const
* fix isprint
* more const
* move integer_sqrt to bolts, use binary search, use u128 to handle extreme values
* Technically correct
* clippy
* u64 algo
* More test
* cumulative_distribution to in_place
* move calculate_cumulative_distribution_in_place to bolts
* clippy
* Move math stuff to bolts::math
* actually add math
* math?
* For some reason this fixes things, dunno
* fix builds?
* does that help?
* clippy ignores
* more clean clippy
* more cfg_attr
* qemu snapshot little update proposal.
* reeatablishing the TODO since the change does not do it at all
but getting unrelated constant mask unrelated to mappings protection.
---------
Co-authored-by: Andrea Fioraldi <andreafioraldi@gmail.com>
This commit fixes some issues regarding the `TuneableScheduledMutator`,
which had an edge case for drawing probabilities.
The user is supposed to provide a vector with probabilities that have to
add up to 1.0, but due to floating-point errors, the number can be
sligthly off.
If the sum ends up being slow, there's a chance that we draw a number
that is bigger than it (for example, 1.0), and that would not be present
in the cumulative distribution vectors (either for iterations or
mutations).
The issue is fixed by setting the last value of the cumulative
distribution to 1.0.
This commits adds some validations in the function that calculates the
cumulative distribution function, making sure that the numbers add up to
1, and that they are all between 0 and 1.
The API is now changed so the functions can now return an error instead
of crashing.
The commit also adds some tests, and fixes the `reset()` function.
This commit rewrites the centralized manager to use a secondary broker, as p2p communication is unreliable during frequent restarts. A centralized launcher is introduced too.
* feat: support specify thread id for frida stalker
* fix: thread_id type
* fix: use official repo for frida-gum
* Merged
* Added back missing bolts
---------
Co-authored-by: Dominik Maier <domenukk@gmail.com>
* More less default
* More clippy
* updated rangemap
* Clean up depencdencies
* Undo accidental remove
* Fix
* trying to fix qemu build
* hexagon be gone
despite being present in the headers, getcontext is not implemented in
musl libc, most likely due to the fact it s a deprecated interface.
The only way around is having the third party libucontext apk package
installed.