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

@@ -44,7 +44,8 @@ static uint32_t desktop_pin_code_pack(const DesktopPinCode* pin_code) {
}
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) {

View File

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

View File

@@ -13,7 +13,7 @@
#define DEFAULT_PIN_X 64
#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
struct DesktopViewPinInput {