Christopher Collins created MYNEWT-751:
------------------------------------------
Summary: BLE Host - Policy for SM key overflow
Key: MYNEWT-751
URL: https://issues.apache.org/jira/browse/MYNEWT-751
Project: Mynewt
Issue Type: Bug
Components: Nimble
Reporter: Christopher Collins
Fix For: v1_1_0_rel
The BLE host needs a way to handle the case where a security store write fails
because the maximum number of entries have already been written. Currently,
the host simply fails to persist the record and returns an error code.
I propose the following behavior in such a scenario:
# Host checks that there is sufficient storage for a bond before it starts a
pairing operation.
# If there is insufficient space, host notifies application of the issue via
the gap event callback. The callback would specify a new event code that
specifically indicates security storage exhaustion.
# The gap event callback would return an error code indicating which of the
following behaviors to perform:
## Reject the pairing request.
## Proceed with the pairing operation (presumably the application would delete
a security entry to make room before returning from the callback).
This raises two issues:
# The pre-check for sufficient storage only works if pairing operations are
limited to one at a time. Perhaps the check could include pairing operations
in progress in the count of written entries.
# There isn't an API for the management of persisted security material. The
application would probably need the following functions:
** query the system about which bonds are persisted.
** delete a specified bond from persistence.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)