diff options
author | Your Name <you@example.com> | 2021-11-18 17:08:39 +0000 |
---|---|---|
committer | Your Name <you@example.com> | 2021-11-18 17:08:39 +0000 |
commit | af02fa1670db6d19feaf0a3e54d9d8013ad3312f (patch) | |
tree | 72cffafe0ca3340659f0321bad548e2d336e4a12 /frida_mode/ts/lib/afl.ts | |
parent | 3b9545854fdfb5be111a9891675882c187801fb0 (diff) | |
download | afl++-af02fa1670db6d19feaf0a3e54d9d8013ad3312f.tar.gz |
Improve JS bindings for hooking functions
Diffstat (limited to 'frida_mode/ts/lib/afl.ts')
-rw-r--r-- | frida_mode/ts/lib/afl.ts | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/frida_mode/ts/lib/afl.ts b/frida_mode/ts/lib/afl.ts index e20ad3ec..0473cbf6 100644 --- a/frida_mode/ts/lib/afl.ts +++ b/frida_mode/ts/lib/afl.ts @@ -179,6 +179,14 @@ class Afl { Afl.jsApiSetInstrumentUnstableCoverageFile(buf); } + /* + * Set a callback to be called in place of the usual `main` function. This see + * `Scripting.md` for details. + */ + public static setJsMainHook(address: NativePointer): void { + Afl.jsApiSetJsMainHook(address); + } + /** * This is equivalent to setting `AFL_FRIDA_PERSISTENT_ADDR`, again a * `NativePointer` should be provided as it's argument. @@ -387,6 +395,11 @@ class Afl { "void", ["pointer"]); + private static readonly jsApiSetJsMainHook = Afl.jsApiGetFunction( + "js_api_set_js_main_hook", + "void", + ["pointer"]); + private static readonly jsApiSetPersistentAddress = Afl.jsApiGetFunction( "js_api_set_persistent_address", "void", @@ -427,16 +440,16 @@ class Afl { "void", ["pointer"]); - private static readonly jsApiSetStalkerCallback = Afl.jsApiGetFunction( - "js_api_set_stalker_callback", - "void", - ["pointer"]); - private static readonly jsApiSetStalkerAdjacentBlocks = Afl.jsApiGetFunction( "js_api_set_stalker_adjacent_blocks", "void", ["uint32"]); + private static readonly jsApiSetStalkerCallback = Afl.jsApiGetFunction( + "js_api_set_stalker_callback", + "void", + ["pointer"]); + private static readonly jsApiSetStalkerIcEntries = Afl.jsApiGetFunction( "js_api_set_stalker_ic_entries", "void", |