Desktop: Sanity check PIN length for good measure

This commit is contained in:
Willy-JL
2024-09-02 00:32:30 +02:00
parent a807a9e81d
commit 9a1372435e
4 changed files with 7 additions and 3 deletions

View File

@@ -10,6 +10,8 @@
- Seader: Card parsing and saving UI and logic improvements (by @bettse) - Seader: Card parsing and saving UI and logic improvements (by @bettse)
### Fixed: ### Fixed:
- Desktop: Fix disabling keybinds (by @Willy-JL) - Desktop:
- Fix disabling keybinds (by @Willy-JL)
- Sanity check PIN length for good measure (by @Willy-JL)
- Settings: Fix duplicates in Power Settings when opening submenus (by @Willy-JL) - Settings: Fix duplicates in Power Settings when opening submenus (by @Willy-JL)
- RGB Backlight: Fix config migration (by @Willy-JL) - RGB Backlight: Fix config migration (by @Willy-JL)

View File

@@ -44,7 +44,8 @@ static uint32_t desktop_pin_code_pack(const DesktopPinCode* pin_code) {
} }
bool desktop_pin_code_is_set(void) { bool desktop_pin_code_is_set(void) {
return furi_hal_rtc_get_pin_value() >> DESKTOP_PIN_CODE_LENGTH_OFFSET; uint8_t length = furi_hal_rtc_get_pin_value() >> DESKTOP_PIN_CODE_LENGTH_OFFSET;
return length >= DESKTOP_PIN_CODE_MIN_LEN && length <= DESKTOP_PIN_CODE_MAX_LEN;
} }
void desktop_pin_code_set(const DesktopPinCode* pin_code) { void desktop_pin_code_set(const DesktopPinCode* pin_code) {

View File

@@ -3,6 +3,7 @@
#include <stdint.h> #include <stdint.h>
#include <stdbool.h> #include <stdbool.h>
#define DESKTOP_PIN_CODE_MIN_LEN (4)
#define DESKTOP_PIN_CODE_MAX_LEN (10) #define DESKTOP_PIN_CODE_MAX_LEN (10)
#define DESKTOP_SETTINGS_RUN_PIN_SETUP_ARG "run_pin_setup" #define DESKTOP_SETTINGS_RUN_PIN_SETUP_ARG "run_pin_setup"

View File

@@ -13,7 +13,7 @@
#define DEFAULT_PIN_X 64 #define DEFAULT_PIN_X 64
#define DEFAULT_PIN_Y 32 #define DEFAULT_PIN_Y 32
#define MIN_PIN_LENGTH 4 #define MIN_PIN_LENGTH DESKTOP_PIN_CODE_MIN_LEN
#define MAX_PIN_LENGTH DESKTOP_PIN_CODE_MAX_LEN #define MAX_PIN_LENGTH DESKTOP_PIN_CODE_MAX_LEN
struct DesktopViewPinInput { struct DesktopViewPinInput {