[FL-2809] Rework BLE key storage (#2154)

* bt: disconnect first on profile change
* bt keys: rework bt keys
* saved struct: add payload size getter to API
* bt: rework bt with new key storage API
* bt: add keys storage operation to bt API
* hid: save bt keys on sd card
* bt: add unit tests for key storage
* bt: working profile switch
* bt: cleanup
* bt hid: change keys storage path

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
gornekich
2022-12-20 16:32:24 +04:00
committed by GitHub
parent e7107e39f7
commit 4cee550cc6
13 changed files with 391 additions and 48 deletions

View File

@@ -1,5 +1,5 @@
entry,status,name,type,params
Version,+,11.1,,
Version,+,11.2,,
Header,+,applications/services/bt/bt_service/bt.h,,
Header,+,applications/services/cli/cli.h,,
Header,+,applications/services/cli/cli_vcp.h,,
@@ -562,6 +562,8 @@ Function,+,ble_glue_wait_for_c2_start,_Bool,int32_t
Function,-,bsearch,void*,"const void*, const void*, size_t, size_t, __compar_fn_t"
Function,+,bt_disconnect,void,Bt*
Function,+,bt_forget_bonded_devices,void,Bt*
Function,+,bt_keys_storage_set_storage_path,void,"Bt*, const char*"
Function,+,bt_keys_storage_set_default_path,void,Bt*
Function,+,bt_set_profile,_Bool,"Bt*, BtProfile"
Function,+,bt_set_status_changed_callback,void,"Bt*, BtStatusChangedCallback, void*"
Function,+,buffered_file_stream_alloc,Stream*,Storage*
@@ -2321,6 +2323,7 @@ Function,+,rpc_system_app_set_data_exchange_callback,void,"RpcAppSystem*, RpcApp
Function,+,rpc_system_app_set_error_code,void,"RpcAppSystem*, uint32_t"
Function,+,rpc_system_app_set_error_text,void,"RpcAppSystem*, const char*"
Function,-,rpmatch,int,const char*
Function,+,saved_struct_get_payload_size,_Bool,"const char*, uint8_t, uint8_t, size_t*"
Function,+,saved_struct_load,_Bool,"const char*, void*, size_t, uint8_t, uint8_t"
Function,+,saved_struct_save,_Bool,"const char*, void*, size_t, uint8_t, uint8_t"
Function,-,scalbln,double,"double, long int"
1 entry status name type params
2 Version + 11.1 11.2
3 Header + applications/services/bt/bt_service/bt.h
4 Header + applications/services/cli/cli.h
5 Header + applications/services/cli/cli_vcp.h
562 Function - bsearch void* const void*, const void*, size_t, size_t, __compar_fn_t
563 Function + bt_disconnect void Bt*
564 Function + bt_forget_bonded_devices void Bt*
565 Function + bt_keys_storage_set_storage_path void Bt*, const char*
566 Function + bt_keys_storage_set_default_path void Bt*
567 Function + bt_set_profile _Bool Bt*, BtProfile
568 Function + bt_set_status_changed_callback void Bt*, BtStatusChangedCallback, void*
569 Function + buffered_file_stream_alloc Stream* Storage*
2323 Function + rpc_system_app_set_error_code void RpcAppSystem*, uint32_t
2324 Function + rpc_system_app_set_error_text void RpcAppSystem*, const char*
2325 Function - rpmatch int const char*
2326 Function + saved_struct_get_payload_size _Bool const char*, uint8_t, uint8_t, size_t*
2327 Function + saved_struct_load _Bool const char*, void*, size_t, uint8_t, uint8_t
2328 Function + saved_struct_save _Bool const char*, void*, size_t, uint8_t, uint8_t
2329 Function - scalbln double double, long int