From 52e88372d8ef38cd8e0c5ba980ea1ff38f76168d Mon Sep 17 00:00:00 2001 From: MacInvi Date: Sat, 25 Jul 2026 11:10:31 +0700 Subject: [PATCH] fix patch for new upstream frida 17.16.4 --- .../0001-Florida-string_frida_rpc.patch | 19 ++++++++++--------- ...0003-Florida-symbol_frida_agent_main.patch | 19 ++++++++++++------- 2 files changed, 22 insertions(+), 16 deletions(-) diff --git a/patches/frida-core/0001-Florida-string_frida_rpc.patch b/patches/frida-core/0001-Florida-string_frida_rpc.patch index 9fbc12091..b1a2d5e15 100644 --- a/patches/frida-core/0001-Florida-string_frida_rpc.patch +++ b/patches/frida-core/0001-Florida-string_frida_rpc.patch @@ -8,10 +8,10 @@ Subject: [PATCH 1/9] Florida: string_frida_rpc 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/base/rpc.vala b/lib/base/rpc.vala -index 8990b70e..d5acfebd 100644 +index 2e20dba1..b8d3350d 100644 --- a/lib/base/rpc.vala +++ b/lib/base/rpc.vala -@@ -11,13 +11,22 @@ namespace Frida { +@@ -17,6 +17,15 @@ namespace Frida { Object (peer: peer); } @@ -24,9 +24,10 @@ index 8990b70e..d5acfebd 100644 + } + } + - public async Json.Node call (string method, Json.Node[] args, Bytes? data, Cancellable? cancellable) throws Error, IOError { - string request_id = Uuid.string_random (); - + /** + * Calls a remote method and waits for its result. + * +@@ -30,7 +39,7 @@ namespace Frida { var request = new Json.Builder (); request .begin_array () @@ -35,16 +36,16 @@ index 8990b70e..d5acfebd 100644 .add_string_value (request_id) .add_string_value ("call") .add_string_value (method) -@@ -70,7 +79,7 @@ namespace Frida { - } - +@@ -83,7 +92,7 @@ namespace Frida { + * @return true if the message was an RPC message and was handled + */ public bool try_handle_message (string json) { - if (json.index_of ("\"frida:rpc\"") == -1) + if (json.index_of (getRpcStr(true)) == -1) return false; var parser = new Json.Parser (); -@@ -99,7 +108,7 @@ namespace Frida { +@@ -112,7 +121,7 @@ namespace Frida { return false; string? type = rpc_message.get_element (0).get_string (); diff --git a/patches/frida-core/0003-Florida-symbol_frida_agent_main.patch b/patches/frida-core/0003-Florida-symbol_frida_agent_main.patch index 88621b98c..becab2c92 100644 --- a/patches/frida-core/0003-Florida-symbol_frida_agent_main.patch +++ b/patches/frida-core/0003-Florida-symbol_frida_agent_main.patch @@ -10,10 +10,10 @@ Subject: [PATCH 3/9] Florida: symbol_frida_agent_main src/freebsd/freebsd-host-session.vala | 2 +- src/linux/linux-host-session.vala | 2 +- src/qnx/qnx-host-session.vala | 2 +- - src/windows/windows-host-session.vala | 2 +- + src/windows/windows-host-session.vala | 4 ++-- tests/test-agent.vala | 2 +- tests/test-injector.vala | 2 +- - 9 files changed, 35 insertions(+), 8 deletions(-) + 9 files changed, 36 insertions(+), 9 deletions(-) create mode 100644 src/anti-anti-frida.py diff --git a/src/agent-container.vala b/src/agent-container.vala @@ -116,16 +116,22 @@ index 69f2995f..a4e59ab2 100644 injectee_by_pid[pid] = id; diff --git a/src/windows/windows-host-session.vala b/src/windows/windows-host-session.vala -index 67f1f3ef..518cd256 100644 +index 0c0dcf43..076d91f4 100644 --- a/src/windows/windows-host-session.vala +++ b/src/windows/windows-host-session.vala -@@ -274,7 +274,7 @@ namespace Frida { - var stream_request = Pipe.open (t.local_address, cancellable); - +@@ -252,11 +252,11 @@ namespace Frida { var winjector = injector as Winjector; + #if HAVE_EMBEDDED_ASSETS - var id = yield winjector.inject_library_resource (pid, agent, "frida_agent_main", + var id = yield winjector.inject_library_resource (pid, agent, "main", make_agent_parameters (pid, t.remote_address, options), cancellable); + #else + var id = yield winjector.inject_library_file_with_template (pid, +- installed_agent_path_template (), "frida_agent_main", ++ installed_agent_path_template (), "main", + make_agent_parameters (pid, t.remote_address, options), + installed_agent_dependencies (), cancellable); + #endif injectee_by_pid[pid] = id; diff --git a/tests/test-agent.vala b/tests/test-agent.vala @@ -156,4 +162,3 @@ index 03c219e6..a7720c3d 100644 assert_not_reached (); -- 2.42.0 -