zephyr/subsys
Vinayak Kariappa Chettimada f8877e39ce Bluetooth: controller: legacy: Fix controller address check
Fix controllers address check in cases of controller-based privacy.
When controller has been instructed by the host to use privacy
the controller should look up the peer identity address and generate
an address based on the local IRK. In the case where no match
is found or the local IRK is all zeroes the controller shall use
the fallback address. If the fallback address is not valid the
controller shall return invalid params.

This commit fixes these issues:
 - Starting a private advertiser without valid random address set
   but a valid local IRK exists. In this case the advertiser should
   be able to advertise using the RPA regardless of a valid random
   or public address.
 - Starting a private advertiser with a fallback to the public
   address type or an adveriser using public address  does not
   check if a valid public address exists. The host cannot
   advertise with an all-zero public address.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2020-01-09 15:34:23 +01:00
..
bluetooth Bluetooth: controller: legacy: Fix controller address check 2020-01-09 15:34:23 +01:00
console
cpp
debug
dfu
disk
fb
fs
jwt
logging
mgmt mcumgr: BT SMP transport config for authenticated requirement 2019-12-20 20:28:39 -05:00
net net: tcp2: Drop snprintf() and use snprintk() 2020-01-08 14:10:21 +02:00
power power: add DEVICE_PM_LOW_POWER_STATE for device power management 2020-01-04 09:23:15 -05:00
random
settings
shell
stats
storage
testsuite
usb usb: Fix usb tests reporting error 2020-01-07 21:05:44 +01:00
CMakeLists.txt
Kconfig