aboutsummaryrefslogtreecommitdiff
path: root/docs/custom_mutators.md
diff options
context:
space:
mode:
authorvanhauser-thc <vh@thc.org>2023-01-18 22:17:14 +0100
committervanhauser-thc <vh@thc.org>2023-01-18 22:17:14 +0100
commit14d8eb9e40a6329abcb2f153174b543349c68c13 (patch)
tree183d50c2416d6949e59a2e89ddad564b6b088541 /docs/custom_mutators.md
parent8fe5e29104fc514551bbc926c5142dac68562b43 (diff)
downloadAFLplusplus-14d8eb9e40a6329abcb2f153174b543349c68c13.tar.gz
autotoken: splicing; splice_optout
Diffstat (limited to 'docs/custom_mutators.md')
-rw-r--r--docs/custom_mutators.md11
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/custom_mutators.md b/docs/custom_mutators.md
index 4ffeda7a..322caa5b 100644
--- a/docs/custom_mutators.md
+++ b/docs/custom_mutators.md
@@ -48,6 +48,7 @@ C/C++:
```c
void *afl_custom_init(afl_state_t *afl, unsigned int seed);
unsigned int afl_custom_fuzz_count(void *data, const unsigned char *buf, size_t buf_size);
+void afl_custom_splice_optout(void *data);
size_t afl_custom_fuzz(void *data, unsigned char *buf, size_t buf_size, unsigned char **out_buf, unsigned char *add_buf, size_t add_buf_size, size_t max_size);
const char *afl_custom_describe(void *data, size_t max_description_len);
size_t afl_custom_post_process(void *data, unsigned char *buf, size_t buf_size, unsigned char **out_buf);
@@ -72,6 +73,9 @@ def init(seed):
def fuzz_count(buf):
return cnt
+def splice_optout()
+ pass
+
def fuzz(buf, add_buf, max_size):
return mutated_out
@@ -132,6 +136,13 @@ def deinit(): # optional for Python
for a specific queue entry, use this function. This function is most useful
if `AFL_CUSTOM_MUTATOR_ONLY` is **not** used.
+- `splice_optout` (optional):
+
+ If this function is present, no splicing target is passed to the `fuzz`
+ function. This saves time if splicing data is not needed by the custom
+ fuzzing function.
+ This function is never called, just needs to be present to activate.
+
- `fuzz` (optional):
This method performs custom mutations on a given input. It also accepts an