diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2014-02-18 20:41:32 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2014-02-18 20:48:54 +0100 |
commit | 68d6f6ded5bdaa89f9da0144359a7c5565991f8d (patch) | |
tree | 75c7a934746a747aad097e6aca5113a0977ecaca /net/bluetooth/smp.c | |
parent | Bluetooth: Remove SMP data specific crypto context (diff) | |
download | linux-68d6f6ded5bdaa89f9da0144359a7c5565991f8d.tar.xz linux-68d6f6ded5bdaa89f9da0144359a7c5565991f8d.zip |
Bluetooth: Track the LE Identity Address in struct hci_conn
Since we want user space to see and use the LE Identity Address whenever
interfacing with the kernel it makes sense to track that instead of the
real address (the two will only be different in the case of an RPA).
This patch adds the necessary updates to when an LE connection gets
established and when receiving the Identity Address from a remote
device.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/smp.c')
-rw-r--r-- | net/bluetooth/smp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/bluetooth/smp.c b/net/bluetooth/smp.c index 8517d1f0984d..af29afed0cca 100644 --- a/net/bluetooth/smp.c +++ b/net/bluetooth/smp.c @@ -987,6 +987,10 @@ static int smp_cmd_ident_addr_info(struct l2cap_conn *conn, hci_add_irk(conn->hcon->hdev, &smp->id_addr, smp->id_addr_type, smp->irk, &rpa); + /* Track the connection based on the Identity Address from now on */ + bacpy(&hcon->dst, &smp->id_addr); + hcon->dst_type = smp->id_addr_type; + smp_distribute_keys(conn, 1); return 0; |