+ if (!g_strcmp0(metadata, "type")) {
+ /* Convert UUID string to 128 bit UUID */
+ uint32_t data0, data4;
+ uint16_t data1, data2, data3, data5;
+
+ if (!object->type || sscanf(object->type,
+ "%08x-%04hx-%04hx-%04hx-%08x%04hx",
+ &data0, &data1, &data2,
+ &data3, &data4, &data5) != 6) {
+ BT_ERR("Object Type UUID not updated");
+ return;
+ }
+
+ data0 = htonl(data0);
+ data1 = htons(data1);
+ data2 = htons(data2);
+ data3 = htons(data3);
+ data4 = htonl(data4);
+ data5 = htons(data5);
+
+ memcpy(value, &data0, 4);
+ memcpy(value+4, &data1, 2);
+ memcpy(value+6, &data2, 2);
+ memcpy(value+8, &data3, 2);
+ memcpy(value+10, &data4, 4);
+ memcpy(value+14, &data5, 2);
+
+ } else if (!g_strcmp0(metadata, "size")) {