summaryrefslogtreecommitdiffstats
path: root/include/net/bluetooth
diff options
context:
space:
mode:
authorJohan Hedberg2014-02-18 16:14:36 +0100
committerMarcel Holtmann2014-02-18 17:58:21 +0100
commit2426f3a5945ce1dfdb04aaf26748a987be49ff7c (patch)
tree0b8b88270bc085ac7a35c5c7480df145a1c44929 /include/net/bluetooth
parentBluetooth: Fix removing any IRKs when unpairing devices (diff)
downloadkernel-qcow2-linux-2426f3a5945ce1dfdb04aaf26748a987be49ff7c.tar.gz
kernel-qcow2-linux-2426f3a5945ce1dfdb04aaf26748a987be49ff7c.tar.xz
kernel-qcow2-linux-2426f3a5945ce1dfdb04aaf26748a987be49ff7c.zip
Bluetooth: Add convenience function for fetching IRKs
There are many situations where we need to check if an LE address is an RPA and if so try to look up the IRK for it. To simplify such cases this patch adds a convenience function for the job. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'include/net/bluetooth')
-rw-r--r--include/net/bluetooth/hci_core.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h
index ac468de11cb7..4461c0051228 100644
--- a/include/net/bluetooth/hci_core.h
+++ b/include/net/bluetooth/hci_core.h
@@ -1083,6 +1083,15 @@ static inline bool hci_bdaddr_is_rpa(bdaddr_t *bdaddr, u8 addr_type)
return false;
}
+static inline struct smp_irk *hci_get_irk(struct hci_dev *hdev,
+ bdaddr_t *bdaddr, u8 addr_type)
+{
+ if (!hci_bdaddr_is_rpa(bdaddr, addr_type))
+ return NULL;
+
+ return hci_find_irk_by_rpa(hdev, bdaddr);
+}
+
int hci_register_cb(struct hci_cb *hcb);
int hci_unregister_cb(struct hci_cb *hcb);