aboutsummaryrefslogtreecommitdiff
path: root/frida_mode/ts/lib
diff options
context:
space:
mode:
authorYour Name <you@example.com>2021-11-18 17:08:39 +0000
committerYour Name <you@example.com>2021-11-18 17:08:39 +0000
commitaf02fa1670db6d19feaf0a3e54d9d8013ad3312f (patch)
tree72cffafe0ca3340659f0321bad548e2d336e4a12 /frida_mode/ts/lib
parent3b9545854fdfb5be111a9891675882c187801fb0 (diff)
downloadafl++-af02fa1670db6d19feaf0a3e54d9d8013ad3312f.tar.gz
Improve JS bindings for hooking functions
Diffstat (limited to 'frida_mode/ts/lib')
-rw-r--r--frida_mode/ts/lib/afl.ts23
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",