Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

vanhauser-thc
Copy link
Member

No description provided.

vanhauser-thc and others added 29 commits March 12, 2024 15:30
support parsing of llvm rc minor version
- Introduce the -l option to set min block deletion length using
powers of 2 (e.g., 1, 2, 4, 8, 16, ...).
- This enables a trade-off between minimization thoroughness and speed.
- Adjusting del_len_limit allows for faster processing, as doubling it
roughly halves the minimization time.
Add -l option for adjustable block deletion performance in tmin
The method of getting the newest version of Frida is invalid. Need update.
bugfix: update_firda_version can't get the newest version of frida
The recently added config option 'enable-plugins' breaks static builds of qemuafl. Override the enable for static builds.
Fix build_qemu_support.sh static builds
bugfix: override directive and recipe echoing in GNUmakefile
When the computer is suspended during a fuzzing session,
the time spent in suspended state is counted as a "run time"
on a statistics screen.

The time returned by `gettimeofday(2)` is affected by discontinuous
jumps in the system time. It is better using `clock_gettime(2)`.

The patch replace `gettimeofday` with `clock_gettime` [1].
`clock_gettime` uses a CLOCK_MONOTONIC_COARSE clock type,
it is faster than CLOCK_MONOTONIC, but still has resolution (~1ms)
that is adequate for our purposes. However, CLOCK_MONOTONIC_COARSE
is a Linux-specific clock variant, so on macOS it is replaced
with CLOCK_MONOTONIC, and with CLOCK_MONOTONIC_FAST on FreeBSD [2].

Closes #1241

1. https://pubs.opengroup.org/onlinepubs/9699919799/functions/clock_gettime.html
2. https://man.freebsd.org/cgi/man.cgi?query=clock_gettime
src: fix calculation of fuzzing time in statistics
Updated unicorn_dumper_gdb.py to support new gef api and replaced deprecated functions . The functions that are not in the new gef api are read_memory(), and current_arch(). Also replaced some deprecated functions with the updated versions of them.

    replaced read_memory() with GefMemoryManager.read() as read_memory(). read_memory() is in legacy-gef-api
    replaced current_arch with gef.arch.registers
    replaced get_process_maps() with gef.memory.maps (just depreacated)
    replaced get_register() with gef.arch.register()
This currently does not affect statsd nor the UI. Only the fuzzer_stats file is updated
Adds stats tracking for time spend actually mutating & running test i…
Clarify that oss-fuzz doesn't randomize builds anymore
Add optional handling of Nyx InvalidWriteToPayload event
@vanhauser-thc vanhauser-thc merged commit 4b63eb2 into release Apr 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.