diff --git a/android/bluetooth.c b/android/bluetooth.c
index d0fb245..0ea6a08 100644
--- a/android/bluetooth.c
+++ b/android/bluetooth.c
status);
}
-static uint8_t user_confirm_reply(const bdaddr_t *bdaddr, bool accept)
+static uint8_t user_confirm_reply(const bdaddr_t *bdaddr, uint8_t type,
+ bool accept)
{
struct mgmt_addr_info cp;
uint16_t opcode;
opcode = MGMT_OP_USER_CONFIRM_NEG_REPLY;
bacpy(&cp.bdaddr, bdaddr);
- cp.type = BDADDR_BREDR;
+ cp.type = type;
if (mgmt_reply(mgmt_if, opcode, adapter.index, sizeof(cp), &cp,
NULL, NULL, NULL) > 0)
return HAL_STATUS_FAILED;
}
-static uint8_t user_passkey_reply(const bdaddr_t *bdaddr, bool accept,
- uint32_t passkey)
+static uint8_t user_passkey_reply(const bdaddr_t *bdaddr, uint8_t type,
+ bool accept, uint32_t passkey)
{
unsigned int id;
memset(&cp, 0, sizeof(cp));
bacpy(&cp.addr.bdaddr, bdaddr);
- cp.addr.type = BDADDR_BREDR;
+ cp.addr.type = type;
cp.passkey = htobl(passkey);
id = mgmt_reply(mgmt_if, MGMT_OP_USER_PASSKEY_REPLY,
memset(&cp, 0, sizeof(cp));
bacpy(&cp.addr.bdaddr, bdaddr);
- cp.addr.type = BDADDR_BREDR;
+ cp.addr.type = type;
id = mgmt_reply(mgmt_if, MGMT_OP_USER_PASSKEY_NEG_REPLY,
adapter.index, sizeof(cp), &cp,
switch (cmd->ssp_variant) {
case HAL_SSP_VARIANT_CONFIRM:
case HAL_SSP_VARIANT_CONSENT:
- status = user_confirm_reply(&dev->bdaddr, cmd->accept);
+ status = user_confirm_reply(&dev->bdaddr, dev->bdaddr_type,
+ cmd->accept);
break;
case HAL_SSP_VARIANT_ENTRY:
- status = user_passkey_reply(&dev->bdaddr, cmd->accept,
- cmd->passkey);
+ status = user_passkey_reply(&dev->bdaddr, dev->bdaddr_type,
+ cmd->accept, cmd->passkey);
break;
case HAL_SSP_VARIANT_NOTIF:
status = HAL_STATUS_SUCCESS;