diff --git a/emulator/bthost.c b/emulator/bthost.c
index d18ca49..74b5df9 100644
--- a/emulator/bthost.c
+++ b/emulator/bthost.c
struct l2cap_pending_req *l2reqs;
uint8_t pin[16];
uint8_t pin_len;
+ uint8_t io_capability;
};
struct bthost *bthost_create(void)
return;
memcpy(cp.bdaddr, ev->bdaddr, 6);
- cp.capability = 0x03;
+ cp.capability = bthost->io_capability;
cp.oob_data = 0x00;
cp.authentication = 0x00;
bthost->pin_len = pin_len;
}
+void bthost_set_io_capability(struct bthost *bthost, uint8_t io_capability)
+{
+ bthost->io_capability = io_capability;
+}
+
void bthost_start(struct bthost *bthost)
{
if (!bthost)
diff --git a/emulator/bthost.h b/emulator/bthost.h
index 36b8c92..a3ecb1a 100644
--- a/emulator/bthost.h
+++ b/emulator/bthost.h
void bthost_set_pin_code(struct bthost *bthost, const uint8_t *pin,
uint8_t pin_len);
+void bthost_set_io_capability(struct bthost *bthost, uint8_t io_capability);
void bthost_start(struct bthost *bthost);
void bthost_stop(struct bthost *bthost);