[FL-1955] CLI RPC (#781)

- RPC: added CLI command to start session - all input bytes goes into RPC, all RPC output goes into VCP
- RPC: added command to close session (actually it only notifies transport layer)
- RPC: added recursive rmdir
- RPC: hard-coded listing for root directory (any, ext, int)
- Fixed CLI leak
- Fixed furi_record_delete leak
- Unit tests: repaired
- Unit tests: corrected output - remove excess, change dots with progress spinner
- Unit tests: added leak check
- Unit tests: SD mount check before start

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
Albert Kharisov
2021-10-26 20:05:28 +04:00
committed by GitHub
parent f8542af653
commit 400d672e81
25 changed files with 775 additions and 245 deletions

View File

@@ -34,7 +34,7 @@ void rpc_system_app_start_process(const PB_Main* request, void* context) {
furi_record_close("loader");
rpc_encode_and_send_empty(rpc, request->command_id, result);
rpc_send_and_release_empty(rpc, request->command_id, result);
}
void rpc_system_app_lock_status_process(const PB_Main* request, void* context) {
@@ -56,7 +56,8 @@ void rpc_system_app_lock_status_process(const PB_Main* request, void* context) {
furi_record_close("loader");
rpc_encode_and_send(rpc, &response);
rpc_send_and_release(rpc, &response);
pb_release(&PB_Main_msg, &response);
}
void* rpc_system_app_alloc(Rpc* rpc) {