You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[nrf noup] bluetooth: host: Add support for bonding with same peer
This commit adds a new Kconfig option by enabling which Host will keep
bonding with the same Central instead of rejecting pairing.
Brief implementation details:
This implementation adds a new flag to bt_keys struct:
BT_KEYS_ID_CONFLICT. The flag is set, when:
- bonding with the same peer and conflict identified
- when loading conflicting keys from persistent storage.
When bonding and conflict is identified, the new keys aren't added to
the Resolving List immediately. Instead, the old keys stay in the
Resolving List.
When start advertising, Host finds conflicting keys that are already
added to the Resolving List and substitues them.
If, however, there is another advertiser already started for the added
keys, the new request is reject and advertising start function returns
-EPERM.
This is supported by Peripheral role only for now.
Allow to use CONFIG_BT_ID_AUTO_SWAP_MATCHING_BONDS Kconfig option even
if CONFIG_BT_PRIVACY is disabled.
This is because CONFIG_BT_PRIVACY configures privacy of local device
will still allows to resolve peer address. During pairing, peer device
may send its Identity Address and IRK which then can be used for address
resolution. This doesn't require CONFIG_BT_PRIVACY be enabled.
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
(cherry picked from commit 8e030ea)
(cherry picked from commit 72becd4)
(cherry picked from commit 4994883)
0 commit comments