-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
14 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,27 +5,35 @@ | |
|
||
## Description | ||
|
||
Simple RPC service providing an API for controlling every aspect of the target machine for automation purposes. | ||
|
||
This project includes two components: | ||
* Server binary written in C exposing a protocol to call native C functions for controlling every aspect of | ||
|
||
* Server binary written in C exposing a protocol to call native C functions. | ||
* Client written in Python3 to communicate with the server | ||
|
||
Simple remote control process requiring a single executable to be uploaded and run on the remote host. | ||
This executable then provides a protocol to call native C functions which makes it possible to control | ||
every aspect of the connected machine. | ||
The python client utilizes the ability to call native functions in order to provide APIs for different aspects: | ||
|
||
For more information about the client which utilizes these abilities, please view its README here: | ||
https://github.com/doronz88/rpc-project/tree/master/src/rpcclient | ||
* Remote shell commands | ||
* Filesystem management (APIs for `open()`, `read()`, etc...) | ||
* Network management (WiFi scan, TCP connect, etc...) | ||
* Darwin only: | ||
* Multimedia automation (recording and playing) | ||
* Preferences managemnent (remote manage CFPreference and SCPreferences) | ||
* Process management (kill, list, query open FDs, etc...) | ||
|
||
## Building C Server | ||
|
||
macOS & Linux: | ||
|
||
```shell | ||
git clone [email protected]:doronz88/rpc-project.git | ||
cd src/rpcserver | ||
make | ||
``` | ||
|
||
On iOS: | ||
|
||
```shell | ||
git clone [email protected]:doronz88/rpc-project.git | ||
cd src | ||
|