diff options
-rw-r--r-- | emulator/btdev.c | 5 | ||||
-rw-r--r-- | emulator/btdev.h | 6 | ||||
-rw-r--r-- | emulator/server.c | 2 | ||||
-rw-r--r-- | emulator/vhci.c | 2 |
4 files changed, 11 insertions, 4 deletions
diff --git a/emulator/btdev.c b/emulator/btdev.c index 8ec04eb7e..40f6149d9 100644 --- a/emulator/btdev.c +++ b/emulator/btdev.c @@ -38,6 +38,8 @@ #define cpu_to_le16(val) (val) struct btdev { + enum btdev_type type; + struct btdev *conn; btdev_send_func send_handler; @@ -170,7 +172,7 @@ static void get_bdaddr(uint16_t id, uint8_t index, uint8_t *bdaddr) bdaddr[5] = 0x00; } -struct btdev *btdev_create(uint16_t id) +struct btdev *btdev_create(enum btdev_type type, uint16_t id) { struct btdev *btdev; int index; @@ -180,6 +182,7 @@ struct btdev *btdev_create(uint16_t id) return NULL; memset(btdev, 0, sizeof(*btdev)); + btdev->type = type; btdev->manufacturer = 63; btdev->version = 0x06; diff --git a/emulator/btdev.h b/emulator/btdev.h index 7b211a2ce..b2f96cfc9 100644 --- a/emulator/btdev.h +++ b/emulator/btdev.h @@ -27,9 +27,13 @@ typedef void (*btdev_send_func) (const void *data, uint16_t len, void *user_data); +enum btdev_type { + BTDEV_TYPE_BREDR, +}; + struct btdev; -struct btdev *btdev_create(uint16_t id); +struct btdev *btdev_create(enum btdev_type type, uint16_t id); void btdev_destroy(struct btdev *btdev); void btdev_set_send_handler(struct btdev *btdev, btdev_send_func handler, diff --git a/emulator/server.c b/emulator/server.c index fa8f9c3bd..f2455e9d8 100644 --- a/emulator/server.c +++ b/emulator/server.c @@ -205,7 +205,7 @@ static void server_accept_callback(int fd, uint32_t events, void *user_data) return; } - client->btdev = btdev_create(server->id); + client->btdev = btdev_create(BTDEV_TYPE_BREDR, server->id); if (!client->btdev) { close(client->fd); free(client); diff --git a/emulator/vhci.c b/emulator/vhci.c index 940e562b4..913ae8174 100644 --- a/emulator/vhci.c +++ b/emulator/vhci.c @@ -104,7 +104,7 @@ struct vhci *vhci_open(enum vhci_type type, uint16_t id) return NULL; } - vhci->btdev = btdev_create(id); + vhci->btdev = btdev_create(BTDEV_TYPE_BREDR, id); if (!vhci->btdev) { close(vhci->fd); free(vhci); |