blob: 4e4b7b90f3b8eb4afb5218978383b3afee9e81fc [file] [log] [blame]
The Android Open Source Project5738f832012-12-12 16:00:35 -08001/******************************************************************************
2 *
Jakub Pawlowski5b790fe2017-09-18 09:00:20 -07003 * Copyright 1999-2012 Broadcom Corporation
The Android Open Source Project5738f832012-12-12 16:00:35 -08004 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at:
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 ******************************************************************************/
18
19/******************************************************************************
20 *
21 * This file contains the definitions for the SDP API
22 *
23 ******************************************************************************/
24
25#ifndef SDP_DEFS_H
26#define SDP_DEFS_H
27
28/* Define the service attribute IDs.
29*/
Myles Watson911d1ae2016-11-28 16:44:40 -080030#define ATTR_ID_SERVICE_RECORD_HDL 0x0000
31#define ATTR_ID_SERVICE_CLASS_ID_LIST 0x0001
32#define ATTR_ID_SERVICE_RECORD_STATE 0x0002
33#define ATTR_ID_SERVICE_ID 0x0003
34#define ATTR_ID_PROTOCOL_DESC_LIST 0x0004
35#define ATTR_ID_BROWSE_GROUP_LIST 0x0005
36#define ATTR_ID_LANGUAGE_BASE_ATTR_ID_LIST 0x0006
37#define ATTR_ID_SERVICE_INFO_TIME_TO_LIVE 0x0007
38#define ATTR_ID_SERVICE_AVAILABILITY 0x0008
39#define ATTR_ID_BT_PROFILE_DESC_LIST 0x0009
40#define ATTR_ID_DOCUMENTATION_URL 0x000A
41#define ATTR_ID_CLIENT_EXE_URL 0x000B
42#define ATTR_ID_ICON_URL 0x000C
43#define ATTR_ID_ADDITION_PROTO_DESC_LISTS 0x000D
The Android Open Source Project5738f832012-12-12 16:00:35 -080044
Myles Watson911d1ae2016-11-28 16:44:40 -080045#define LANGUAGE_BASE_ID 0x0100
46#define ATTR_ID_SERVICE_NAME (LANGUAGE_BASE_ID + 0x0000)
47#define ATTR_ID_SERVICE_DESCRIPTION (LANGUAGE_BASE_ID + 0x0001)
48#define ATTR_ID_PROVIDER_NAME (LANGUAGE_BASE_ID + 0x0002)
The Android Open Source Project5738f832012-12-12 16:00:35 -080049
50/* Device Identification (DI)
51*/
Myles Watson911d1ae2016-11-28 16:44:40 -080052#define ATTR_ID_SPECIFICATION_ID 0x0200
53#define ATTR_ID_VENDOR_ID 0x0201
54#define ATTR_ID_PRODUCT_ID 0x0202
55#define ATTR_ID_PRODUCT_VERSION 0x0203
56#define ATTR_ID_PRIMARY_RECORD 0x0204
57#define ATTR_ID_VENDOR_ID_SOURCE 0x0205
The Android Open Source Project5738f832012-12-12 16:00:35 -080058
Myles Watson911d1ae2016-11-28 16:44:40 -080059#define BLUETOOTH_DI_SPECIFICATION 0x0103 /* 1.3 */
60#define DI_VENDOR_ID_DEFAULT 0xFFFF
61#define DI_VENDOR_ID_SOURCE_BTSIG 0x0001
62#define DI_VENDOR_ID_SOURCE_USBIF 0x0002
The Android Open Source Project5738f832012-12-12 16:00:35 -080063
Myles Watson911d1ae2016-11-28 16:44:40 -080064#define ATTR_ID_IP_SUBNET 0x0200 /* PAN Profile (***) */
65#define ATTR_ID_VERSION_NUMBER_LIST 0x0200
66#define ATTR_ID_GOEP_L2CAP_PSM 0x0200
67#define ATTR_ID_GROUP_ID 0x0200
68#define ATTR_ID_SERVICE_DATABASE_STATE 0x0201
69#define ATTR_ID_SERVICE_VERSION 0x0300
70#define ATTR_ID_HCRP_1284ID 0x0300
The Android Open Source Project5738f832012-12-12 16:00:35 -080071
Myles Watson911d1ae2016-11-28 16:44:40 -080072#define ATTR_ID_SUPPORTED_DATA_STORES 0x0301
73#define ATTR_ID_NETWORK 0x0301
74#define ATTR_ID_EXTERNAL_NETWORK 0x0301
75#define ATTR_ID_FAX_CLASS_1_SUPPORT 0x0302
76#define ATTR_ID_REMOTE_AUDIO_VOLUME_CONTROL 0x0302
77#define ATTR_ID_DEVICE_NAME 0x0302
78#define ATTR_ID_SUPPORTED_FORMATS_LIST 0x0303
79#define ATTR_ID_FAX_CLASS_2_0_SUPPORT 0x0303
80#define ATTR_ID_FAX_CLASS_2_SUPPORT 0x0304
81#define ATTR_ID_FRIENDLY_NAME 0x0304
82#define ATTR_ID_AUDIO_FEEDBACK_SUPPORT 0x0305
83#define ATTR_ID_NETWORK_ADDRESS 0x0306
84#define ATTR_ID_DEVICE_LOCATION 0x0306
85#define ATTR_ID_WAP_GATEWAY 0x0307
86#define ATTR_ID_HOME_PAGE_URL 0x0308
87#define ATTR_ID_WAP_STACK_TYPE 0x0309
88#define ATTR_ID_IMG_SUPPORTED_CAPABILITIES 0x0310 /* Imaging Profile */
89#define ATTR_ID_SUPPORTED_FEATURES 0x0311 /* HFP, BIP */
90#define ATTR_ID_IMG_SUPPORTED_FUNCTIONS 0x0312 /* Imaging Profile */
91#define ATTR_ID_IMG_TOT_DATA_CAPABILITY 0x0313 /* Imaging Profile */
92#define ATTR_ID_SUPPORTED_REPOSITORIES 0x0314 /* Phone book access Profile */
93#define ATTR_ID_MAS_INSTANCE_ID 0x0315 /* MAP profile */
94#define ATTR_ID_SUPPORTED_MSG_TYPE 0x0316 /* MAP profile */
95#define ATTR_ID_MAP_SUPPORTED_FEATURES 0x0317 /* MAP profile */
96#define ATTR_ID_PBAP_SUPPORTED_FEATURES 0x0317 /* PBAP profile */
The Android Open Source Project5738f832012-12-12 16:00:35 -080097
98/* These values are for the BPP profile */
Myles Watson911d1ae2016-11-28 16:44:40 -080099#define ATTR_ID_DOCUMENT_FORMATS_SUPPORTED 0x0350
The Android Open Source Project5738f832012-12-12 16:00:35 -0800100#define ATTR_ID_CHARACTER_REPERTOIRES_SUPPORTED 0x0352
Myles Watson911d1ae2016-11-28 16:44:40 -0800101#define ATTR_ID_XHTML_IMAGE_FORMATS_SUPPORTED 0x0354
102#define ATTR_ID_COLOR_SUPPORTED 0x0356
103#define ATTR_ID_1284ID 0x0358
104#define ATTR_ID_PRINTER_NAME 0x035A
105#define ATTR_ID_PRINTER_LOCATION 0x035C
106#define ATTR_ID_DUPLEX_SUPPORTED 0x035E
107#define ATTR_ID_MEDIA_TYPES_SUPPORTED 0x0360
108#define ATTR_ID_MAX_MEDIA_WIDTH 0x0362
109#define ATTR_ID_MAX_MEDIA_LENGTH 0x0364
110#define ATTR_ID_ENHANCED_LAYOUT_SUPPORTED 0x0366
111#define ATTR_ID_RUI_FORMATS_SUPPORTED 0x0368
112#define ATTR_ID_RUI_REF_PRINTING_SUPPORTED 0x0370 /* Boolean */
113#define ATTR_ID_RUI_DIRECT_PRINTING_SUPPORTED 0x0372 /* Boolean */
114#define ATTR_ID_REF_PRINTING_TOP_URL 0x0374
115#define ATTR_ID_DIRECT_PRINTING_TOP_URL 0x0376
116#define ATTR_ID_PRINTER_ADMIN_RUI_TOP_URL 0x0378
117#define ATTR_ID_BPP_DEVICE_NAME 0x037A
The Android Open Source Project5738f832012-12-12 16:00:35 -0800118
119/* These values are for the PAN profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800120#define ATTR_ID_SECURITY_DESCRIPTION 0x030A
121#define ATTR_ID_NET_ACCESS_TYPE 0x030B
122#define ATTR_ID_MAX_NET_ACCESS_RATE 0x030C
123#define ATTR_ID_IPV4_SUBNET 0x030D
124#define ATTR_ID_IPV6_SUBNET 0x030E
125#define ATTR_ID_PAN_SECURITY 0x0400
The Android Open Source Project5738f832012-12-12 16:00:35 -0800126
127/* These values are for HID profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800128#define ATTR_ID_HID_DEVICE_RELNUM 0x0200
129#define ATTR_ID_HID_PARSER_VERSION 0x0201
130#define ATTR_ID_HID_DEVICE_SUBCLASS 0x0202
131#define ATTR_ID_HID_COUNTRY_CODE 0x0203
132#define ATTR_ID_HID_VIRTUAL_CABLE 0x0204
133#define ATTR_ID_HID_RECONNECT_INITIATE 0x0205
134#define ATTR_ID_HID_DESCRIPTOR_LIST 0x0206
135#define ATTR_ID_HID_LANGUAGE_ID_BASE 0x0207
136#define ATTR_ID_HID_SDP_DISABLE 0x0208
137#define ATTR_ID_HID_BATTERY_POWER 0x0209
138#define ATTR_ID_HID_REMOTE_WAKE 0x020A
139#define ATTR_ID_HID_PROFILE_VERSION 0x020B
140#define ATTR_ID_HID_LINK_SUPERVISION_TO 0x020C
141#define ATTR_ID_HID_NORMALLY_CONNECTABLE 0x020D
142#define ATTR_ID_HID_BOOT_DEVICE 0x020E
143#define ATTR_ID_HID_SSR_HOST_MAX_LAT 0x020F
144#define ATTR_ID_HID_SSR_HOST_MIN_TOUT 0x0210
The Android Open Source Project5738f832012-12-12 16:00:35 -0800145
The Android Open Source Project5738f832012-12-12 16:00:35 -0800146/* Define common 16-bit protocol UUIDs
147*/
Myles Watson911d1ae2016-11-28 16:44:40 -0800148#define UUID_PROTOCOL_SDP 0x0001
149#define UUID_PROTOCOL_UDP 0x0002
150#define UUID_PROTOCOL_RFCOMM 0x0003
151#define UUID_PROTOCOL_TCP 0x0004
152#define UUID_PROTOCOL_TCS_BIN 0x0005
153#define UUID_PROTOCOL_TCS_AT 0x0006
154#define UUID_PROTOCOL_OBEX 0x0008
155#define UUID_PROTOCOL_IP 0x0009
156#define UUID_PROTOCOL_FTP 0x000A
157#define UUID_PROTOCOL_HTTP 0x000C
158#define UUID_PROTOCOL_WSP 0x000E
159#define UUID_PROTOCOL_BNEP 0x000F
160#define UUID_PROTOCOL_UPNP 0x0010
161#define UUID_PROTOCOL_HIDP 0x0011
162#define UUID_PROTOCOL_HCRP_CTRL 0x0012
163#define UUID_PROTOCOL_HCRP_DATA 0x0014
164#define UUID_PROTOCOL_HCRP_NOTIF 0x0016
165#define UUID_PROTOCOL_AVCTP 0x0017
166#define UUID_PROTOCOL_AVDTP 0x0019
167#define UUID_PROTOCOL_CMTP 0x001B
168#define UUID_PROTOCOL_UDI 0x001D
169#define UUID_PROTOCOL_MCAP_CTRL 0x001E
170#define UUID_PROTOCOL_MCAP_DATA 0x001F
171#define UUID_PROTOCOL_L2CAP 0x0100
172#define UUID_PROTOCOL_ATT 0x0007
The Android Open Source Project5738f832012-12-12 16:00:35 -0800173
174/* Define common 16-bit service class UUIDs
175*/
176#define UUID_SERVCLASS_SERVICE_DISCOVERY_SERVER 0X1000
Myles Watson911d1ae2016-11-28 16:44:40 -0800177#define UUID_SERVCLASS_BROWSE_GROUP_DESCRIPTOR 0X1001
178#define UUID_SERVCLASS_PUBLIC_BROWSE_GROUP 0X1002
179#define UUID_SERVCLASS_SERIAL_PORT 0X1101
180#define UUID_SERVCLASS_LAN_ACCESS_USING_PPP 0X1102
181#define UUID_SERVCLASS_DIALUP_NETWORKING 0X1103
182#define UUID_SERVCLASS_IRMC_SYNC 0X1104
183#define UUID_SERVCLASS_OBEX_OBJECT_PUSH 0X1105
184#define UUID_SERVCLASS_OBEX_FILE_TRANSFER 0X1106
185#define UUID_SERVCLASS_IRMC_SYNC_COMMAND 0X1107
186#define UUID_SERVCLASS_HEADSET 0X1108
187#define UUID_SERVCLASS_CORDLESS_TELEPHONY 0X1109
188#define UUID_SERVCLASS_AUDIO_SOURCE 0X110A
189#define UUID_SERVCLASS_AUDIO_SINK 0X110B
Myles Watson9ca07092016-11-28 16:41:53 -0800190/* Audio/Video Control profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800191#define UUID_SERVCLASS_AV_REM_CTRL_TARGET 0X110C
Myles Watson9ca07092016-11-28 16:41:53 -0800192/* Advanced Audio Distribution profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800193#define UUID_SERVCLASS_ADV_AUDIO_DISTRIBUTION 0X110D
Myles Watson9ca07092016-11-28 16:41:53 -0800194/* Audio/Video Control profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800195#define UUID_SERVCLASS_AV_REMOTE_CONTROL 0X110E
Myles Watson9ca07092016-11-28 16:41:53 -0800196/* Audio/Video Control profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800197#define UUID_SERVCLASS_AV_REM_CTRL_CONTROL 0X110F
198#define UUID_SERVCLASS_INTERCOM 0X1110
199#define UUID_SERVCLASS_FAX 0X1111
200#define UUID_SERVCLASS_HEADSET_AUDIO_GATEWAY 0X1112
201#define UUID_SERVCLASS_WAP 0X1113
202#define UUID_SERVCLASS_WAP_CLIENT 0X1114
203#define UUID_SERVCLASS_PANU 0X1115 /* PAN profile */
204#define UUID_SERVCLASS_NAP 0X1116 /* PAN profile */
205#define UUID_SERVCLASS_GN 0X1117 /* PAN profile */
206#define UUID_SERVCLASS_DIRECT_PRINTING 0X1118 /* BPP profile */
207#define UUID_SERVCLASS_REFERENCE_PRINTING 0X1119 /* BPP profile */
208#define UUID_SERVCLASS_IMAGING 0X111A /* Imaging profile */
209#define UUID_SERVCLASS_IMAGING_RESPONDER 0X111B /* Imaging profile */
210#define UUID_SERVCLASS_IMAGING_AUTO_ARCHIVE 0X111C /* Imaging profile */
211#define UUID_SERVCLASS_IMAGING_REF_OBJECTS 0X111D /* Imaging profile */
212#define UUID_SERVCLASS_HF_HANDSFREE 0X111E /* Handsfree profile */
213#define UUID_SERVCLASS_AG_HANDSFREE 0X111F /* Handsfree profile */
214#define UUID_SERVCLASS_DIR_PRT_REF_OBJ_SERVICE 0X1120 /* BPP profile */
215#define UUID_SERVCLASS_REFLECTED_UI 0X1121 /* BPP profile */
216#define UUID_SERVCLASS_BASIC_PRINTING 0X1122 /* BPP profile */
217#define UUID_SERVCLASS_PRINTING_STATUS 0X1123 /* BPP profile */
218#define UUID_SERVCLASS_HUMAN_INTERFACE 0X1124 /* HID profile */
219#define UUID_SERVCLASS_CABLE_REPLACEMENT 0X1125 /* HCRP profile */
220#define UUID_SERVCLASS_HCRP_PRINT 0X1126 /* HCRP profile */
221#define UUID_SERVCLASS_HCRP_SCAN 0X1127 /* HCRP profile */
Myles Watson9ca07092016-11-28 16:41:53 -0800222/* CAPI Message Transport Protocol*/
Myles Watson911d1ae2016-11-28 16:44:40 -0800223#define UUID_SERVCLASS_COMMON_ISDN_ACCESS 0X1128
Myles Watson9ca07092016-11-28 16:41:53 -0800224/* Video Conferencing profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800225#define UUID_SERVCLASS_VIDEO_CONFERENCING_GW 0X1129
Myles Watson9ca07092016-11-28 16:41:53 -0800226/* Unrestricted Digital Information profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800227#define UUID_SERVCLASS_UDI_MT 0X112A
Myles Watson9ca07092016-11-28 16:41:53 -0800228/* Unrestricted Digital Information profile */
Myles Watson911d1ae2016-11-28 16:44:40 -0800229#define UUID_SERVCLASS_UDI_TA 0X112B
230#define UUID_SERVCLASS_VCP 0X112C /* Video Conferencing profile */
231#define UUID_SERVCLASS_SAP 0X112D /* SIM Access profile */
232#define UUID_SERVCLASS_PBAP_PCE 0X112E /* Phonebook Access - PCE */
233#define UUID_SERVCLASS_PBAP_PSE 0X112F /* Phonebook Access - PSE */
234#define UUID_SERVCLASS_PHONE_ACCESS 0x1130
235#define UUID_SERVCLASS_HEADSET_HS 0x1131 /* Headset - HS, from HSP v1.2 */
236#define UUID_SERVCLASS_PNP_INFORMATION 0X1200 /* Device Identification */
237#define UUID_SERVCLASS_GENERIC_NETWORKING 0X1201
238#define UUID_SERVCLASS_GENERIC_FILETRANSFER 0X1202
239#define UUID_SERVCLASS_GENERIC_AUDIO 0X1203
240#define UUID_SERVCLASS_GENERIC_TELEPHONY 0X1204
241#define UUID_SERVCLASS_UPNP_SERVICE 0X1205 /* UPNP_Service [ESDP] */
242#define UUID_SERVCLASS_UPNP_IP_SERVICE 0X1206 /* UPNP_IP_Service [ESDP] */
243#define UUID_SERVCLASS_ESDP_UPNP_IP_PAN 0X1300 /* UPNP_IP_PAN [ESDP] */
244#define UUID_SERVCLASS_ESDP_UPNP_IP_LAP 0X1301 /* UPNP_IP_LAP [ESDP] */
245#define UUID_SERVCLASS_ESDP_UPNP_IP_L2CAP 0X1302 /* UPNP_L2CAP [ESDP] */
Myles Watson9ca07092016-11-28 16:41:53 -0800246
247/* Video Distribution Profile (VDP) */
Myles Watson911d1ae2016-11-28 16:44:40 -0800248#define UUID_SERVCLASS_VIDEO_SOURCE 0X1303
249#define UUID_SERVCLASS_VIDEO_SINK 0X1304
250#define UUID_SERVCLASS_VIDEO_DISTRIBUTION 0X1305
Myles Watson9ca07092016-11-28 16:41:53 -0800251
Myles Watson911d1ae2016-11-28 16:44:40 -0800252#define UUID_SERVCLASS_HDP_PROFILE 0X1400 /* Health Device profile (HDP) */
253#define UUID_SERVCLASS_HDP_SOURCE 0X1401 /* Health Device profile (HDP) */
254#define UUID_SERVCLASS_HDP_SINK 0X1402 /* Health Device profile (HDP) */
255#define UUID_SERVCLASS_MAP_PROFILE 0X1134 /* MAP profile */
256#define UUID_SERVCLASS_MESSAGE_ACCESS 0X1132 /* Message Access Service */
257#define UUID_SERVCLASS_MESSAGE_NOTIFICATION \
258 0X1133 /* Message Notification Service */
The Android Open Source Project5738f832012-12-12 16:00:35 -0800259
Myles Watson911d1ae2016-11-28 16:44:40 -0800260#define UUID_SERVCLASS_GAP_SERVER 0x1800
261#define UUID_SERVCLASS_GATT_SERVER 0x1801
262#define UUID_SERVCLASS_IMMEDIATE_ALERT 0x1802 /* immediate alert */
263#define UUID_SERVCLASS_LINKLOSS 0x1803 /* Link Loss Alert */
264#define UUID_SERVCLASS_TX_POWER 0x1804 /* TX power */
265#define UUID_SERVCLASS_CURRENT_TIME 0x1805 /* Link Loss Alert */
266#define UUID_SERVCLASS_DST_CHG 0x1806 /* DST Time change */
267#define UUID_SERVCLASS_REF_TIME_UPD 0x1807 /* reference time update */
268#define UUID_SERVCLASS_THERMOMETER 0x1809 /* Thermometer UUID */
269#define UUID_SERVCLASS_DEVICE_INFO 0x180A /* device info service */
270#define UUID_SERVCLASS_NWA 0x180B /* Network availability */
271#define UUID_SERVCLASS_HEART_RATE 0x180D /* Heart Rate service */
272#define UUID_SERVCLASS_PHALERT 0x180E /* phone alert service */
273#define UUID_SERVCLASS_BATTERY 0x180F /* battery service */
274#define UUID_SERVCLASS_BPM 0x1810 /* blood pressure service */
275#define UUID_SERVCLASS_ALERT_NOTIFICATION 0x1811
276#define UUID_SERVCLASS_LE_HID 0x1812 /* HID over LE */
277#define UUID_SERVCLASS_SCAN_PARAM 0x1813 /* Scan Parameter service */
278#define UUID_SERVCLASS_GLUCOSE 0x1808 /* Glucose Meter Service */
279#define UUID_SERVCLASS_RSC 0x1814 /* RUNNERS SPEED AND CADENCE SERVICE */
280#define UUID_SERVCLASS_CSC 0x1816 /* Cycling SPEED AND CADENCE SERVICE */
Ganesh Ganapathi Battaead3cde2013-02-05 15:22:31 -0800281
Myles Watson911d1ae2016-11-28 16:44:40 -0800282#define UUID_SERVCLASS_TEST_SERVER 0x9000 /* Test Group UUID */
The Android Open Source Project5738f832012-12-12 16:00:35 -0800283
Myles Watson911d1ae2016-11-28 16:44:40 -0800284#define UUID_CODEC_CVSD 0x0001 /* CVSD */
285#define UUID_CODEC_MSBC 0x0002 /* mSBC */
The Android Open Source Project5738f832012-12-12 16:00:35 -0800286
Myles Watson911d1ae2016-11-28 16:44:40 -0800287#define UUID_HF_IND_ENHANCED_DRIVER_SAFETY 0x0001 /* Enhanced Safety */
288#define UUID_HF_IND_BATTERY_LEVEL_STATUS 0x0002 /* Battery Status */
Mudumba Ananth4de9bbc2016-02-29 02:21:43 -0800289
The Android Open Source Project5738f832012-12-12 16:00:35 -0800290/* Define all the 'Descriptor Type' values.
291*/
Myles Watson911d1ae2016-11-28 16:44:40 -0800292#define NULL_DESC_TYPE 0
293#define UINT_DESC_TYPE 1
294#define TWO_COMP_INT_DESC_TYPE 2
295#define UUID_DESC_TYPE 3
296#define TEXT_STR_DESC_TYPE 4
297#define BOOLEAN_DESC_TYPE 5
298#define DATA_ELE_SEQ_DESC_TYPE 6
299#define DATA_ELE_ALT_DESC_TYPE 7
300#define URL_DESC_TYPE 8
The Android Open Source Project5738f832012-12-12 16:00:35 -0800301
302/* Define all the "Descriptor Size" values.
303*/
Myles Watson911d1ae2016-11-28 16:44:40 -0800304#define SIZE_ONE_BYTE 0
305#define SIZE_TWO_BYTES 1
306#define SIZE_FOUR_BYTES 2
307#define SIZE_EIGHT_BYTES 3
308#define SIZE_SIXTEEN_BYTES 4
309#define SIZE_IN_NEXT_BYTE 5
310#define SIZE_IN_NEXT_WORD 6
311#define SIZE_IN_NEXT_LONG 7
The Android Open Source Project5738f832012-12-12 16:00:35 -0800312
313/* Language Encoding Constants */
Myles Watson911d1ae2016-11-28 16:44:40 -0800314#define LANG_ID_CODE_ENGLISH ((uint16_t)0x656e) /* "en" */
315#define LANG_ID_CHAR_ENCODE_UTF8 ((uint16_t)0x006a) /* UTF-8 */
The Android Open Source Project5738f832012-12-12 16:00:35 -0800316
Myles Watson9ca07092016-11-28 16:41:53 -0800317/* Constants used for display purposes only. These define overlapping attribute
318 * values */
Myles Watson911d1ae2016-11-28 16:44:40 -0800319#define ATTR_ID_VERS_OR_GRP_OR_DRELNUM_OR_IPSUB_OR_SPECID 0x0200
320#define ATTR_ID_VEND_ID_OR_SERVICE_DB_STATE_OR_PARSE_VER 0x0201
321#define ATTR_ID_PROD_ID_OR_HID_DEV_SUBCLASS 0x0202
322#define ATTR_ID_PROD_VER_OR_HID_COUNTRY_CODE 0x0203
323#define ATTR_ID_PRIMARY_REC_OR_HID_VIRTUAL_CABLE 0x0204
324#define ATTR_ID_DI_VENDOR_ID_SOURCE_OR_HID_INIT_RECONNECT 0x0205
325#define ATTR_ID_SERV_VERS_OR_1284ID 0x0300
326#define ATTR_ID_DATA_STORES_OR_NETWORK 0x0301
327#define ATTR_ID_FAX_1_OR_AUD_VOL_OR_DEV_NAME 0x0302
328#define ATTR_ID_FORMATS_OR_FAX_2_0 0x0303
329#define ATTR_ID_FAX_CLASS_2_OR_FRIENDLY_NAME 0x0304
330#define ATTR_ID_NETADDRESS_OR_DEVLOCATION 0x0306
The Android Open Source Project5738f832012-12-12 16:00:35 -0800331
332#endif