Commit Graph

13 Commits

Author SHA1 Message Date
Ole André Vadla Ravnås 7def1ad210 Make DeviceManager.close() cancellable 2019-09-04 02:21:12 +02:00
Ole André Vadla Ravnås 870199d9e7 Fix a Python 2.x compatibility regression 2019-09-04 01:54:40 +02:00
Ole André Vadla Ravnås fd563fb312 Improve RPC message detection
To avoid crashing if an agent does `send([])`.

Kudos to @H0r53 for reporting!

Fixes frida/frida#1008.
2019-09-03 23:52:54 +02:00
Ole André Vadla Ravnås 66bdd0ed30 Wire up get_device() instead of emulating it
This way it is automatically cancellable, and we get the performance
benefit of not having to wait for all backends to start.
2019-09-03 10:47:04 +02:00
Ole André Vadla Ravnås 8492f3950b Improve the RPC logic
- Remove request when cancelled.
- Ignore responses to unknown requests.
2019-09-03 01:41:56 +02:00
Ole André Vadla Ravnås 698ab16a88 Make RPC method calls fully cancellable 2019-09-03 01:29:22 +02:00
Ole André Vadla Ravnås c2dcacc8f4 Improve the Cancellable API
- Implement a context manager.
- Expose more of the underlying API.
2019-09-03 01:29:00 +02:00
Ole André Vadla Ravnås f8f501d1d2 Add support for cancellation in the top-level API
Though only partially for get_*device*().
2019-08-31 05:55:21 +02:00
Ole André Vadla Ravnås 6498250062 Drop support for cancellable as a positional argument
Better to be explicit for the rare cases where a single operation needs
a specific Cancellable.
2019-08-31 05:28:27 +02:00
Ole André Vadla Ravnås eac26b292e Update to the new cancellable core APIs 2019-08-31 05:07:16 +02:00
Ole André Vadla Ravnås 1d428b71c9 Improve the device resolver logic
Also expose _get_device() as get_device_matching().
2019-03-27 13:34:57 +01:00
Ole André Vadla Ravnås 2ed895b881 Add support for the new eternalize() API 2018-09-17 22:15:27 +02:00
Ole André Vadla Ravnås 72899a4315 Drop convenience APIs and split out tools (#142)
Most use-cases will need to use some JS API that we're not bridging, so
it's better to keep our bindings simple.

It has also become clear that our CLI tools should be split out so Frida-based
tools don't have to depend on colorama, prompt_toolkit, and pygments.
2018-07-10 20:08:56 +02:00