From 2ce7e74bbbbf208219de4be90f67f995b918c3af Mon Sep 17 00:00:00 2001 From: Szymon Janc Date: Fri, 20 Dec 2013 11:25:39 +0100 Subject: [PATCH] android/hal-bluetooth: Add support for device service record property This allows to correctly handle device service record property. --- android/hal-bluetooth.c | 15 +++++++++++++++ android/hal-msg.h | 7 +++++++ 2 files changed, 22 insertions(+) diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c index d0c1c0136..4ef2ebe63 100644 --- a/android/hal-bluetooth.c +++ b/android/hal-bluetooth.c @@ -166,6 +166,21 @@ static void device_props_to_hal(bt_property_t *send_props, break; #endif case HAL_PROP_DEVICE_SERVICE_REC: + { + static bt_service_record_t e; + const struct hal_prop_device_service_rec *p; + + send_props[i].val = &e; + send_props[i].len = sizeof(e); + + p = (struct hal_prop_device_service_rec *) prop->val; + + memset(&e, 0, sizeof(e)); + memcpy(&e.channel, &p->channel, sizeof(e.channel)); + memcpy(e.uuid.uu, p->uuid, sizeof(e.uuid.uu)); + memcpy(e.name, p->name, p->name_len); + } + break; default: send_props[i].len = prop->len; send_props[i].val = prop->val; diff --git a/android/hal-msg.h b/android/hal-msg.h index bb196d80d..c35150125 100644 --- a/android/hal-msg.h +++ b/android/hal-msg.h @@ -107,6 +107,13 @@ struct hal_cmd_get_adapter_prop { #define HAL_PROP_DEVICE_CLASS 0x04 #define HAL_PROP_DEVICE_TYPE 0x05 #define HAL_PROP_DEVICE_SERVICE_REC 0x06 +struct hal_prop_device_service_rec { + uint8_t uuid[16]; + uint16_t channel; + uint8_t name_len; + uint8_t name[]; +} __attribute__((packed)); + #define HAL_PROP_DEVICE_FRIENDLY_NAME 0x0a #define HAL_PROP_DEVICE_RSSI 0x0b #define HAL_PROP_DEVICE_VERSION_INFO 0x0c -- 2.47.3