Merge branch 'dev' into zlo/tlsf-and-a-temple-of-memcorrupt

This commit is contained in:
SG
2024-06-03 13:00:50 +01:00
20 changed files with 434 additions and 99 deletions

View File

@@ -1,7 +1,8 @@
entry,status,name,type,params
Version,+,62.0,,
Version,+,63.0,,
Header,+,applications/drivers/subghz/cc1101_ext/cc1101_ext_interconnect.h,,
Header,+,applications/services/bt/bt_service/bt.h,,
Header,+,applications/services/bt/bt_service/bt_keys_storage.h,,
Header,+,applications/services/cli/cli.h,,
Header,+,applications/services/cli/cli_vcp.h,,
Header,+,applications/services/dialogs/dialogs.h,,
@@ -158,6 +159,7 @@ Header,+,lib/nfc/protocols/mf_ultralight/mf_ultralight_listener.h,,
Header,+,lib/nfc/protocols/mf_ultralight/mf_ultralight_poller.h,,
Header,+,lib/nfc/protocols/mf_ultralight/mf_ultralight_poller_sync.h,,
Header,+,lib/nfc/protocols/slix/slix.h,,
Header,+,lib/nfc/protocols/slix/slix_poller.h,,
Header,+,lib/nfc/protocols/st25tb/st25tb.h,,
Header,+,lib/nfc/protocols/st25tb/st25tb_poller.h,,
Header,+,lib/nfc/protocols/st25tb/st25tb_poller_sync.h,,
@@ -206,6 +208,7 @@ Header,+,lib/subghz/protocols/public_api.h,,
Header,+,lib/subghz/protocols/raw.h,,
Header,+,lib/subghz/receiver.h,,
Header,+,lib/subghz/registry.h,,
Header,+,lib/subghz/subghz_file_encoder_worker.h,,
Header,+,lib/subghz/subghz_protocol_registry.h,,
Header,+,lib/subghz/subghz_setting.h,,
Header,+,lib/subghz/subghz_tx_rx_worker.h,,
@@ -222,10 +225,12 @@ Header,+,lib/toolbox/hex.h,,
Header,+,lib/toolbox/keys_dict.h,,
Header,+,lib/toolbox/manchester_decoder.h,,
Header,+,lib/toolbox/manchester_encoder.h,,
Header,+,lib/toolbox/md5_calc.h,,
Header,+,lib/toolbox/name_generator.h,,
Header,+,lib/toolbox/path.h,,
Header,+,lib/toolbox/pretty_format.h,,
Header,+,lib/toolbox/protocols/protocol_dict.h,,
Header,+,lib/toolbox/pulse_protocols/pulse_glue.h,,
Header,+,lib/toolbox/saved_struct.h,,
Header,+,lib/toolbox/simple_array.h,,
Header,+,lib/toolbox/stream/buffered_file_stream.h,,
@@ -234,6 +239,7 @@ Header,+,lib/toolbox/stream/stream.h,,
Header,+,lib/toolbox/stream/string_stream.h,,
Header,+,lib/toolbox/tar/tar_archive.h,,
Header,+,lib/toolbox/value_index.h,,
Header,+,lib/toolbox/varint.h,,
Header,+,lib/toolbox/version.h,,
Header,+,targets/f7/ble_glue/furi_ble/event_dispatcher.h,,
Header,+,targets/f7/ble_glue/furi_ble/gatt.h,,
@@ -587,7 +593,9 @@ Function,-,acosh,double,double
Function,-,acoshf,float,float
Function,-,acoshl,long double,long double
Function,-,acosl,long double,long double
Function,+,aligned_alloc,void*,"size_t, size_t"
Function,-,aligned_alloc,void*,"size_t, size_t"
Function,+,aligned_free,void,void*
Function,+,aligned_malloc,void*,"size_t, size_t"
Function,-,arc4random,__uint32_t,
Function,-,arc4random_buf,void,"void*, size_t"
Function,-,arc4random_uniform,__uint32_t,__uint32_t
@@ -749,8 +757,15 @@ Function,+,ble_svc_serial_update_tx,_Bool,"BleServiceSerial*, uint8_t*, uint16_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_alloc,BtKeysStorage*,const char*
Function,+,bt_keys_storage_delete,_Bool,BtKeysStorage*
Function,+,bt_keys_storage_free,void,BtKeysStorage*
Function,+,bt_keys_storage_load,_Bool,BtKeysStorage*
Function,+,bt_keys_storage_set_default_path,void,Bt*
Function,+,bt_keys_storage_set_file_path,void,"BtKeysStorage*, const char*"
Function,+,bt_keys_storage_set_ram_params,void,"BtKeysStorage*, uint8_t*, uint16_t"
Function,+,bt_keys_storage_set_storage_path,void,"Bt*, const char*"
Function,+,bt_keys_storage_update,_Bool,"BtKeysStorage*, uint8_t*, uint32_t"
Function,+,bt_profile_restore_default,_Bool,Bt*
Function,+,bt_profile_start,FuriHalBleProfileBase*,"Bt*, const FuriHalBleProfileTemplate*, FuriHalBleProfileParams"
Function,+,bt_set_status_changed_callback,void,"Bt*, BtStatusChangedCallback, void*"
@@ -842,7 +857,7 @@ Function,+,compress_alloc,Compress*,uint16_t
Function,+,compress_decode,_Bool,"Compress*, uint8_t*, size_t, uint8_t*, size_t, size_t*"
Function,+,compress_encode,_Bool,"Compress*, uint8_t*, size_t, uint8_t*, size_t, size_t*"
Function,+,compress_free,void,Compress*
Function,+,compress_icon_alloc,CompressIcon*,
Function,+,compress_icon_alloc,CompressIcon*,size_t
Function,+,compress_icon_decode,void,"CompressIcon*, const uint8_t*, uint8_t**"
Function,+,compress_icon_free,void,CompressIcon*
Function,-,copysign,double,"double, double"
@@ -1241,7 +1256,7 @@ Function,+,furi_hal_bus_is_enabled,_Bool,FuriHalBus
Function,+,furi_hal_bus_reset,void,FuriHalBus
Function,+,furi_hal_ccid_ccid_insert_smartcard,void,
Function,+,furi_hal_ccid_ccid_remove_smartcard,void,
Function,+,furi_hal_ccid_set_callbacks,void,CcidCallbacks*
Function,+,furi_hal_ccid_set_callbacks,void,"CcidCallbacks*, void*"
Function,+,furi_hal_cdc_get_ctrl_line_state,uint8_t,uint8_t
Function,+,furi_hal_cdc_get_port_settings,usb_cdc_line_coding*,uint8_t
Function,+,furi_hal_cdc_receive,int32_t,"uint8_t, uint8_t*, uint16_t"
@@ -1694,7 +1709,7 @@ Function,+,furi_mutex_free,void,FuriMutex*
Function,+,furi_mutex_get_owner,FuriThreadId,FuriMutex*
Function,+,furi_mutex_release,FuriStatus,FuriMutex*
Function,+,furi_pubsub_alloc,FuriPubSub*,
Function,-,furi_pubsub_free,void,FuriPubSub*
Function,+,furi_pubsub_free,void,FuriPubSub*
Function,+,furi_pubsub_publish,void,"FuriPubSub*, void*"
Function,+,furi_pubsub_subscribe,FuriPubSubSubscription*,"FuriPubSub*, FuriPubSubCallback, void*"
Function,+,furi_pubsub_unsubscribe,void,"FuriPubSub*, FuriPubSubSubscription*"
@@ -1918,8 +1933,10 @@ Function,+,icon_animation_set_update_callback,void,"IconAnimation*, IconAnimatio
Function,+,icon_animation_start,void,IconAnimation*
Function,+,icon_animation_stop,void,IconAnimation*
Function,+,icon_get_data,const uint8_t*,const Icon*
Function,+,icon_get_height,uint8_t,const Icon*
Function,+,icon_get_width,uint8_t,const Icon*
Function,+,icon_get_frame_count,uint32_t,const Icon*
Function,+,icon_get_frame_data,const uint8_t*,"const Icon*, uint32_t"
Function,+,icon_get_height,uint16_t,const Icon*
Function,+,icon_get_width,uint16_t,const Icon*
Function,-,ilogb,int,double
Function,-,ilogbf,int,float
Function,-,ilogbl,int,long double
@@ -2388,13 +2405,14 @@ Function,-,mbedtls_sha256_update,int,"mbedtls_sha256_context*, const unsigned ch
Function,-,mblen,int,"const char*, size_t"
Function,-,mbstowcs,size_t,"wchar_t*, const char*, size_t"
Function,-,mbtowc,int,"wchar_t*, const char*, size_t"
Function,+,md5_calc_file,_Bool,"File*, const char*, unsigned char[16], FS_Error*"
Function,+,md5_string_calc_file,_Bool,"File*, const char*, FuriString*, FS_Error*"
Function,-,memccpy,void*,"void*, const void*, int, size_t"
Function,+,memchr,void*,"const void*, int, size_t"
Function,+,memcmp,int,"const void*, const void*, size_t"
Function,+,memcpy,void*,"void*, const void*, size_t"
Function,-,memmem,void*,"const void*, size_t, const void*, size_t"
Function,+,memmgr_aux_pool_alloc,void*,size_t
Function,+,memmgr_aux_pool_get_free,size_t,
Function,-,memmgr_alloc_from_pool,void*,size_t
Function,+,memmgr_get_free_heap,size_t,
Function,+,memmgr_get_minimum_free_heap,size_t,
Function,+,memmgr_get_total_heap,size_t,
@@ -2402,7 +2420,8 @@ Function,+,memmgr_heap_disable_thread_trace,void,FuriThreadId
Function,+,memmgr_heap_enable_thread_trace,void,FuriThreadId
Function,+,memmgr_heap_get_max_free_block,size_t,
Function,+,memmgr_heap_get_thread_memory,size_t,FuriThreadId
Function,+,memmgr_heap_walk_blocks,void,"BlockWalker, void*"
Function,+,memmgr_heap_printf_free_blocks,void,
Function,-,memmgr_pool_get_free,size_t,
Function,-,memmgr_pool_get_max_block,size_t,
Function,+,memmove,void*,"void*, const void*, size_t"
Function,-,mempcpy,void*,"void*, const void*, size_t"
@@ -2850,6 +2869,11 @@ Function,+,protocol_dict_render_brief_data,void,"ProtocolDict*, FuriString*, siz
Function,+,protocol_dict_render_data,void,"ProtocolDict*, FuriString*, size_t"
Function,+,protocol_dict_render_uid,void,"ProtocolDict*, FuriString*, size_t"
Function,+,protocol_dict_set_data,void,"ProtocolDict*, size_t, const uint8_t*, size_t"
Function,+,pulse_glue_alloc,PulseGlue*,
Function,+,pulse_glue_free,void,PulseGlue*
Function,+,pulse_glue_pop,void,"PulseGlue*, uint32_t*, uint32_t*"
Function,+,pulse_glue_push,_Bool,"PulseGlue*, _Bool, uint32_t"
Function,+,pulse_glue_reset,void,PulseGlue*
Function,-,pulse_reader_alloc,PulseReader*,"const GpioPin*, uint32_t"
Function,-,pulse_reader_free,void,PulseReader*
Function,-,pulse_reader_receive,uint32_t,"PulseReader*, int"
@@ -2990,6 +3014,11 @@ Function,+,slix_is_counter_increment_protected,_Bool,const SlixData*
Function,+,slix_is_equal,_Bool,"const SlixData*, const SlixData*"
Function,+,slix_is_privacy_mode,_Bool,const SlixData*
Function,+,slix_load,_Bool,"SlixData*, FlipperFormat*, uint32_t"
Function,+,slix_poller_get_nxp_system_info,SlixError,"SlixPoller*, SlixSystemInfo*"
Function,+,slix_poller_get_random_number,SlixError,"SlixPoller*, SlixRandomNumber*"
Function,+,slix_poller_read_signature,SlixError,"SlixPoller*, SlixSignature*"
Function,+,slix_poller_send_frame,SlixError,"SlixPoller*, const BitBuffer*, BitBuffer*, uint32_t"
Function,+,slix_poller_set_password,SlixError,"SlixPoller*, SlixPasswordType, SlixPassword, SlixRandomNumber"
Function,+,slix_reset,void,SlixData*
Function,+,slix_save,_Bool,"const SlixData*, FlipperFormat*"
Function,+,slix_set_uid,_Bool,"SlixData*, const uint8_t*, size_t"
@@ -3242,6 +3271,13 @@ Function,+,subghz_environment_set_alutech_at_4n_rainbow_table_file_name,void,"Su
Function,+,subghz_environment_set_came_atomo_rainbow_table_file_name,void,"SubGhzEnvironment*, const char*"
Function,+,subghz_environment_set_nice_flor_s_rainbow_table_file_name,void,"SubGhzEnvironment*, const char*"
Function,+,subghz_environment_set_protocol_registry,void,"SubGhzEnvironment*, const SubGhzProtocolRegistry*"
Function,+,subghz_file_encoder_worker_alloc,SubGhzFileEncoderWorker*,
Function,+,subghz_file_encoder_worker_callback_end,void,"SubGhzFileEncoderWorker*, SubGhzFileEncoderWorkerCallbackEnd, void*"
Function,+,subghz_file_encoder_worker_free,void,SubGhzFileEncoderWorker*
Function,+,subghz_file_encoder_worker_get_level_duration,LevelDuration,void*
Function,+,subghz_file_encoder_worker_is_running,_Bool,SubGhzFileEncoderWorker*
Function,+,subghz_file_encoder_worker_start,_Bool,"SubGhzFileEncoderWorker*, const char*, const char*"
Function,+,subghz_file_encoder_worker_stop,void,SubGhzFileEncoderWorker*
Function,-,subghz_keystore_alloc,SubGhzKeystore*,
Function,-,subghz_keystore_free,void,SubGhzKeystore*
Function,-,subghz_keystore_get_data,SubGhzKeyArray_t*,SubGhzKeystore*
@@ -3440,6 +3476,12 @@ Function,+,variable_item_list_set_selected_item,void,"VariableItemList*, uint8_t
Function,+,variable_item_set_current_value_index,void,"VariableItem*, uint8_t"
Function,+,variable_item_set_current_value_text,void,"VariableItem*, const char*"
Function,+,variable_item_set_values_count,void,"VariableItem*, uint8_t"
Function,+,varint_int32_length,size_t,int32_t
Function,+,varint_int32_pack,size_t,"int32_t, uint8_t*"
Function,+,varint_int32_unpack,size_t,"int32_t*, const uint8_t*, size_t"
Function,+,varint_uint32_length,size_t,uint32_t
Function,+,varint_uint32_pack,size_t,"uint32_t, uint8_t*"
Function,+,varint_uint32_unpack,size_t,"uint32_t*, const uint8_t*, size_t"
Function,-,vasiprintf,int,"char**, const char*, __gnuc_va_list"
Function,-,vasniprintf,char*,"char*, size_t*, const char*, __gnuc_va_list"
Function,-,vasnprintf,char*,"char*, size_t*, const char*, __gnuc_va_list"
1 entry status name type params
2 Version + 62.0 63.0
3 Header + applications/drivers/subghz/cc1101_ext/cc1101_ext_interconnect.h
4 Header + applications/services/bt/bt_service/bt.h
5 Header + applications/services/bt/bt_service/bt_keys_storage.h
6 Header + applications/services/cli/cli.h
7 Header + applications/services/cli/cli_vcp.h
8 Header + applications/services/dialogs/dialogs.h
159 Header + lib/nfc/protocols/mf_ultralight/mf_ultralight_poller.h
160 Header + lib/nfc/protocols/mf_ultralight/mf_ultralight_poller_sync.h
161 Header + lib/nfc/protocols/slix/slix.h
162 Header + lib/nfc/protocols/slix/slix_poller.h
163 Header + lib/nfc/protocols/st25tb/st25tb.h
164 Header + lib/nfc/protocols/st25tb/st25tb_poller.h
165 Header + lib/nfc/protocols/st25tb/st25tb_poller_sync.h
208 Header + lib/subghz/protocols/raw.h
209 Header + lib/subghz/receiver.h
210 Header + lib/subghz/registry.h
211 Header + lib/subghz/subghz_file_encoder_worker.h
212 Header + lib/subghz/subghz_protocol_registry.h
213 Header + lib/subghz/subghz_setting.h
214 Header + lib/subghz/subghz_tx_rx_worker.h
225 Header + lib/toolbox/keys_dict.h
226 Header + lib/toolbox/manchester_decoder.h
227 Header + lib/toolbox/manchester_encoder.h
228 Header + lib/toolbox/md5_calc.h
229 Header + lib/toolbox/name_generator.h
230 Header + lib/toolbox/path.h
231 Header + lib/toolbox/pretty_format.h
232 Header + lib/toolbox/protocols/protocol_dict.h
233 Header + lib/toolbox/pulse_protocols/pulse_glue.h
234 Header + lib/toolbox/saved_struct.h
235 Header + lib/toolbox/simple_array.h
236 Header + lib/toolbox/stream/buffered_file_stream.h
239 Header + lib/toolbox/stream/string_stream.h
240 Header + lib/toolbox/tar/tar_archive.h
241 Header + lib/toolbox/value_index.h
242 Header + lib/toolbox/varint.h
243 Header + lib/toolbox/version.h
244 Header + targets/f7/ble_glue/furi_ble/event_dispatcher.h
245 Header + targets/f7/ble_glue/furi_ble/gatt.h
593 Function - acoshf float float
594 Function - acoshl long double long double
595 Function - acosl long double long double
596 Function + - aligned_alloc void* size_t, size_t
597 Function + aligned_free void void*
598 Function + aligned_malloc void* size_t, size_t
599 Function - arc4random __uint32_t
600 Function - arc4random_buf void void*, size_t
601 Function - arc4random_uniform __uint32_t __uint32_t
757 Function - bsearch void* const void*, const void*, size_t, size_t, __compar_fn_t
758 Function + bt_disconnect void Bt*
759 Function + bt_forget_bonded_devices void Bt*
760 Function + bt_keys_storage_alloc BtKeysStorage* const char*
761 Function + bt_keys_storage_delete _Bool BtKeysStorage*
762 Function + bt_keys_storage_free void BtKeysStorage*
763 Function + bt_keys_storage_load _Bool BtKeysStorage*
764 Function + bt_keys_storage_set_default_path void Bt*
765 Function + bt_keys_storage_set_file_path void BtKeysStorage*, const char*
766 Function + bt_keys_storage_set_ram_params void BtKeysStorage*, uint8_t*, uint16_t
767 Function + bt_keys_storage_set_storage_path void Bt*, const char*
768 Function + bt_keys_storage_update _Bool BtKeysStorage*, uint8_t*, uint32_t
769 Function + bt_profile_restore_default _Bool Bt*
770 Function + bt_profile_start FuriHalBleProfileBase* Bt*, const FuriHalBleProfileTemplate*, FuriHalBleProfileParams
771 Function + bt_set_status_changed_callback void Bt*, BtStatusChangedCallback, void*
857 Function + compress_decode _Bool Compress*, uint8_t*, size_t, uint8_t*, size_t, size_t*
858 Function + compress_encode _Bool Compress*, uint8_t*, size_t, uint8_t*, size_t, size_t*
859 Function + compress_free void Compress*
860 Function + compress_icon_alloc CompressIcon* size_t
861 Function + compress_icon_decode void CompressIcon*, const uint8_t*, uint8_t**
862 Function + compress_icon_free void CompressIcon*
863 Function - copysign double double, double
1256 Function + furi_hal_bus_reset void FuriHalBus
1257 Function + furi_hal_ccid_ccid_insert_smartcard void
1258 Function + furi_hal_ccid_ccid_remove_smartcard void
1259 Function + furi_hal_ccid_set_callbacks void CcidCallbacks* CcidCallbacks*, void*
1260 Function + furi_hal_cdc_get_ctrl_line_state uint8_t uint8_t
1261 Function + furi_hal_cdc_get_port_settings usb_cdc_line_coding* uint8_t
1262 Function + furi_hal_cdc_receive int32_t uint8_t, uint8_t*, uint16_t
1709 Function + furi_mutex_get_owner FuriThreadId FuriMutex*
1710 Function + furi_mutex_release FuriStatus FuriMutex*
1711 Function + furi_pubsub_alloc FuriPubSub*
1712 Function - + furi_pubsub_free void FuriPubSub*
1713 Function + furi_pubsub_publish void FuriPubSub*, void*
1714 Function + furi_pubsub_subscribe FuriPubSubSubscription* FuriPubSub*, FuriPubSubCallback, void*
1715 Function + furi_pubsub_unsubscribe void FuriPubSub*, FuriPubSubSubscription*
1933 Function + icon_animation_start void IconAnimation*
1934 Function + icon_animation_stop void IconAnimation*
1935 Function + icon_get_data const uint8_t* const Icon*
1936 Function + icon_get_height icon_get_frame_count uint8_t uint32_t const Icon*
1937 Function + icon_get_width icon_get_frame_data uint8_t const uint8_t* const Icon* const Icon*, uint32_t
1938 Function + icon_get_height uint16_t const Icon*
1939 Function + icon_get_width uint16_t const Icon*
1940 Function - ilogb int double
1941 Function - ilogbf int float
1942 Function - ilogbl int long double
2405 Function - mblen int const char*, size_t
2406 Function - mbstowcs size_t wchar_t*, const char*, size_t
2407 Function - mbtowc int wchar_t*, const char*, size_t
2408 Function + md5_calc_file _Bool File*, const char*, unsigned char[16], FS_Error*
2409 Function + md5_string_calc_file _Bool File*, const char*, FuriString*, FS_Error*
2410 Function - memccpy void* void*, const void*, int, size_t
2411 Function + memchr void* const void*, int, size_t
2412 Function + memcmp int const void*, const void*, size_t
2413 Function + memcpy void* void*, const void*, size_t
2414 Function - memmem void* const void*, size_t, const void*, size_t
2415 Function + - memmgr_aux_pool_alloc memmgr_alloc_from_pool void* size_t
Function + memmgr_aux_pool_get_free size_t
2416 Function + memmgr_get_free_heap size_t
2417 Function + memmgr_get_minimum_free_heap size_t
2418 Function + memmgr_get_total_heap size_t
2420 Function + memmgr_heap_enable_thread_trace void FuriThreadId
2421 Function + memmgr_heap_get_max_free_block size_t
2422 Function + memmgr_heap_get_thread_memory size_t FuriThreadId
2423 Function + memmgr_heap_walk_blocks memmgr_heap_printf_free_blocks void BlockWalker, void*
2424 Function - memmgr_pool_get_free size_t
2425 Function - memmgr_pool_get_max_block size_t
2426 Function + memmove void* void*, const void*, size_t
2427 Function - mempcpy void* void*, const void*, size_t
2869 Function + protocol_dict_render_data void ProtocolDict*, FuriString*, size_t
2870 Function + protocol_dict_render_uid void ProtocolDict*, FuriString*, size_t
2871 Function + protocol_dict_set_data void ProtocolDict*, size_t, const uint8_t*, size_t
2872 Function + pulse_glue_alloc PulseGlue*
2873 Function + pulse_glue_free void PulseGlue*
2874 Function + pulse_glue_pop void PulseGlue*, uint32_t*, uint32_t*
2875 Function + pulse_glue_push _Bool PulseGlue*, _Bool, uint32_t
2876 Function + pulse_glue_reset void PulseGlue*
2877 Function - pulse_reader_alloc PulseReader* const GpioPin*, uint32_t
2878 Function - pulse_reader_free void PulseReader*
2879 Function - pulse_reader_receive uint32_t PulseReader*, int
3014 Function + slix_is_equal _Bool const SlixData*, const SlixData*
3015 Function + slix_is_privacy_mode _Bool const SlixData*
3016 Function + slix_load _Bool SlixData*, FlipperFormat*, uint32_t
3017 Function + slix_poller_get_nxp_system_info SlixError SlixPoller*, SlixSystemInfo*
3018 Function + slix_poller_get_random_number SlixError SlixPoller*, SlixRandomNumber*
3019 Function + slix_poller_read_signature SlixError SlixPoller*, SlixSignature*
3020 Function + slix_poller_send_frame SlixError SlixPoller*, const BitBuffer*, BitBuffer*, uint32_t
3021 Function + slix_poller_set_password SlixError SlixPoller*, SlixPasswordType, SlixPassword, SlixRandomNumber
3022 Function + slix_reset void SlixData*
3023 Function + slix_save _Bool const SlixData*, FlipperFormat*
3024 Function + slix_set_uid _Bool SlixData*, const uint8_t*, size_t
3271 Function + subghz_environment_set_came_atomo_rainbow_table_file_name void SubGhzEnvironment*, const char*
3272 Function + subghz_environment_set_nice_flor_s_rainbow_table_file_name void SubGhzEnvironment*, const char*
3273 Function + subghz_environment_set_protocol_registry void SubGhzEnvironment*, const SubGhzProtocolRegistry*
3274 Function + subghz_file_encoder_worker_alloc SubGhzFileEncoderWorker*
3275 Function + subghz_file_encoder_worker_callback_end void SubGhzFileEncoderWorker*, SubGhzFileEncoderWorkerCallbackEnd, void*
3276 Function + subghz_file_encoder_worker_free void SubGhzFileEncoderWorker*
3277 Function + subghz_file_encoder_worker_get_level_duration LevelDuration void*
3278 Function + subghz_file_encoder_worker_is_running _Bool SubGhzFileEncoderWorker*
3279 Function + subghz_file_encoder_worker_start _Bool SubGhzFileEncoderWorker*, const char*, const char*
3280 Function + subghz_file_encoder_worker_stop void SubGhzFileEncoderWorker*
3281 Function - subghz_keystore_alloc SubGhzKeystore*
3282 Function - subghz_keystore_free void SubGhzKeystore*
3283 Function - subghz_keystore_get_data SubGhzKeyArray_t* SubGhzKeystore*
3476 Function + variable_item_set_current_value_index void VariableItem*, uint8_t
3477 Function + variable_item_set_current_value_text void VariableItem*, const char*
3478 Function + variable_item_set_values_count void VariableItem*, uint8_t
3479 Function + varint_int32_length size_t int32_t
3480 Function + varint_int32_pack size_t int32_t, uint8_t*
3481 Function + varint_int32_unpack size_t int32_t*, const uint8_t*, size_t
3482 Function + varint_uint32_length size_t uint32_t
3483 Function + varint_uint32_pack size_t uint32_t, uint8_t*
3484 Function + varint_uint32_unpack size_t uint32_t*, const uint8_t*, size_t
3485 Function - vasiprintf int char**, const char*, __gnuc_va_list
3486 Function - vasniprintf char* char*, size_t*, const char*, __gnuc_va_list
3487 Function - vasnprintf char* char*, size_t*, const char*, __gnuc_va_list

