aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2020-08-24 17:32:41 +0200
committervan Hauser <vh@thc.org>2020-08-24 17:32:41 +0200
commitc7f0d3066875bca0ec28e9429df40293339dc05c (patch)
treee02642990b3fce6b50fee0dd49afa0af0ce14192 /docs
parenta7c3f252d57707ca2c0035be6cbe80635cf8857b (diff)
downloadAFLplusplus-c7f0d3066875bca0ec28e9429df40293339dc05c.tar.gz
added afl_custom_fuzz_count
Diffstat (limited to 'docs')
-rw-r--r--docs/Changelog.md3
-rw-r--r--docs/custom_mutators.md9
2 files changed, 12 insertions, 0 deletions
diff --git a/docs/Changelog.md b/docs/Changelog.md
index f7bc9600..45fbd528 100644
--- a/docs/Changelog.md
+++ b/docs/Changelog.md
@@ -18,6 +18,9 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
dict entries without recompiling.
- AFL_FORKSRV_INIT_TMOUT env variable added to control the time to wait for
the forkserver to come up without the need to increase the overall timeout.
+ - custom mutators:
+ - added afl_custom_fuzz_count/fuzz_count function to allow specifying the
+ number of fuzz attempts for custom_fuzz
- llvm_mode:
- Ported SanCov to LTO, and made it the default for LTO. better
instrumentation locations
diff --git a/docs/custom_mutators.md b/docs/custom_mutators.md
index a22c809b..75dbea21 100644
--- a/docs/custom_mutators.md
+++ b/docs/custom_mutators.md
@@ -32,6 +32,7 @@ performed with the custom mutator.
C/C++:
```c
void *afl_custom_init(afl_t *afl, unsigned int seed);
+uint32_t afl_custom_fuzz_count(void *data, const u8 *buf, size_t buf_size);
size_t afl_custom_fuzz(void *data, uint8_t *buf, size_t buf_size, u8 **out_buf, uint8_t *add_buf, size_t add_buf_size, size_t max_size);
size_t afl_custom_post_process(void *data, uint8_t *buf, size_t buf_size, uint8_t **out_buf);
int32_t afl_custom_init_trim(void *data, uint8_t *buf, size_t buf_size);
@@ -49,6 +50,9 @@ Python:
def init(seed):
pass
+def fuzz_count(buf, add_buf, max_size):
+ return cnt
+
def fuzz(buf, add_buf, max_size):
return mutated_out
@@ -88,6 +92,11 @@ def queue_new_entry(filename_new_queue, filename_orig_queue):
This method determines whether the custom fuzzer should fuzz the current
queue entry or not
+- `fuzz_count` (optional):
+
+ This method can be used to instruct afl-fuzz how often to perform a fuzz
+ attempt on this input data.
+
- `fuzz` (optional):
This method performs custom mutations on a given input. It also accepts an