mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-01-08 22:40:59 +00:00
don't clear PIN on Initialize
This commit is contained in:
parent
956546ae54
commit
4cbf29505d
@ -113,7 +113,7 @@ void fsm_msgInitialize(Initialize *msg)
|
|||||||
(void)msg;
|
(void)msg;
|
||||||
recovery_abort();
|
recovery_abort();
|
||||||
signing_abort();
|
signing_abort();
|
||||||
session_clear();
|
session_clear(false); // do not clear PIN
|
||||||
fsm_msgGetFeatures(0);
|
fsm_msgGetFeatures(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -447,7 +447,7 @@ void fsm_msgCipherKeyValue(CipherKeyValue *msg)
|
|||||||
void fsm_msgClearSession(ClearSession *msg)
|
void fsm_msgClearSession(ClearSession *msg)
|
||||||
{
|
{
|
||||||
(void)msg;
|
(void)msg;
|
||||||
session_clear();
|
session_clear(true); // clear PIN as well
|
||||||
fsm_sendSuccess("Session cleared");
|
fsm_sendSuccess("Session cleared");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,14 +117,16 @@ void storage_reset(void)
|
|||||||
// reset storage struct
|
// reset storage struct
|
||||||
memset(&storage, 0, sizeof(storage));
|
memset(&storage, 0, sizeof(storage));
|
||||||
storage.version = STORAGE_VERSION;
|
storage.version = STORAGE_VERSION;
|
||||||
session_clear();
|
session_clear(true); // clear PIN as well
|
||||||
}
|
}
|
||||||
|
|
||||||
void session_clear(void)
|
void session_clear(bool clear_pin)
|
||||||
{
|
{
|
||||||
sessionRootNodeCached = false; memset(&sessionRootNode, 0, sizeof(sessionRootNode));
|
sessionRootNodeCached = false; memset(&sessionRootNode, 0, sizeof(sessionRootNode));
|
||||||
sessionPassphraseCached = false; memset(&sessionPassphrase, 0, sizeof(sessionPassphrase));
|
sessionPassphraseCached = false; memset(&sessionPassphrase, 0, sizeof(sessionPassphrase));
|
||||||
sessionPinCached = false;
|
if (clear_pin) {
|
||||||
|
sessionPinCached = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint8_t meta_backup[FLASH_META_LEN];
|
static uint8_t meta_backup[FLASH_META_LEN];
|
||||||
|
@ -29,7 +29,7 @@ void storage_init(void);
|
|||||||
void storage_reset_uuid(void);
|
void storage_reset_uuid(void);
|
||||||
void storage_reset(void);
|
void storage_reset(void);
|
||||||
void storage_commit(void);
|
void storage_commit(void);
|
||||||
void session_clear(void);
|
void session_clear(bool clear_pin);
|
||||||
|
|
||||||
void storage_loadDevice(LoadDevice *msg);
|
void storage_loadDevice(LoadDevice *msg);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user