xref: /aosp_15_r20/external/libpcap/pcap/bluetooth.h (revision 8b26181f966a6af5cf6981a6f474313de533bb28)
1*8b26181fSAndroid Build Coastguard Worker /*
2*8b26181fSAndroid Build Coastguard Worker  * Copyright (c) 2006 Paolo Abeni (Italy)
3*8b26181fSAndroid Build Coastguard Worker  * All rights reserved.
4*8b26181fSAndroid Build Coastguard Worker  *
5*8b26181fSAndroid Build Coastguard Worker  * Redistribution and use in source and binary forms, with or without
6*8b26181fSAndroid Build Coastguard Worker  * modification, are permitted provided that the following conditions
7*8b26181fSAndroid Build Coastguard Worker  * are met:
8*8b26181fSAndroid Build Coastguard Worker  *
9*8b26181fSAndroid Build Coastguard Worker  * 1. Redistributions of source code must retain the above copyright
10*8b26181fSAndroid Build Coastguard Worker  * notice, this list of conditions and the following disclaimer.
11*8b26181fSAndroid Build Coastguard Worker  * 2. Redistributions in binary form must reproduce the above copyright
12*8b26181fSAndroid Build Coastguard Worker  * notice, this list of conditions and the following disclaimer in the
13*8b26181fSAndroid Build Coastguard Worker  * documentation and/or other materials provided with the distribution.
14*8b26181fSAndroid Build Coastguard Worker  * 3. The name of the author may not be used to endorse or promote
15*8b26181fSAndroid Build Coastguard Worker  * products derived from this software without specific prior written
16*8b26181fSAndroid Build Coastguard Worker  * permission.
17*8b26181fSAndroid Build Coastguard Worker  *
18*8b26181fSAndroid Build Coastguard Worker  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19*8b26181fSAndroid Build Coastguard Worker  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20*8b26181fSAndroid Build Coastguard Worker  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21*8b26181fSAndroid Build Coastguard Worker  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22*8b26181fSAndroid Build Coastguard Worker  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23*8b26181fSAndroid Build Coastguard Worker  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24*8b26181fSAndroid Build Coastguard Worker  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25*8b26181fSAndroid Build Coastguard Worker  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26*8b26181fSAndroid Build Coastguard Worker  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27*8b26181fSAndroid Build Coastguard Worker  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28*8b26181fSAndroid Build Coastguard Worker  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29*8b26181fSAndroid Build Coastguard Worker  *
30*8b26181fSAndroid Build Coastguard Worker  * bluetooth data struct
31*8b26181fSAndroid Build Coastguard Worker  * By Paolo Abeni <[email protected]>
32*8b26181fSAndroid Build Coastguard Worker  */
33*8b26181fSAndroid Build Coastguard Worker 
34*8b26181fSAndroid Build Coastguard Worker #ifndef lib_pcap_bluetooth_h
35*8b26181fSAndroid Build Coastguard Worker #define lib_pcap_bluetooth_h
36*8b26181fSAndroid Build Coastguard Worker 
37*8b26181fSAndroid Build Coastguard Worker #include <pcap/pcap-inttypes.h>
38*8b26181fSAndroid Build Coastguard Worker 
39*8b26181fSAndroid Build Coastguard Worker /*
40*8b26181fSAndroid Build Coastguard Worker  * Header prepended libpcap to each bluetooth h4 frame,
41*8b26181fSAndroid Build Coastguard Worker  * fields are in network byte order
42*8b26181fSAndroid Build Coastguard Worker  */
43*8b26181fSAndroid Build Coastguard Worker typedef struct _pcap_bluetooth_h4_header {
44*8b26181fSAndroid Build Coastguard Worker 	uint32_t direction; /* if first bit is set direction is incoming */
45*8b26181fSAndroid Build Coastguard Worker } pcap_bluetooth_h4_header;
46*8b26181fSAndroid Build Coastguard Worker 
47*8b26181fSAndroid Build Coastguard Worker /*
48*8b26181fSAndroid Build Coastguard Worker  * Header prepended libpcap to each bluetooth linux monitor frame,
49*8b26181fSAndroid Build Coastguard Worker  * fields are in network byte order
50*8b26181fSAndroid Build Coastguard Worker  */
51*8b26181fSAndroid Build Coastguard Worker typedef struct _pcap_bluetooth_linux_monitor_header {
52*8b26181fSAndroid Build Coastguard Worker 	uint16_t adapter_id;
53*8b26181fSAndroid Build Coastguard Worker 	uint16_t opcode;
54*8b26181fSAndroid Build Coastguard Worker } pcap_bluetooth_linux_monitor_header;
55*8b26181fSAndroid Build Coastguard Worker 
56*8b26181fSAndroid Build Coastguard Worker #endif
57