Skip to content

ATT_FIND_INFO_REQ fails for 128-bit UUID services and characteristics #147

Closed
@ThomasGerstenberg

Description

@ThomasGerstenberg

When performing a FIND_INFO_REQ over handles which include a 128-bit service UUID, the response is a malformed packet, specifying type 2 (128-bit UUID) but only copying 16-bits

The ternary on this line here needs to be inverted from

int uuidLen = isValueHandle ? 2 : attribute->uuidLength();

To

int uuidLen = isValueHandle ? attribute->uuidLength() : 2;

This makes sense because the only 128-bit UUIDs that should be returned are value handles, otherwise they'll be 16-bit.

Snippet of malformed packet:
image

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions