Skip to content

Modifications composed during UPF38

Brian Gix linux-bluetooth 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 7 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3Fixed def of ATT_UUID per BT Assigned Numberslib/sdp.h+1 -11 reply
2/3Add SDP registration of Primary GATT servicesattrib/example.c src/attrib-server.c src/attrib-server.h+184 -803 replies
3/3Add gatttool enhancements for UPFattrib/gatttool.c+52 -53 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/3] Modifications composed during UPF38

The major change in these patches is to register Primary Services into the SDP databases as required when registering them into the attrib-server's database. The Core v4.0 specification indicates that the only valid/foolproof way for a BR/EDR client to query a server for Primary Services is to do so via an SDP query. This is from Core v4.0, Vol 3, Part G, Sec 4.4:

"GATT service discovery over BR/EDR transport will list services that only run over an LE transport and therefore only SDP service discovery shall be used on BR/EDR."

This also means that there can be "LE Only" primary services that do NOT need to be in the SDP database, so if a valid range is not specified when registering a Primary Service, it will be omitted from SDP, and only appear when performing a GATT based Primary Service Discover.

Also -- The ATT_UUID we were using was incorrect, and I extended the functionality of the gatttool to allow for listening without sending anything, and ability to perform both a char-write and char-cmd.

Signature · 4 lines
Brian Gix
[email protected]
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum