Make bluetooth SDP code correctly unpack the search UUIDs and parameters.
[pub/lufa.git] / Demos / Host / Incomplete / BluetoothHost / Lib / ServiceDiscoveryProtocol.h
index b17cc2b..39c97af 100644 (file)
                        static void ServiceDiscovery_ProcessServiceAttribute(SDP_PDUHeader_t* SDPHeader);\r
                        static void ServiceDiscovery_ProcessServiceSearchAttribute(SDP_PDUHeader_t* SDPHeader);\r
                        \r
-                       static inline uint16_t ServiceDiscovery_Read16BitParameter(void* AttributeHeader)\r
+                       static inline uint16_t ServiceDiscovery_Read16BitParameter(void** AttributeHeader)\r
                        {\r
-                               return *((uint16_t*)AttributeHeader++);\r
+                               uint16_t ParamValue = *((uint16_t*)*AttributeHeader);\r
+                               *AttributeHeader += sizeof(uint16_t);\r
+                               return ParamValue;\r
                        }\r
 \r
-                       static uint32_t ServiceDiscovery_GetDataElementSize(void* AttributeHeader);\r
+                       static uint32_t ServiceDiscovery_GetDataElementSize(void** AttributeHeader, uint8_t* ElementHeaderSize);\r
                #endif\r
 \r
 #endif\r