Skip to content

Commit f60bcaa

Browse files
committed
feat(nvs_flash): Added an API to deregister the NVS security scheme context
1 parent 333a2c0 commit f60bcaa

File tree

3 files changed

+15
-2
lines changed

3 files changed

+15
-2
lines changed

components/nvs_flash/include/nvs_flash.h

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: 2015-2023 Espressif Systems (Shanghai) CO LTD
2+
* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -278,6 +278,13 @@ esp_err_t nvs_flash_read_security_cfg(const esp_partition_t* partition, nvs_sec_
278278
*/
279279
esp_err_t nvs_flash_register_security_scheme(nvs_sec_scheme_t *scheme_cfg);
280280

281+
/**
282+
* @brief Deregister the security scheme previously registered using
283+
* nvs_flash_register_security_scheme
284+
*
285+
*/
286+
void nvs_flash_deregister_security_scheme(void);
287+
281288
/**
282289
* @brief Fetch the configuration structure for the default active
283290
* security scheme for NVS encryption

components/nvs_flash/src/nvs_api.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: 2015-2024 Espressif Systems (Shanghai) CO LTD
2+
* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -736,6 +736,11 @@ extern "C" esp_err_t nvs_flash_register_security_scheme(nvs_sec_scheme_t *scheme
736736
return ESP_OK;
737737
}
738738

739+
extern "C" void nvs_flash_deregister_security_scheme(void)
740+
{
741+
memset(&nvs_sec_default_scheme_cfg, 0x00, sizeof(nvs_sec_scheme_t));
742+
}
743+
739744
extern "C" nvs_sec_scheme_t *nvs_flash_get_default_security_scheme(void)
740745
{
741746
return &nvs_sec_default_scheme_cfg;

components/nvs_sec_provider/nvs_sec_provider.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,7 @@ esp_err_t nvs_sec_provider_deregister(nvs_sec_scheme_t *sec_scheme_handle)
291291

292292
free(sec_scheme_handle);
293293

294+
nvs_flash_deregister_security_scheme();
294295
return ESP_OK;
295296
}
296297

0 commit comments

Comments
 (0)