From 9d54c565622e08f87b59df218a37f933f971d2ef Mon Sep 17 00:00:00 2001 From: Paul Szczeanek Date: Wed, 3 Jun 2020 17:36:06 +0100 Subject: [PATCH] reinitialise identity and signing when bond table reset --- .../source/generic/GenericSecurityManager.tpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/features/FEATURE_BLE/source/generic/GenericSecurityManager.tpp b/features/FEATURE_BLE/source/generic/GenericSecurityManager.tpp index 26f34675cb..e08a6f575c 100644 --- a/features/FEATURE_BLE/source/generic/GenericSecurityManager.tpp +++ b/features/FEATURE_BLE/source/generic/GenericSecurityManager.tpp @@ -167,7 +167,21 @@ template class TPalSecurityManager, template class Signin ble_error_t GenericSecurityManager::purgeAllBondingState_(void) { if (!_db) return BLE_ERROR_INITIALIZATION_INCOMPLETE; _db->clear_entries(); - return BLE_ERROR_NONE; + + ble_error_t ret = BLE_ERROR_NONE; + +#if BLE_FEATURE_SIGNING + // generate new csrk and irk + ret = init_signing(); + if (ret) { + return ret; + } +#endif // BLE_FEATURE_SIGNING +#if BLE_FEATURE_PRIVACY + ret = init_identity(); +#endif // BLE_FEATURE_PRIVACY + + return ret; } template class TPalSecurityManager, template class SigningMonitor>