diff options
author | Johan Hedberg <johan.hedberg@intel.com> | 2014-09-05 22:19:49 +0300 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2014-09-08 19:07:55 +0200 |
commit | 84bc0db53b3a425fb992d5fed25b575e4434167a (patch) | |
tree | 14d8fcaad50a3e793a394a0587eacbbd3a97c6e1 /net/bluetooth | |
parent | 1b0921d6be7860271ccf6027891b8215fc28cde5 (diff) | |
download | linux-84bc0db53b3a425fb992d5fed25b575e4434167a.tar.gz linux-84bc0db53b3a425fb992d5fed25b575e4434167a.tar.bz2 linux-84bc0db53b3a425fb992d5fed25b575e4434167a.zip |
Bluetooth: Don't take any action in smp_resume_cb if not encrypted
When smp_resume_cb is called if we're not encrypted (i.e. the callback
wasn't called because the connection became encrypted) we shouldn't take
any action at all. This patch moves also the security_timer cancellation
behind this condition.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth')
-rw-r--r-- | net/bluetooth/smp.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/bluetooth/smp.c b/net/bluetooth/smp.c index b8ecc7bd3e3b..9accb4739488 100644 --- a/net/bluetooth/smp.c +++ b/net/bluetooth/smp.c @@ -1533,10 +1533,12 @@ static void smp_resume_cb(struct l2cap_chan *chan) if (!smp) return; + if (!test_bit(HCI_CONN_ENCRYPT, &hcon->flags)) + return; + cancel_delayed_work(&smp->security_timer); - if (test_bit(HCI_CONN_ENCRYPT, &hcon->flags)) - queue_work(hdev->workqueue, &smp->distribute_work); + queue_work(hdev->workqueue, &smp->distribute_work); } static void smp_ready_cb(struct l2cap_chan *chan) |