View File

@@ -184,6 +184,7 @@ static usbd_device* usb_dev;
static bool connected = false;
static bool smartcard_inserted = true;
static CcidCallbacks* callbacks[CCID_TOTAL_SLOTS] = {NULL};
static void* cb_ctx[CCID_TOTAL_SLOTS];
static void* ccid_set_string_descr(char* str) {
furi_check(str);
@@ -330,7 +331,9 @@ void CALLBACK_CCID_IccPowerOn(
if(smartcard_inserted) {
if(callbacks[CCID_SLOT_INDEX] != NULL) {
callbacks[CCID_SLOT_INDEX]->icc_power_on_callback(
responseDataBlock->abData, &responseDataBlock->dwLength, NULL);
responseDataBlock->abData,
&responseDataBlock->dwLength,
cb_ctx[CCID_SLOT_INDEX]);
responseDataBlock->bStatus = CCID_COMMANDSTATUS_PROCESSEDWITHOUTERROR |
CCID_ICCSTATUS_PRESENTANDACTIVE;
} else {
@@ -364,7 +367,7 @@ void CALLBACK_CCID_XfrBlock(
receivedXfrBlock->dwLength,
responseDataBlock->abData,
&responseDataBlock->dwLength,
NULL);
cb_ctx[CCID_SLOT_INDEX]);
responseDataBlock->bStatus = CCID_COMMANDSTATUS_PROCESSEDWITHOUTERROR |
CCID_ICCSTATUS_PRESENTANDACTIVE;
} else {
@@ -389,8 +392,9 @@ void furi_hal_ccid_ccid_remove_smartcard(void) {
smartcard_inserted = false;
}
void furi_hal_ccid_set_callbacks(CcidCallbacks* cb) {
void furi_hal_ccid_set_callbacks(CcidCallbacks* cb, void* context) {
callbacks[CCID_SLOT_INDEX] = cb;
cb_ctx[CCID_SLOT_INDEX] = context;
}
static void ccid_rx_ep_callback(usbd_device* dev, uint8_t event, uint8_t ep) {