From 1ffa2638265db9376260babd61e0d46b1bc3f109 Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Thu, 31 Jan 2013 14:08:19 -0600 Subject: [PATCH] emulator: Create separate server BR/EDR/LE and BR/EDR types --- emulator/main.c | 20 +++++++++++++------- emulator/server.c | 3 +++ emulator/server.h | 1 + 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/emulator/main.c b/emulator/main.c index c68b7381c..6b5a75ae4 100644 --- a/emulator/main.c +++ b/emulator/main.c @@ -68,6 +68,7 @@ int main(int argc, char *argv[]) struct server *server2; struct server *server3; struct server *server4; + struct server *server5; bool enable_vhci = false; sigset_t mask; @@ -109,20 +110,25 @@ int main(int argc, char *argv[]) fprintf(stderr, "Failed to open Virtual HCI device\n"); } - server1 = server_open_unix(SERVER_TYPE_BREDR, "/tmp/bt-server-bredr"); + server1 = server_open_unix(SERVER_TYPE_BREDRLE, + "/tmp/bt-server-bredrle"); if (!server1) - fprintf(stderr, "Failed to open BR/EDR server channel\n"); + fprintf(stderr, "Failed to open BR/EDR/LE server channel\n"); - server2 = server_open_unix(SERVER_TYPE_AMP, "/tmp/bt-server-amp"); + server2 = server_open_unix(SERVER_TYPE_BREDR, "/tmp/bt-server-bredr"); if (!server2) - fprintf(stderr, "Failed to open AMP server channel\n"); + fprintf(stderr, "Failed to open BR/EDR server channel\n"); - server3 = server_open_unix(SERVER_TYPE_LE, "/tmp/bt-server-le"); + server3 = server_open_unix(SERVER_TYPE_AMP, "/tmp/bt-server-amp"); if (!server3) - fprintf(stderr, "Failed to open LE server channel\n"); + fprintf(stderr, "Failed to open AMP server channel\n"); - server4 = server_open_unix(SERVER_TYPE_MONITOR, "/tmp/bt-server-mon"); + server4 = server_open_unix(SERVER_TYPE_LE, "/tmp/bt-server-le"); if (!server4) + fprintf(stderr, "Failed to open LE server channel\n"); + + server5 = server_open_unix(SERVER_TYPE_MONITOR, "/tmp/bt-server-mon"); + if (!server5) fprintf(stderr, "Failed to open monitor server channel\n"); return mainloop_run(); diff --git a/emulator/server.c b/emulator/server.c index e4c4570b9..b2a4b02de 100644 --- a/emulator/server.c +++ b/emulator/server.c @@ -217,6 +217,9 @@ static void server_accept_callback(int fd, uint32_t events, void *user_data) } switch (server->type) { + case SERVER_TYPE_BREDRLE: + type = BTDEV_TYPE_BREDRLE; + break; case SERVER_TYPE_BREDR: type = BTDEV_TYPE_BREDR; break; diff --git a/emulator/server.h b/emulator/server.h index b99b210d1..f0b37270b 100644 --- a/emulator/server.h +++ b/emulator/server.h @@ -25,6 +25,7 @@ #include enum server_type { + SERVER_TYPE_BREDRLE, SERVER_TYPE_BREDR, SERVER_TYPE_LE, SERVER_TYPE_AMP, -- 2.11.0