Skip to content
Snippets Groups Projects
  • van Hauser's avatar
    02294d36
    v3.13c release (#950) · 02294d36
    van Hauser authored
    
    * use atomic read-modify-write increment for LLVM CLASSIC
    
    * Change other LLVM modes to atomic increments
    
    * sync (#886)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * moved custom_mutator examples
    
    * unicorn speedtest makefile cleanup
    
    * fixed example location
    
    * fix qdbi
    
    * update util readme
    
    * work in progress: not working correctly yet
    
    * Frida persistent (#880)
    
    * Added x64 support for persistent mode (function call only), in-memory teest cases and complog
    
    * Review changes, fix NeverZero and code to parse the .text section of the main executable. Excluded ranges TBC
    
    * Various minor fixes and finished support for AFL_INST_LIBS
    
    * Review changes
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * fix frida mode
    
    * Integer overflow/underflow fixes in libdislocator (#889)
    
    * libdislocator: fixing integer overflow in 'max_mem' variable and setting 'max_mem' type to 'size_t'
    
    * libdislocator: fixing potential integer underflow in 'total_mem' variable due to its different values in different threads
    
    * Bumped warnings up to the max and fixed remaining issues (#890)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * frida mode - support non-pie
    
    * nits
    
    * nit
    
    * update grammar mutator
    
    * Fixes for aarch64, OSX and other minor issues (#891)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * nits
    
    * fix PCGUARD, build aflpp_driver with fPIC
    
    * Added representative fuzzbench test and test for libxml (#893)
    
    * Added representative fuzzbench test and test for libxml
    
    * Added support for building FRIDA from source with FRIDA_SOURCE=1
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * update changelog
    
    * typos
    
    * still not working
    
    * fixed potential double free in custom trim (#881)
    
    * error handling, freeing mem
    
    * frida: complog -> cmplog
    
    * fix statsd writing
    
    * let aflpp_qemu_driver_hook.so build fail gracefully
    
    * fix stdin trimming
    
    * Support for AFL_ENTRYPOINT (#898)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * remove the input file .cur_input at the end of the fuzzing, if AFL_TMPDIR is used
    
    * reverse push (#901)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * disable QEMU static pie
    
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    
    * clarify that no modifications are required.
    
    * add new test for frida_mode (please review)
    
    * typos
    
    * fix persistent mode (64-bit)
    
    * set ARCH for linux intel 32-bit for frida-gum-devkit
    
    * prepare for 32-bit support (later)
    
    * not on qemu 3 anymore
    
    * unicorn mips fixes
    
    * instrumentation further move to C++11 (#900)
    
    * unicorn fixes
    
    * first working NeverZero implementation
    
    * more unicorn fixes
    
    * Fix memory errors when trim causes testcase growth (#881) (#903)
    
    * Revert "fixed potential double free in custom trim (#881)"
    
    This reverts commit e9d2f723.
    
    * Revert "fix custom trim for increasing data"
    
    This reverts commit 86a8ef16.
    
    * Fix memory errors when trim causes testcase growth
    
    Modify trim_case_custom to avoid writing into in_buf because
    some custom mutators can cause the testcase to grow rather than
    shrink.
    
    Instead of modifying in_buf directly, we write the update out
    to the disk when trimming is complete, and then the caller is
    responsible for refreshing the in-memory buffer from the file.
    
    This is still a bit sketchy because it does need to modify q->len in
    order to notify the upper layers that something changed, and it could
    end up telling upper layer code that the q->len is *bigger* than
    the buffer (q->testcase_buf) that contains it, which is asking
    for trouble down the line somewhere...
    
    * Fix an unlikely situation
    
    Put back some `unlikely()` calls that were in
    the e9d2f723 commit that was
    reverted.
    
    * add some comments
    
    * typo
    
    * Exit on time (#904)
    
    * Variable AFL_EXIT_ON_TIME description has been added.
    Variables AFL_EXIT_ON_TIME and afl_exit_on_time has been added.
    afl->exit_on_time variable initialization has been added.
    The asignment of a value to the afl->afl_env.afl_exit_on_time variable from
    environment variables has been added.
    Code to exit on timeout if new path not found has been added.
    
    * Type of afl_exit_on_time variable has been changed.
    Variable exit_on_time has been added to the afl_state_t structure.
    
    * Command `export AFL_EXIT_WHEN_DONE=1` has been added.
    
    * Millisecond to second conversion has been added.
    Call get_cur_time() has been added.
    
    * Revert to using the saved current time value.
    
    * Useless check has been removed.
    
    * fix new path to custom-mutators
    
    * ensure crashes/README.txt exists
    
    * fix
    
    * Changes to bump FRIDA version and to clone FRIDA repo in to build directory rather than use a submodule as the FRIDA build scripts don't like it (#906)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Fix numeric overflow in cmplog implementation (#907)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * testcase fixes for unicorn
    
    * remove merge conflict artifacts
    
    * fix afl-plot
    
    * Changes to remove binaries from frida_mode (#913)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Frida cmplog fail fast (#914)
    
    * Changes to remove binaries from frida_mode
    
    * Changes to make cmplog fail fast
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * afl-plot: relative time
    
    * arch linux and mac os support for afl-system-config
    
    * typo
    
    * code-format
    
    * update documentation
    
    * github workflow for qemu
    
    * OSX-specific improvements (#912)
    
    * Fix afl-cc to work correctly by default on OSX using xcode
    
    - CLANG_ENV_VAR must be set for afl-as to work
    - Use clang mode by default if no specific compiler selected
    
    * Add OSX-specific documentation for configuring shared memory
    
    * Fixes to memory operands for complog (#916)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix a few cur_time uses
    
    * added bounds check to pivot_inputs (fixes #921)
    
    * additional safety checks for restarts
    
    * restrict afl-showmap in_file size
    
    * fix seed crash disable
    
    * add warning for afl-showmap partial read
    
    * no core dumps
    
    * AFL_PRINT_FILENAMES added
    
    * more documentation for AFL_EXIT_ON_TIME
    
    * Flushing for AFL_PRINT_FILENAMES
    
    * FASAN Support (#918)
    
    * FASAN Support
    
    * Fix handling of Address Sanitizer DSO
    
    * Changes to identification of Address Sanitizer DSO
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Support for x86 (#920)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Update frida_mode readme (#925)
    
    * libqasan: use syscalls for read and write
    
    * update readme
    
    * Minor integration tweaks (#926)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * merge
    
    * fix afl-fuzz.c frida preload
    
    * cleaned up AFL_PRINT_FILENAMES env
    
    * Changes to have persistent mode exit at the end of the loop (#928)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix llvm-dict2file
    
    * push to stable (#931) (#932)
    
    * sync (#886)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * moved custom_mutator examples
    
    * unicorn speedtest makefile cleanup
    
    * fixed example location
    
    * fix qdbi
    
    * update util readme
    
    * Frida persistent (#880)
    
    * Added x64 support for persistent mode (function call only), in-memory teest cases and complog
    
    * Review changes, fix NeverZero and code to parse the .text section of the main executable. Excluded ranges TBC
    
    * Various minor fixes and finished support for AFL_INST_LIBS
    
    * Review changes
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * fix frida mode
    
    * Integer overflow/underflow fixes in libdislocator (#889)
    
    * libdislocator: fixing integer overflow in 'max_mem' variable and setting 'max_mem' type to 'size_t'
    
    * libdislocator: fixing potential integer underflow in 'total_mem' variable due to its different values in different threads
    
    * Bumped warnings up to the max and fixed remaining issues (#890)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * frida mode - support non-pie
    
    * nits
    
    * nit
    
    * update grammar mutator
    
    * Fixes for aarch64, OSX and other minor issues (#891)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * nits
    
    * fix PCGUARD, build aflpp_driver with fPIC
    
    * Added representative fuzzbench test and test for libxml (#893)
    
    * Added representative fuzzbench test and test for libxml
    
    * Added support for building FRIDA from source with FRIDA_SOURCE=1
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * update changelog
    
    * typos
    
    * fixed potential double free in custom trim (#881)
    
    * error handling, freeing mem
    
    * frida: complog -> cmplog
    
    * fix statsd writing
    
    * let aflpp_qemu_driver_hook.so build fail gracefully
    
    * fix stdin trimming
    
    * Support for AFL_ENTRYPOINT (#898)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * remove the input file .cur_input at the end of the fuzzing, if AFL_TMPDIR is used
    
    * reverse push (#901)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * disable QEMU static pie
    
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    
    * clarify that no modifications are required.
    
    * add new test for frida_mode (please review)
    
    * typos
    
    * fix persistent mode (64-bit)
    
    * set ARCH for linux intel 32-bit for frida-gum-devkit
    
    * prepare for 32-bit support (later)
    
    * not on qemu 3 anymore
    
    * unicorn mips fixes
    
    * instrumentation further move to C++11 (#900)
    
    * unicorn fixes
    
    * more unicorn fixes
    
    * Fix memory errors when trim causes testcase growth (#881) (#903)
    
    * Revert "fixed potential double free in custom trim (#881)"
    
    This reverts commit e9d2f723.
    
    * Revert "fix custom trim for increasing data"
    
    This reverts commit 86a8ef16.
    
    * Fix memory errors when trim causes testcase growth
    
    Modify trim_case_custom to avoid writing into in_buf because
    some custom mutators can cause the testcase to grow rather than
    shrink.
    
    Instead of modifying in_buf directly, we write the update out
    to the disk when trimming is complete, and then the caller is
    responsible for refreshing the in-memory buffer from the file.
    
    This is still a bit sketchy because it does need to modify q->len in
    order to notify the upper layers that something changed, and it could
    end up telling upper layer code that the q->len is *bigger* than
    the buffer (q->testcase_buf) that contains it, which is asking
    for trouble down the line somewhere...
    
    * Fix an unlikely situation
    
    Put back some `unlikely()` calls that were in
    the e9d2f723 commit that was
    reverted.
    
    * typo
    
    * Exit on time (#904)
    
    * Variable AFL_EXIT_ON_TIME description has been added.
    Variables AFL_EXIT_ON_TIME and afl_exit_on_time has been added.
    afl->exit_on_time variable initialization has been added.
    The asignment of a value to the afl->afl_env.afl_exit_on_time variable from
    environment variables has been added.
    Code to exit on timeout if new path not found has been added.
    
    * Type of afl_exit_on_time variable has been changed.
    Variable exit_on_time has been added to the afl_state_t structure.
    
    * Command `export AFL_EXIT_WHEN_DONE=1` has been added.
    
    * Millisecond to second conversion has been added.
    Call get_cur_time() has been added.
    
    * Revert to using the saved current time value.
    
    * Useless check has been removed.
    
    * fix new path to custom-mutators
    
    * ensure crashes/README.txt exists
    
    * fix
    
    * Changes to bump FRIDA version and to clone FRIDA repo in to build directory rather than use a submodule as the FRIDA build scripts don't like it (#906)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Fix numeric overflow in cmplog implementation (#907)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * testcase fixes for unicorn
    
    * remove merge conflict artifacts
    
    * fix afl-plot
    
    * Changes to remove binaries from frida_mode (#913)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Frida cmplog fail fast (#914)
    
    * Changes to remove binaries from frida_mode
    
    * Changes to make cmplog fail fast
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * afl-plot: relative time
    
    * arch linux and mac os support for afl-system-config
    
    * typo
    
    * code-format
    
    * update documentation
    
    * github workflow for qemu
    
    * OSX-specific improvements (#912)
    
    * Fix afl-cc to work correctly by default on OSX using xcode
    
    - CLANG_ENV_VAR must be set for afl-as to work
    - Use clang mode by default if no specific compiler selected
    
    * Add OSX-specific documentation for configuring shared memory
    
    * Fixes to memory operands for complog (#916)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix a few cur_time uses
    
    * added bounds check to pivot_inputs (fixes #921)
    
    * additional safety checks for restarts
    
    * restrict afl-showmap in_file size
    
    * fix seed crash disable
    
    * add warning for afl-showmap partial read
    
    * no core dumps
    
    * AFL_PRINT_FILENAMES added
    
    * more documentation for AFL_EXIT_ON_TIME
    
    * Flushing for AFL_PRINT_FILENAMES
    
    * FASAN Support (#918)
    
    * FASAN Support
    
    * Fix handling of Address Sanitizer DSO
    
    * Changes to identification of Address Sanitizer DSO
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Support for x86 (#920)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Update frida_mode readme (#925)
    
    * libqasan: use syscalls for read and write
    
    * update readme
    
    * Minor integration tweaks (#926)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * merge
    
    * fix afl-fuzz.c frida preload
    
    * cleaned up AFL_PRINT_FILENAMES env
    
    * Changes to have persistent mode exit at the end of the loop (#928)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix llvm-dict2file
    
    Co-authored-by: default avatarDominik Maier <domenukk@gmail.com>
    Co-authored-by: default avatarWorksButNotTested <62701594+WorksButNotTested@users.noreply.github.com>
    Co-authored-by: default avatarYour Name <you@example.com>
    Co-authored-by: default avatarDmitry Zheregelya <zheregelya.d@gmail.com>
    Co-authored-by: default avatarhexcoder <hexcoder-@users.noreply.github.com>
    Co-authored-by: default avatarhexcoder- <heiko@hexco.de>
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    Co-authored-by: default avatarDavid CARLIER <devnexen@gmail.com>
    Co-authored-by: default avatarrealmadsci <71108352+realmadsci@users.noreply.github.com>
    Co-authored-by: default avatarRoman M. Iudichev <SecNotice@ya.ru>
    Co-authored-by: default avatarDustin Spicuzza <dustin@virtualroadside.com>
    
    Co-authored-by: default avatarDominik Maier <domenukk@gmail.com>
    Co-authored-by: default avatarWorksButNotTested <62701594+WorksButNotTested@users.noreply.github.com>
    Co-authored-by: default avatarYour Name <you@example.com>
    Co-authored-by: default avatarDmitry Zheregelya <zheregelya.d@gmail.com>
    Co-authored-by: default avatarhexcoder <hexcoder-@users.noreply.github.com>
    Co-authored-by: default avatarhexcoder- <heiko@hexco.de>
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    Co-authored-by: default avatarDavid CARLIER <devnexen@gmail.com>
    Co-authored-by: default avatarrealmadsci <71108352+realmadsci@users.noreply.github.com>
    Co-authored-by: default avatarRoman M. Iudichev <SecNotice@ya.ru>
    Co-authored-by: default avatarDustin Spicuzza <dustin@virtualroadside.com>
    
    * improve error msg
    
    * Added documentation for wine LoadLibrary workaround (#933)
    
    * Fix cmake target compilation command example (#934)
    
    - Fix typo DCMAKE_C_COMPILERC -> DCMAKE_C_COMPILER.
    - Add `cd build` after `mkdir build`.
    
    * showmap passes queue items in alphabetical order
    
    * added tmp files to gitignore
    
    * lenient dict parsing, no map size enum for binary fuzzing
    
    * added info about showmap queue directions
    
    * update binary-only doc
    
    * turn off map size detection if skip_bin_check is set
    
    * Typo
    
    * update docs
    
    * update afl-system-config
    
    * Set kill signal before using it in afl-showmap (#935)
    
    * fix afl-cc help output
    
    * add libafl to binary-only doc
    
    * update docs
    
    * less executions on variable paths
    
    * AFL_SKIP_CRASHES is obsolete since 3.0
    
    * add AFL_TRY_AFFINITY
    
    * Typo
    
    * Typo
    
    * Typo/wording
    
    * tweaks
    
    * typos
    
    * fix afl-whatsup help output
    
    * fix afl-plot output
    
    * fix for MacOS
    
    * fix cmpcov doc for qemu
    
    * fix tmpfile removal
    
    * update dockerfile
    
    * Frida (#940)
    
    * Added re2 test
    
    * Added libpcap test
    
    * Fix validation of setting of ADDR_NO_RANDOMIZE
    
    * Added support for printing original and instrumented code
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Support for AFL_FRIDA_PERSISTENT_RET (#941)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Changes to add missing exclusion of ranges (#943)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * add --afl-noopt to afl-cc
    
    * docs: fix link to README in QuickStartGuide (#946)
    
    * Support writing Stalker stats (#945)
    
    * Support writing Stalker stats
    
    * Fixed string handling in print functions
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * afl-cmin help fix, aflpp_driver - + @@ support
    
    * fix for afl-showmap
    
    * support new env var AFL_LLVM_THREADSAFE_INST to enable atomic counters.
    add new test case for that.
    
    * add documentation for AFL_LLVM_THREADSAFE_INST
    
    * add support for AFL_LLVM_THREADSAFE_INST to other LLVM passes
    
    * add missing include for _exit()
    
    * threadsafe doc fixes, code format
    
    * Wording: "never zero" -> NeverZero
    
    * fix afl_custom_post_process with multiple custom mutators
    
    * fix docs
    
    * debug ck_write
    
    * fixed potential diff by 0
    
    * fixes
    
    * fix classic threadsafe counters
    
    * v3.13c release
    
    Co-authored-by: default avatarhexcoder- <heiko@hexco.de>
    Co-authored-by: default avatarDominik Maier <domenukk@gmail.com>
    Co-authored-by: default avatarWorksButNotTested <62701594+WorksButNotTested@users.noreply.github.com>
    Co-authored-by: default avatarYour Name <you@example.com>
    Co-authored-by: default avatarDmitry Zheregelya <zheregelya.d@gmail.com>
    Co-authored-by: default avatarhexcoder <hexcoder-@users.noreply.github.com>
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    Co-authored-by: default avatarDavid CARLIER <devnexen@gmail.com>
    Co-authored-by: default avatarrealmadsci <71108352+realmadsci@users.noreply.github.com>
    Co-authored-by: default avatarRoman M. Iudichev <SecNotice@ya.ru>
    Co-authored-by: default avatarDustin Spicuzza <dustin@virtualroadside.com>
    Co-authored-by: default avatar0x4d5a-ctf <51098072+0x4d5a-ctf@users.noreply.github.com>
    Co-authored-by: default avatarTommy Chiang <oToToT@users.noreply.github.com>
    Co-authored-by: default avatarbuherator <buherator@silentsignal.hu>
    Co-authored-by: default avatarDag Heyman Kajevic <dag.heyman@gmail.com>
    02294d36
    History
    v3.13c release (#950)
    van Hauser authored
    
    * use atomic read-modify-write increment for LLVM CLASSIC
    
    * Change other LLVM modes to atomic increments
    
    * sync (#886)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * moved custom_mutator examples
    
    * unicorn speedtest makefile cleanup
    
    * fixed example location
    
    * fix qdbi
    
    * update util readme
    
    * work in progress: not working correctly yet
    
    * Frida persistent (#880)
    
    * Added x64 support for persistent mode (function call only), in-memory teest cases and complog
    
    * Review changes, fix NeverZero and code to parse the .text section of the main executable. Excluded ranges TBC
    
    * Various minor fixes and finished support for AFL_INST_LIBS
    
    * Review changes
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * fix frida mode
    
    * Integer overflow/underflow fixes in libdislocator (#889)
    
    * libdislocator: fixing integer overflow in 'max_mem' variable and setting 'max_mem' type to 'size_t'
    
    * libdislocator: fixing potential integer underflow in 'total_mem' variable due to its different values in different threads
    
    * Bumped warnings up to the max and fixed remaining issues (#890)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * frida mode - support non-pie
    
    * nits
    
    * nit
    
    * update grammar mutator
    
    * Fixes for aarch64, OSX and other minor issues (#891)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * nits
    
    * fix PCGUARD, build aflpp_driver with fPIC
    
    * Added representative fuzzbench test and test for libxml (#893)
    
    * Added representative fuzzbench test and test for libxml
    
    * Added support for building FRIDA from source with FRIDA_SOURCE=1
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * update changelog
    
    * typos
    
    * still not working
    
    * fixed potential double free in custom trim (#881)
    
    * error handling, freeing mem
    
    * frida: complog -> cmplog
    
    * fix statsd writing
    
    * let aflpp_qemu_driver_hook.so build fail gracefully
    
    * fix stdin trimming
    
    * Support for AFL_ENTRYPOINT (#898)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * remove the input file .cur_input at the end of the fuzzing, if AFL_TMPDIR is used
    
    * reverse push (#901)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * disable QEMU static pie
    
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    
    * clarify that no modifications are required.
    
    * add new test for frida_mode (please review)
    
    * typos
    
    * fix persistent mode (64-bit)
    
    * set ARCH for linux intel 32-bit for frida-gum-devkit
    
    * prepare for 32-bit support (later)
    
    * not on qemu 3 anymore
    
    * unicorn mips fixes
    
    * instrumentation further move to C++11 (#900)
    
    * unicorn fixes
    
    * first working NeverZero implementation
    
    * more unicorn fixes
    
    * Fix memory errors when trim causes testcase growth (#881) (#903)
    
    * Revert "fixed potential double free in custom trim (#881)"
    
    This reverts commit e9d2f723.
    
    * Revert "fix custom trim for increasing data"
    
    This reverts commit 86a8ef16.
    
    * Fix memory errors when trim causes testcase growth
    
    Modify trim_case_custom to avoid writing into in_buf because
    some custom mutators can cause the testcase to grow rather than
    shrink.
    
    Instead of modifying in_buf directly, we write the update out
    to the disk when trimming is complete, and then the caller is
    responsible for refreshing the in-memory buffer from the file.
    
    This is still a bit sketchy because it does need to modify q->len in
    order to notify the upper layers that something changed, and it could
    end up telling upper layer code that the q->len is *bigger* than
    the buffer (q->testcase_buf) that contains it, which is asking
    for trouble down the line somewhere...
    
    * Fix an unlikely situation
    
    Put back some `unlikely()` calls that were in
    the e9d2f723 commit that was
    reverted.
    
    * add some comments
    
    * typo
    
    * Exit on time (#904)
    
    * Variable AFL_EXIT_ON_TIME description has been added.
    Variables AFL_EXIT_ON_TIME and afl_exit_on_time has been added.
    afl->exit_on_time variable initialization has been added.
    The asignment of a value to the afl->afl_env.afl_exit_on_time variable from
    environment variables has been added.
    Code to exit on timeout if new path not found has been added.
    
    * Type of afl_exit_on_time variable has been changed.
    Variable exit_on_time has been added to the afl_state_t structure.
    
    * Command `export AFL_EXIT_WHEN_DONE=1` has been added.
    
    * Millisecond to second conversion has been added.
    Call get_cur_time() has been added.
    
    * Revert to using the saved current time value.
    
    * Useless check has been removed.
    
    * fix new path to custom-mutators
    
    * ensure crashes/README.txt exists
    
    * fix
    
    * Changes to bump FRIDA version and to clone FRIDA repo in to build directory rather than use a submodule as the FRIDA build scripts don't like it (#906)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Fix numeric overflow in cmplog implementation (#907)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * testcase fixes for unicorn
    
    * remove merge conflict artifacts
    
    * fix afl-plot
    
    * Changes to remove binaries from frida_mode (#913)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Frida cmplog fail fast (#914)
    
    * Changes to remove binaries from frida_mode
    
    * Changes to make cmplog fail fast
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * afl-plot: relative time
    
    * arch linux and mac os support for afl-system-config
    
    * typo
    
    * code-format
    
    * update documentation
    
    * github workflow for qemu
    
    * OSX-specific improvements (#912)
    
    * Fix afl-cc to work correctly by default on OSX using xcode
    
    - CLANG_ENV_VAR must be set for afl-as to work
    - Use clang mode by default if no specific compiler selected
    
    * Add OSX-specific documentation for configuring shared memory
    
    * Fixes to memory operands for complog (#916)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix a few cur_time uses
    
    * added bounds check to pivot_inputs (fixes #921)
    
    * additional safety checks for restarts
    
    * restrict afl-showmap in_file size
    
    * fix seed crash disable
    
    * add warning for afl-showmap partial read
    
    * no core dumps
    
    * AFL_PRINT_FILENAMES added
    
    * more documentation for AFL_EXIT_ON_TIME
    
    * Flushing for AFL_PRINT_FILENAMES
    
    * FASAN Support (#918)
    
    * FASAN Support
    
    * Fix handling of Address Sanitizer DSO
    
    * Changes to identification of Address Sanitizer DSO
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Support for x86 (#920)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Update frida_mode readme (#925)
    
    * libqasan: use syscalls for read and write
    
    * update readme
    
    * Minor integration tweaks (#926)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * merge
    
    * fix afl-fuzz.c frida preload
    
    * cleaned up AFL_PRINT_FILENAMES env
    
    * Changes to have persistent mode exit at the end of the loop (#928)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix llvm-dict2file
    
    * push to stable (#931) (#932)
    
    * sync (#886)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * moved custom_mutator examples
    
    * unicorn speedtest makefile cleanup
    
    * fixed example location
    
    * fix qdbi
    
    * update util readme
    
    * Frida persistent (#880)
    
    * Added x64 support for persistent mode (function call only), in-memory teest cases and complog
    
    * Review changes, fix NeverZero and code to parse the .text section of the main executable. Excluded ranges TBC
    
    * Various minor fixes and finished support for AFL_INST_LIBS
    
    * Review changes
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * fix frida mode
    
    * Integer overflow/underflow fixes in libdislocator (#889)
    
    * libdislocator: fixing integer overflow in 'max_mem' variable and setting 'max_mem' type to 'size_t'
    
    * libdislocator: fixing potential integer underflow in 'total_mem' variable due to its different values in different threads
    
    * Bumped warnings up to the max and fixed remaining issues (#890)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * frida mode - support non-pie
    
    * nits
    
    * nit
    
    * update grammar mutator
    
    * Fixes for aarch64, OSX and other minor issues (#891)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * nits
    
    * fix PCGUARD, build aflpp_driver with fPIC
    
    * Added representative fuzzbench test and test for libxml (#893)
    
    * Added representative fuzzbench test and test for libxml
    
    * Added support for building FRIDA from source with FRIDA_SOURCE=1
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * nits
    
    * update changelog
    
    * typos
    
    * fixed potential double free in custom trim (#881)
    
    * error handling, freeing mem
    
    * frida: complog -> cmplog
    
    * fix statsd writing
    
    * let aflpp_qemu_driver_hook.so build fail gracefully
    
    * fix stdin trimming
    
    * Support for AFL_ENTRYPOINT (#898)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * remove the input file .cur_input at the end of the fuzzing, if AFL_TMPDIR is used
    
    * reverse push (#901)
    
    * Create FUNDING.yml
    
    * Update FUNDING.yml
    
    * disable QEMU static pie
    
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    
    * clarify that no modifications are required.
    
    * add new test for frida_mode (please review)
    
    * typos
    
    * fix persistent mode (64-bit)
    
    * set ARCH for linux intel 32-bit for frida-gum-devkit
    
    * prepare for 32-bit support (later)
    
    * not on qemu 3 anymore
    
    * unicorn mips fixes
    
    * instrumentation further move to C++11 (#900)
    
    * unicorn fixes
    
    * more unicorn fixes
    
    * Fix memory errors when trim causes testcase growth (#881) (#903)
    
    * Revert "fixed potential double free in custom trim (#881)"
    
    This reverts commit e9d2f723.
    
    * Revert "fix custom trim for increasing data"
    
    This reverts commit 86a8ef16.
    
    * Fix memory errors when trim causes testcase growth
    
    Modify trim_case_custom to avoid writing into in_buf because
    some custom mutators can cause the testcase to grow rather than
    shrink.
    
    Instead of modifying in_buf directly, we write the update out
    to the disk when trimming is complete, and then the caller is
    responsible for refreshing the in-memory buffer from the file.
    
    This is still a bit sketchy because it does need to modify q->len in
    order to notify the upper layers that something changed, and it could
    end up telling upper layer code that the q->len is *bigger* than
    the buffer (q->testcase_buf) that contains it, which is asking
    for trouble down the line somewhere...
    
    * Fix an unlikely situation
    
    Put back some `unlikely()` calls that were in
    the e9d2f723 commit that was
    reverted.
    
    * typo
    
    * Exit on time (#904)
    
    * Variable AFL_EXIT_ON_TIME description has been added.
    Variables AFL_EXIT_ON_TIME and afl_exit_on_time has been added.
    afl->exit_on_time variable initialization has been added.
    The asignment of a value to the afl->afl_env.afl_exit_on_time variable from
    environment variables has been added.
    Code to exit on timeout if new path not found has been added.
    
    * Type of afl_exit_on_time variable has been changed.
    Variable exit_on_time has been added to the afl_state_t structure.
    
    * Command `export AFL_EXIT_WHEN_DONE=1` has been added.
    
    * Millisecond to second conversion has been added.
    Call get_cur_time() has been added.
    
    * Revert to using the saved current time value.
    
    * Useless check has been removed.
    
    * fix new path to custom-mutators
    
    * ensure crashes/README.txt exists
    
    * fix
    
    * Changes to bump FRIDA version and to clone FRIDA repo in to build directory rather than use a submodule as the FRIDA build scripts don't like it (#906)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Fix numeric overflow in cmplog implementation (#907)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * testcase fixes for unicorn
    
    * remove merge conflict artifacts
    
    * fix afl-plot
    
    * Changes to remove binaries from frida_mode (#913)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Frida cmplog fail fast (#914)
    
    * Changes to remove binaries from frida_mode
    
    * Changes to make cmplog fail fast
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * afl-plot: relative time
    
    * arch linux and mac os support for afl-system-config
    
    * typo
    
    * code-format
    
    * update documentation
    
    * github workflow for qemu
    
    * OSX-specific improvements (#912)
    
    * Fix afl-cc to work correctly by default on OSX using xcode
    
    - CLANG_ENV_VAR must be set for afl-as to work
    - Use clang mode by default if no specific compiler selected
    
    * Add OSX-specific documentation for configuring shared memory
    
    * Fixes to memory operands for complog (#916)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix a few cur_time uses
    
    * added bounds check to pivot_inputs (fixes #921)
    
    * additional safety checks for restarts
    
    * restrict afl-showmap in_file size
    
    * fix seed crash disable
    
    * add warning for afl-showmap partial read
    
    * no core dumps
    
    * AFL_PRINT_FILENAMES added
    
    * more documentation for AFL_EXIT_ON_TIME
    
    * Flushing for AFL_PRINT_FILENAMES
    
    * FASAN Support (#918)
    
    * FASAN Support
    
    * Fix handling of Address Sanitizer DSO
    
    * Changes to identification of Address Sanitizer DSO
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Support for x86 (#920)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Update frida_mode readme (#925)
    
    * libqasan: use syscalls for read and write
    
    * update readme
    
    * Minor integration tweaks (#926)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * merge
    
    * fix afl-fuzz.c frida preload
    
    * cleaned up AFL_PRINT_FILENAMES env
    
    * Changes to have persistent mode exit at the end of the loop (#928)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * fix llvm-dict2file
    
    Co-authored-by: default avatarDominik Maier <domenukk@gmail.com>
    Co-authored-by: default avatarWorksButNotTested <62701594+WorksButNotTested@users.noreply.github.com>
    Co-authored-by: default avatarYour Name <you@example.com>
    Co-authored-by: default avatarDmitry Zheregelya <zheregelya.d@gmail.com>
    Co-authored-by: default avatarhexcoder <hexcoder-@users.noreply.github.com>
    Co-authored-by: default avatarhexcoder- <heiko@hexco.de>
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    Co-authored-by: default avatarDavid CARLIER <devnexen@gmail.com>
    Co-authored-by: default avatarrealmadsci <71108352+realmadsci@users.noreply.github.com>
    Co-authored-by: default avatarRoman M. Iudichev <SecNotice@ya.ru>
    Co-authored-by: default avatarDustin Spicuzza <dustin@virtualroadside.com>
    
    Co-authored-by: default avatarDominik Maier <domenukk@gmail.com>
    Co-authored-by: default avatarWorksButNotTested <62701594+WorksButNotTested@users.noreply.github.com>
    Co-authored-by: default avatarYour Name <you@example.com>
    Co-authored-by: default avatarDmitry Zheregelya <zheregelya.d@gmail.com>
    Co-authored-by: default avatarhexcoder <hexcoder-@users.noreply.github.com>
    Co-authored-by: default avatarhexcoder- <heiko@hexco.de>
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    Co-authored-by: default avatarDavid CARLIER <devnexen@gmail.com>
    Co-authored-by: default avatarrealmadsci <71108352+realmadsci@users.noreply.github.com>
    Co-authored-by: default avatarRoman M. Iudichev <SecNotice@ya.ru>
    Co-authored-by: default avatarDustin Spicuzza <dustin@virtualroadside.com>
    
    * improve error msg
    
    * Added documentation for wine LoadLibrary workaround (#933)
    
    * Fix cmake target compilation command example (#934)
    
    - Fix typo DCMAKE_C_COMPILERC -> DCMAKE_C_COMPILER.
    - Add `cd build` after `mkdir build`.
    
    * showmap passes queue items in alphabetical order
    
    * added tmp files to gitignore
    
    * lenient dict parsing, no map size enum for binary fuzzing
    
    * added info about showmap queue directions
    
    * update binary-only doc
    
    * turn off map size detection if skip_bin_check is set
    
    * Typo
    
    * update docs
    
    * update afl-system-config
    
    * Set kill signal before using it in afl-showmap (#935)
    
    * fix afl-cc help output
    
    * add libafl to binary-only doc
    
    * update docs
    
    * less executions on variable paths
    
    * AFL_SKIP_CRASHES is obsolete since 3.0
    
    * add AFL_TRY_AFFINITY
    
    * Typo
    
    * Typo
    
    * Typo/wording
    
    * tweaks
    
    * typos
    
    * fix afl-whatsup help output
    
    * fix afl-plot output
    
    * fix for MacOS
    
    * fix cmpcov doc for qemu
    
    * fix tmpfile removal
    
    * update dockerfile
    
    * Frida (#940)
    
    * Added re2 test
    
    * Added libpcap test
    
    * Fix validation of setting of ADDR_NO_RANDOMIZE
    
    * Added support for printing original and instrumented code
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Support for AFL_FRIDA_PERSISTENT_RET (#941)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * Changes to add missing exclusion of ranges (#943)
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * add --afl-noopt to afl-cc
    
    * docs: fix link to README in QuickStartGuide (#946)
    
    * Support writing Stalker stats (#945)
    
    * Support writing Stalker stats
    
    * Fixed string handling in print functions
    
    Co-authored-by: default avatarYour Name <you@example.com>
    
    * afl-cmin help fix, aflpp_driver - + @@ support
    
    * fix for afl-showmap
    
    * support new env var AFL_LLVM_THREADSAFE_INST to enable atomic counters.
    add new test case for that.
    
    * add documentation for AFL_LLVM_THREADSAFE_INST
    
    * add support for AFL_LLVM_THREADSAFE_INST to other LLVM passes
    
    * add missing include for _exit()
    
    * threadsafe doc fixes, code format
    
    * Wording: "never zero" -> NeverZero
    
    * fix afl_custom_post_process with multiple custom mutators
    
    * fix docs
    
    * debug ck_write
    
    * fixed potential diff by 0
    
    * fixes
    
    * fix classic threadsafe counters
    
    * v3.13c release
    
    Co-authored-by: default avatarhexcoder- <heiko@hexco.de>
    Co-authored-by: default avatarDominik Maier <domenukk@gmail.com>
    Co-authored-by: default avatarWorksButNotTested <62701594+WorksButNotTested@users.noreply.github.com>
    Co-authored-by: default avatarYour Name <you@example.com>
    Co-authored-by: default avatarDmitry Zheregelya <zheregelya.d@gmail.com>
    Co-authored-by: default avatarhexcoder <hexcoder-@users.noreply.github.com>
    Co-authored-by: default avatarAndrea Fioraldi <andreafioraldi@gmail.com>
    Co-authored-by: default avatarDavid CARLIER <devnexen@gmail.com>
    Co-authored-by: default avatarrealmadsci <71108352+realmadsci@users.noreply.github.com>
    Co-authored-by: default avatarRoman M. Iudichev <SecNotice@ya.ru>
    Co-authored-by: default avatarDustin Spicuzza <dustin@virtualroadside.com>
    Co-authored-by: default avatar0x4d5a-ctf <51098072+0x4d5a-ctf@users.noreply.github.com>
    Co-authored-by: default avatarTommy Chiang <oToToT@users.noreply.github.com>
    Co-authored-by: default avatarbuherator <buherator@silentsignal.hu>
    Co-authored-by: default avatarDag Heyman Kajevic <dag.heyman@gmail.com>
Code owners
Assign users and groups as approvers for specific file changes. Learn more.