summaryrefslogtreecommitdiff
path: root/monitor/l2cap.h
Commit message (Collapse)AuthorAgeFilesLines
* monitor/att: Add handler support for Read by TypeLuiz Augusto von Dentz2022-11-041-3/+10
| | | | | This adds handler support for Read by Type so it can further decode the values when the procedure is used.
* monitor: Fix usage of %z formater for uint64_tBrian Gix2022-06-301-2/+2
| | | | | %z expect a size_t as argument not uint64_t, so passing an argument of type uint64_t shall use PRIx64 instead.
* monitor/att: Add decoding support for ASE Sink/SourceLuiz Augusto von Dentz2022-05-261-0/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds decoding support for ASE Sink/Source attributes: > ACL Data RX: Handle 42 flags 0x02 dlen 9 Channel: 65 len 5 sdu 3 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Read Request (0x0a) len 2 Handle: 0x002a Type: Sink ASE (0x2bc4) < ACL Data TX: Handle 42 flags 0x00 dlen 9 Channel: 64 len 5 sdu 3 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Read Response (0x0b) len 2 Value: 0300 ASE ID: 1 State: Idle (0x00) < ACL Data TX: Handle 42 flags 0x00 dlen 55 Channel: 64 len 51 sdu 49 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Handle Multiple Value Notification (0x23) len 48 Length: 0x0023 Handle: 0x0024 Type: Sink ASE (0x2bc4) Data: 01010000000a00204e00409c00204e00409c0006000000000a02010302020103042800 ASE ID: 1 State: Codec Configured (0x01) Framing: Unframed PDUs supported (0x00) PHY: 0x00 RTN: 0 Max Transport Latency: 10 Presentation Delay Min: 20000 us Presentation Delay Max: 40000 us Preferred Presentation Delay Min: 20000 us Preferred Presentation Delay Max: 40000 us Codec: LC3 (0x06) Codec Specific Configuration #0: len 0x02 type 0x01 Codec Specific Configuration: 03 Codec Specific Configuration #1: len 0x02 type 0x02 Codec Specific Configuration: 01 Codec Specific Configuration #2: len 0x03 type 0x04 Codec Specific Configuration: 2800 < ACL Data TX: Handle 42 flags 0x00 dlen 37 Channel: 64 len 33 sdu 31 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Handle Multiple Value Notification (0x23) len 30 Length: 0x0011 Handle: 0x0024 Type: Sink ASE (0x2bc4) Data: 0102000010270000022800020a00409c00 ASE ID: 1 State: QoS Configured (0x02) CIG ID: 0x00 CIS ID: 0x00 SDU Interval: 10000 usec Framing: Unframed (0x00) PHY: 0x02 LE 2M PHY (0x02) Max SDU: 40 RTN: 2 Max Transport Latency: 10 Presentation Delay: 40000 us < ACL Data TX: Handle 42 flags 0x00 dlen 33 Channel: 64 len 29 sdu 27 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Handle Multiple Value Notification (0x23) len 26 Length: 0x000d Handle: 0x002a Type: Source ASE (0x2bc5) Data: 03030000060304030202000000 ASE ID: 3 State: Enabling (0x03) CIG ID: 0x00 CIS ID: 0x00 Metadata #0: len 0x03 type 0x04 Metadata: 0302 Metadata #1: len 0x02 type 0x00 < ACL Data TX: Handle 42 flags 0x00 dlen 39 Channel: 64 len 35 sdu 33 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Handle Multiple Value Notification (0x23) len 32 Length: 0x000d Handle: 0x002a Type: Source ASE (0x2bc5) Data: 03040000060304030202000000 ASE ID: 3 State: Streaming (0x04) CIG ID: 0x00 CIS ID: 0x00 Metadata #0: len 0x03 type 0x04 Metadata: 0302 Metadata #1: len 0x02 type 0x00 < ACL Data TX: Handle 42 flags 0x00 dlen 33 Channel: 64 len 29 sdu 27 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Handle Multiple Value Notification (0x23) len 26 Length: 0x000d Handle: 0x002a Type: Source ASE (0x2bc5) Data: 03050000060304030202000000 ASE ID: 3 State: Disabling (0x05) CIG ID: 0x00 CIS ID: 0x00 Metadata #0: len 0x03 type 0x04 Metadata: 0302 Metadata #1: len 0x02 type 0x00
* monitor/att: Add decoding support for PAC Sink/SourceLuiz Augusto von Dentz2022-05-261-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | This adds decoding support for PAC Sink/Source attributes: < ACL Data TX: Handle 42 flags 0x00 dlen 9 Channel: 64 len 5 sdu 3 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} ATT: Read Request (0x0a) len 2 Handle: 0x0017 Type: Sink PAC (0x2bc9) > ACL Data RX: Handle 42 flags 0x02 dlen 31 Channel: 65 len 27 sdu 25 [PSM 39 mode Enhanced Credit (0x81)] {chan 0} Value: 010600000000100301ff0002020302030305041e00f00000 Number of PAC(s): 1 PAC #0: Codec: LC3 (0x06) Codec Specific Configuration #0: len 0x03 type 0x01 Codec Specific Configuration: ff00 Codec Specific Configuration #1: len 0x02 type 0x02 Codec Specific Configuration: 03 Codec Specific Configuration #2: len 0x02 type 0x03 Codec Specific Configuration: 03 Codec Specific Configuration #3: len 0x05 type 0x04 Codec Specific Configuration: 1e00f000
* monitor/att: Fix parsing of notificationsLuiz Augusto von Dentz2022-05-251-2/+10
| | | | | | | If there are multiple notifications in the same frame the callback may alter it when using l2cap_frame_pull helpers, so instead this passes a cloned frame with just the expected length so callbacks cannot alter original frame.
* monitor: Move ATT decoding function into its own fileLuiz Augusto von Dentz2022-05-181-0/+5
| | | | This moves ATT decoding function from l2cap.c to att.c.
* monitor: Add SPDX License IdentifierTedd Ho-Jeong An2020-09-211-14/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds SPDX License Identifier and removes the license text. ------------------------------------- License COUNT ------------------------------------- LGPL-2.1-or-later : 47 License: LGPL-2.1-or-later monitor/bt.h monitor/hcidump.h monitor/avdtp.h monitor/crc.c monitor/sdp.c monitor/hwdb.c monitor/intel.h monitor/avctp.c monitor/control.h monitor/display.c monitor/a2dp.c monitor/ll.c monitor/ll.h monitor/jlink.h monitor/broadcom.h monitor/lmp.c monitor/keys.c monitor/ellisys.c monitor/main.c monitor/ellisys.h monitor/hwdb.h monitor/display.h monitor/jlink.c monitor/rfcomm.h monitor/packet.c monitor/crc.h monitor/keys.h monitor/sdp.h monitor/rfcomm.c monitor/avdtp.c monitor/a2dp.h monitor/avctp.h monitor/vendor.h monitor/hcidump.c monitor/intel.c monitor/tty.h monitor/control.c monitor/lmp.h monitor/analyze.c monitor/bnep.c monitor/l2cap.c monitor/vendor.c monitor/packet.h monitor/broadcom.c monitor/analyze.h monitor/l2cap.h monitor/bnep.h
* monitor: Add support for user input/output dataLuiz Augusto von Dentz2018-10-081-0/+3
| | | | | This detects if the user logging is an input/output and then proceed to decode the header which inform for which CID and PSM the data is for.
* monitor/l2cap: Add channel sequence numberAndrzej Kaczmarek2015-12-011-0/+1
| | | | | | | This patch adds sequence number to channels structure which determines order in which channels for the same PSM were created. It will be used for protocols like AVDTP where there is single PSM used for multiple channels and order it which they were created is important.
* monitor: Add MediaPlayerItem for GetFolderItemsBharat Panda2015-04-171-0/+16
| | | | | | | | | | | | | | Add support for decoding GetFolderItems(MediaPlayerItem) for avrcp in bluetooth monitor. Channel: 65 len 20 ctrl 0x0306 [PSM 27 mode 3] {chan 1} I-frame: Unsegmented TxSeq 3 ReqSeq 3 AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e AVRCP: GetFolderItems: len 0x000a Scope: 0x00 (Media Player List) StartItem: 0x00000000 (0) EndItem: 0x00000064 (100) AttributeCount: 0x00 (0)
* monitor: Add PSM tracking support for LE CoCSzymon Janc2015-02-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This uses identifier to match simultaneous L2CAP connect requests and responses. < ACL Data TX: Handle 3585 flags 0x00 dlen 18 LE L2CAP: LE Connection Request (0x14) ident 2 len 10 PSM: 131 (0x0083) Source CID: 65 MTU: 672 MPS: 672 Credits: 10 > ACL Data RX: Handle 3585 flags 0x02 dlen 18 LE L2CAP: LE Connection Response (0x15) ident 2 len 10 Destination CID: 65 MTU: 23 MPS: 23 Credits: 5 Result: Connection successful (0x0000) < ACL Data TX: Handle 3585 flags 0x00 dlen 27 Channel: 65 len 23 [PSM 131 mode 0] {chan 1} 17 00 00 00 00 00 17 00 7f 7f 7f 7f 7f 7f 7f 7f ................ 7f 7f 7f 7f 7f 7f 7f ....... < ACL Data TX: Handle 3585 flags 0x00 dlen 6 Channel: 65 len 2 [PSM 131 mode 0] {chan 1} 7f 7f ..
* monitor: Fix the return value of l2cap_frame_get_le16()Vikrampal Yadav2014-11-191-1/+1
| | | | The return value of l2cap_frame_get_le16() rectified.
* monitor/rfcomm: Add RFCOMM support to btmonGowtham Anandha Babu2014-11-101-0/+2
| | | | | | | | | | | | | | | | | | Changes made to add initial code to support RFCOMM frame in btmon btmon logs: RFCOMM: Set Async Balance Mode (SABM) (0x2f) 01 1c .. RFCOMM: Unnumbered Ack (UA)(0x63) 01 d7 .. RFCOMM: Unnumbered Info with Header Check (UIH)(0xef) 15 81 11 20 e0 27 00 9a 02 00 07 aa ... .'...... RFCOMM: Disconnect (DISC)(0x43) 01 fd
* monitor: Make l2cap_frame_get* function to return boolLuiz Augusto von Dentz2014-08-261-20/+20
|
* monitor: Add helper functions to get data from L2CAP framesLuiz Augusto von Dentz2014-08-251-9/+109
|
* monitor: Add mode and channel to struct l2cap_frameLuiz Augusto von Dentz2014-07-311-13/+6
| | | | This make it simpler to pass it around.
* monitor: Add AVCTP support to btmonVikrampal Yadav2014-07-311-0/+1
| | | | Support for decoding AVCTP packets added in Bluetooth monitor.
* monitor: Update copyright and license detailsMarcel Holtmann2014-02-111-11/+11
|
* monitor: Add basic decoding for SDP transactionsMarcel Holtmann2012-11-171-0/+32
|
* monitor: Support proper ACL packet fragmentationMarcel Holtmann2012-11-141-1/+2
|
* monitor: Add decoding of L2CAP signal channelMarcel Holtmann2012-11-091-1/+2
|
* monitor: Move L2CAP header definition into global includeMarcel Holtmann2012-11-091-5/+0
|
* monitor: Provice ACL handle to L2CAP packetsMarcel Holtmann2012-11-091-1/+1
|
* monitor: Add simple L2CAP packet framingMarcel Holtmann2012-11-031-0/+32