mirror of https://github.com/ARMmbed/mbed-os.git
BLE: Add function to querry the list of identity addresses present in the SecureDB.
parent
77b1903634
commit
ede3d43743
|
|
@ -187,6 +187,22 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
virtual void get_identity_list(
|
||||
IdentitylistDbCb_t cb,
|
||||
ArrayView<SecurityEntryIdentity_t*>& entries
|
||||
) {
|
||||
size_t count = 0;
|
||||
for (size_t i = 0; i < MAX_ENTRIES && count < entries.size(); ++i) {
|
||||
entry_t& e = _entries[i];
|
||||
|
||||
if (e.state == ENTRY_WRITTEN && e.flags.irk_stored) {
|
||||
entries[count] = &e.peer_identity;
|
||||
++count;
|
||||
}
|
||||
}
|
||||
|
||||
cb(entries, count);
|
||||
}
|
||||
|
||||
/* set */
|
||||
|
||||
|
|
|
|||
|
|
@ -107,6 +107,8 @@ public:
|
|||
SecurityEntryCsrkDbCb_t;
|
||||
typedef mbed::Callback<void(entry_handle_t, const SecurityEntryIdentity_t*)>
|
||||
SecurityEntryIdentityDbCb_t;
|
||||
typedef mbed::Callback<void(ArrayView<SecurityEntryIdentity_t*>&, size_t count)>
|
||||
IdentitylistDbCb_t;
|
||||
typedef mbed::Callback<void(::Gap::Whitelist_t*)>
|
||||
WhitelistDbCb_t;
|
||||
|
||||
|
|
@ -274,6 +276,20 @@ public:
|
|||
entry_handle_t db_entry
|
||||
) = 0;
|
||||
|
||||
/**
|
||||
* Asynchronously return the identity list stored in NVM through a callback.
|
||||
* Function takes ownership of the memory. The identity list and the
|
||||
* ownership will be returned in the callback.
|
||||
*
|
||||
* @param[in] cb callback that will receive the whitelist
|
||||
* @param[in] identity_list preallocated identity_list that will be filled
|
||||
* in.
|
||||
*/
|
||||
virtual void get_identity_list(
|
||||
IdentitylistDbCb_t cb,
|
||||
ArrayView<SecurityEntryIdentity_t*>& identity_list
|
||||
) = 0;
|
||||
|
||||
/**
|
||||
* Update peer signing key.
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in New Issue