diff options
Diffstat (limited to 'net/bluetooth/smp.c')
-rw-r--r-- | net/bluetooth/smp.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/net/bluetooth/smp.c b/net/bluetooth/smp.c index ad82324f710f..0510a577a7b5 100644 --- a/net/bluetooth/smp.c +++ b/net/bluetooth/smp.c | |||
@@ -2311,12 +2311,6 @@ int smp_conn_security(struct hci_conn *hcon, __u8 sec_level) | |||
2311 | if (!conn) | 2311 | if (!conn) |
2312 | return 1; | 2312 | return 1; |
2313 | 2313 | ||
2314 | chan = conn->smp; | ||
2315 | if (!chan) { | ||
2316 | BT_ERR("SMP security requested but not available"); | ||
2317 | return 1; | ||
2318 | } | ||
2319 | |||
2320 | if (!hci_dev_test_flag(hcon->hdev, HCI_LE_ENABLED)) | 2314 | if (!hci_dev_test_flag(hcon->hdev, HCI_LE_ENABLED)) |
2321 | return 1; | 2315 | return 1; |
2322 | 2316 | ||
@@ -2330,6 +2324,12 @@ int smp_conn_security(struct hci_conn *hcon, __u8 sec_level) | |||
2330 | if (smp_ltk_encrypt(conn, hcon->pending_sec_level)) | 2324 | if (smp_ltk_encrypt(conn, hcon->pending_sec_level)) |
2331 | return 0; | 2325 | return 0; |
2332 | 2326 | ||
2327 | chan = conn->smp; | ||
2328 | if (!chan) { | ||
2329 | BT_ERR("SMP security requested but not available"); | ||
2330 | return 1; | ||
2331 | } | ||
2332 | |||
2333 | l2cap_chan_lock(chan); | 2333 | l2cap_chan_lock(chan); |
2334 | 2334 | ||
2335 | /* If SMP is already in progress ignore this request */ | 2335 | /* If SMP is already in progress ignore this request */ |