[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bluetooth-dev] SDP ERROR -- Not conforming to spec...



After detailed analysis of the SDP packets being sent to my client I
determined that the Axis implmentation is not to spec.

The SDP_ServiceAttributeResponse response message shown below violates spec
section 4.6.2 (p. 353 in the 1.0B BT core spec) which prescribes that the
first element of the attribute list (the outermost data element sequence)
shall be the Attribute ID of the first attribute.  The first length==8 data
element sequence is not just "not needed", it is illegal and contrary to
"the first element in the sequence contains the attribute ID of the first
attribute to be returned".

  In fact all of the DES's(Data ELem Seq) marked as "not needed", shown
below in the decoding of the SDP response, are illegal under 4.6.2 which
prescribes that "successive pairs of elements in the list contain additional
attribute ID and value pairs".  The VALUE may consist of a DES but the
language clearly excludes wrapping the entire pair in a DES.

  And finally the zero-length DES for the Browse Group List attribute is
banned by "Only attributes that have non-null values within the service
record AND [emphasis mine] whose attribute IDs were specified in the
SDP_ServiceAttributeRequest are contained in the AttributeList.  Neither an
attribute ID nor an attribute value is placed in the AttributeList for
attributes in the service record that have no value."

Decoding of the SDP response:

You can see where I marked with "????" that they send a sequence of zero
length.
They also send everything as a sequence, which is not supposed to be that
way.

00005092:04 13 05 01 01 00 05 00  02 01 20 6D 00 69 00 40
00005093:00
         05                           Service Search Rsp
        00 01 00 64             Trans Id
        00 61                       List byte count

        35 5F                       Data Elem Seq, len 5F
        35 08                       Data ELem Seq, len 8 (?? Not needed)
        09 00 00                  Attr ID 0 (Rec Handle)
        0A 00 10 FF FF      Record Handle

      35 08                         Data ELem Seq, len 8 (?? Not needed)
        09 00 01                  Attr ID 1 (Service Class ID)
        35 03                       Data ELem Seq, len 3
        19 11 02                  UUID LAN_ACCESS_USING_PPP

        35 11                       Data ELem Seq, len 17  (?? Not needed)
        09 00 04                  Attr ID 4 (Protocol Descr List)
        35 0C                      Data ELem Seq, len 12
        35 03                        Data ELem Seq, len 3
        19 01 00                   UUID L2CAP
        35 05                       Data ELem Seq, len 5
        19 00 03                UUID RFCOMM
        08 01                     SCN

        35 05                     Data ELem Seq, len 5 (?? Not needed)
        09 00 05                Attr ID 5 (Browse Group List)
        35 00                     Data Elem Seq, Len = 0 ????

        35 05                     Data Elem Seq, Len = 5 (?? Not needed)
        09 00 08                Attr ID 8 (Service Availability)
        08 15                     Availability (21 out of 255)

        35 0D                   Data Elem Seq, Len = 13 (?? Not needed)
        09 00 09               Attr ID 9 (Profile Descr List)
        35 08                    Data Elem Seq, Len = 8
        35 06                    Data Elem Seq, Len = 6
        19 11 02               UUID LAN_ACCESS_USING_PPP
        09 01 00               Profile Version 1:0

        35 19                   Data Elem Seq, Len = 25 (?? Not needed)
        09 01 00              Attr ID 0x100 (Service Name)
        25 14                   Text String 20 bytes
        4C 41 4E 20
        41 63 63 65
        73 73 20 75
        73 69 6E 67
        20 50 50 50

        00                          Continuation = 0


Michael Frey
--------------
BackBeat Systems, Inc.
1000 Winter St.
Suite 3300
Waltham, MA 02451
781-768-3786

-
To unsubscribe from this list: send the line "unsubscribe bluetooth-dev" in
the body of a message to majordomo@xxxxxxx.com