diff --git a/emulator/bthost.c b/emulator/bthost.c
index 2af5f7a..1bdc1b2 100644
--- a/emulator/bthost.c
+++ b/emulator/bthost.c
break;
case BT_HCI_CMD_PIN_CODE_REQUEST_NEG_REPLY:
break;
+ case BT_HCI_CMD_LINK_KEY_REQUEST_NEG_REPLY:
+ break;
case BT_HCI_CMD_WRITE_SIMPLE_PAIRING_MODE:
break;
case BT_HCI_CMD_IO_CAPABILITY_REQUEST_REPLY:
}
}
+static void evt_link_key_request(struct bthost *bthost, const void *data,
+ uint8_t len)
+{
+ const struct bt_hci_evt_link_key_request *ev = data;
+ struct bt_hci_cmd_link_key_request_neg_reply cp;
+
+ if (len < sizeof(*ev))
+ return;
+
+ memset(&cp, 0, sizeof(cp));
+ memcpy(cp.bdaddr, ev->bdaddr, 6);
+
+ send_command(bthost, BT_HCI_CMD_LINK_KEY_REQUEST_NEG_REPLY,
+ &cp, sizeof(cp));
+}
+
static void evt_link_key_notify(struct bthost *bthost, const void *data,
uint8_t len)
{
evt_pin_code_request(bthost, param, hdr->plen);
break;
+ case BT_HCI_EVT_LINK_KEY_REQUEST:
+ evt_link_key_request(bthost, param, hdr->plen);
+ break;
+
case BT_HCI_EVT_LINK_KEY_NOTIFY:
evt_link_key_notify(bthost, param, hdr->plen);
break;