Teleop
Teleop provides a means to attach to a local process knowing its ID, and then provides RPC capabilities to the client.
It currently only supports UNIX socket and Cap’n Proto RPC, but it is aimed at providing more ways to attach to a process and to communicate with it.
UNIX socket
The implementation is very much inspired by Java Attach API:
- the process to be teleoperated waits for a signal
- if some conditions are met then it opens the UNIX socket at a known location
- the client can then connect to the unix socket and use the RPC protocol set up by the remote process
Cap'n Proto RPC
Teleop provides a root interface named Teleop (see teleop.capnp) which gives access to arbitrary services.