You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by ja...@apache.org on 2020/11/10 14:17:01 UTC
[mynewt-nimble] branch master updated: nimble/ll: Fix network
privacy when initiating
This is an automated email from the ASF dual-hosted git repository.
janc pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-nimble.git
The following commit(s) were added to refs/heads/master by this push:
new ca5ff43 nimble/ll: Fix network privacy when initiating
ca5ff43 is described below
commit ca5ff43e53c89d7c051f8e53a8ee20776e35d2e6
Author: Szymon Janc <sz...@codecoup.pl>
AuthorDate: Fri Nov 6 15:23:09 2020 +0100
nimble/ll: Fix network privacy when initiating
If remote is using ID address and IRK for that peer is on resolving
list and network privacy is enabled we should not be connecting to
that peer.
This was affecting LL/CON/INI/BV-24-C qualification test case.
---
nimble/controller/src/ble_ll_conn.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/nimble/controller/src/ble_ll_conn.c b/nimble/controller/src/ble_ll_conn.c
index 371ca42..3724267 100644
--- a/nimble/controller/src/ble_ll_conn.c
+++ b/nimble/controller/src/ble_ll_conn.c
@@ -3409,6 +3409,12 @@ ble_ll_init_rx_isr_end(uint8_t *rxbuf, uint8_t crcok,
*/
memcpy(init_addr, rl->rl_local_rpa, BLE_DEV_ADDR_LEN);
}
+ } else if (!ble_ll_is_rpa(adv_addr, adv_addr_type)) {
+ /* undirected with ID address, assure privacy if on RL */
+ rl = ble_ll_resolv_list_find(adv_addr, adv_addr_type);
+ if (rl && (rl->rl_priv_mode == BLE_HCI_PRIVACY_NETWORK)) {
+ goto init_rx_isr_exit;
+ }
}
#endif