From d21b8db341ccd407556f44460e12947d9b31c2ed Mon Sep 17 00:00:00 2001 From: Luiz Augusto von Dentz Date: Mon, 17 Nov 2014 11:23:44 +0200 Subject: [PATCH] android: Fix not setting max_clients If max_clients is not set the ipc send uninitialized bytes. --- android/hal-a2dp.c | 1 + android/hal-avrcp.c | 1 + android/hal-bluetooth.c | 2 ++ android/hal-gatt.c | 1 + android/hal-handsfree-client.c | 2 ++ android/hal-health.c | 1 + android/hal-hidhost.c | 1 + android/hal-map-client.c | 2 ++ android/hal-pan.c | 1 + 9 files changed, 12 insertions(+) diff --git a/android/hal-a2dp.c b/android/hal-a2dp.c index 99cd14738..355621864 100644 --- a/android/hal-a2dp.c +++ b/android/hal-a2dp.c @@ -106,6 +106,7 @@ static bt_status_t init(btav_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_A2DP; cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); diff --git a/android/hal-avrcp.c b/android/hal-avrcp.c index 4202bfa01..b9b8ab9be 100644 --- a/android/hal-avrcp.c +++ b/android/hal-avrcp.c @@ -228,6 +228,7 @@ static bt_status_t init(btrc_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_AVRCP; cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c index 164e23247..68811dfd6 100644 --- a/android/hal-bluetooth.c +++ b/android/hal-bluetooth.c @@ -507,6 +507,7 @@ static int init(bt_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_BLUETOOTH; cmd.mode = get_mode(); + cmd.max_clients = 1; status = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); @@ -517,6 +518,7 @@ static int init(bt_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_SOCKET; cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; status = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); diff --git a/android/hal-gatt.c b/android/hal-gatt.c index 7bcdee7f5..6df59f5a6 100644 --- a/android/hal-gatt.c +++ b/android/hal-gatt.c @@ -1565,6 +1565,7 @@ static bt_status_t init(const btgatt_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_GATT; cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); diff --git a/android/hal-handsfree-client.c b/android/hal-handsfree-client.c index a152cab1f..8c6a5edc9 100644 --- a/android/hal-handsfree-client.c +++ b/android/hal-handsfree-client.c @@ -354,6 +354,8 @@ static bt_status_t init(bthf_client_callbacks_t *callbacks) sizeof(ev_handlers)/sizeof(ev_handlers[0])); cmd.service_id = HAL_SERVICE_ID_HANDSFREE_CLIENT; + cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); diff --git a/android/hal-health.c b/android/hal-health.c index 01bc4320a..846273647 100644 --- a/android/hal-health.c +++ b/android/hal-health.c @@ -249,6 +249,7 @@ static bt_status_t init(bthl_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_HEALTH; cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); diff --git a/android/hal-hidhost.c b/android/hal-hidhost.c index 31997e242..58b0218fe 100644 --- a/android/hal-hidhost.c +++ b/android/hal-hidhost.c @@ -340,6 +340,7 @@ static bt_status_t init(bthh_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_HIDHOST; cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); diff --git a/android/hal-map-client.c b/android/hal-map-client.c index 8255d2bad..6c927d4b1 100644 --- a/android/hal-map-client.c +++ b/android/hal-map-client.c @@ -128,6 +128,8 @@ static bt_status_t init(btmce_callbacks_t *callbacks) sizeof(ev_handlers)/sizeof(ev_handlers[0])); cmd.service_id = HAL_SERVICE_ID_MAP_CLIENT; + cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, 0, NULL, NULL); diff --git a/android/hal-pan.c b/android/hal-pan.c index 56fd3400a..cd783bc10 100644 --- a/android/hal-pan.c +++ b/android/hal-pan.c @@ -162,6 +162,7 @@ static bt_status_t pan_init(const btpan_callbacks_t *callbacks) cmd.service_id = HAL_SERVICE_ID_PAN; cmd.mode = HAL_MODE_DEFAULT; + cmd.max_clients = 1; ret = hal_ipc_cmd(HAL_SERVICE_ID_CORE, HAL_OP_REGISTER_MODULE, sizeof(cmd), &cmd, NULL, NULL, NULL); -- 2.47.3