summaryrefslogtreecommitdiffstats
path: root/btif
diff options
context:
space:
mode:
authorGanesh Ganapathi Batta <ganeshg@broadcom.com>2012-04-27 11:41:19 -0700
committerMatthew Xie <mattx@google.com>2012-07-14 11:19:19 -0700
commit7e1faaf64d9d362da70a3f4b4c1fca517fad7862 (patch)
tree51d572d4e5b9cf9444ced7e73758753c5e5e3d63 /btif
parent7f58927df0ee3f2f38367efe62c8901a760eeaa4 (diff)
downloadexternal_bluetooth_bluedroid-7e1faaf64d9d362da70a3f4b4c1fca517fad7862.zip
external_bluetooth_bluedroid-7e1faaf64d9d362da70a3f4b4c1fca517fad7862.tar.gz
external_bluetooth_bluedroid-7e1faaf64d9d362da70a3f4b4c1fca517fad7862.tar.bz2
Assign proper fail reasons to status parameter while sending Auth Complete event when Authentication fails
Change-Id: I0102762b8bfa06b8d99227c431be881269c14961
Diffstat (limited to 'btif')
-rw-r--r--btif/src/btif_dm.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/btif/src/btif_dm.c b/btif/src/btif_dm.c
index 55300d5..df4998d 100644
--- a/btif/src/btif_dm.c
+++ b/btif/src/btif_dm.c
@@ -641,7 +641,6 @@ static void btif_dm_auth_cmpl_evt (tBTA_DM_AUTH_CMPL *p_auth_cmpl)
__FUNCTION__, p_auth_cmpl->key_type, pairing_cb.is_temp);
}
}
-
if (p_auth_cmpl->success)
{
status = BT_STATUS_SUCCESS;
@@ -650,7 +649,25 @@ static void btif_dm_auth_cmpl_evt (tBTA_DM_AUTH_CMPL *p_auth_cmpl)
/* Trigger SDP on the device */
btif_dm_get_remote_services(&bd_addr);
}
+ else
+ {
+ /*Map the HCI fail reason to bt status */
+ switch(p_auth_cmpl->fail_reason)
+ {
+ case HCI_ERR_PAGE_TIMEOUT:
+ case HCI_ERR_CONNECTION_TOUT:
+ status = BT_STATUS_RMT_DEV_DOWN;
+ break;
+ case HCI_ERR_AUTH_FAILURE:
+ status = BT_STATUS_AUTH_FAILURE;
+ break;
+
+ default:
+ status = BT_STATUS_FAIL;
+ }
+
+ }
bond_state_changed(status, &bd_addr, state);
}