Bluetooth: Fix white list handling with resolvable private addresses
authorMarcel Holtmann <marcel@holtmann.org>
Thu, 24 Jul 2014 13:20:58 +0000 (15:20 +0200)
committerJohan Hedberg <johan.hedberg@intel.com>
Sat, 26 Jul 2014 11:13:19 +0000 (14:13 +0300)
commit66d8e837ab4f58722c56ccbfa5ab9a522cebde78
tree98e032b8f9aee078b93817a44e52a76c4239d595
parent8540f6c0364722b141547c6c7ac366c3ea77390b
Bluetooth: Fix white list handling with resolvable private addresses

Devices using resolvable private addresses are required to provide
an identity resolving key. These devices can not be found using
the current controller white list support. This means if the kernel
knows about any devices with an identity resolving key, the white
list filtering must be disabled.

However so far the kernel kept identity resolving keys around even
for devices that are not using resolvable private addresses. The
notification to userspace clearly hints to not store the key and
so it is best to just remove the key from the kernel as well at
that point.

With this it easy now to detect when using the white list is
possible or when kernel side resolving of addresses is required.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
net/bluetooth/hci_core.c
net/bluetooth/smp.c