Compare commits

..

29 Commits

Author SHA1 Message Date
Ole André Vadla Ravnås 84c7375044 subprojects: Prepare for release 2024-07-22 11:49:12 +02:00
Ole André Vadla Ravnås 267d5d555d subprojects: Bump outdated 2024-07-22 11:38:02 +02:00
Ole André Vadla Ravnås e219e5edbc submodules: Bump releng 2024-07-22 11:38:02 +02:00
Ole André Vadla Ravnås 70aaa04070 subprojects: Prepare for release 2024-07-17 22:43:16 +02:00
Ole André Vadla Ravnås 463fd65f03 subprojects: Bump outdated 2024-07-17 22:41:06 +02:00
Ole André Vadla Ravnås 41c3092dfe subprojects: Bump outdated 2024-07-17 22:10:16 +02:00
Ole André Vadla Ravnås 1b11eeab12 subprojects: Prepare for release 2024-07-16 15:25:01 +02:00
Ole André Vadla Ravnås 10aad4273c subprojects: Bump outdated 2024-07-16 15:20:49 +02:00
Ole André Vadla Ravnås d921e98e0c extension: Eliminate usage of unstable ref-counting APIs
Fixes #244.
2024-07-15 22:54:19 +02:00
Ole André Vadla Ravnås 8935cf3651 extension: Remove unused macro 2024-07-15 18:46:01 +02:00
Ole André Vadla Ravnås 2e3b9474bf extension: Drop remaining compatibility macros
As we no longer support Python 2.
2024-07-15 18:43:50 +02:00
Ole André Vadla Ravnås 582c2860c0 subprojects: Prepare for release 2024-07-13 00:34:10 +02:00
Ole André Vadla Ravnås 7c7947ee7c subprojects: Bump outdated 2024-07-13 00:07:05 +02:00
Ole André Vadla Ravnås 0f68038a10 subprojects: Prepare for release 2024-07-08 14:27:12 +02:00
Ole André Vadla Ravnås e9a3a37ea1 subprojects: Bump outdated 2024-07-08 14:25:25 +02:00
Ole André Vadla Ravnås f642de8a6b subprojects: Prepare for release 2024-07-06 00:07:34 +02:00
Ole André Vadla Ravnås c541ac027c subprojects: Bump outdated 2024-07-06 00:06:46 +02:00
Ole André Vadla Ravnås facd6756b2 subprojects: Prepare for release 2024-07-05 15:32:51 +02:00
Ole André Vadla Ravnås f29f486c0d subprojects: Bump outdated 2024-07-05 15:32:13 +02:00
Ole André Vadla Ravnås 2135414777 subprojects: Bump outdated 2024-07-05 15:26:38 +02:00
Ole André Vadla Ravnås ba032180c6 subprojects: Bump outdated 2024-07-04 13:51:07 +02:00
Ole André Vadla Ravnås b29cbcd499 subprojects: Bump outdated 2024-07-04 11:27:12 +02:00
Ole André Vadla Ravnås 55cdadea6a subprojects: Bump outdated 2024-07-03 23:20:23 +02:00
Ole André Vadla Ravnås 17d39c725c submodules: Bump releng 2024-07-03 23:20:23 +02:00
Ole André Vadla Ravnås 72f1d651b6 examples: Add XPC application launching example
Co-authored-by: Håvard Sørbø <havard@hsorbo.no>
2024-07-03 22:33:48 +02:00
Ole André Vadla Ravnås 6d5c64d215 examples: Rename xpc.py to xpc/listprocesses.py
Co-authored-by: Håvard Sørbø <havard@hsorbo.no>
2024-07-03 22:33:44 +02:00
Ole André Vadla Ravnås 2b5f6492a2 extension: Support unmarshaling tuples to GVariant
Co-authored-by: Håvard Sørbø <havard@hsorbo.no>
2024-07-03 22:33:40 +02:00
Ole André Vadla Ravnås 316f88974d extension: Fix unmarshaling of bool to GVariant
A bool also satisfies PyLong_Check(), so we need to PyBool_Check() first.

Co-authored-by: Håvard Sørbø <havard@hsorbo.no>
2024-07-03 22:33:40 +02:00
Ole André Vadla Ravnås fee73e852b extension: Drop PyFrida_is_string()
Now that it does nothing special as we no longer support Python 2.

Co-authored-by: Håvard Sørbø <havard@hsorbo.no>
2024-07-03 22:33:40 +02:00
5 changed files with 249 additions and 197 deletions
@@ -0,0 +1,64 @@
import pprint
import sys
from threading import Thread
import frida
def main():
device = frida.get_usb_device()
stdout_uuid, stdout_stream = create_stdio_socket(device)
stderr_uuid, stderr_stream = create_stdio_socket(device)
appservice = device.open_service("xpc:com.apple.coredevice.appservice")
response = appservice.request(
{
"CoreDevice.featureIdentifier": "com.apple.coredevice.feature.launchapplication",
"CoreDevice.action": {},
"CoreDevice.input": {
"applicationSpecifier": {
"bundleIdentifier": {"_0": "no.oleavr.HelloIOS"},
},
"options": {
"arguments": [],
"environmentVariables": {},
"standardIOUsesPseudoterminals": True,
"startStopped": False,
"terminateExisting": True,
"user": {"active": True},
"platformSpecificOptions": b'<?xml version="1.0" encoding="UTF-8"?><plist version="1.0"><dict/></plist>',
},
"standardIOIdentifiers": {
"standardOutput": ("uuid", stdout_uuid),
"standardError": ("uuid", stderr_uuid),
},
},
}
)
pprint.pp(response)
workers = set()
for stream, sink in {(stdout_stream, sys.stdout), (stderr_stream, sys.stderr)}:
t = Thread(target=process_console_output, args=(stream, sink))
t.start()
workers.add(t)
for worker in workers:
worker.join()
def create_stdio_socket(device):
stream = device.open_channel("tcp:com.apple.coredevice.openstdiosocket")
return (stream.read_all(16), stream)
def process_console_output(stream, sink):
while True:
chunk = stream.read(4096)
if not chunk:
break
sink.write(chunk.decode("utf-8"))
if __name__ == "__main__":
main()
+183 -195
View File
File diff suppressed because it is too large Load Diff
+1 -1
Submodule releng updated: b0e46f7b69...f7ba343c9a
+1 -1
View File
@@ -1,6 +1,6 @@
[wrap-git]
url = https://github.com/frida/frida-core.git
revision = 16.3.3
revision = 16.4.6
depth = 1
[provide]