diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index d0c1c01..4ef2ebe 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
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 bb196d8..c351501 100644
--- a/android/hal-msg.h
+++ b/android/hal-msg.h
#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