passkey 보안: 런타임 플래그
- 런타임 플래그 factory_provisioned=0인 경우에만 passkey 쓰기 가능
This commit is contained in:
@@ -112,6 +112,9 @@ void fds_default_value_set(void)
|
||||
m_config.piezo_num_samples = 100; /* 100 samples */
|
||||
m_config.piezo_cycles = 7; /* 7 cycles */
|
||||
m_config.piezo_averaging = 3; /* 3x averaging */
|
||||
|
||||
/* Factory provisioning — default: not provisioned */
|
||||
m_config.factory_provisioned = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
* via the Nordic FDS library. Replaces external EEPROM and coexists safely
|
||||
* with the SoftDevice.
|
||||
*
|
||||
* config_data_t (48 bytes, packed):
|
||||
* config_data_t (49 bytes, packed):
|
||||
* magic_number (4B) : format validation (0x20231226)
|
||||
* hw_no (12B): hardware version string
|
||||
* serial_no (12B): serial number (also used as BLE device name)
|
||||
@@ -14,6 +14,7 @@
|
||||
* reset_status (1B) : reset cause code
|
||||
* life_cycle (4B) : device usage count
|
||||
* piezo_* (8B) : piezo measurement parameters
|
||||
* factory_provisioned(1B): passkey provisioning lock flag
|
||||
*
|
||||
* API:
|
||||
* fs_storage_init() : initialise FDS (once at boot)
|
||||
@@ -65,7 +66,10 @@ typedef struct
|
||||
uint16_t piezo_averaging; /* 2B - averages per channel (1..10) */
|
||||
uint16_t piezo_delay_us; /* 2B - delay from TX pulse to ADC start (us) (0..30) */
|
||||
uint16_t piezo_num_samples; /* 2B - ADC sample count (80..140) */
|
||||
} config_data_t; /* Total: 48 bytes */
|
||||
|
||||
/* Factory provisioning lock */
|
||||
uint8_t factory_provisioned; /* 1B - 0=passkey not set, 1=passkey set (locked) */
|
||||
} config_data_t; /* Total: 49 bytes */
|
||||
|
||||
extern config_data_t m_config;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user