]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/ipp.html
Copyright update.
[thirdparty/cups.git] / doc / ipp.html
CommitLineData
eb874831 1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
2<HTML>
3<HEAD>
753453e4 4<TITLE>CUPS Implementation of IPP</TITLE>
baee2cec 5<META NAME="author" CONTENT="Easy Software Products">
1d9595ab 6<META NAME="copyright" CONTENT="Copyright 1997-2003 All Rights Reserved">
9cfa8573 7<META NAME="docnumber" CONTENT="CUPS-IPP-1.2">
baee2cec 8<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=iso-8859-1">
9<STYLE TYPE="text/css"><!--
753453e4 10BODY { font-family: serif }
11H1 { font-family: sans-serif }
12H2 { font-family: sans-serif }
13H3 { font-family: sans-serif }
14H4 { font-family: sans-serif }
15H5 { font-family: sans-serif }
16H6 { font-family: sans-serif }
17SUB { font-size: smaller }
18SUP { font-size: smaller }
19PRE { font-family: monospace }
baee2cec 20--></STYLE>
eb874831 21</HEAD>
22<BODY>
753453e4 23<CENTER><A HREF="#CONTENTS"><IMG SRC="images/cups-large.gif" BORDER="0" WIDTH="431" HEIGHT="511"><BR>
24<H1>CUPS Implementation of IPP</H1></A><BR>
9cfa8573 25CUPS-IPP-1.2<BR>
eb874831 26Easy Software Products<BR>
1d9595ab 27Copyright 1997-2003 All Rights Reserved<BR>
eb874831 28</CENTER>
29<HR>
baee2cec 30<H1 ALIGN="CENTER"><A NAME="CONTENTS">Table of Contents</A></H1>
31<BR>
32<BR><B><A HREF="#1">1 Scope</A></B>
eb874831 33<UL>
baee2cec 34<LI><A HREF="#1_1">1.1 Identification</A></LI>
35<LI><A HREF="#1_2">1.2 System Overview</A></LI>
36<LI><A HREF="#1_3">1.3 Document Overview</A></LI>
eb874831 37</UL>
baee2cec 38<B><A HREF="#2">2 References</A></B>
eb874831 39<UL>
baee2cec 40<LI><A HREF="#2_1">2.1 CUPS Documentation</A></LI>
41<LI><A HREF="#2_2">2.2 Other Documents</A></LI>
eb874831 42</UL>
baee2cec 43<B><A HREF="#3">3 Overview</A></B>
eb874831 44<UL>
baee2cec 45<LI><A HREF="#3_1">3.1 IPP URIs</A></LI>
46<LI><A HREF="#3_2">3.2 CUPS IPP Operations</A></LI>
eb874831 47</UL>
baee2cec 48<B><A HREF="#4">4 Operations</A></B>
eb874831 49<UL>
baee2cec 50<LI><A HREF="#4_1">4.1 Print-Job Operation</A></LI>
eb874831 51<UL>
baee2cec 52<LI><A HREF="#4_1_1">4.1.1 Print-Job Request</A></LI>
53<LI><A HREF="#4_1_2">4.1.2 Print-Job Response</A></LI>
eb874831 54</UL>
baee2cec 55<LI><A HREF="#4_2">4.2 Create-Job Operation</A></LI>
eb874831 56<UL>
baee2cec 57<LI><A HREF="#4_2_1">4.2.1 Create-Job Request</A></LI>
58<LI><A HREF="#4_2_2">4.2.2 Create-Job Response</A></LI>
eb874831 59</UL>
baee2cec 60<LI><A HREF="#4_3">4.3 Set-Job-Attributes Operation</A></LI>
eb874831 61<UL>
baee2cec 62<LI><A HREF="#4_3_1">4.3.1 Set-Job-Attributes Request</A></LI>
63<LI><A HREF="#4_3_2">4.3.2 Set-Job-Attributes Response</A></LI>
eb874831 64</UL>
baee2cec 65<LI><A HREF="#4_4">4.4 CUPS-Get-Default Operation</A></LI>
eb874831 66<UL>
baee2cec 67<LI><A HREF="#4_4_1">4.4.1 CUPS-Get-Default Request</A></LI>
68<LI><A HREF="#4_4_2">4.4.2 CUPS-Get-Default Response</A></LI>
eb874831 69</UL>
baee2cec 70<LI><A HREF="#4_5">4.5 CUPS-Get-Printers Operation</A></LI>
eb874831 71<UL>
baee2cec 72<LI><A HREF="#4_5_1">4.5.1 CUPS-Get-Printers Request</A></LI>
73<LI><A HREF="#4_5_2">4.5.2 CUPS-Get-Printers Response</A></LI>
eb874831 74</UL>
9cfa8573 75<LI><A HREF="#4_6">4.6 CUPS-Add-Modify-Printer Operation</A></LI>
eb874831 76<UL>
9cfa8573 77<LI><A HREF="#4_6_1">4.6.1 CUPS-Add-Modify-Printer Request</A></LI>
78<LI><A HREF="#4_6_2">4.6.2 CUPS-Add-Modify-Printer Response</A></LI>
eb874831 79</UL>
baee2cec 80<LI><A HREF="#4_7">4.7 CUPS-Delete-Printer Operation</A></LI>
eb874831 81<UL>
baee2cec 82<LI><A HREF="#4_7_1">4.7.1 CUPS-Delete-Printer Request</A></LI>
83<LI><A HREF="#4_7_2">4.7.2 CUPS-Delete-Printer Response</A></LI>
eb874831 84</UL>
baee2cec 85<LI><A HREF="#4_8">4.8 CUPS-Get-Classes Operation</A></LI>
eb874831 86<UL>
baee2cec 87<LI><A HREF="#4_8_1">4.8.1 CUPS-Get-Classes Request</A></LI>
88<LI><A HREF="#4_8_2">4.8.2 CUPS-Get-Classes Response</A></LI>
eb874831 89</UL>
9cfa8573 90<LI><A HREF="#4_9">4.9 CUPS-Add-Modify-Class Operation</A></LI>
eb874831 91<UL>
9cfa8573 92<LI><A HREF="#4_9_1">4.9.1 CUPS-Add-Modify-Class Request</A></LI>
93<LI><A HREF="#4_9_2">4.9.2 CUPS-Add-Modify-Class Response</A></LI>
eb874831 94</UL>
baee2cec 95<LI><A HREF="#4_10">4.10 CUPS-Delete-Class Operation</A></LI>
eb874831 96<UL>
baee2cec 97<LI><A HREF="#4_10_1">4.10.1 CUPS-Delete-Class Request</A></LI>
98<LI><A HREF="#4_10_2">4.10.2 CUPS-Delete-Class Response</A></LI>
eb874831 99</UL>
baee2cec 100<LI><A HREF="#4_11">4.11 CUPS-Accept-Jobs Operation</A></LI>
eb874831 101<UL>
baee2cec 102<LI><A HREF="#4_11_1">4.11.1 CUPS-Accept-Jobs Request</A></LI>
103<LI><A HREF="#4_11_2">4.11.2 CUPS-Accept-Jobs Response</A></LI>
eb874831 104</UL>
baee2cec 105<LI><A HREF="#4_12">4.12 CUPS-Reject-Jobs Operation</A></LI>
eb874831 106<UL>
baee2cec 107<LI><A HREF="#4_12_1">4.12.1 CUPS-Reject-Jobs Request</A></LI>
108<LI><A HREF="#4_12_2">4.12.2 CUPS-Reject-Jobs Response</A></LI>
eb874831 109</UL>
baee2cec 110<LI><A HREF="#4_13">4.13 CUPS-Set-Default Operation</A></LI>
eb874831 111<UL>
baee2cec 112<LI><A HREF="#4_13_1">4.13.1 CUPS-Set-Default Request</A></LI>
113<LI><A HREF="#4_13_2">4.13.2 CUPS-Set-Default Response</A></LI>
eb874831 114</UL>
baee2cec 115<LI><A HREF="#4_14">4.14 CUPS-Get-Devices Operation</A></LI>
eb874831 116<UL>
baee2cec 117<LI><A HREF="#4_14_1">4.14.1 CUPS-Get-Devices Request</A></LI>
118<LI><A HREF="#4_14_2">4.14.2 CUPS-Get-Devices Response</A></LI>
a858353b 119</UL>
baee2cec 120<LI><A HREF="#4_15">4.15 CUPS-Get-PPDs Operation</A></LI>
a858353b 121<UL>
baee2cec 122<LI><A HREF="#4_15_1">4.15.1 CUPS-Get-PPDs Request</A></LI>
123<LI><A HREF="#4_15_2">4.15.2 CUPS-Get-PPDs Response</A></LI>
3d9e2586 124</UL>
baee2cec 125<LI><A HREF="#4_16">4.16 CUPS-Move-Job Operation</A></LI>
3d9e2586 126<UL>
baee2cec 127<LI><A HREF="#4_16_1">4.16.1 CUPS-Move-Job Request</A></LI>
128<LI><A HREF="#4_16_2">4.16.2 CUPS-Move-Job Response</A></LI>
eb874831 129</UL>
130</UL>
baee2cec 131<B><A HREF="#5">5 Attributes</A></B>
eb874831 132<UL>
baee2cec 133<LI><A HREF="#5_1">5.1 Device Attributes</A></LI>
eb874831 134<UL>
baee2cec 135<LI><A HREF="#5_1_1">5.1.1 device-class (type2 keyword)</A></LI>
136<LI><A HREF="#5_1_2">5.1.2 device-info (text(127))</A></LI>
137<LI><A HREF="#5_1_3">5.1.3 device-make-and-model (text(127))</A></LI>
138<LI><A HREF="#5_1_4">5.1.4 device-uri (uri)</A></LI>
eb874831 139</UL>
baee2cec 140<LI><A HREF="#5_2">5.2 Job Template Attributes</A></LI>
eb874831 141<UL>
baee2cec 142<LI><A HREF="#5_2_1">5.2.1 blackplot (boolean)</A></LI>
143<LI><A HREF="#5_2_2">5.2.2 brightness (integer(0:200))</A></LI>
144<LI><A HREF="#5_2_3">5.2.3 columns (integer(1:4))</A></LI>
145<LI><A HREF="#5_2_4">5.2.4 cpi (type2 enum)</A></LI>
146<LI><A HREF="#5_2_5">5.2.5 fitplot (boolean)</A></LI>
147<LI><A HREF="#5_2_6">5.2.6 gamma (integer(1:10000))</A></LI>
148<LI><A HREF="#5_2_7">5.2.7 hue (integer(-180:180))</A></LI>
149<LI><A HREF="#5_2_8">5.2.8 job-billing (text(MAX))</A></LI>
150<LI><A HREF="#5_2_9">5.2.9 job-hold-until (keyword | name(MAX))</A></LI>
753453e4 151<LI><A HREF="#5_2_10">5.2.10 job-sheets (1setof type3 keyword |
152 name(MAX))</A></LI>
baee2cec 153<LI><A HREF="#5_2_11">5.2.11 job-originating-host-name (name(MAX))</A></LI>
154<LI><A HREF="#5_2_12">5.2.12 lpi (type2 enum)</A></LI>
753453e4 155<LI><A HREF="#5_2_13">5.2.13 natural-scaling (integer(1:1000))</A></LI>
9cfa8573 156<LI><A HREF="#5_2_14">5.2.14 number-up-layout (type2 keyword)</A></LI>
157<LI><A HREF="#5_2_15">5.2.15 page-border (type2 keyword)</A></LI>
158<LI><A HREF="#5_2_16">5.2.16 page-bottom (integer(0:MAX))</A></LI>
159<LI><A HREF="#5_2_17">5.2.17 page-label (text(MAX))</A></LI>
160<LI><A HREF="#5_2_18">5.2.18 page-left (integer(0:MAX))</A></LI>
161<LI><A HREF="#5_2_19">5.2.19 page-right (integer(0:MAX))</A></LI>
162<LI><A HREF="#5_2_20">5.2.20 page-set (type2 keyword)</A></LI>
163<LI><A HREF="#5_2_21">5.2.21 page-top (integer(0:MAX))</A></LI>
164<LI><A HREF="#5_2_22">5.2.22 penwidth (integer(0:MAX))</A></LI>
165<LI><A HREF="#5_2_23">5.2.23 position (type2 keyword)</A></LI>
166<LI><A HREF="#5_2_24">5.2.24 ppi (integer(1:MAX))</A></LI>
167<LI><A HREF="#5_2_25">5.2.25 prettyprint (boolean)</A></LI>
168<LI><A HREF="#5_2_26">5.2.26 saturation (integer(0:200))</A></LI>
169<LI><A HREF="#5_2_27">5.2.27 scaling (integer(1:1000))</A></LI>
170<LI><A HREF="#5_2_28">5.2.28 wrap (boolean)</A></LI>
e2e7c96e 171</UL>
baee2cec 172<LI><A HREF="#5_3">5.3 PPD Attributes</A></LI>
e2e7c96e 173<UL>
baee2cec 174<LI><A HREF="#5_3_1">5.3.1 ppd-natural-language (naturalLanguage)</A></LI>
175<LI><A HREF="#5_3_2">5.3.2 ppd-make (text(127))</A></LI>
176<LI><A HREF="#5_3_3">5.3.3 ppd-make-and-model (text(127))</A></LI>
177<LI><A HREF="#5_3_4">5.3.4 ppd-name (name(255))</A></LI>
e2e7c96e 178</UL>
baee2cec 179<LI><A HREF="#5_4">5.4 Printer Attributes</A></LI>
e2e7c96e 180<UL>
baee2cec 181<LI><A HREF="#5_4_1">5.4.1 job-k-limit (integer)</A></LI>
182<LI><A HREF="#5_4_2">5.4.2 job-page-limit (integer)</A></LI>
183<LI><A HREF="#5_4_3">5.4.3 job-quota-period (integer)</A></LI>
753453e4 184<LI><A HREF="#5_4_4">5.4.4 job-sheets-supported (1setof type3 keyword |
185 name(MAX))</A></LI>
baee2cec 186<LI><A HREF="#5_4_5">5.4.5 printer-type (type2 enum)</A></LI>
187<LI><A HREF="#5_4_6">5.4.6 printer-type-mask (type2 enum)</A></LI>
753453e4 188<LI><A HREF="#5_4_7">5.4.7 requesting-user-name-allowed (1setof
189 name(127))</A></LI>
190<LI><A HREF="#5_4_8">5.4.8 requesting-user-name-denied (1setof
191 name(127))</A></LI>
eb874831 192</UL>
baee2cec 193<LI><A HREF="#5_5">5.5 Printer Class Attributes</A></LI>
eb874831 194<UL>
baee2cec 195<LI><A HREF="#5_5_1">5.5.1 member-names (1setof name(127))</A></LI>
196<LI><A HREF="#5_5_2">5.5.2 member-uris (1setof uri)</A></LI>
eb874831 197</UL>
198</UL>
baee2cec 199<B><A HREF="#6">A Glossary</A></B>
fd7cc15d 200<UL>
baee2cec 201<LI><A HREF="#6_1">A.1 Terms</A></LI>
202<LI><A HREF="#6_2">A.2 Acronyms</A></LI>
fd7cc15d 203</UL>
eb874831 204<HR>
baee2cec 205<H1><A NAME="1">1 Scope</A></H1>
206<H2><A NAME="1_1">1.1 Identification</A></H2>
753453e4 207<P>This document provides an overview of the Internet Printing Protocol
208 (&quot;IPP&quot;) version 1.1 as implemented in the Common UNIX Printing System
9cfa8573 209 (&quot;CUPS&quot;) version 1.2.</P>
baee2cec 210<H2><A NAME="1_2">1.2 System Overview</A></H2>
753453e4 211<P>CUPS provides a portable printing layer for UNIX&reg;-based operating
212 systems. It has been developed by<A HREF="http://www.easysw.com"> Easy
213 Software Products</A> to promote a standard printing solution for all
214 UNIX vendors and users. CUPS provides the System V and Berkeley
215 command-line interfaces.</P>
216<P>CUPS uses the Internet Printing Protocol (&quot;IPP&quot;) as the basis for
217 managing print jobs and queues. The Line Printer Daemon (&quot;LPD&quot;) Server
218 Message Block (&quot;SMB&quot;), and AppSocket (a.k.a. JetDirect) protocols are
219 also supported with reduced functionality. CUPS adds network printer
220 browsing and PostScript Printer Description (&quot;PPD&quot;) based printing
221 options to support real-world printing under UNIX.</P>
222<P>CUPS also includes a customized version of GNU Ghostscript (currently
223 based off GNU Ghostscript 5.50) and an image file RIP that are used to
224 support non-PostScript printers. Sample drivers for HP and EPSON
225 printers are included that use these filters.</P>
baee2cec 226<H2><A NAME="1_3">1.3 Document Overview</A></H2>
753453e4 227<P>This document is organized into the following sections:</P>
baee2cec 228<UL>
229<LI><A HREF="#1">1 - Scope</A></LI>
230<LI><A HREF="#2">2 - References</A></LI>
231<LI><A HREF="#3">3 - Overview</A></LI>
232<LI><A HREF="#4">4 - Operations</A></LI>
233<LI><A HREF="#5">5 - Attributes</A></LI>
234<LI><A HREF="#6">A - Glossary</A></LI>
235</UL>
236<H1><A NAME="2">2 References</A></H1>
237<H2><A NAME="2_1">2.1 CUPS Documentation</A></H2>
753453e4 238<P>The following CUPS documentation is referenced by this document:</P>
239<UL>
9cfa8573 240<LI>CUPS-CMP-1.2: CUPS Configuration Management Plan</LI>
241<LI>CUPS-IDD-1.2: CUPS System Interface Design Description</LI>
242<LI>CUPS-IPP-1.2: CUPS Implementation of IPP</LI>
243<LI>CUPS-SAM-1.2.x: CUPS Software Administrators Manual</LI>
244<LI>CUPS-SDD-1.2: CUPS Software Design Description</LI>
245<LI>CUPS-SPM-1.2.x: CUPS Software Programming Manual</LI>
246<LI>CUPS-SSR-1.2: CUPS Software Security Report</LI>
247<LI>CUPS-STP-1.2: CUPS Software Test Plan</LI>
248<LI>CUPS-SUM-1.2.x: CUPS Software Users Manual</LI>
249<LI>CUPS-SVD-1.2: CUPS Software Version Description</LI>
baee2cec 250</UL>
251<H2><A NAME="2_2">2.2 Other Documents</A></H2>
753453e4 252<P>The following non-CUPS documents are referenced by this document:</P>
e2e7c96e 253<UL>
254<LI><A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/5003.PPD_Spec_v4.3.pdf">
753453e4 255Adobe PostScript Printer Description File Format Specification, Version
256 4.3.</A></LI>
e2e7c96e 257<LI><A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/PLRM.pdf">
753453e4 258Adobe PostScript Language Reference, Third Edition.</A></LI>
259<LI>IPP: Job and Printer Set Operations</LI>
260<LI>IPP/1.1: Encoding and Transport</LI>
261<LI>IPP/1.1: Implementers Guide</LI>
262<LI>IPP/1.1: Model and Semantics</LI>
263<LI><A HREF="http://www.ietf.org/rfc/rfc1179.txt">RFC 1179, Line Printer
264 Daemon Protocol</A></LI>
265<LI><A HREF="http://www.ietf.org/rfc/rfc2567.txt">RFC 2567, Design Goals
266 for an Internet Printing Protocol</A></LI>
267<LI><A HREF="http://www.ietf.org/rfc/rfc2568.txt">RFC 2568, Rationale
9cfa8573 268 for the Structure of the Model and Protocol for the Internet Printing
269 Protocol</A></LI>
753453e4 270<LI><A HREF="http://www.ietf.org/rfc/rfc2569.txt">RFC 2569, Mapping
271 between LPD and IPP Protocols</A></LI>
272<LI><A HREF="http://www.ietf.org/rfc/rfc2616.txt">RFC 2616, Hypertext
273 Transfer Protocol -- HTTP/1.1</A></LI>
274<LI><A HREF="http://www.ietf.org/rfc/rfc2617.txt">RFC 2617, HTTP
275 Authentication: Basic and Digest Access</A> Authentication</LI>
baee2cec 276</UL>
277<H1><A NAME="3">3 Overview</A></H1>
753453e4 278<P>CUPS 1.1 implements IPP/1.1 and the operations and attributes defined
279 in the &quot;IPP: Job and Printer Set Operations&quot;, &quot;IPP/1.1: Output-bin
280 Attribute Extension&quot;, and &quot;IPP/1.1: finishings 'fold',' trim', and
281 'bale' attribute values extension&quot; specifications.</P>
282<P>CUPS also provides 13 new operations and many new attributes to
283 support multiple IPP printers and printer classes on a single host.</P>
baee2cec 284<H2><A NAME="3_1">3.1 IPP URIs</A></H2>
753453e4 285<P>CUPS supports both the &quot;http&quot; and &quot;ipp&quot; methods. The following
286 resource names are used:</P>
eb874831 287<DL>
753453e4 288<DT>method://hostname:port/</DT>
289<DD>Can be used for all &quot;get&quot; operations.</DD>
290<DT>method://hostname:port/admin</DT>
291<DD>Used for all administrative operations.</DD>
292<DT>method://hostname:port/classes/name</DT>
293<DD>Specifies a printer class.</DD>
294<DT>method://hostname:port/jobs/id</DT>
295<DD>Specifies a job.</DD>
296<DT>method://hostname:port/printers/name</DT>
297<DD>Specifies a printer.</DD>
eb874831 298</DL>
753453e4 299<P>So a typical printer URI would be
300 &quot;ipp://foo.bar.com/printers/LaserJet&quot;.</P>
301<P>In addition, the CUPS server also supports normal browser access to
302 &quot;method://hostname:port/admin/&quot;, &quot;method://hostname:port/classes/&quot;,
303 &quot;method://hostname:port/jobs/&quot;, and &quot;method://hostname:port/printers/&quot;
304 to view and manage resources on the server dynamically.</P>
baee2cec 305<H2><A NAME="3_2">3.2 CUPS IPP Operations</A></H2>
753453e4 306<P>CUPS provides 13 extension operations in addition to most of the
307 standard IPP and registered extension operations:
eb874831 308<CENTER>
309<TABLE BORDER WIDTH="80%">
baee2cec 310<TR><TH VALIGN="TOP">Operation Name</TH><TH VALIGN="TOP">CUPS</TH><TH VALIGN="TOP">
311Code</TH><TH VALIGN="TOP">Brief Description</TH></TR>
312<TR><TD VALIGN="TOP">Print-Job</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3130x0002</TD><TD VALIGN="TOP">Print a file.</TD></TR>
314<TR><TD VALIGN="TOP">Validate-Job</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3150x0004</TD><TD VALIGN="TOP">Validate job attributes.</TD></TR>
9cfa8573 316<TR><TD VALIGN="TOP">Create-Job</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3170x0005</TD><TD VALIGN="TOP">Create a print job.</TD></TR>
9cfa8573 318<TR><TD VALIGN="TOP">Send-Document</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3190x0006</TD><TD VALIGN="TOP">Send a file for a print job.</TD></TR>
320<TR><TD VALIGN="TOP">Cancel-Job</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3210x0008</TD><TD VALIGN="TOP">Cancel a print job.</TD></TR>
322<TR><TD VALIGN="TOP">Get-Job-Attributes</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3230x0009</TD><TD VALIGN="TOP">Get job attributes.</TD></TR>
324<TR><TD VALIGN="TOP">Get-Jobs</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3250x000A</TD><TD VALIGN="TOP">Get all jobs.</TD></TR>
326<TR><TD VALIGN="TOP">Get-Printer-Attributes</TD><TD VALIGN="TOP">1.0</TD><TD
327VALIGN="TOP">0x000B</TD><TD VALIGN="TOP">Get printer attributes.</TD></TR>
9cfa8573 328<TR><TD VALIGN="TOP">Hold-Job</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3290x000C</TD><TD VALIGN="TOP">Hold a job for printing.</TD></TR>
9cfa8573 330<TR><TD VALIGN="TOP">Release-Job</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3310x000D</TD><TD VALIGN="TOP">Release a job for printing.</TD></TR>
332<TR><TD VALIGN="TOP">Pause-Printer</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3330x0010</TD><TD VALIGN="TOP">Pause printing on a printer.</TD></TR>
334<TR><TD VALIGN="TOP">Resume-Printer</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3350x0011</TD><TD VALIGN="TOP">Resume printing on a printer.</TD></TR>
336<TR><TD VALIGN="TOP">Purge-Jobs</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3370x0012</TD><TD VALIGN="TOP">Purge all jobs.</TD></TR>
9cfa8573 338<TR><TD VALIGN="TOP">Set-Job-Attributes</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3390x0014</TD><TD VALIGN="TOP">Set attributes for a pending or held job.</TD>
340</TR>
341<TR><TD VALIGN="TOP">CUPS-Get-Default</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3420x4001</TD><TD VALIGN="TOP">Get the default destination.</TD></TR>
343<TR><TD VALIGN="TOP">CUPS-Get-Printers</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3440x4002</TD><TD VALIGN="TOP">Get all of the available printers.</TD></TR>
9cfa8573 345<TR><TD VALIGN="TOP">CUPS-Add-Modify-Printer</TD><TD VALIGN="TOP">1.0</TD><TD
346VALIGN="TOP">0x4003</TD><TD VALIGN="TOP">Add or modify a printer.</TD></TR>
baee2cec 347<TR><TD VALIGN="TOP">CUPS-Delete-Printer</TD><TD VALIGN="TOP">1.0</TD><TD
348VALIGN="TOP">0x4004</TD><TD VALIGN="TOP">Delete a printer.</TD></TR>
349<TR><TD VALIGN="TOP">CUPS-Get-Classes</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3500x4005</TD><TD VALIGN="TOP">Get all of the available printer classes.</TD>
eb874831 351</TR>
9cfa8573 352<TR><TD VALIGN="TOP">CUPS-Add-Modify-Class</TD><TD VALIGN="TOP">1.0</TD><TD
353VALIGN="TOP">0x4006</TD><TD VALIGN="TOP">Add or modify a printer class.</TD>
354</TR>
baee2cec 355<TR><TD VALIGN="TOP">CUPS-Delete-Class</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3560x4007</TD><TD VALIGN="TOP">Delete a printer class.</TD></TR>
357<TR><TD VALIGN="TOP">CUPS-Accept-Jobs</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3580x4008</TD><TD VALIGN="TOP">Accept jobs on a printer or printer class.</TD>
eb874831 359</TR>
baee2cec 360<TR><TD VALIGN="TOP">CUPS-Reject-Jobs</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3610x4009</TD><TD VALIGN="TOP">Reject jobs on a printer or printer class.</TD>
eb874831 362</TR>
baee2cec 363<TR><TD VALIGN="TOP">CUPS-Set-Default</TD><TD VALIGN="TOP">1.0</TD><TD VALIGN="TOP">
3640x400A</TD><TD VALIGN="TOP">Set the default destination.</TD></TR>
9cfa8573 365<TR><TD VALIGN="TOP">CUPS-Get-Devices</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3660x400B</TD><TD VALIGN="TOP">Get all of the available devices.</TD></TR>
9cfa8573 367<TR><TD VALIGN="TOP">CUPS-Get-PPDs</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3680x400C</TD><TD VALIGN="TOP">Get all of the available PPDs.</TD></TR>
9cfa8573 369<TR><TD VALIGN="TOP">CUPS-Move-Job</TD><TD VALIGN="TOP">1.2</TD><TD VALIGN="TOP">
baee2cec 3700x400D</TD><TD VALIGN="TOP">Move a job to a different printer.</TD></TR>
eb874831 371</TABLE>
372</CENTER>
373</P>
baee2cec 374<H1><A NAME="4">4 Operations</A></H1>
753453e4 375<P>The following sections describe the operations supported by CUPS. In
376 the interest of brevity, operations which use only the standard IPP
377 attributes are not described.</P>
baee2cec 378<H2><A NAME="4_1">4.1 Print-Job Operation</A></H2>
753453e4 379<P>The Print-Job operation (0x0002) prints a file.</P>
baee2cec 380<H3><A NAME="4_1_1">4.1.1 Print-Job Request</A></H3>
753453e4 381<P>The following groups of attributes are supplied as part of the
382 Print-Job request:</P>
383<P>Group 1: Operation Attributes</P>
baee2cec 384<UL>
753453e4 385<P>Natural Language and Character Set:</P>
386<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
387 as described in section 3.1.4.1 of the IPP Model and Semantics
388 document.</P>
389<P>&quot;printer-uri&quot; (uri):</P>
390<P>The client MUST supply a URI for the specified printer.</P>
baee2cec 391</UL>
753453e4 392<P>Group 2: Job Template Attributes</P>
baee2cec 393<UL>
753453e4 394<P>&quot;job-billing&quot; (text(MAX)):</P>
baee2cec 395<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 396<P>The client OPTIONALLY supplies a billing string that is logged with
397 the page accounting information.</P>
398<P>&quot;job-sheets&quot; (1setof type3 keyword | name(MAX)):</P>
baee2cec 399<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 400<P>The client OPTIONALLY supplies one or two banner pages that are
401 printed before and after any files in the print job. The name of &quot;none&quot;
402 is reserved to indicate that no banner page should be printed. If the
403 client does not specify this attribute then the value of the
404 &quot;job-sheets-default&quot; printer object attribute is used.</P>
405<P><B>Note:</B> Standard IPP only allows specification of a single
406 job-sheets attribute value.</P>
407<P>&quot;media&quot; (1setof type3 keyword | name(MAX)):</P>
408<P>The client OPTIONALLY supplies one or more media attributes
409 specifying the size, type, source, and color of the output media. If
410 the client does not specify this attribute then the value of the
411 &quot;media-default&quot; printer object attribute is used.</P>
412<P><B>Note:</B> Standard IPP only allows specification of a single media
413 attribute value.</P>
414<P>Other Job Template Attributes</P>
415</UL>
416<P>The Print-Job request is followed by a file to be printed.</P>
baee2cec 417<H3><A NAME="4_1_2">4.1.2 Print-Job Response</A></H3>
753453e4 418<P>The following groups of attributes are send as part of the Print-Job
419 Response:</P>
420<P>Group 1: Operation Attributes</P>
baee2cec 421<UL>
753453e4 422<P>Status Message:</P>
423<P>The standard response status message.</P>
424<P>Natural Language and Character Set:</P>
425<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
426 as described in section 3.1.4.2 of the IPP Model and Semantics
427 document.</P>
baee2cec 428</UL>
753453e4 429<P>Group 2: Job Attributes</P>
baee2cec 430<UL>
753453e4 431<P>Standard Job Attributes</P>
baee2cec 432</UL>
433<H2><A NAME="4_2">4.2 Create-Job Operation</A></H2>
753453e4 434<P>The Create-Job operation (0x0005) creates a new, empty print job.</P>
baee2cec 435<H3><A NAME="4_2_1">4.2.1 Create-Job Request</A></H3>
753453e4 436<P>The following groups of attributes are supplied as part of the
437 Create-Job request:</P>
438<P>Group 1: Operation Attributes</P>
baee2cec 439<UL>
753453e4 440<P>Natural Language and Character Set:</P>
441<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
442 as described in section 3.1.4.1 of the IPP Model and Semantics
443 document.</P>
444<P>&quot;printer-uri&quot; (uri):</P>
445<P>The client MUST supply a URI for the specified printer.</P>
baee2cec 446</UL>
753453e4 447<P>Group 2: Job Template Attributes</P>
baee2cec 448<UL>
753453e4 449<P>&quot;job-billing&quot; (text(MAX)):</P>
baee2cec 450<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 451<P>The client OPTIONALLY supplies a billing string that is logged with
452 the page accounting information.</P>
453<P>&quot;job-sheets&quot; (1setof type3 keyword | name(MAX)):</P>
baee2cec 454<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 455<P>The client OPTIONALLY supplies one or two banner pages that are
456 printed before and after any files in the print job. The name of &quot;none&quot;
457 is reserved to indicate that no banner page should be printed. If the
458 client does not specify this attribute then the value of the
459 &quot;job-sheets-default&quot; printer object attribute is used.</P>
460<P><B>Note:</B> Standard IPP only allows specification of a single
461 job-sheets attribute value.</P>
462<P>&quot;media&quot; (1setof type3 keyword | name(MAX)):</P>
463<P>The client OPTIONALLY supplies one or more media attributes
464 specifying the size, type, source, and color of the output media. If
465 the client does not specify this attribute then the value of the
466 &quot;media-default&quot; printer object attribute is used.</P>
467<P><B>Note:</B> Standard IPP only allows specification of a single media
468 attribute value.</P>
469<P>Standard Job Template Attributes</P>
baee2cec 470</UL>
471<H3><A NAME="4_2_2">4.2.2 Create-Job Response</A></H3>
753453e4 472<P>The following groups of attributes are send as part of the Create-Job
473 Response:</P>
474<P>Group 1: Operation Attributes</P>
baee2cec 475<UL>
753453e4 476<P>Status Message:</P>
477<P>The standard response status message.</P>
478<P>Natural Language and Character Set:</P>
479<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
480 as described in section 3.1.4.2 of the IPP Model and Semantics
481 document.</P>
baee2cec 482</UL>
753453e4 483<P>Group 2: Job Attributes</P>
baee2cec 484<UL>
753453e4 485<P>Standard Job Attributes</P>
baee2cec 486</UL>
487<H2><A NAME="4_3">4.3 Set-Job-Attributes Operation</A></H2>
753453e4 488<P>The Set-Job-Attributes operation (0x0014) changes the attributes of
489 an active (not completed) job.</P>
baee2cec 490<H3><A NAME="4_3_1">4.3.1 Set-Job-Attributes Request</A></H3>
753453e4 491<P>The following groups of attributes are supplied as part of the
492 Set-Job-Attributes request:</P>
493<P>Group 1: Operation Attributes</P>
494<UL>
495<P>Natural Language and Character Set:</P>
496<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
497 as described in section 3.1.4.1 of the IPP Model and Semantics
498 document.</P>
499<P>&quot;printer-uri&quot; (uri) and &quot;job-id&quot; (integer)</P>
baee2cec 500<P><I>OR</I></P>
753453e4 501<P>&quot;job-uri&quot;:</P>
502<P>The client MUST supply a URI for the specified printer and a job ID
503 number, or the job URI.</P>
baee2cec 504</UL>
753453e4 505<P>Group 2: Job Template Attributes</P>
baee2cec 506<UL>
753453e4 507<P>&quot;job-sheets&quot; (1setof type3 keyword | name(MAX)):</P>
baee2cec 508<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 509<P>The client OPTIONALLY supplies one or two banner pages that are
510 printed before and after any files in the print job. The name of &quot;none&quot;
511 is reserved to indicate that no banner page should be printed. If the
512 client does not specify this attribute then the value of the
513 &quot;job-sheets-default&quot; printer object attribute is used.</P>
514<P><B>Note:</B> Standard IPP only allows specification of a single
515 job-sheets attribute value.</P>
516<P>&quot;media&quot; (1setof type3 keyword | name(MAX)):</P>
517<P>The client OPTIONALLY supplies one or more media attributes
518 specifying the size, type, source, and color of the output media. If
519 the client does not specify this attribute then the value of the
520 &quot;media-default&quot; printer object attribute is used.</P>
521<P><B>Note:</B> Standard IPP only allows specification of a single media
522 attribute value.</P>
523<P>Other Job Template Attributes</P>
baee2cec 524</UL>
525<H3><A NAME="4_3_2">4.3.2 Set-Job-Attributes Response</A></H3>
753453e4 526<P>The following groups of attributes are send as part of the
527 Set-Job-Attributes Response:</P>
528<P>Group 1: Operation Attributes</P>
baee2cec 529<UL>
753453e4 530<P>Status Message:</P>
531<P>The standard response status message.</P>
532<P>Natural Language and Character Set:</P>
533<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
534 as described in section 3.1.4.2 of the IPP Model and Semantics
535 document.</P>
baee2cec 536</UL>
537<H2><A NAME="4_4">4.4 CUPS-Get-Default Operation</A></H2>
753453e4 538<P>The CUPS-Get-Default operation (0x4001) returns the default printer
539 URI and attributes.</P>
baee2cec 540<H3><A NAME="4_4_1">4.4.1 CUPS-Get-Default Request</A></H3>
753453e4 541<P>The following groups of attributes are supplied as part of the
542 CUPS-Get-Default request:</P>
543<P>Group 1: Operation Attributes</P>
544<UL>
545<P>Natural Language and Character Set:</P>
546<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
547 as described in section 3.1.4.1 of the IPP Model and Semantics
548 document.</P>
549<P>&quot;requested-attributes&quot; (1setOf keyword) :</P>
550<P>The client OPTIONALLY supplies a set of attribute names and/or
551 attribute group names in whose values the requester is interested. If
552 the client omits this attribute, the server responds as if this
553 attribute had been supplied with a value of 'all'.</P>
baee2cec 554</UL>
555<H3><A NAME="4_4_2">4.4.2 CUPS-Get-Default Response</A></H3>
753453e4 556<P>The following groups of attributes are send as part of the
557 CUPS-Get-Default Response:</P>
558<P>Group 1: Operation Attributes</P>
baee2cec 559<UL>
753453e4 560<P>Status Message:</P>
561<P>The standard response status message.</P>
562<P>Natural Language and Character Set:</P>
563<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
564 as described in section 3.1.4.2 of the IPP Model and Semantics
565 document.</P>
baee2cec 566</UL>
753453e4 567<P>Group 2: Printer Object Attributes</P>
baee2cec 568<UL>
753453e4 569<P>The set of requested attributes and their current values.</P>
baee2cec 570</UL>
571<H2><A NAME="4_5">4.5 CUPS-Get-Printers Operation</A></H2>
753453e4 572<P>The CUPS-Get-Printers operation (0x4002) returns the printer
573 attributes for every printer known to the system. This may include
574 printers that are not served directly by the server.</P>
baee2cec 575<H3><A NAME="4_5_1">4.5.1 CUPS-Get-Printers Request</A></H3>
753453e4 576<P>The following groups of attributes are supplied as part of the
577 CUPS-Get-Printers request:</P>
578<P>Group 1: Operation Attributes</P>
579<UL>
580<P>Natural Language and Character Set:</P>
581<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
582 as described in section 3.1.4.1 of the IPP Model and Semantics
583 document.</P>
584<P>&quot;limit&quot; (integer (1:MAX)):</P>
585<P>The client OPTIONALLY supplies this attribute limiting the number of
586 printers that are returned.</P>
587<P>&quot;printer-info&quot; (text(127)):</P>
baee2cec 588<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 589<P>The client OPTIONALLY supplies this attribute to select which
590 printers are returned.</P>
591<P>&quot;printer-location&quot; (text(127)):</P>
baee2cec 592<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 593<P>The client OPTIONALLY supplies this attribute to select which
594 printers are returned.</P>
595<P>&quot;printer-type&quot; (type2 enum):</P>
baee2cec 596<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 597<P>The client OPTIONALLY supplies a printer type enumeration to select
598 which printers are returned.</P>
599<P>&quot;printer-type-mask&quot; (type2 enum):</P>
baee2cec 600<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 601<P>The client OPTIONALLY supplies a printer type mask enumeration to
602 select which bits are used in the &quot;printer-type&quot; attribute.</P>
603<P>&quot;requested-attributes&quot; (1setOf keyword) :</P>
604<P>The client OPTIONALLY supplies a set of attribute names and/or
605 attribute group names in whose values the requester is interested. If
606 the client omits this attribute, the server responds as if this
607 attribute had been supplied with a value of 'all'.</P>
baee2cec 608</UL>
609<H3><A NAME="4_5_2">4.5.2 CUPS-Get-Printers Response</A></H3>
753453e4 610<P>The following groups of attributes are send as part of the
611 CUPS-Get-Printers Response:</P>
612<P>Group 1: Operation Attributes</P>
baee2cec 613<UL>
753453e4 614<P>Status Message:</P>
615<P>The standard response status message.</P>
616<P>Natural Language and Character Set:</P>
617<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
618 as described in section 3.1.4.2 of the IPP Model and Semantics
619 document.</P>
baee2cec 620</UL>
753453e4 621<P>Group 2: Printer Object Attributes</P>
baee2cec 622<UL>
753453e4 623<P>The set of requested attributes and their current values for each
624 printer.</P>
baee2cec 625</UL>
9cfa8573 626<H2><A NAME="4_6">4.6 CUPS-Add-Modify-Printer Operation</A></H2>
627<P>The CUPS-Add-Modify-Printer operation (0x4003) adds a new printer or
753453e4 628 modifies an existing printer on the system.</P>
9cfa8573 629<H3><A NAME="4_6_1">4.6.1 CUPS-Add-Modify-Printer Request</A></H3>
753453e4 630<P>The following groups of attributes are supplied as part of the
9cfa8573 631 CUPS-Add-Modify-Printer request:</P>
753453e4 632<P>Group 1: Operation Attributes</P>
baee2cec 633<UL>
753453e4 634<P>Natural Language and Character Set:</P>
635<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
636 as described in section 3.1.4.1 of the IPP Model and Semantics
637 document.</P>
638<P>&quot;printer-uri&quot; (uri):</P>
639<P>The client MUST supply a URI for the specified printer.</P>
baee2cec 640</UL>
753453e4 641<P>Group 2: Printer Object Attributes</P>
baee2cec 642<UL>
753453e4 643<P>&quot;banner-end-default&quot; (name(127)):</P>
baee2cec 644<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 645<P>The client OPTIONALLY supplies a banner page name that is printed
646 after files in a job. The reserved name &quot;none&quot; is used to specify that
647 no banner page should be printed.</P>
648<P>&quot;banner-start-default&quot; (name(127)):</P>
baee2cec 649<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 650<P>The client OPTIONALLY supplies a banner page name that is printed
651 before files in a job. The reserved name &quot;none&quot; is used to specify that
652 no banner page should be printed.</P>
653<P>&quot;device-uri&quot; (uri):</P>
654<P>The client OPTIONALLY supplies a device URI for the specified
655 printer.</P>
656<P>&quot;ppd-name&quot; (name(127)):</P>
657<P>The client OPTIONALLY supplies a PPD name for the specified printer.</P>
658<P>&quot;printer-is-accepting-jobs&quot; (boolean):</P>
659<P>The client OPTIONALLY supplies this boolean attribute indicating
660 whether or not the printer object should accept new jobs.</P>
661<P>&quot;printer-info&quot; (text(127)):</P>
662<P>The client OPTIONALLY supplies this attribute indicating the printer
663 information string.</P>
664<P>&quot;printer-location&quot; (text(127)):</P>
665<P>The client OPTIONALLY supplies this attribute indicating a textual
666 location of the printer.</P>
667<P>&quot;printer-more-info&quot; (uri):</P>
668<P>The client OPTIONALLY supplies this attribute indicating a URI for
669 additional printer information.</P>
670<P>&quot;printer-state&quot; (type2 enum):</P>
671<P>The client OPTIONALLY supplies this attribute indicating the
672 initial/current state of the printer. Only the &quot;idle&quot; and &quot;stopped&quot;
673 enumerations are recognized.</P>
674<P>&quot;printer-state-message&quot; (text(MAX)):</P>
675<P>The client OPTIONALLY supplies this attribute indicating a textual
676 reason for the current printer state.</P>
677<P>&quot;requesting-user-name-allowed&quot; (1setof name(127) | delete)</P>
baee2cec 678<P><I>OR</I></P>
753453e4 679<P>&quot;requesting-user-name-denied&quot; (1setof name(127) | delete):</P>
680<P>The client OPTIONALLY supplies one of these attributes to specify an
681 access control list for incoming print jobs. To allow all users access
682 to a printer, use the delete tag for the attribute value.</P>
683</UL>
9cfa8573 684<P>The CUPS-Add-Modify-Printer request can optionally be followed by a
685 PPD file or System V interface script to be used for the printer. The
686 &quot;ppd-name&quot; attribute overrides any file that is attached to the end of
687 the request with a local CUPS PPD file.</P>
688<H3><A NAME="4_6_2">4.6.2 CUPS-Add-Modify-Printer Response</A></H3>
753453e4 689<P>The following groups of attributes are send as part of the
9cfa8573 690 CUPS-Add-Modify-Printer Response:</P>
753453e4 691<P>Group 1: Operation Attributes</P>
baee2cec 692<UL>
753453e4 693<P>Status Message:</P>
694<P>The standard response status message.</P>
695<P>Natural Language and Character Set:</P>
696<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
697 as described in section 3.1.4.2 of the IPP Model and Semantics
698 document.</P>
baee2cec 699</UL>
700<H2><A NAME="4_7">4.7 CUPS-Delete-Printer Operation</A></H2>
753453e4 701<P>The CUPS-Delete-Printer operation (0x4004) removes an existing
702 printer from the system.</P>
baee2cec 703<H3><A NAME="4_7_1">4.7.1 CUPS-Delete-Printer Request</A></H3>
753453e4 704<P>The following groups of attributes are supplied as part of the
705 CUPS-Delete-Printer request:</P>
706<P>Group 1: Operation Attributes</P>
baee2cec 707<UL>
753453e4 708<P>Natural Language and Character Set:</P>
709<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
710 as described in section 3.1.4.1 of the IPP Model and Semantics
711 document.</P>
712<P>&quot;printer-uri&quot; (uri):</P>
713<P>The client MUST supply a URI for the specified printer.</P>
baee2cec 714</UL>
715<H3><A NAME="4_7_2">4.7.2 CUPS-Delete-Printer Response</A></H3>
753453e4 716<P>The following groups of attributes are send as part of the
717 CUPS-Delete-Printer Response:</P>
718<P>Group 1: Operation Attributes</P>
baee2cec 719<UL>
753453e4 720<P>Status Message:</P>
721<P>The standard response status message.</P>
722<P>Natural Language and Character Set:</P>
723<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
724 as described in section 3.1.4.2 of the IPP Model and Semantics
725 document.</P>
baee2cec 726</UL>
727<H2><A NAME="4_8">4.8 CUPS-Get-Classes Operation</A></H2>
753453e4 728<P>The CUPS-Get-Classes operation (0x4005) returns the printer
729 attributes for every printer class known to the system. This may
730 include printer classes that are not served directly by the server.</P>
baee2cec 731<H3><A NAME="4_8_1">4.8.1 CUPS-Get-Classes Request</A></H3>
753453e4 732<P>The following groups of attributes are supplied as part of the
733 CUPS-Get-Classes request:</P>
734<P>Group 1: Operation Attributes</P>
735<UL>
736<P>Natural Language and Character Set:</P>
737<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
738 as described in section 3.1.4.1 of the IPP Model and Semantics
739 document.</P>
740<P>&quot;limit&quot; (integer (1:MAX)):</P>
741<P>The client OPTIONALLY supplies this attribute limiting the number of
742 printer classes that are returned.</P>
743<P>&quot;printer-info&quot; (text(127)):</P>
baee2cec 744<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 745<P>The client OPTIONALLY supplies this attribute to select which printer
746 classes are returned.</P>
747<P>&quot;printer-location&quot; (text(127)):</P>
baee2cec 748<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 749<P>The client OPTIONALLY supplies this attribute to select which printer
750 classes are returned.</P>
751<P>&quot;printer-type&quot; (type2 enum):</P>
baee2cec 752<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 753<P>The client OPTIONALLY supplies a printer type enumeration to select
754 which printer classes are returned.</P>
755<P>&quot;printer-type-mask&quot; (type2 enum):</P>
baee2cec 756<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 757<P>The client OPTIONALLY supplies a printer type mask enumeration to
758 select which bits are used in the &quot;printer-type&quot; attribute.</P>
759<P>&quot;requested-attributes&quot; (1setOf keyword) :</P>
760<P>The client OPTIONALLY supplies a set of attribute names and/or
761 attribute group names in whose values the requester is interested. If
762 the client omits this attribute, the server responds as if this
763 attribute had been supplied with a value of 'all'.</P>
baee2cec 764</UL>
765<H3><A NAME="4_8_2">4.8.2 CUPS-Get-Classes Response</A></H3>
753453e4 766<P>The following groups of attributes are send as part of the
767 CUPS-Get-Classes Response:</P>
768<P>Group 1: Operation Attributes</P>
baee2cec 769<UL>
753453e4 770<P>Status Message:</P>
771<P>The standard response status message.</P>
772<P>Natural Language and Character Set:</P>
773<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
774 as described in section 3.1.4.2 of the IPP Model and Semantics
775 document.</P>
baee2cec 776</UL>
753453e4 777<P>Group 2: Printer Class Object Attributes</P>
baee2cec 778<UL>
753453e4 779<P>The set of requested attributes and their current values for each
780 printer class.</P>
baee2cec 781</UL>
9cfa8573 782<H2><A NAME="4_9">4.9 CUPS-Add-Modify-Class Operation</A></H2>
783<P>The CUPS-Add-Modify-Class operation (0x4006) adds a new printer class
784 or modifies and existing printer class on the system.</P>
785<H3><A NAME="4_9_1">4.9.1 CUPS-Add-Modify-Class Request</A></H3>
753453e4 786<P>The following groups of attributes are supplied as part of the
9cfa8573 787 CUPS-Add-Modify-Class request:</P>
753453e4 788<P>Group 1: Operation Attributes</P>
789<UL>
790<P>Natural Language and Character Set:</P>
791<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
792 as described in section 3.1.4.1 of the IPP Model and Semantics
793 document.</P>
794<P>&quot;printer-uri&quot; (uri):</P>
795<P>The client MUST supply a URI for the specified printer class.</P>
796</UL>
797<P>Group 2: Printer Object Attributes</P>
798<UL>
799<P>&quot;member-uris&quot; (1setof uri):</P>
800<P>The client OPTIONALLY supplies the &quot;member-uris&quot; set specifying the
801 printers and printer classes that are part of the class.</P>
802<P>&quot;printer-is-accepting-jobs&quot; (boolean):</P>
803<P>The client OPTIONALLY supplies this boolean attribute indicating
804 whether or not the class object should accept new jobs.</P>
805<P>&quot;printer-info&quot; (text(127)):</P>
806<P>The client OPTIONALLY supplies this attribute indicating the printer
807 information string.</P>
808<P>&quot;printer-location&quot; (text(127)):</P>
809<P>The client OPTIONALLY supplies this attribute indicating a textual
810 location of the class.</P>
811<P>&quot;printer-more-info&quot; (uri):</P>
812<P>The client OPTIONALLY supplies this attribute indicating a URI for
813 additional class information.</P>
814<P>&quot;printer-state&quot; (type2 enum):</P>
815<P>The client OPTIONALLY supplies this attribute indicating the
816 initial/current state of the class. Only the &quot;idle&quot; and &quot;stopped&quot;
817 enumerations are recognized.</P>
818<P>&quot;printer-state-message&quot; (text(MAX)):</P>
819<P>The client OPTIONALLY supplies this attribute indicating a textual
820 reason for the current class state.</P>
821<P>&quot;requesting-user-name-allowed&quot; (1setof name(127))</P>
baee2cec 822<P><I>OR</I></P>
753453e4 823<P>&quot;requesting-user-name-denied&quot; (1setof name(127)):</P>
824<P>The client OPTIONALLY supplies one of these attributes to specify an
825 access control list for incoming print jobs. To allow all users access
826 to a class, use the delete tag for the attribute value.</P>
baee2cec 827</UL>
9cfa8573 828<H3><A NAME="4_9_2">4.9.2 CUPS-Add-Modify-Class Response</A></H3>
753453e4 829<P>The following groups of attributes are send as part of the
9cfa8573 830 CUPS-Add-Modify-Class Response:</P>
753453e4 831<P>Group 1: Operation Attributes</P>
baee2cec 832<UL>
753453e4 833<P>Status Message:</P>
834<P>The standard response status message.</P>
835<P>Natural Language and Character Set:</P>
836<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
837 as described in section 3.1.4.2 of the IPP Model and Semantics
838 document.</P>
baee2cec 839</UL>
840<H2><A NAME="4_10">4.10 CUPS-Delete-Class Operation</A></H2>
753453e4 841<P>The CUPS-Delete-Class operation (0x4007) removes an existing printer
842 class from the system.</P>
baee2cec 843<H3><A NAME="4_10_1">4.10.1 CUPS-Delete-Class Request</A></H3>
753453e4 844<P>The following groups of attributes are supplied as part of the
845 CUPS-Delete-Class request:</P>
846<P>Group 1: Operation Attributes</P>
baee2cec 847<UL>
753453e4 848<P>Natural Language and Character Set:</P>
849<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
850 as described in section 3.1.4.1 of the IPP Model and Semantics
851 document.</P>
852<P>&quot;printer-uri&quot; (uri):</P>
853<P>The client MUST supply a URI for the specified printer class.</P>
baee2cec 854</UL>
855<H3><A NAME="4_10_2">4.10.2 CUPS-Delete-Class Response</A></H3>
753453e4 856<P>The following groups of attributes are send as part of the
857 CUPS-Delete-Class Response:</P>
858<P>Group 1: Operation Attributes</P>
baee2cec 859<UL>
753453e4 860<P>Status Message:</P>
861<P>The standard response status message.</P>
862<P>Natural Language and Character Set:</P>
863<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
864 as described in section 3.1.4.2 of the IPP Model and Semantics
865 document.</P>
baee2cec 866</UL>
867<H2><A NAME="4_11">4.11 CUPS-Accept-Jobs Operation</A></H2>
753453e4 868<P>The CUPS-Accept-Jobs operation (0x4008) sets the
869 &quot;printer-is-accepting-jobs&quot; attribute to true for the specified printer
870 or printer class.</P>
baee2cec 871<H3><A NAME="4_11_1">4.11.1 CUPS-Accept-Jobs Request</A></H3>
753453e4 872<P>The following groups of attributes are supplied as part of the
873 CUPS-Accept-Jobs request:</P>
874<P>Group 1: Operation Attributes</P>
875<UL>
876<P>Natural Language and Character Set:</P>
877<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
878 as described in section 3.1.4.1 of the IPP Model and Semantics
879 document.</P>
880<P>&quot;printer-uri&quot; (uri):</P>
881<P>The client MUST supply a URI for the specified printer or printer
882 class.</P>
baee2cec 883</UL>
884<H3><A NAME="4_11_2">4.11.2 CUPS-Accept-Jobs Response</A></H3>
753453e4 885<P>The following groups of attributes are send as part of the
886 CUPS-Accept-Jobs Response:</P>
887<P>Group 1: Operation Attributes</P>
baee2cec 888<UL>
753453e4 889<P>Status Message:</P>
890<P>The standard response status message.</P>
891<P>Natural Language and Character Set:</P>
892<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
893 as described in section 3.1.4.2 of the IPP Model and Semantics
894 document.</P>
baee2cec 895</UL>
896<H2><A NAME="4_12">4.12 CUPS-Reject-Jobs Operation</A></H2>
753453e4 897<P>The CUPS-Reject-Jobs operation (0x4009) sets
898 the&quot;printer-is-accepting-jobs&quot; attribute to false for the specified
899 printer or printer class.</P>
baee2cec 900<H3><A NAME="4_12_1">4.12.1 CUPS-Reject-Jobs Request</A></H3>
753453e4 901<P>The following groups of attributes are supplied as part of the
902 CUPS-Reject-Jobs request:</P>
903<P>Group 1: Operation Attributes</P>
baee2cec 904<UL>
753453e4 905<P>Natural Language and Character Set:</P>
906<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
907 as described in section 3.1.4.1 of the IPP Model and Semantics
908 document.</P>
909<P>&quot;printer-uri&quot; (uri):</P>
910<P>The client MUST supply a URI for the specified printer or printer
911 class.</P>
baee2cec 912</UL>
753453e4 913<P>Group 2: Printer Object Attributes</P>
baee2cec 914<UL>
753453e4 915<P>&quot;printer-state-message&quot; (text(MAX)):</P>
916<P>The client OPTIONALLY supplies this attribute indicating a textual
917 reason for the current printer state.</P>
baee2cec 918</UL>
919<H3><A NAME="4_12_2">4.12.2 CUPS-Reject-Jobs Response</A></H3>
753453e4 920<P>The following groups of attributes are send as part of the
921 CUPS-Reject-Jobs Response:</P>
922<P>Group 1: Operation Attributes</P>
baee2cec 923<UL>
753453e4 924<P>Status Message:</P>
925<P>The standard response status message.</P>
926<P>Natural Language and Character Set:</P>
927<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
928 as described in section 3.1.4.2 of the IPP Model and Semantics
929 document.</P>
baee2cec 930</UL>
931<H2><A NAME="4_13">4.13 CUPS-Set-Default Operation</A></H2>
753453e4 932<P>The CUPS-Set-Default operation (0x400A) sets the default printer
933 destination for all clients when a resource name of &quot;/printers&quot; is
934 specified.</P>
baee2cec 935<H3><A NAME="4_13_1">4.13.1 CUPS-Set-Default Request</A></H3>
753453e4 936<P>The following groups of attributes are supplied as part of the
937 CUPS-Set-Default request:</P>
938<P>Group 1: Operation Attributes</P>
939<UL>
940<P>Natural Language and Character Set:</P>
941<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
942 as described in section 3.1.4.1 of the IPP Model and Semantics
943 document.</P>
944<P>&quot;printer-uri&quot; (uri):</P>
945<P>The client MUST supply a URI for the specified printer or printer
946 class.</P>
baee2cec 947</UL>
948<H3><A NAME="4_13_2">4.13.2 CUPS-Set-Default Response</A></H3>
753453e4 949<P>The following groups of attributes are send as part of the
950 CUPS-Set-Default Response:</P>
951<P>Group 1: Operation Attributes</P>
baee2cec 952<UL>
753453e4 953<P>Status Message:</P>
954<P>The standard response status message.</P>
955<P>Natural Language and Character Set:</P>
956<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
957 as described in section 3.1.4.2 of the IPP Model and Semantics
958 document.</P>
baee2cec 959</UL>
960<H2><A NAME="4_14">4.14 CUPS-Get-Devices Operation</A></H2>
753453e4 961<P>The CUPS-Get-Devices operation (0x400B) returns all of the supported
962 device-uri's for the server (CUPS 1.1 and higher).</P>
baee2cec 963<H3><A NAME="4_14_1">4.14.1 CUPS-Get-Devices Request</A></H3>
753453e4 964<P>The following groups of attributes are supplied as part of the
965 CUPS-Get-Devices request:</P>
966<P>Group 1: Operation Attributes</P>
967<UL>
968<P>Natural Language and Character Set:</P>
969<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
970 as described in section 3.1.4.1 of the IPP Model and Semantics
971 document.</P>
972<P>&quot;device-class&quot; (type1 keyword):</P>
973<P>The client OPTIONALLY supplies a device class keyword to select which
974 devices are returned.</P>
975<P>&quot;limit&quot; (integer (1:MAX)):</P>
976<P>The client OPTIONALLY supplies this attribute limiting the number of
977 devices that are returned.</P>
978<P>&quot;requested-attributes&quot; (1setOf keyword) :</P>
979<P>The client OPTIONALLY supplies a set of attribute names and/or
980 attribute group names in whose values the requester is interested. If
981 the client omits this attribute, the server responds as if this
982 attribute had been supplied with a value of 'all'.</P>
baee2cec 983</UL>
984<H3><A NAME="4_14_2">4.14.2 CUPS-Get-Devices Response</A></H3>
753453e4 985<P>The following groups of attributes are send as part of the
986 CUPS-Get-Devices Response:</P>
987<P>Group 1: Operation Attributes</P>
baee2cec 988<UL>
753453e4 989<P>Status Message:</P>
990<P>The standard response status message.</P>
991<P>Natural Language and Character Set:</P>
992<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
993 as described in section 3.1.4.2 of the IPP Model and Semantics
994 document.</P>
baee2cec 995</UL>
753453e4 996<P>Group 2: Device Object Attributes</P>
baee2cec 997<UL>
753453e4 998<P>The set of requested attributes and their current values for each
999 device.</P>
baee2cec 1000</UL>
1001<H2><A NAME="4_15">4.15 CUPS-Get-PPDs Operation</A></H2>
753453e4 1002<P>The CUPS-Get-PPDs operation (0x400C) returns all of the locally
1003 available PPD files on the system (CUPS 1.1 and higher).</P>
baee2cec 1004<H3><A NAME="4_15_1">4.15.1 CUPS-Get-PPDs Request</A></H3>
753453e4 1005<P>The following groups of attributes are supplied as part of the
1006 CUPS-Get-PPDs request:</P>
1007<P>Group 1: Operation Attributes</P>
1008<UL>
1009<P>Natural Language and Character Set:</P>
1010<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
1011 as described in section 3.1.4.1 of the IPP Model and Semantics
1012 document.</P>
1013<P>&quot;limit&quot; (integer (1:MAX)):</P>
1014<P>The client OPTIONALLY supplies this attribute limiting the number of
1015 PPDs that are returned.</P>
1016<P>&quot;ppd-make&quot; (text(127)):</P>
1017<P>The client OPTIONALLY supplies a printer manufacturer to select which
1018 PPDs are returned.</P>
1019<P>&quot;requested-attributes&quot; (1setOf keyword) :</P>
1020<P>The client OPTIONALLY supplies a set of attribute names and/or
1021 attribute group names in whose values the requester is interested. If
1022 the client omits this attribute, the server responds as if this
1023 attribute had been supplied with a value of 'all'.</P>
baee2cec 1024</UL>
1025<H3><A NAME="4_15_2">4.15.2 CUPS-Get-PPDs Response</A></H3>
753453e4 1026<P>The following groups of attributes are send as part of the
1027 CUPS-Get-PPDs Response:</P>
1028<P>Group 1: Operation Attributes</P>
baee2cec 1029<UL>
753453e4 1030<P>Status Message:</P>
1031<P>The standard response status message.</P>
1032<P>Natural Language and Character Set:</P>
1033<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
1034 as described in section 3.1.4.2 of the IPP Model and Semantics
1035 document.</P>
baee2cec 1036</UL>
753453e4 1037<P>Group 2: PPD Attributes</P>
baee2cec 1038<UL>
753453e4 1039<P>The set of requested attributes and their current values for each PPD
1040 file.</P>
baee2cec 1041</UL>
1042<H2><A NAME="4_16">4.16 CUPS-Move-Job Operation</A></H2>
753453e4 1043<P>The CUPS-Move-Job operation (0x400D) moves an active print job to a
1044 different printer (CUPS 1.1 and higher).</P>
baee2cec 1045<H3><A NAME="4_16_1">4.16.1 CUPS-Move-Job Request</A></H3>
753453e4 1046<P>The following groups of attributes are supplied as part of the
1047 CUPS-Move-Job request:</P>
1048<P>Group 1: Operation Attributes</P>
1049<UL>
1050<P>Natural Language and Character Set:</P>
1051<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
1052 as described in section 3.1.4.1 of the IPP Model and Semantics
1053 document.</P>
1054<P>&quot;printer-uri&quot; (uri) and &quot;job-id&quot; (integer)</P>
baee2cec 1055<P><I>OR</I></P>
753453e4 1056<P>&quot;job-uri&quot;:</P>
1057<P>The client MUST supply a URI for the specified printer and a job ID
1058 number, or the job URI.</P>
baee2cec 1059</UL>
753453e4 1060<P>Group 2: Job Template Attributes</P>
baee2cec 1061<UL>
753453e4 1062<P>&quot;job-printer-uri&quot; (uri)</P>
1063<P>The client MUST supply a URI for a printer on the same server.</P>
baee2cec 1064</UL>
1065<H3><A NAME="4_16_2">4.16.2 CUPS-Move-Job Response</A></H3>
753453e4 1066<P>The following groups of attributes are send as part of the
1067 CUPS-Move-Job Response:</P>
1068<P>Group 1: Operation Attributes</P>
baee2cec 1069<UL>
753453e4 1070<P>Status Message:</P>
1071<P>The standard response status message.</P>
1072<P>Natural Language and Character Set:</P>
1073<P>The &quot;attributes-charset&quot; and &quot;attributes-natural-language&quot; attributes
1074 as described in section 3.1.4.2 of the IPP Model and Semantics
1075 document.</P>
baee2cec 1076</UL>
1077<H1><A NAME="5">5 Attributes</A></H1>
753453e4 1078<P>CUPS provides many extension attributes to support multiple devices,
1079 PPD files, standard job filters, printers, and printer classes.</P>
baee2cec 1080<H2><A NAME="5_1">5.1 Device Attributes</A></H2>
753453e4 1081<P>Device attributes are returned by the CUPS-Get-Devices operation and
1082 enumerate all of the available hardware devices and network protocols
1083 that are supported by the server.</P>
baee2cec 1084<H3><A NAME="5_1_1">5.1.1 device-class (type2 keyword)</A></H3>
753453e4 1085<P>The device-class attribute specifies the class of device and can be
1086 one of the following:</P>
baee2cec 1087<UL>
753453e4 1088<LI>&quot;file&quot; - a disk file.</LI>
1089<LI>&quot;direct&quot; - a parallel or fixed-rate serial data port, currently used
1090 for Centronics, IEEE-1284, and USB printer ports.</LI>
1091<LI>&quot;serial&quot; - a variable-rate serial port.</LI>
1092<LI>&quot;network&quot; - a network connection, typically via AppSocket, HTTP,
1093 IPP, LPD, or SMB/CIFS protocols.</LI>
baee2cec 1094</UL>
1095<H3><A NAME="5_1_2">5.1.2 device-info (text(127))</A></H3>
753453e4 1096<P>The device-info attribute specifies a human-readable string
1097 describing the device, e.g. &quot;Parallel Port #1&quot;.</P>
baee2cec 1098<H3><A NAME="5_1_3">5.1.3 device-make-and-model (text(127))</A></H3>
753453e4 1099<P>The device-makr-and-model attribute specifies a device identification
1100 string provided by the printer connected to the device. If the device
1101 or printer does not support identification then this attribute contains
1102 the string &quot;unknown&quot;.</P>
baee2cec 1103<H3><A NAME="5_1_4">5.1.4 device-uri (uri)</A></H3>
753453e4 1104<P>The device-uri attribute specifies a unique identifier for the
1105 device. The actual format of the device-uri string depends on the value
1106 of the device-class attribute:</P>
1107<UL>
1108<LI>&quot;file&quot; - The device-uri will be of the form
1109 &quot;file:/path/to/filename&quot;.</LI>
1110<LI>&quot;direct&quot; - The device-uri will be of the form
1111 &quot;method:/dev/filename&quot;, where method may be &quot;parallel&quot; or &quot;usb&quot; in the
1112 current implementation.</LI>
1113<LI>&quot;serial&quot; - The device-uri will be of the form
1114 &quot;serial:/dev/filename?baud=value+parity=value+flow=value&quot;. The baud
1115 value is the data rate in bits per second; the supported values depend
1116 on the underlying hardware. The parity value can be one of &quot;none&quot;,
1117 &quot;even&quot;, or &quot;odd&quot;. The flow value can be one of &quot;none&quot;, &quot;soft&quot; (XON/XOFF
1118 handshaking), &quot;hard&quot; or &quot;rts/cts&quot; (RTS/CTS handshaking), or &quot;dtrdsr&quot;
9cfa8573 1119 (DTR/DSR handshaking).
753453e4 1120<P>The URI returned by CUPS-Get-Devices will contain the maximum baud
1121 rate supported by the device and the best type of flow control
1122 available (&quot;soft&quot; or &quot;hard&quot;).</P>
1123<LI>&quot;network&quot; - The device-uri will be of the form
1124 &quot;method://[username:password@]hostname[:port]/[resource]&quot;, where method
1125 may be &quot;http&quot;, &quot;ipp&quot;, &quot;lpd&quot;, &quot;smb&quot;, or &quot;socket&quot; in the current
9cfa8573 1126 implementation.
753453e4 1127<P>The URI returned by CUPS-Get-Devices will only contain the method
1128 name followed by two slashes (&quot;method://&quot;). It is up to the client
1129 application to add the appropriate host and other information when
1130 adding a new printer.</P>
1131<P>The URI returned by Get-Printer-Attributes and CUPS-Get-Printers has
1132 any username and password information stripped; the information is
1133 still stored and used by the server internally to perform any needed
1134 authentication.</P>
9cfa8573 1135</LI>
1136</LI>
baee2cec 1137</UL>
1138<H2><A NAME="5_2">5.2 Job Template Attributes</A></H2>
1139<H3><A NAME="5_2_1">5.2.1 blackplot (boolean)</A></H3>
753453e4 1140<P>The blackplot attribute specifies whether HP-GL/2 plot files should
1141 be rendered entirely in black ink (blackplot=true) or using the colors
1142 and shades specified in the file (blackplot=false). The default value
1143 is false.</P>
baee2cec 1144<H3><A NAME="5_2_2">5.2.2 brightness (integer(0:200))</A></H3>
753453e4 1145<P>The brightness attribute specifies the overall brightness of the
1146 printed output in percent. A brightness of 100 is normal, while 200 is
1147 twice as bright and 50 is half as bright. The default value is 100.</P>
1148<P>Brightness is applied to the Cyan, Magenta, Yellow, and Black values
1149 using the function &quot;f(x) = brightness / 100 * x&quot;.</P>
baee2cec 1150<H3><A NAME="5_2_3">5.2.3 columns (integer(1:4))</A></H3>
753453e4 1151<P>The columns attribute specifies the number of columns to generate
1152 when printing text files. The default value is 1.</P>
baee2cec 1153<H3><A NAME="5_2_4">5.2.4 cpi (type2 enum)</A></H3>
753453e4 1154<P>The cpi attribute specifies the number of characters per inch when
1155 printing text files. Only the values 10, 12, and 17 are currently
1156 supported. The default value is 10.</P>
baee2cec 1157<H3><A NAME="5_2_5">5.2.5 fitplot (boolean)</A></H3>
753453e4 1158<P>The fitplot attribute specifies whether to scale HP-GL/2 plot files
1159 to fit on the selected media (fitplot=true) or use the physical scale
1160 specified in the plot file (fitplot=false). The default value is false.</P>
baee2cec 1161<H3><A NAME="5_2_6">5.2.6 gamma (integer(1:10000))</A></H3>
753453e4 1162<P>The gamma attribute specifies the luminance correction for the
1163 output. A value of 1000 specifies no correction, while values of 2000
1164 and 500 will generate lighter and darker output, respectively. The
1165 default value is 1000.</P>
1166<P>Gamma is applied to the Red, Green, and Blue values (or luminance for
1167 grayscale output) using the function &quot;f(x) = x<SUP>(1000/gamma)</SUP>&quot;.</P>
baee2cec 1168<H3><A NAME="5_2_7">5.2.7 hue (integer(-180:180))</A></H3>
753453e4 1169<P>The hue attribute specifies a color hue rotation when printing image
1170 files. The default value is 0.</P>
baee2cec 1171<H3><A NAME="5_2_8">5.2.8 job-billing (text(MAX))</A></H3>
1172<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1173<P>The job-billing attribute provides a text value to associate with a
1174 job for billing purposes.</P>
baee2cec 1175<H3><A NAME="5_2_9">5.2.9 job-hold-until (keyword | name(MAX))</A></H3>
1176<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1177<P>The job-hold-until attribute specifies a hold time. In addition to
1178 the standard IPP/1.1 keyword names, CUPS supports name values of the
1179 form &quot;HH:MM&quot; and &quot;HH:MM:SS&quot; that specify a hold time. The hold time is
1180 in Greenwich Mean Time (GMT) and<I> not</I> in the local time zone. If
1181 the specified time is less than the current time, the job is held until
1182 the next day.</P>
1183<H3><A NAME="5_2_10">5.2.10 job-sheets (1setof type3 keyword |
1184 name(MAX))</A></H3>
baee2cec 1185<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1186<P>The job-sheets attribute specifies one or two banner files that are
1187 printed before and after a job. The reserved value of &quot;none&quot; disables
1188 banner printing. The default value is stored in the job-sheets-default
1189 attribute.</P>
1190<P>If only one value is supplied, the banner file is printed before the
1191 job. If two values are supplied, the first value is used as the
1192 starting banner file and the second as the ending banner file.</P>
baee2cec 1193<H3><A NAME="5_2_11">5.2.11 job-originating-host-name (name(MAX))</A></H3>
1194<P><I>(CUPS 1.1.5 and higher)</I></P>
753453e4 1195<P>The job-originating-host-name attribute specifies the host from which
1196 the job was queued. The value will be the hostname or IP address of the
1197 client depending on whether hostname resolution is enabled. The
1198 localhost address (127.0.0.1) is<B> always</B> resolved to the name
1199 &quot;localhost&quot;.</P>
1200<P>This attribute is read-only.</P>
baee2cec 1201<H3><A NAME="5_2_12">5.2.12 lpi (type2 enum)</A></H3>
753453e4 1202<P>The lpi attribute specifies the number of lines per inch when
1203 printing text files. Only the values 6 and 8 are currently supported.
1204 The default value is 6.</P>
1205<H3><A NAME="5_2_13">5.2.13 natural-scaling (integer(1:1000))</A></H3>
1206<P><I>(CUPS 1.1.9 and higher)</I></P>
1207<P>The natural-scaling attribute specifies the scaling of image files
1208 with respect to the natural image size. A value of 100 specifies that
1209 the image file should exactly the natural size, while 50 is half the
1210 natural size and 200 is twice the natural size. The default value is
1211 100.</P>
1212<P>The ppi option can be used to override the natural resolution of the
1213 image, which controls the natural size.</P>
9cfa8573 1214<H3><A NAME="5_2_14">5.2.14 number-up-layout (type2 keyword)</A></H3>
1215<P><I>(CUPS 1.1.15 and higher)</I></P>
1216<P>The number-up-layout attribute specifies the order each input page is
1217 placed on each output page. The following keywords are presently
1218 defined:</P>
1219<UL>
1220<LI><CODE>btlr</CODE> - Bottom to top, left to right</LI>
1221<LI><CODE>btrl</CODE> - Bottom to top, right to left</LI>
1222<LI><CODE>lrbt</CODE> - Left to right, bottom to top</LI>
1223<LI><CODE>lrtb</CODE> - Left to right, top to bottom (default)</LI>
1224<LI><CODE>rlbt</CODE> - Right to left, bottom to top</LI>
1225<LI><CODE>rltb</CODE> - Right to left, top to bottom</LI>
1226<LI><CODE>tblr</CODE> - Top to bottom, left to right</LI>
1227<LI><CODE>tbrl</CODE> - Top to bottom, right to left</LI>
1228</UL>
1229<H3><A NAME="5_2_15">5.2.15 page-border (type2 keyword)</A></H3>
1230<P><I>(CUPS 1.1.15 and higher)</I></P>
1231<P>The page-border attribute specifies whether a border is draw around
1232 each page. The following keywords are presently defined:</P>
1233<UL>
1234<LI><CODE>double</CODE> - Two hairline borders are drawn</LI>
1235<LI><CODE>double-thick</CODE> - Two 1pt borders are drawn</LI>
1236<LI><CODE>none</CODE> - No border is drawn (default)</LI>
1237<LI><CODE>single</CODE> - A single hairline border is drawn</LI>
1238<LI><CODE>single-thick</CODE> - A single 1pt border is drawn</LI>
1239</UL>
1240<H3><A NAME="5_2_16">5.2.16 page-bottom (integer(0:MAX))</A></H3>
753453e4 1241<P>The page-bottom attribute specifies the bottom margin in points (72
1242 points equals 1 inch). The default value is the device physical margin.</P>
9cfa8573 1243<H3><A NAME="5_2_17">5.2.17 page-label (text(MAX))</A></H3>
d360fe65 1244<P><I>(CUPS 1.1.7 and higher)</I></P>
753453e4 1245<P>The page-label attribute provides a text value to place in the header
1246 and footer on each page. If a classification level is set on the
1247 server, then this classification is printed before the page label.</P>
9cfa8573 1248<H3><A NAME="5_2_18">5.2.18 page-left (integer(0:MAX))</A></H3>
753453e4 1249<P>The page-left attribute specifies the left margin in points (72
1250 points equals 1 inch). The default value is the device physical margin.</P>
9cfa8573 1251<H3><A NAME="5_2_19">5.2.19 page-right (integer(0:MAX))</A></H3>
753453e4 1252<P>The page-right attribute specifies the right margin in points (72
1253 points equals 1 inch). The default value is the device physical margin.</P>
9cfa8573 1254<H3><A NAME="5_2_20">5.2.20 page-set (type2 keyword)</A></H3>
753453e4 1255<P>The page-set attribute specifies which pages to print in a file. The
1256 supported keywords are &quot;all&quot;, &quot;even&quot;, and &quot;odd&quot;. The default value is
1257 &quot;all&quot;.</P>
9cfa8573 1258<H3><A NAME="5_2_21">5.2.21 page-top (integer(0:MAX))</A></H3>
753453e4 1259<P>The page-top attribute specifies the top margin in points (72 points
1260 equals 1 inch). The default value is the device physical margin.</P>
9cfa8573 1261<H3><A NAME="5_2_22">5.2.22 penwidth (integer(0:MAX))</A></H3>
753453e4 1262<P>The penwidth attribute specifies the default pen width in micrometers
1263 when printing HP-GL/2 plot files. The default value is 1000 (1
1264 millimeter).</P>
9cfa8573 1265<H3><A NAME="5_2_23">5.2.23 position (type2 keyword)</A></H3>
753453e4 1266<P>The position attribute specifies the location of image files on the
1267 media. The following keyword values are recognized:</P>
1268<UL>
1269<LI><CODE>center</CODE> - Center the image on the page (default)</LI>
1270<LI><CODE>top</CODE> - Print the image centered at the top of the page</LI>
1271<LI><CODE>left</CODE> - Print the image centered on the left of page</LI>
1272<LI><CODE>right</CODE> - Print the image centered on the right of the
1273 page</LI>
1274<LI><CODE>top-left</CODE> - Print the image at the top left corner of
1275 the page</LI>
1276<LI><CODE>top-right</CODE> - Print the image at the top right corner of
1277 the page</LI>
1278<LI><CODE>bottom</CODE> - Print the image centered at the bottom of the
1279 page</LI>
1280<LI><CODE>bottom-left</CODE> - Print the image at the bottom left corner
1281 of the page</LI>
1282<LI><CODE>bottom-right</CODE> - Print the image at the bottom right
1283 corner of the page</LI>
1284</UL>
9cfa8573 1285<H3><A NAME="5_2_24">5.2.24 ppi (integer(1:MAX))</A></H3>
753453e4 1286<P>The ppi attribute specifies the resolution of an image file in pixels
1287 per inch. The default value is the resolution included with the file or
1288 128 if no resolution information is available.</P>
9cfa8573 1289<H3><A NAME="5_2_25">5.2.25 prettyprint (boolean)</A></H3>
753453e4 1290<P>The prettyprint attribute specifies whether text files should be
1291 printed with a shaded header and keyword highlighting
1292 (prettyprint=true) or without additional formatting
1293 (prettyprint=false). The default value is false.</P>
9cfa8573 1294<H3><A NAME="5_2_26">5.2.26 saturation (integer(0:200))</A></H3>
753453e4 1295<P>The saturation attribute specifies the color saturation when printing
1296 image files. A saturation of 100 is normal, while values of 50 and 200
1297 will be half and twice as colorful, respectively. The default value is
1298 100.</P>
9cfa8573 1299<H3><A NAME="5_2_27">5.2.27 scaling (integer(1:1000))</A></H3>
753453e4 1300<P>The scaling attribute specifies the scaling of image files with
1301 respect to the selected media. A value of 100 specifies that the image
1302 file should fit 100% of the page, or as much as possible given the
1303 image dimensions. The default value is unspecified.</P>
1304<P>The scaling attribute overrides the ppi attribute if specified.</P>
9cfa8573 1305<H3><A NAME="5_2_28">5.2.28 wrap (boolean)</A></H3>
753453e4 1306<P>The wrap attribute specifies whether long lines should be wrapped
1307 (wrap=true) or not (wrap=false) when printing text files. The default
1308 value is true.</P>
baee2cec 1309<H2><A NAME="5_3">5.3 PPD Attributes</A></H2>
1310<H3><A NAME="5_3_1">5.3.1 ppd-natural-language (naturalLanguage)</A></H3>
753453e4 1311<P>The ppd-natural-language attribute specifies the language encoding of
1312 the PPD file (the LanguageVersion attribute in the PPD file). If the
1313 language is unknown or undefined then &quot;en&quot; (English) is assumed.</P>
baee2cec 1314<H3><A NAME="5_3_2">5.3.2 ppd-make (text(127))</A></H3>
753453e4 1315<P>The ppd-make attribute specifies the manufacturer of the printer (the
1316 Manufacturer attribute in the PPD file). If the manufacturer is not
1317 specified in the PPD file then an educated guess is made using the
1318 NickName attribute in the PPD file.</P>
baee2cec 1319<H3><A NAME="5_3_3">5.3.3 ppd-make-and-model (text(127))</A></H3>
753453e4 1320<P>The ppd-make-and-model attribute specifies the manufacturer and model
1321 name of the PPD file (the NickName attribute in the PPD file). If the
1322 make and model is not specified in the PPD file then the ModelName or
1323 ShortNickName attributes are used instead.</P>
baee2cec 1324<H3><A NAME="5_3_4">5.3.4 ppd-name (name(255))</A></H3>
753453e4 1325<P>The ppd-name attribute specifies the PPD filename on the server
1326 relative to the model directory. The forward slash (/) is used to
1327 delineate directories.</P>
baee2cec 1328<H2><A NAME="5_4">5.4 Printer Attributes</A></H2>
1329<H3><A NAME="5_4_1">5.4.1 job-k-limit (integer)</A></H3>
1330<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1331<P>The job-k-limit attribute specifies the maximum number of kilobytes
1332 that may be printed by a user, including banner files. The default
1333 value of 0 specifies that there is no limit.</P>
baee2cec 1334<H3><A NAME="5_4_2">5.4.2 job-page-limit (integer)</A></H3>
1335<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1336<P>The job-page-limit attribute specifies the maximum number of pages
1337 that may be printed by a user, including banner files. The default
1338 value of 0 specifies that there is no limit.</P>
baee2cec 1339<H3><A NAME="5_4_3">5.4.3 job-quota-period (integer)</A></H3>
1340<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1341<P>The job-quota-period attribute specifies the time period used for
1342 quota calculations, in seconds. The default value of 0 specifies that
1343 the limits apply to all jobs that have been printed by a user that are
1344 still known to the system.</P>
1345<H3><A NAME="5_4_4">5.4.4 job-sheets-supported (1setof type3 keyword |
1346 name(MAX))</A></H3>
baee2cec 1347<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1348<P>The job-sheets-supported attribute specifies the available banner
1349 files. There will always be at least one banner file available called
1350 &quot;none&quot;.</P>
baee2cec 1351<H3><A NAME="5_4_5">5.4.5 printer-type (type2 enum)</A></H3>
753453e4 1352<P>The printer-type attribute specifies printer type and capability bits
1353 for the printer or class. The default value is computed from internal
1354 state information and the PPD file for the printer. The following bits
1355 are defined:
eb874831 1356<CENTER>
1357<TABLE BORDER WIDTH="80%">
baee2cec 1358<TR><TH>Bit</TH><TH>Description</TH></TR>
1359<TR><TD VALIGN="TOP">0x00000001</TD><TD VALIGN="TOP">Is a printer class.</TD>
1360</TR>
753453e4 1361<TR><TD VALIGN="TOP">0x00000002</TD><TD VALIGN="TOP">Is a remote
1362 destination.</TD></TR>
baee2cec 1363<TR><TD VALIGN="TOP">0x00000004</TD><TD VALIGN="TOP">Can print in black.</TD>
1364</TR>
1365<TR><TD VALIGN="TOP">0x00000008</TD><TD VALIGN="TOP">Can print in color.</TD>
1366</TR>
753453e4 1367<TR><TD VALIGN="TOP">0x00000010</TD><TD VALIGN="TOP">Can print on both
1368 sides of the page in hardware.</TD></TR>
baee2cec 1369<TR><TD VALIGN="TOP">0x00000020</TD><TD VALIGN="TOP">Can staple output.</TD>
1370</TR>
753453e4 1371<TR><TD VALIGN="TOP">0x00000040</TD><TD VALIGN="TOP">Can do fast copies
1372 in hardware.</TD></TR>
1373<TR><TD VALIGN="TOP">0x00000080</TD><TD VALIGN="TOP">Can do fast copy
1374 collation in hardware.</TD></TR>
baee2cec 1375<TR><TD VALIGN="TOP">0x00000100</TD><TD VALIGN="TOP">Can punch output.</TD>
1376</TR>
1377<TR><TD VALIGN="TOP">0x00000200</TD><TD VALIGN="TOP">Can cover output.</TD>
1378</TR>
1379<TR><TD VALIGN="TOP">0x00000400</TD><TD VALIGN="TOP">Can bind output.</TD>
1380</TR>
1381<TR><TD VALIGN="TOP">0x00000800</TD><TD VALIGN="TOP">Can sort output.</TD>
1382</TR>
753453e4 1383<TR><TD VALIGN="TOP">0x00001000</TD><TD VALIGN="TOP">Can handle media up
1384 to US-Legal/A4.</TD></TR>
1385<TR><TD VALIGN="TOP">0x00002000</TD><TD VALIGN="TOP">Can handle media
1386 from US-Legal/A4 to ISO-C/A2.</TD></TR>
1387<TR><TD VALIGN="TOP">0x00004000</TD><TD VALIGN="TOP">Can handle media
1388 larger than ISO-C/A2.</TD></TR>
1389<TR><TD VALIGN="TOP">0x00008000</TD><TD VALIGN="TOP">Can handle
1390 user-defined media sizes.</TD></TR>
1391<TR><TD VALIGN="TOP">0x00010000</TD><TD VALIGN="TOP">Is an implicit
1392 (server-generated) class.</TD></TR>
eb874831 1393</TABLE>
1394</CENTER>
1395</P>
baee2cec 1396<H3><A NAME="5_4_6">5.4.6 printer-type-mask (type2 enum)</A></H3>
1397<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1398<P>The printer-type-mask attribute is used to choose printers or classes
1399 with the CUPS-Get-Printers and CUPS-Get-Classes operations. The bits
1400 are defined identically to the printer-type attribute and default to
1401 all 1's.</P>
1402<H3><A NAME="5_4_7">5.4.7 requesting-user-name-allowed (1setof
1403 name(127))</A></H3>
baee2cec 1404<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1405<P>The requesting-user-name-allowed attribute lists all of the users
1406 that are allowed to access a printer or class. Either this attribute or
1407 the requesting-user-name-denied attribute will be defined, but not
1408 both.</P>
baee2cec 1409<H3><A NAME="5_4_8">5.4.8 requesting-user-name-denied (1setof name(127))</A>
e2e7c96e 1410</H3>
baee2cec 1411<P><I>(CUPS 1.1 and higher)</I></P>
753453e4 1412<P>The requesting-user-name-denied attribute lists all of the users that
1413 are not allowed to access a printer or class. Either this attribute or
1414 the requesting-user-name-allowed attribute will be defined, but not
1415 both.</P>
baee2cec 1416<H2><A NAME="5_5">5.5 Printer Class Attributes</A></H2>
1417<H3><A NAME="5_5_1">5.5.1 member-names (1setof name(127))</A></H3>
753453e4 1418<P>The member-names attribute specifies each of the printer-name
1419 attributes of the member printers and classes. Each name corresponds to
1420 the same element of the member-uris attribute.</P>
baee2cec 1421<H3><A NAME="5_5_2">5.5.2 member-uris (1setof uri)</A></H3>
753453e4 1422<P>The member-uris attribute specifies each of the printer-uri
1423 attributes of the member printers and classes. Each URI corresponds to
1424 the same element of the member-names attribute.</P>
baee2cec 1425<H1 TYPE="A" VALUE="1"><A NAME="6">A Glossary</A></H1>
1426<H2><A NAME="6_1">A.1 Terms</A></H2>
fd7cc15d 1427<DL>
753453e4 1428<DT>C</DT>
1429<DD>A computer language.</DD>
1430<DT>parallel</DT>
1431<DD>Sending or receiving data more than 1 bit at a time.</DD>
1432<DT>pipe</DT>
1433<DD>A one-way communications channel between two programs.</DD>
1434<DT>serial</DT>
1435<DD>Sending or receiving data 1 bit at a time.</DD>
1436<DT>socket</DT>
1437<DD>A two-way network communications channel.</DD>
fd7cc15d 1438</DL>
baee2cec 1439<H2><A NAME="6_2">A.2 Acronyms</A></H2>
fd7cc15d 1440<DL>
753453e4 1441<DT>ASCII</DT>
1442<DD>American Standard Code for Information Interchange</DD>
1443<DT>CUPS</DT>
1444<DD>Common UNIX Printing System</DD>
1445<DT>ESC/P</DT>
1446<DD>EPSON Standard Code for Printers</DD>
1447<DT>FTP</DT>
1448<DD>File Transfer Protocol</DD>
1449<DT>HP-GL</DT>
1450<DD>Hewlett-Packard Graphics Language</DD>
1451<DT>HP-PCL</DT>
1452<DD>Hewlett-Packard Page Control Language</DD>
1453<DT>HP-PJL</DT>
1454<DD>Hewlett-Packard Printer Job Language</DD>
1455<DT>IETF</DT>
1456<DD>Internet Engineering Task Force</DD>
1457<DT>IPP</DT>
1458<DD>Internet Printing Protocol</DD>
1459<DT>ISO</DT>
1460<DD>International Standards Organization</DD>
1461<DT>LPD</DT>
1462<DD>Line Printer Daemon</DD>
1463<DT>MIME</DT>
1464<DD>Multimedia Internet Mail Exchange</DD>
1465<DT>PPD</DT>
1466<DD>PostScript Printer Description</DD>
1467<DT>SMB</DT>
1468<DD>Server Message Block</DD>
1469<DT>TFTP</DT>
1470<DD>Trivial File Transfer Protocol</DD>
fd7cc15d 1471</DL>
eb874831 1472</BODY>
1473</HTML>