diff options
| author | blasty <blasty@local> | 2026-07-10 15:10:25 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-10 15:10:25 +0200 |
| commit | 690a34512eaed933917f2d2c1cf12327923b39ac (patch) | |
| tree | bfeae42df8ffdfab16ce7324ed38f40250eff51f /server | |
| parent | sync: extract shared settle/wait helpers (idatui/_sync.py) (diff) | |
| download | ida-tui-690a34512eaed933917f2d2c1cf12327923b39ac.tar.gz ida-tui-690a34512eaed933917f2d2c1cf12327923b39ac.tar.xz ida-tui-690a34512eaed933917f2d2c1cf12327923b39ac.zip | |
rpc: unix-socket puppeteering server (raw keys + introspection + screen)
Run the TUI with --rpc <sock> and it renders normally while an asyncio
listener on the same loop lets another process drive it. Handlers touch
the UI directly (same loop, no thread hop), so every injected key has the
identical on-screen effect a keyboard would — the point for livestreaming.
Newline-delimited JSON. v1 methods: keys/text (raw injection, via the same
_press_keys the pilot uses; text can interleave wait:<ms> for a typed-out
look), state/view/screen/functions (introspection; screen() is a full
plain-text render of exactly what the viewer sees). No auth by design —
the socket is 0600, local only.
tests/rpc_smoke.py drives it end-to-end over a real socket (7 green).
Diffstat (limited to 'server')
0 files changed, 0 insertions, 0 deletions
