diff options
author | Andre Guedes <andre.guedes@openbossa.org> | 2014-02-26 20:21:52 -0300 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2014-02-26 19:41:35 -0800 |
commit | a9b0a04c2aac1e6e41e254221926bdce75321f55 (patch) | |
tree | e46d1832cf05d9dd732bac178ab0b198385e051f /net/bluetooth/mgmt.c | |
parent | 6046dc3e0602256b9941241dfd6b2e4824999b01 (diff) | |
download | linux-stable-a9b0a04c2aac1e6e41e254221926bdce75321f55.tar.gz linux-stable-a9b0a04c2aac1e6e41e254221926bdce75321f55.tar.bz2 linux-stable-a9b0a04c2aac1e6e41e254221926bdce75321f55.zip |
Bluetooth: Connection parameters and resolvable address
We should only accept connection parameters from identity addresses
(public or random static). Thus, we should check the address type
in hci_conn_params_add().
Additionally, since the IRK is removed during unpair, we should also
remove the connection parameters from that device.
Signed-off-by: Andre Guedes <andre.guedes@openbossa.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/mgmt.c')
-rw-r--r-- | net/bluetooth/mgmt.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c index f878267ba6ab..2e6564e47ded 100644 --- a/net/bluetooth/mgmt.c +++ b/net/bluetooth/mgmt.c @@ -2416,6 +2416,8 @@ static int unpair_device(struct sock *sk, struct hci_dev *hdev, void *data, hci_remove_irk(hdev, &cp->addr.bdaddr, addr_type); + hci_conn_params_del(hdev, &cp->addr.bdaddr, addr_type); + err = hci_remove_ltk(hdev, &cp->addr.bdaddr, addr_type); } |