* CCID: Add CCIDWorker
This new thread allows for Flipper to receive CCID messages bigger than CCID_EPSIZE
by receiving multiple packaged in a row and adding them to the buffer
* Fixed data types
* Format sources
* Review feedback
* Variable names
* FuriHal: cleanup and fortify code in furi_hal_usb_ccid
* Review feedbacks (also added extra checks)
* Fixed use after free
* Fix lint
* Sync API Symbols version
* Sync API Symbols version again
* FuriHal: fix clangd warnings, add doxygen comments for furi_hal_usb_ccid.h
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
* Original pointer can be const
* Back to const icons
* Missed this one
* Simpler string alloc
* Single allocation and header struct for static icons
* Shared allocation and meta struct for animated icons
* Only try to load if dir exists
* Restructure momentum lib
* Use some internal headers
* Swap icons at draw
* Properly init and free, no more original in icon struct
* Detached close event
* Consistency
* Unload main menu when opening apps
* Refactor LoaderMenu with ViewHolder
* Show loading icon
* Remember selected items after reloading menu
* Consistency
* Similar code structure to ofw
* Load/unload custom app list with main menu
* Fix momentum app for new mainmenu logic
* csc parser
* Added verification through keys. Recognize new cards.
* Correct typo, add comments
* Updated output word choice
* Added verify key in csc_parse to avoid false positive
* Format
* updated verification process
- Deleted key-based verification
- Added memory based checksum and backup block checks to ensure better verification performance
* Formatting and More Verify Steps
Added card type checks and verify for csc specific memory format
Formatted the code (indentation etc.)
* Update csc.c
* Test cleanup parser a bit
* Update changelog
---------
Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
* CCID: Improve request and response data handling
- Add iso7816_set_response function: serves a helpers to set SW1 and SW2 values
- improved iso7816_read_response_apdu by correctly parsing Lc and Le values
- add client script to make testing easier
* lint and rename
* Format
* Review changes: pragma once, typedef
* Move command/response data and datalen into respective structures
* Remove conditional for Lc=0
* Fix comment: Le
* Make PVS happy and fix spelling
Co-authored-by: あく <alleteam@gmail.com>