xref: /aosp_15_r20/external/libcups/backend/backend-private.h (revision 5e7646d21f1134fb0638875d812ef646c12ab91e)
1*5e7646d2SAndroid Build Coastguard Worker /*
2*5e7646d2SAndroid Build Coastguard Worker  * Backend support definitions for CUPS.
3*5e7646d2SAndroid Build Coastguard Worker  *
4*5e7646d2SAndroid Build Coastguard Worker  * Copyright © 2021 by OpenPrinting
5*5e7646d2SAndroid Build Coastguard Worker  * Copyright © 2007-2021 by Apple Inc.
6*5e7646d2SAndroid Build Coastguard Worker  * Copyright © 1997-2007 by Easy Software Products, all rights reserved.
7*5e7646d2SAndroid Build Coastguard Worker  *
8*5e7646d2SAndroid Build Coastguard Worker  * Licensed under Apache License v2.0.  See the file "LICENSE" for more
9*5e7646d2SAndroid Build Coastguard Worker  * information.
10*5e7646d2SAndroid Build Coastguard Worker  */
11*5e7646d2SAndroid Build Coastguard Worker 
12*5e7646d2SAndroid Build Coastguard Worker #ifndef _CUPS_BACKEND_PRIVATE_H_
13*5e7646d2SAndroid Build Coastguard Worker #  define _CUPS_BACKEND_PRIVATE_H_
14*5e7646d2SAndroid Build Coastguard Worker 
15*5e7646d2SAndroid Build Coastguard Worker 
16*5e7646d2SAndroid Build Coastguard Worker /*
17*5e7646d2SAndroid Build Coastguard Worker  * Include necessary headers.
18*5e7646d2SAndroid Build Coastguard Worker  */
19*5e7646d2SAndroid Build Coastguard Worker 
20*5e7646d2SAndroid Build Coastguard Worker #  include <cups/cups-private.h>
21*5e7646d2SAndroid Build Coastguard Worker #  include <cups/snmp-private.h>
22*5e7646d2SAndroid Build Coastguard Worker #  include <cups/backend.h>
23*5e7646d2SAndroid Build Coastguard Worker #  include <cups/sidechannel.h>
24*5e7646d2SAndroid Build Coastguard Worker #  include <signal.h>
25*5e7646d2SAndroid Build Coastguard Worker 
26*5e7646d2SAndroid Build Coastguard Worker #  ifdef __linux
27*5e7646d2SAndroid Build Coastguard Worker #    include <sys/ioctl.h>
28*5e7646d2SAndroid Build Coastguard Worker #    include <linux/lp.h>
29*5e7646d2SAndroid Build Coastguard Worker #    define IOCNR_GET_DEVICE_ID		1
30*5e7646d2SAndroid Build Coastguard Worker #    define LPIOC_GET_DEVICE_ID(len)	_IOC(_IOC_READ, 'P', IOCNR_GET_DEVICE_ID, len)
31*5e7646d2SAndroid Build Coastguard Worker #    include <linux/parport.h>
32*5e7646d2SAndroid Build Coastguard Worker #    include <linux/ppdev.h>
33*5e7646d2SAndroid Build Coastguard Worker #    include <unistd.h>
34*5e7646d2SAndroid Build Coastguard Worker #    include <fcntl.h>
35*5e7646d2SAndroid Build Coastguard Worker #  endif /* __linux */
36*5e7646d2SAndroid Build Coastguard Worker 
37*5e7646d2SAndroid Build Coastguard Worker #  ifdef __sun
38*5e7646d2SAndroid Build Coastguard Worker #    ifdef __sparc
39*5e7646d2SAndroid Build Coastguard Worker #      include <sys/ecppio.h>
40*5e7646d2SAndroid Build Coastguard Worker #    else
41*5e7646d2SAndroid Build Coastguard Worker #      include <sys/ioccom.h>
42*5e7646d2SAndroid Build Coastguard Worker #      include <sys/ecppsys.h>
43*5e7646d2SAndroid Build Coastguard Worker #    endif /* __sparc */
44*5e7646d2SAndroid Build Coastguard Worker #  endif /* __sun */
45*5e7646d2SAndroid Build Coastguard Worker 
46*5e7646d2SAndroid Build Coastguard Worker 
47*5e7646d2SAndroid Build Coastguard Worker /*
48*5e7646d2SAndroid Build Coastguard Worker  * C++ magic...
49*5e7646d2SAndroid Build Coastguard Worker  */
50*5e7646d2SAndroid Build Coastguard Worker 
51*5e7646d2SAndroid Build Coastguard Worker #  ifdef __cplusplus
52*5e7646d2SAndroid Build Coastguard Worker extern "C" {
53*5e7646d2SAndroid Build Coastguard Worker #  endif /* __cplusplus */
54*5e7646d2SAndroid Build Coastguard Worker 
55*5e7646d2SAndroid Build Coastguard Worker 
56*5e7646d2SAndroid Build Coastguard Worker /*
57*5e7646d2SAndroid Build Coastguard Worker  * Log messages in backend signal handlers or other places where stdio cannot
58*5e7646d2SAndroid Build Coastguard Worker  * be used...
59*5e7646d2SAndroid Build Coastguard Worker  */
60*5e7646d2SAndroid Build Coastguard Worker 
61*5e7646d2SAndroid Build Coastguard Worker #  define backendMessage(msg) {const char *s = msg; write(2, s, strlen(s));}
62*5e7646d2SAndroid Build Coastguard Worker 
63*5e7646d2SAndroid Build Coastguard Worker 
64*5e7646d2SAndroid Build Coastguard Worker /*
65*5e7646d2SAndroid Build Coastguard Worker  * OID constants...
66*5e7646d2SAndroid Build Coastguard Worker  */
67*5e7646d2SAndroid Build Coastguard Worker 
68*5e7646d2SAndroid Build Coastguard Worker /* Host MIB */
69*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_mib2				1,3,6,1,2,1
70*5e7646d2SAndroid Build Coastguard Worker 
71*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_system				CUPS_OID_mib2,1
72*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_sysLocation			CUPS_OID_system,6
73*5e7646d2SAndroid Build Coastguard Worker 
74*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_host				CUPS_OID_mib2,25
75*5e7646d2SAndroid Build Coastguard Worker 
76*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrSystem			CUPS_OID_host,1
77*5e7646d2SAndroid Build Coastguard Worker 
78*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrStorage			CUPS_OID_host,2
79*5e7646d2SAndroid Build Coastguard Worker 
80*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrDevice			CUPS_OID_host,3
81*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrDeviceTable			CUPS_OID_hrDevice,2
82*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrDeviceEntry			CUPS_OID_hrDeviceTable,1
83*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrDeviceIndex			CUPS_OID_hrDeviceEntry,1
84*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrDeviceType			CUPS_OID_hrDeviceEntry,2
85*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrDeviceDescr			CUPS_OID_hrDeviceEntry,3
86*5e7646d2SAndroid Build Coastguard Worker 
87*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrPrinterTable			CUPS_OID_hrDevice,5
88*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrPrinterEntry			CUPS_OID_hrPrinterTable,1
89*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrPrinterStatus		CUPS_OID_hrPrinterEntry,1
90*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_hrPrinterDetectedErrorState	CUPS_OID_hrPrinterEntry,2
91*5e7646d2SAndroid Build Coastguard Worker 
92*5e7646d2SAndroid Build Coastguard Worker /* Printer MIB */
93*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_printmib			CUPS_OID_mib2,43
94*5e7646d2SAndroid Build Coastguard Worker 
95*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtGeneral			CUPS_OID_printmib,5
96*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtGeneralTable		CUPS_OID_prtGeneral,1
97*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtGeneralEntry		CUPS_OID_prtGeneralTable,1
98*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtGeneralCurrentLocalization	CUPS_OID_prtGeneralEntry,2
99*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtGeneralPrinterName		CUPS_OID_prtGeneralEntry,16
100*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtGeneralSerialNumber		CUPS_OID_prtGeneralEntry,17
101*5e7646d2SAndroid Build Coastguard Worker 
102*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtCover			CUPS_OID_printmib,6
103*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtCoverTable			CUPS_OID_prtCover,1
104*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtCoverEntry			CUPS_OID_prtCoverTable,1
105*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtCoverDescription		CUPS_OID_prtCoverEntry,2
106*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtCoverStatus			CUPS_OID_prtCoverEntry,3
107*5e7646d2SAndroid Build Coastguard Worker 
108*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtLocalization		CUPS_OID_printmib,7
109*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtLocalizationTable		CUPS_OID_prtLocalization,1
110*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtLocalizationEntry		CUPS_OID_prtLocalizationTable,1
111*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtLocalizationCharacterSet	CUPS_OID_prtLocalizationEntry,4
112*5e7646d2SAndroid Build Coastguard Worker 
113*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarker			CUPS_OID_printmib,10
114*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerTable			CUPS_OID_prtMarker,2
115*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerEntry			CUPS_OID_prtMarkerTable,1
116*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerLifeCount		CUPS_OID_prtMarkerEntry,4
117*5e7646d2SAndroid Build Coastguard Worker 
118*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSupplies		CUPS_OID_printmib,11
119*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesTable		CUPS_OID_prtMarkerSupplies,1
120*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesEntry		CUPS_OID_prtMarkerSuppliesTable,1
121*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesIndex		CUPS_OID_prtMarkerSuppliesEntry,1
122*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesMarkerIndex	CUPS_OID_prtMarkerSuppliesEntry,2
123*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesColorantIndex	CUPS_OID_prtMarkerSuppliesEntry,3
124*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesClass		CUPS_OID_prtMarkerSuppliesEntry,4
125*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesType		CUPS_OID_prtMarkerSuppliesEntry,5
126*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesDescription	CUPS_OID_prtMarkerSuppliesEntry,6
127*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesSupplyUnit	CUPS_OID_prtMarkerSuppliesEntry,7
128*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesMaxCapacity	CUPS_OID_prtMarkerSuppliesEntry,8
129*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerSuppliesLevel		CUPS_OID_prtMarkerSuppliesEntry,9
130*5e7646d2SAndroid Build Coastguard Worker 
131*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorant		CUPS_OID_printmib,12
132*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorantTable		CUPS_OID_prtMarkerColorant,1
133*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorantEntry		CUPS_OID_prtMarkerColorantTable,1
134*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorantIndex		CUPS_OID_prtMarkerColorantEntry,1
135*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorantMarkerIndex	CUPS_OID_prtMarkerColorantEntry,2
136*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorantRole		CUPS_OID_prtMarkerColorantEntry,3
137*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorantValue		CUPS_OID_prtMarkerColorantEntry,4
138*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtMarkerColorantTonality	CUPS_OID_prtMarkerColorantEntry,5
139*5e7646d2SAndroid Build Coastguard Worker 
140*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtInterpreter			CUPS_OID_printmib,15
141*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtInterpreterTable		CUPS_OID_prtInterpreter,1
142*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtInterpreterEntry		CUPS_OID_prtInterpreterTable,1
143*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtInterpreterLangFamily	CUPS_OID_prtInterpreterEntry,2
144*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_prtInterpreterLangLevel	CUPS_OID_prtInterpreterEntry,3
145*5e7646d2SAndroid Build Coastguard Worker 
146*5e7646d2SAndroid Build Coastguard Worker /* Printer Port Monitor MIB */
147*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_enterprises			1,3,6,1,4,1
148*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_pwg				CUPS_OID_enterprises,2699,1
149*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmMIB				CUPS_OID_pwg,2
150*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmMIBObjects			CUPS_OID_ppmMIB,1
151*5e7646d2SAndroid Build Coastguard Worker 
152*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmGeneral			CUPS_OID_ppmMIBObjects,1
153*5e7646d2SAndroid Build Coastguard Worker 
154*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinter			CUPS_OID_ppmMIBObjects,2
155*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterTable		CUPS_OID_ppmPrinter,1
156*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterEntry		CUPS_OID_ppmPrinterTable,1
157*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterIndex		CUPS_OID_ppmPrinterEntry,1
158*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterName			CUPS_OID_ppmPrinterEntry,2
159*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterIEEE1284DeviceId	CUPS_OID_ppmPrinterEntry,3
160*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterNumberOfPorts	CUPS_OID_ppmPrinterEntry,4
161*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterPreferredPortIndex	CUPS_OID_ppmPrinterEntry,5
162*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterHrDeviceIndex	CUPS_OID_ppmPrinterEntry,6
163*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterSnmpCommunityName	CUPS_OID_ppmPrinterEntry,7
164*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPrinterSnmpQueryEnabled	CUPS_OID_ppmPrinterEntry,8
165*5e7646d2SAndroid Build Coastguard Worker 
166*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPort			CUPS_OID_ppmMIBObjects,3
167*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortTable			CUPS_OID_ppmPort,1
168*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortEntry			CUPS_OID_ppmPortTable,1
169*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortIndex			CUPS_OID_ppmPortEntry,1
170*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortEnabled			CUPS_OID_ppmPortEntry,2
171*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortName			CUPS_OID_ppmPortEntry,3
172*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortServiceNameOrURI	CUPS_OID_ppmPortEntry,4
173*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortProtocolType		CUPS_OID_ppmPortEntry,5
174*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortProtocolTargetPort	CUPS_OID_ppmPortEntry,6
175*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortProtocolAltSourceEnabled CUPS_OID_ppmPortEntry,7
176*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortPrtChannelIndex		CUPS_OID_ppmPortEntry,8
177*5e7646d2SAndroid Build Coastguard Worker #define CUPS_OID_ppmPortLprByteCountEnabled	CUPS_OID_ppmPortEntry,9
178*5e7646d2SAndroid Build Coastguard Worker 
179*5e7646d2SAndroid Build Coastguard Worker 
180*5e7646d2SAndroid Build Coastguard Worker /*
181*5e7646d2SAndroid Build Coastguard Worker  * State constants...
182*5e7646d2SAndroid Build Coastguard Worker  */
183*5e7646d2SAndroid Build Coastguard Worker 
184*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_other				1
185*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_unknown				2
186*5e7646d2SAndroid Build Coastguard Worker 
187*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_idle				3
188*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_printing			4
189*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_warmup				5
190*5e7646d2SAndroid Build Coastguard Worker 
191*5e7646d2SAndroid Build Coastguard Worker /* These come from the hrPrinterDetectedErrorState OCTET-STRING */
192*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_lowPaper			0x8000
193*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_noPaper				0x4000
194*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_lowToner			0x2000
195*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_noToner				0x1000
196*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_doorOpen			0x0800
197*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_jammed				0x0400
198*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_offline				0x0200
199*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_serviceRequested		0x0100
200*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_inputTrayMissing		0x0080
201*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_outputTrayMissing		0x0040
202*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_markerSupplyMissing		0x0020
203*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_outputNearFull			0x0010
204*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_outputFull			0x0008
205*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_inputTrayEmpty			0x0004
206*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_overduePreventMaint		0x0002
207*5e7646d2SAndroid Build Coastguard Worker 
208*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_prtCoverStatus_coverOpen	3
209*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_prtCoverStatus_coverClosed	4
210*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_prtCoverStatus_interlockOpen	5
211*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_prtCoverStatus_interlockClosed	6
212*5e7646d2SAndroid Build Coastguard Worker 
213*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langPCL				3
214*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langHPGL			4
215*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langPJL				5
216*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langPS				6
217*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langEscapeP			9
218*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langCCITT			26
219*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langLIPS			39
220*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langTIFF			40
221*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langPCLXL			47
222*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langPDF				54
223*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_langJPEG			61
224*5e7646d2SAndroid Build Coastguard Worker 
225*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_supplyThatIsConsumed		3
226*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_receptacleThatIsFilled		4
227*5e7646d2SAndroid Build Coastguard Worker 
228*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_process				3
229*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_spot				4
230*5e7646d2SAndroid Build Coastguard Worker 
231*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_toner				3
232*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_wasteToner			4
233*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_ink				5
234*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_inkCartridge			6
235*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_inkRibbon			7
236*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_wasteInk			8
237*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_opc				9
238*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_developer			10
239*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_fuserOil			11
240*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_solidWax			12
241*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_ribbonWax			13
242*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_wasteWax			14
243*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_fuser				15
244*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_coronaWire			16
245*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_fuserOilWick			17
246*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_cleanerUnit			18
247*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_fuserCleaningPad		19
248*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_transferUnit			20
249*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_tonerCartridge			21
250*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_fuserOiler			22
251*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_water				23
252*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_wasteWater			24
253*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_glueWaterAdditive		25
254*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_wastePaper			26
255*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_bindingSupply			27
256*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_bandingSupply			28
257*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_stitchingWire			29
258*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_shrinkWrap			30
259*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_paperWrap			31
260*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_staples				32
261*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_inserts				33
262*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_covers				34
263*5e7646d2SAndroid Build Coastguard Worker 
264*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_tenThousandthsOfInches		3
265*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_micrometers			4
266*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_impressions			7
267*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_sheets				8
268*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_hours				11
269*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_thousandthsOfOunces		12
270*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_tenthsOfGrams			13
271*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_hundrethsOfFluidOunces		14
272*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_tenthsOfMilliliters		15
273*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_feet				16
274*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_meters				17
275*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_items				18
276*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_percent				19
277*5e7646d2SAndroid Build Coastguard Worker 
278*5e7646d2SAndroid Build Coastguard Worker /* These come from RFC 3808 to define character sets we support */
279*5e7646d2SAndroid Build Coastguard Worker /* Also see http://www.iana.org/assignments/character-sets */
280*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csASCII				3
281*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csISOLatin1			4
282*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csShiftJIS			17
283*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUTF8				106
284*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUnicode			1000 /* UCS2 BE */
285*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUCS4				1001 /* UCS4 BE */
286*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUnicodeASCII			1002
287*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUnicodeLatin1			1003
288*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUTF16BE			1013
289*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUTF16LE			1014
290*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUTF32				1017
291*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUTF32BE			1018
292*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csUTF32LE			1019
293*5e7646d2SAndroid Build Coastguard Worker #define CUPS_TC_csWindows31J			2024
294*5e7646d2SAndroid Build Coastguard Worker 
295*5e7646d2SAndroid Build Coastguard Worker 
296*5e7646d2SAndroid Build Coastguard Worker /*
297*5e7646d2SAndroid Build Coastguard Worker  * Types...
298*5e7646d2SAndroid Build Coastguard Worker  */
299*5e7646d2SAndroid Build Coastguard Worker 
300*5e7646d2SAndroid Build Coastguard Worker typedef int (*_cups_sccb_t)(int print_fd, int device_fd, int snmp_fd,
301*5e7646d2SAndroid Build Coastguard Worker 			    http_addr_t *addr, int use_bc);
302*5e7646d2SAndroid Build Coastguard Worker 
303*5e7646d2SAndroid Build Coastguard Worker 
304*5e7646d2SAndroid Build Coastguard Worker /*
305*5e7646d2SAndroid Build Coastguard Worker  * Prototypes...
306*5e7646d2SAndroid Build Coastguard Worker  */
307*5e7646d2SAndroid Build Coastguard Worker 
308*5e7646d2SAndroid Build Coastguard Worker extern void		backendCheckSideChannel(int snmp_fd, http_addr_t *addr);
309*5e7646d2SAndroid Build Coastguard Worker extern int		backendDrainOutput(int print_fd, int device_fd);
310*5e7646d2SAndroid Build Coastguard Worker extern int		backendGetDeviceID(int fd, char *device_id,
311*5e7646d2SAndroid Build Coastguard Worker 			                   int device_id_size,
312*5e7646d2SAndroid Build Coastguard Worker 			                   char *make_model,
313*5e7646d2SAndroid Build Coastguard Worker 					   int make_model_size,
314*5e7646d2SAndroid Build Coastguard Worker 					   const char *scheme, char *uri,
315*5e7646d2SAndroid Build Coastguard Worker 					   int uri_size);
316*5e7646d2SAndroid Build Coastguard Worker extern int		backendGetMakeModel(const char *device_id,
317*5e7646d2SAndroid Build Coastguard Worker 			                    char *make_model,
318*5e7646d2SAndroid Build Coastguard Worker 				            size_t make_model_size);
319*5e7646d2SAndroid Build Coastguard Worker extern http_addrlist_t	*backendLookup(const char *hostname, int port, int *cancel);
320*5e7646d2SAndroid Build Coastguard Worker extern int		backendNetworkSideCB(int print_fd, int device_fd,
321*5e7646d2SAndroid Build Coastguard Worker 			                     int snmp_fd, http_addr_t *addr,
322*5e7646d2SAndroid Build Coastguard Worker 					     int use_bc);
323*5e7646d2SAndroid Build Coastguard Worker extern ssize_t		backendRunLoop(int print_fd, int device_fd, int snmp_fd,
324*5e7646d2SAndroid Build Coastguard Worker 			               http_addr_t *addr, int use_bc,
325*5e7646d2SAndroid Build Coastguard Worker 			               int update_state, _cups_sccb_t side_cb);
326*5e7646d2SAndroid Build Coastguard Worker extern int		backendSNMPSupplies(int snmp_fd, http_addr_t *addr,
327*5e7646d2SAndroid Build Coastguard Worker 			                    int *page_count,
328*5e7646d2SAndroid Build Coastguard Worker 					    int *printer_state);
329*5e7646d2SAndroid Build Coastguard Worker extern int		backendWaitLoop(int snmp_fd, http_addr_t *addr,
330*5e7646d2SAndroid Build Coastguard Worker 			                int use_bc, _cups_sccb_t side_cb);
331*5e7646d2SAndroid Build Coastguard Worker 
332*5e7646d2SAndroid Build Coastguard Worker #  ifdef __cplusplus
333*5e7646d2SAndroid Build Coastguard Worker }
334*5e7646d2SAndroid Build Coastguard Worker #  endif /* __cplusplus */
335*5e7646d2SAndroid Build Coastguard Worker #endif /* !_CUPS_BACKEND_PRIVATE_H_ */
336