Diff between 454a30731b202e7e7f41befdd96f0a1fa3d33a38 and 3d4d9147a8cd086908e658f513a4c4c4cdecaea5
Changed Files
| File | Additions | Deletions | Status |
| src/attrib-server.c | +7 | -3 | modified |
Full Patch
diff --git a/src/attrib-server.c b/src/attrib-server.c
index 953a3f2..114c8a1 100644
--- a/src/attrib-server.c
+++ b/src/attrib-server.c
@@ -318,9 +318,13 @@ static uint32_t attrib_create_sdp_new(struct gatt_server *server,
if (a->len == 2)
sdp_uuid16_create(&svc, get_le16(a->data));
- else if (a->len == 16)
- sdp_uuid128_create(&svc, a->data);
- else
+ else if (a->len == 16) {
+ uint8_t be128[16];
+
+ /* Converting from LE to BE */
+ bswap_128(a->data, be128);
+ sdp_uuid128_create(&svc, be128);
+ } else
return 0;
record = server_record_new(&svc, handle, end);