From 9679c238aa63ee5ecca68891f2a435e2e9829962 Mon Sep 17 00:00:00 2001 From: Yulong Date: Fri, 26 May 2017 05:26:15 -0400 Subject: [PATCH] component/bt: Added the esp_ble_passkey_reply BTC_GAP_BLE_PASSKEY_REPLY_EVT &BTC_GAP_BLE_CONFIRM_REPLY_EVT event. --- .../btc/profile/std/gap/btc_gap_ble.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/components/bt/bluedroid/btc/profile/std/gap/btc_gap_ble.c b/components/bt/bluedroid/btc/profile/std/gap/btc_gap_ble.c index c07b16be9..223f4cf34 100644 --- a/components/bt/bluedroid/btc/profile/std/gap/btc_gap_ble.c +++ b/components/bt/bluedroid/btc/profile/std/gap/btc_gap_ble.c @@ -883,16 +883,14 @@ void btc_gap_ble_call_handler(btc_msg_t *msg) arg->cfg_scan_rsp_data_raw.raw_scan_rsp_len, btc_scan_rsp_data_raw_callback); break; - case BTC_GAP_BLE_SET_ENCRYPTION_EVT: { #if (SMP_INCLUDED == TRUE) + case BTC_GAP_BLE_SET_ENCRYPTION_EVT: { BD_ADDR bd_addr; memcpy(bd_addr, arg->set_encryption.bd_addr, sizeof(BD_ADDR)); BTA_DmSetEncryption(bd_addr, BT_TRANSPORT_LE, btc_set_encryption_callback, (tBTA_DM_BLE_SEC_ACT)arg->set_encryption.sec_act); -#endif ///SMP_INCLUDED == TRUE break; } - case BTC_GAP_BLE_SET_SECURITY_PARAM_EVT: { switch(arg->set_security_param.param_type) { case ESP_BLE_SM_PASSKEY: @@ -933,14 +931,25 @@ void btc_gap_ble_call_handler(btc_msg_t *msg) break; } case BTC_GAP_BLE_SECURITY_RSP_EVT: { -#if (SMP_INCLUDED == TRUE) BD_ADDR bd_addr; tBTA_DM_BLE_SEC_GRANT res = arg->sec_rsp.accept ? BTA_DM_SEC_GRANTED : BTA_DM_SEC_PAIR_NOT_SPT; memcpy(bd_addr, arg->sec_rsp.bd_addr, sizeof(BD_ADDR)); BTA_DmBleSecurityGrant(bd_addr, res); break; -#endif ///SMP_INCLUDED == TRUE } + case BTC_GAP_BLE_PASSKEY_REPLY_EVT: { + BD_ADDR bd_addr; + memcpy(bd_addr, arg->enc_passkey_replay.bd_addr, sizeof(BD_ADDR)); + BTA_DmBlePasskeyReply(bd_addr, arg->enc_passkey_replay.accept, arg->enc_passkey_replay.passkey); + break; + } + case BTC_GAP_BLE_CONFIRM_REPLY_EVT: { + BD_ADDR bd_addr; + memcpy(bd_addr, arg->enc_comfirm_replay.bd_addr, sizeof(BD_ADDR)); + BTA_DmBleConfirmReply(bd_addr, arg->enc_comfirm_replay.accept); + break; + } +#endif ///SMP_INCLUDED == TRUE default: break; }