]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/man-ipptoolfile.html
Update CUPS filter/backend programming guide (STR #4355)
[thirdparty/cups.git] / doc / help / man-ipptoolfile.html
CommitLineData
c277f98c 1<!DOCTYPE HTML>
a2326b5b
MS
2<html>
3<!-- SECTION: Man Pages -->
4<head>
5 <link rel="stylesheet" type="text/css" href="../cups-printable.css">
6 <title>ipptoolfile(5)</title>
7</head>
8<body>
9<h1 class="title">ipptoolfile(5)</h1>
10<h2 class="title"><a name="NAME">Name</a></h2>
11ipptoolfile - ipptool file format
12
13<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
c277f98c 14The <i>ipptool(1)</i> program accepts free-form plain text files that describe one or more IPP requests. Comments start with the "#" character and continue to the end of the line. Each request is enclosed by curly braces, for example:
a2326b5b
MS
15<pre>
16
17 # This is a comment
18 {
19 # The name of the test
20 NAME "Print PostScript Job"
21
22 # The request to send
23 OPERATION Print-Job
24 GROUP operation-attributes-tag
25 ATTR charset attributes-charset utf-8
26 ATTR language attributes-natural-language en
27 ATTR uri printer-uri $uri
28 ATTR name requesting-user-name $user
29 FILE testfile.ps
30
31 # The response to expect
32 STATUS successful-ok
33 EXPECT attributes-charset OF-TYPE charset
34 EXPECT attributes-natural-language OF-TYPE naturalLanguage
35 EXPECT job-id OF-TYPE integer
36 EXPECT job-uri OF-TYPE uri
37 }
38 {
39 # The name of the test
40 NAME "Get Attributes of PostScript Job"
41
42 # The request to send
43 OPERATION Get-Job-Attributes
44 GROUP operation-attributes-tag
45 ATTR charset attributes-charset utf-8
46 ATTR language attributes-natural-language en
47 ATTR uri printer-uri $uri
48 ATTR integer job-id $job-id
49 ATTR name requesting-user-name $user
50
51 # The response to expect
52 STATUS successful-ok
53 EXPECT attributes-charset OF-TYPE charset
54 EXPECT attributes-natural-language OF-TYPE naturalLanguage
55 EXPECT job-id OF-TYPE integer
56 EXPECT job-uri OF-TYPE uri
57 EXPECT job-state OF-TYPE enum
58 EXPECT job-originating-user-name OF-TYPE name WITH-VALUE "$user"
59 }
60</pre>
61
c277f98c 62<h2 class="title"><a name="TOP_LEVEL_DIRECTIVES">Top-level Directives</a></h2>
a2326b5b 63The following directives can be used outside of a test:
c277f98c
MS
64<p style="margin-left: 5.0em; text-indent: -5.0em">{ test }
65<br>
66Defines a test.
67<p style="margin-left: 5.0em; text-indent: -5.0em">DEFINE variable-name value
68<br>
69Defines the named variable to the given value. This is equivalent to specifying
a2326b5b 70"-d variable-name=value" on the <i>ipptool</i> command-line.
c277f98c
MS
71<p style="margin-left: 5.0em; text-indent: -5.0em">DEFINE-DEFAULT variable-name value
72<br>
73Defines the named variable to the given value if it does not already have a
a2326b5b 74value.
c277f98c
MS
75<p style="margin-left: 5.0em; text-indent: -5.0em">FILE-ID "identifier"
76<br>
77Specifies an identifier string for the current file.
78<p style="margin-left: 5.0em; text-indent: -5.0em">IGNORE-ERRORS yes
79<br>
80<p style="margin-left: 5.0em; text-indent: -5.0em">IGNORE-ERRORS no
81<br>
82Specifies whether, by default, <i>ipptool</i> will ignore errors and continue with
a2326b5b 83subsequent tests.
c277f98c
MS
84<p style="margin-left: 5.0em; text-indent: -5.0em">INCLUDE "filename"
85<br>
86<p style="margin-left: 5.0em; text-indent: -5.0em">INCLUDE &lt;filename>
87<br>
88Includes another test file. The first form includes a file relative to the
a2326b5b
MS
89current test file, while the second form includes a file from the <i>ipptool</i>
90include directory.
c277f98c
MS
91<p style="margin-left: 5.0em; text-indent: -5.0em">INCLUDE-IF-DEFINED name "filename"
92<br>
93<p style="margin-left: 5.0em; text-indent: -5.0em">INCLUDE-IF-DEFINED name &lt;filename>
94<br>
95Includes another test file if the named variable is defined. The first form
a2326b5b
MS
96includes a file relative to the current test file, while the second form
97includes a file from the <i>ipptool</i> include directory.
c277f98c
MS
98<p style="margin-left: 5.0em; text-indent: -5.0em">INCLUDE-IF-NOT-DEFINED name "filename"
99<br>
100<p style="margin-left: 5.0em; text-indent: -5.0em">INCLUDE-IF-NOT-DEFINED name &lt;filename>
101<br>
102Includes another test file if the named variable is not defined. The first form
a2326b5b
MS
103includes a file relative to the current test file, while the second form
104includes a file from the <i>ipptool</i> include directory.
c277f98c
MS
105<p style="margin-left: 5.0em; text-indent: -5.0em">SKIP-IF-DEFINED variable-name
106<br>
107<p style="margin-left: 5.0em; text-indent: -5.0em">SKIP-IF-NOT-DEFINED variable-name
108<br>
109Specifies that the remainder of the test file should be skipped when the
a2326b5b 110variable is or is not defined.
c277f98c
MS
111<p style="margin-left: 5.0em; text-indent: -5.0em">STOP-AFTER-INCLUDE-ERROR no
112<br>
113<p style="margin-left: 5.0em; text-indent: -5.0em">STOP-AFTER-INCLUDE-ERROR yes
114<br>
115Specifies whether tests will be stopped after an error in an included file.
116<p style="margin-left: 5.0em; text-indent: -5.0em">TRANSFER auto
117<br>
118Specifies that tests will, by default, use "Transfer-Encoding: chunked" for
a2326b5b
MS
119requests with attached files and "Content-Length:" for requests without attached
120files.
c277f98c
MS
121<p style="margin-left: 5.0em; text-indent: -5.0em">TRANSFER chunked
122<br>
123Specifies that tests will, by default, use the HTTP/1.1 "Transfer-Encoding:
a2326b5b
MS
124chunked" header. This is the default and is equivalent to specifying "-c" on the
125<i>ipptool</i> command-line. Support for chunked requests is required for
126conformance with all versions of IPP.
c277f98c
MS
127<p style="margin-left: 5.0em; text-indent: -5.0em">TRANSFER length
128<br>
129Specifies that tests will, by default, use the HTTP/1.0 "Content-Length:"
a2326b5b
MS
130header. This is equivalent to specifying "-l" on the <i>ipptool</i> command-line.
131Support for content length requests is required for conformance with all
132versions of IPP.
c277f98c
MS
133<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 1.0
134<br>
135<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 1.1
136<br>
137<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 2.0
138<br>
139<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 2.1
140<br>
141<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 2.2
142<br>
143Specifies the default IPP version number to use for the tests that follow.
a2326b5b 144
a2326b5b
MS
145<h2 class="title"><a name="TEST_DIRECTIVES">Test Directives</a></h2>
146The following directives are understood in a test:
c277f98c
MS
147<p style="margin-left: 5.0em; text-indent: -5.0em">ATTR tag attribute-name value(s)
148<br>
149Adds an attribute to the test request. Values are separated by the comma (",")
8e67b75b 150character - escape commas using the "" character. Common attributes and values are listed in the IANA IPP registry - see references below.
c277f98c
MS
151<p style="margin-left: 5.0em; text-indent: -5.0em">ATTR collection attribute-name { MEMBER tag member-name value(s) ... } [ ... { ... } ]
152<br>
153Adds a collection attribute to the test request. Member attributes follow the
a2326b5b
MS
154same syntax as regular attributes and can themselves be nested collections.
155Multiple collection values can be supplied as needed.
c277f98c
MS
156<p style="margin-left: 5.0em; text-indent: -5.0em">COMPRESSION deflate
157<br>
158<p style="margin-left: 5.0em; text-indent: -5.0em">COMPRESSION gzip
159<br>
160<p style="margin-left: 5.0em; text-indent: -5.0em">COMPRESSION none
161<br>
162<br>
163Uses the specified compression on the document data following the attributes in
c41769ff 164a Print-Job or Send-Document request.
c277f98c
MS
165<p style="margin-left: 5.0em; text-indent: -5.0em">DELAY seconds
166<br>
167Specifies a delay before this test will be run.
168<p style="margin-left: 5.0em; text-indent: -5.0em">DISPLAY attribute-name
169<br>
170Specifies that value of the named attribute should be output as part of the
a2326b5b 171test report.
c277f98c
MS
172<p style="margin-left: 5.0em; text-indent: -5.0em">EXPECT attribute-name [ predicate(s) ]
173<br>
174<p style="margin-left: 5.0em; text-indent: -5.0em">EXPECT ?attribute-name predicate(s)
175<br>
176<p style="margin-left: 5.0em; text-indent: -5.0em">EXPECT !attribute-name
177<br>
178Specifies that the response must/may/must not include the named attribute.
a2326b5b
MS
179Additional requirements can be added as predicates - see the "EXPECT PREDICATES"
180section for more information on predicates.
c277f98c
MS
181<p style="margin-left: 5.0em; text-indent: -5.0em">FILE filename
182<br>
183Specifies a file to include at the end of the request. This is typically used
a2326b5b 184when sending a test print file.
c277f98c
MS
185<p style="margin-left: 5.0em; text-indent: -5.0em">GROUP tag
186<br>
187Specifies the group tag for subsequent attributes in the request.
188<p style="margin-left: 5.0em; text-indent: -5.0em">IGNORE-ERRORS yes
189<br>
190<p style="margin-left: 5.0em; text-indent: -5.0em">IGNORE-ERRORS no
191<br>
192Specifies whether <i>ipptool</i> will ignore errors and continue with subsequent
a2326b5b 193tests.
c277f98c
MS
194<p style="margin-left: 5.0em; text-indent: -5.0em">NAME "literal string"
195<br>
196Specifies the human-readable name of the test.
197<p style="margin-left: 5.0em; text-indent: -5.0em">OPERATION operation-code
198<br>
199Specifies the operation to be performed.
200<p style="margin-left: 5.0em; text-indent: -5.0em">REQUEST-ID number
201<br>
202<p style="margin-left: 5.0em; text-indent: -5.0em">REQUEST-ID random
203<br>
204Specifies the request-id value to use in the request, either an integer or the
a2326b5b 205word "random" to use a randomly generated value (the default).
c277f98c
MS
206<p style="margin-left: 5.0em; text-indent: -5.0em">RESOURCE path
207<br>
208Specifies an alternate resource path that is used for the HTTP POST request.
a2326b5b 209The default is the resource from the URI provided to the <i>ipptool</i> program.
c277f98c
MS
210<p style="margin-left: 5.0em; text-indent: -5.0em">SKIP-IF-DEFINED variable-name
211<br>
212<p style="margin-left: 5.0em; text-indent: -5.0em">SKIP-IF-NOT-DEFINED variable-name
213<br>
214Specifies that the current test should be skipped when the variable is or is not
a2326b5b 215defined.
c277f98c
MS
216<p style="margin-left: 5.0em; text-indent: -5.0em">SKIP-PREVIOUS-ERROR yes
217<br>
218<p style="margin-left: 5.0em; text-indent: -5.0em">SKIP-PREVIOUS-ERROR no
219<br>
220Specifies whether <i>ipptool</i> will skip the current test if the previous test
a2326b5b 221resulted in an error/failure.
c277f98c
MS
222<p style="margin-left: 5.0em; text-indent: -5.0em">STATUS status-code [ predicate ]
223<br>
224Specifies an expected response status-code value. Additional requirements can be
a2326b5b
MS
225added as predicates - see the "STATUS PREDICATES" section for more information
226on predicates.
c277f98c
MS
227<p style="margin-left: 5.0em; text-indent: -5.0em">TEST-ID "identifier"
228<br>
229Specifies an identifier string for the current test.
230<p style="margin-left: 5.0em; text-indent: -5.0em">TRANSFER auto
231<br>
232Specifies that this test will use "Transfer-Encoding: chunked" if it has an
a2326b5b 233attached file or "Content-Length:" otherwise.
c277f98c
MS
234<p style="margin-left: 5.0em; text-indent: -5.0em">TRANSFER chunked
235<br>
236Specifies that this test will use the HTTP/1.1 "Transfer-Encoding: chunked"
a2326b5b 237header.
c277f98c
MS
238<p style="margin-left: 5.0em; text-indent: -5.0em">TRANSFER length
239<br>
240Specifies that this test will use the HTTP/1.0 "Content-Length:" header.
241<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 1.0
242<br>
243<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 1.1
244<br>
245<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 2.0
246<br>
247<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 2.1
248<br>
249<p style="margin-left: 5.0em; text-indent: -5.0em">VERSION 2.2
250<br>
251Specifies the IPP version number to use for this test.
a2326b5b 252
a2326b5b
MS
253<h2 class="title"><a name="EXPECT_PREDICATES">Expect Predicates</a></h2>
254The following predicates are understood following the EXPECT test directive:
c277f98c
MS
255<p style="margin-left: 5.0em; text-indent: -5.0em">COUNT number
256<br>
257Requires the EXPECT attribute to have the specified number of values.
258<p style="margin-left: 5.0em; text-indent: -5.0em">DEFINE-MATCH variable-name
259<br>
260Defines the variable to "1" when the EXPECT condition matches. A side-effect of
a2326b5b 261this predicate is that this EXPECT will never fail a test.
c277f98c
MS
262<p style="margin-left: 5.0em; text-indent: -5.0em">DEFINE-NO-MATCH variable-name
263<br>
264Defines the variable to "1" when the EXPECT condition does not match. A side-
a2326b5b 265effect of this predicate is that this EXPECT will never fail a test.
c277f98c
MS
266<p style="margin-left: 5.0em; text-indent: -5.0em">DEFINE-VALUE variable-name
267<br>
268Defines the variable to the value of the attribute when the EXPECT condition
a2326b5b 269matches. A side-effect of this predicate is that this EXPECT will never fail a test.
c277f98c
MS
270<p style="margin-left: 5.0em; text-indent: -5.0em">IF-DEFINED variable-name
271<br>
272Makes the EXPECT conditions apply only if the specified variable is defined.
273<p style="margin-left: 5.0em; text-indent: -5.0em">IF-NOT-DEFINED variable-name
274<br>
275Makes the EXPECT conditions apply only if the specified variable is not
a2326b5b 276defined.
c277f98c
MS
277<p style="margin-left: 5.0em; text-indent: -5.0em">IN-GROUP tag
278<br>
279Requires the EXPECT attribute to be in the specified group tag.
280<p style="margin-left: 5.0em; text-indent: -5.0em">OF-TYPE tag[,tag,...]
281<br>
282Requires the EXPECT attribute to use the specified value tag(s).
283<p style="margin-left: 5.0em; text-indent: -5.0em">REPEAT-LIMIT number
284<br>
285<br>
286Specifies the maximum number of times to repeat. The default value is 1000.
287<p style="margin-left: 5.0em; text-indent: -5.0em">REPEAT-MATCH
288<br>
289<p style="margin-left: 5.0em; text-indent: -5.0em">REPEAT-NO-MATCH
290<br>
291Specifies that the current test should be repeated when the EXPECT condition
a2326b5b 292matches or does not match.
c277f98c
MS
293<p style="margin-left: 5.0em; text-indent: -5.0em">SAME-COUNT-AS attribute-name
294<br>
295Requires the EXPECT attribute to have the same number of values as the specified
a2326b5b 296parallel attribute.
c277f98c
MS
297<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-HOSTNAMES "literal string"
298<br>
299<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-HOSTNAMES "/regular expression/"
300<br>
301Requires that all URI values contain a matching hostname.
302<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-RESOURCES "literal string"
303<br>
304<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-RESOURCES "/regular expression/"
305<br>
306Requires that all URI values contain a matching resource (including leading /).
307<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-SCHEMES "literal string"
308<br>
309<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-SCHEMES "/regular expression/"
310<br>
311Requires that all URI values contain a matching scheme.
312<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES "literal string"
313<br>
314Requires that all values of the EXPECT attribute match the literal string. Comparisons are case-sensitive.
315<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES &lt;number
316<br>
317<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES =number
318<br>
319<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES >number
320<br>
321<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES number[,number,...]
322<br>
323Requires that all values of the EXPECT attribute match the number(s) or numeric comparison. When comparing rangeOfInteger values, the "&lt;" and ">" operators only check the upper bound of the range.
324<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES "false"
325<br>
326<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES "true"
327<br>
328Requires that all values of the EXPECT attribute match the boolean value given.
329<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-ALL-VALUES "/regular expression/"
330<br>
331Requires that all values of the EXPECT attribute match the regular expression, which must conform to the POSIX regular expression syntax. Comparisons are case-sensitive.
332<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-HOSTNAME "literal string"
333<br>
334<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-HOSTNAME "/regular expression/"
335<br>
336Requires that at least one URI value contains a matching hostname.
337<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-RESOURCE "literal string"
338<br>
339<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-RESOURCE "/regular expression/"
340<br>
341Requires that at least one URI value contains a matching resource (including leading /).
342<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-SCHEME "literal string"
343<br>
344<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-SCHEME "/regular expression/"
345<br>
346Requires that at least one URI value contains a matching scheme.
347<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE "literal string"
348<br>
349Requires that at least one value of the EXPECT attribute matches the literal string. Comparisons are case-sensitive.
350<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE &lt;number
351<br>
352<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE =number
353<br>
354<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE >number
355<br>
356<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE number[,number,...]
357<br>
358Requires that at least one value of the EXPECT attribute matches the number(s) or numeric comparison. When comparing rangeOfInteger values, the "&lt;" and ">" operators only check the upper bound of the range.
359<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE "false"
360<br>
361<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE "true"
362<br>
363Requires that at least one value of the EXPECT attribute matches the boolean value given.
364<p style="margin-left: 5.0em; text-indent: -5.0em">WITH-VALUE "/regular expression/"
365<br>
366Requires that at least one value of the EXPECT attribute matches the regular expression, which must conform to the POSIX regular expression syntax. Comparisons are case-sensitive.
a2326b5b 367
a2326b5b
MS
368<h2 class="title"><a name="STATUS_PREDICATES">Status Predicates</a></h2>
369The following predicates are understood following the STATUS test directive:
c277f98c
MS
370<p style="margin-left: 5.0em; text-indent: -5.0em">DEFINE-MATCH variable-name
371<br>
372Defines the variable to "1" when the STATUS matches. A side-effect of this predicate is that this STATUS will never fail a test.
373<p style="margin-left: 5.0em; text-indent: -5.0em">DEFINE-NO-MATCH variable-name
374<br>
375Defines the variable to "1" when the STATUS does not match. A side-effect of this predicate is that this STATUS will never fail a test.
376<p style="margin-left: 5.0em; text-indent: -5.0em">IF-DEFINED variable-name
377<br>
378Makes the STATUS apply only if the specified variable is defined.
379<p style="margin-left: 5.0em; text-indent: -5.0em">IF-NOT-DEFINED variable-name
380<br>
381Makes the STATUS apply only if the specified variable is not defined.
382<p style="margin-left: 5.0em; text-indent: -5.0em">REPEAT-LIMIT number
383<br>
384<br>
385Specifies the maximum number of times to repeat. The default value is 1000.
386<p style="margin-left: 5.0em; text-indent: -5.0em">REPEAT-MATCH
387<br>
388<p style="margin-left: 5.0em; text-indent: -5.0em">REPEAT-NO-MATCH
389<br>
390Specifies that the current test should be repeated when the response status-code
a2326b5b
MS
391matches or does not match the value specified by the STATUS directive.
392
a2326b5b
MS
393<h2 class="title"><a name="OPERATION_CODES">Operation Codes</a></h2>
394Operation codes correspond to the hexadecimal numbers (0xHHHH) and names from
395RFC 2911 and other IPP extension specifications. Here is a complete list:
396<pre>
397 Activate-Printer
398 CUPS-Accept-Jobs
399 CUPS-Add-Modify-Class
400 CUPS-Add-Modify-Printer
401 CUPS-Authenticate-Job
402 CUPS-Delete-Class
403 CUPS-Delete-Printer
404 CUPS-Get-Classes
405 CUPS-Get-Default
406 CUPS-Get-Devices
407 CUPS-Get-Document
408 CUPS-Get-PPD
409 CUPS-Get-PPDs
410 CUPS-Get-Printers
411 CUPS-Move-Job
412 CUPS-Reject-Jobs
413 CUPS-Set-Default
414 Cancel-Current-Job
415 Cancel-Job
416 Cancel-Jobs
417 Cancel-My-Jobs
418 Cancel-Subscription
419 Close-Job
420 Create-Job
42404685
MS
421 Create-Job-Subscriptions
422 Create-Printer-Subscriptions
a2326b5b
MS
423 Deactivate-Printer
424 Disable-Printer
425 Enable-Printer
426 Get-Job-Attributes
427 Get-Jobs
428 Get-Notifications
429 Get-Printer-Attributes
430 Get-Printer-Support-Files
431 Get-Printer-Supported-Values
432 Get-Subscription-Attributes
433 Get-Subscriptions
434 Hold-Job
435 Hold-New-Jobs
82cc1f9a 436 Identify-Printer
a2326b5b
MS
437 Pause-Printer
438 Pause-Printer-After-Current-Job
439 Print-Job
440 Print-URI
441 Promote-Job
442 Purge-Jobs
443 Release-Held-New-Jobs
444 Release-Job
445 Renew-Subscription
446 Reprocess-Job
447 Restart-Job
448 Restart-Printer
449 Resubmit-Job
450 Resume-Job
451 Resume-Printer
452 Schedule-Job-After
453 Send-Document
9475ec92 454 Send-Hardcopy-Document
a2326b5b
MS
455 Send-Notifications
456 Send-URI
457 Set-Job-Attributes
458 Set-Printer-Attributes
459 Shutdown-Printer
460 Startup-Printer
461 Suspend-Current-Job
82cc1f9a 462 Validate-Document
a2326b5b
MS
463 Validate-Job
464</pre>
465
466<h2 class="title"><a name="STATUS_CODES">Status Codes</a></h2>
467Status codes correspond to the hexadecimal numbers (0xHHHH) and names from RFC
4682911 and other IPP extension specifications. Here is a complete list:
469<pre>
470 client-error-attributes-not-settable
471 client-error-attributes-or-values-not-supported
472 client-error-bad-request
473 client-error-charset-not-supported
474 client-error-compression-error
475 client-error-compression-not-supported
476 client-error-conflicting-attributes
477 client-error-document-access-error
478 client-error-document-format-error
479 client-error-document-format-not-supported
82cc1f9a
MS
480 client-error-document-password-error
481 client-error-document-permission-error
482 client-error-document-security-error
483 client-error-document-unprintable-error
a2326b5b
MS
484 client-error-forbidden
485 client-error-gone
486 client-error-ignored-all-notifications
487 client-error-ignored-all-subscriptions
488 client-error-not-authenticated
489 client-error-not-authorized
490 client-error-not-found
491 client-error-not-possible
492 client-error-print-support-file-not-found
493 client-error-request-entity-too-large
494 client-error-request-value-too-long
495 client-error-timeout
496 client-error-too-many-subscriptions
497 client-error-uri-scheme-not-supported
498 cups-see-other
499 redirection-other-site
500 server-error-busy
501 server-error-device-error
502 server-error-internal-error
503 server-error-job-canceled
504 server-error-multiple-document-jobs-not-supported
505 server-error-not-accepting-jobs
506 server-error-operation-not-supported
507 server-error-printer-is-deactivated
508 server-error-service-unavailable
509 server-error-temporary-error
510 server-error-version-not-supported
511 successful-ok
512 successful-ok-but-cancel-subscription
513 successful-ok-conflicting-attributes
514 successful-ok-events-complete
515 successful-ok-ignored-notifications
516 successful-ok-ignored-or-substituted-attributes
517 successful-ok-ignored-subscriptions
518 successful-ok-too-many-events
519</pre>
520
521<h2 class="title"><a name="TAGS">Tags</a></h2>
522Value and group tags correspond to the names from RFC 2911 and other IPP
523extension specifications. Here are the group tags:
524<pre>
525 event-notification-attributes-tag
526 job-attributes-tag
527 operation-attributes-tag
528 printer-attributes-tag
529 subscription-attributes-tag
530 unsupported-attributes-tag
531</pre>
532<p>Here are the value tags:
533<pre>
534 admin-define
535 boolean
536 charset
537 collection
538 dateTime
539 default
540 delete-attribute
541 enum
542 integer
543 keyword
544 mimeMediaType
545 nameWithLanguage
546 nameWithoutLanguage
547 naturalLanguage
548 no-value
549 not-settable
550 octetString
551 rangeOfInteger
552 resolution
553 textWithLanguage
554 textWithoutLanguage
555 unknown
556 unsupported
557 uri
558 uriScheme
559</pre>
560
561<h2 class="title"><a name="VARIABLES">Variables</a></h2>
562The <i>ipptool</i> program maintains a list of variables that can be used in any
563literal string or attribute value by specifying "$variable-name". Aside from
564variables defined using the "-d" option or "DEFINE" directive, the following
565pre-defined variables are available:
c277f98c
MS
566<p style="margin-left: 5.0em; text-indent: -5.0em">$$
567<br>
568Inserts a single "$" character.
569<p style="margin-left: 5.0em; text-indent: -5.0em">$ENV[name]
570<br>
571Inserts the value of the named environment variable, or an empty string if the
a2326b5b 572environment variable is not defined.
c277f98c
MS
573<p style="margin-left: 5.0em; text-indent: -5.0em">$filename
574<br>
575Inserts the filename provided to <i>ipptool</i> with the "-f" option.
576<p style="margin-left: 5.0em; text-indent: -5.0em">$hostname
577<br>
578Inserts the hostname from the URI provided to <i>ipptool</i>.
579<p style="margin-left: 5.0em; text-indent: -5.0em">$job-id
580<br>
581Inserts the last job-id value returned in a test response or 0 if no job-id has
a2326b5b 582been seen.
c277f98c
MS
583<p style="margin-left: 5.0em; text-indent: -5.0em">$job-uri
584<br>
585Inserts the last job-uri value returned in a test response or an empty string if
a2326b5b 586no job-uri has been seen.
c277f98c
MS
587<p style="margin-left: 5.0em; text-indent: -5.0em">$scheme
588<br>
589Inserts the scheme from the URI provided to <i>ipptool</i>.
590<p style="margin-left: 5.0em; text-indent: -5.0em">$notify-subscription-id
591<br>
592Inserts the last notify-subscription-id value returned in a test response or 0 if
a2326b5b 593no notify-subscription-id has been seen.
c277f98c
MS
594<p style="margin-left: 5.0em; text-indent: -5.0em">$port
595<br>
596Inserts the port number from the URI provided to <i>ipptool</i>.
597<p style="margin-left: 5.0em; text-indent: -5.0em">$resource
598<br>
599Inserts the resource path from the URI provided to <i>ipptool</i>.
600<p style="margin-left: 5.0em; text-indent: -5.0em">$uri
601<br>
602Inserts the URI provided to <i>ipptool</i>.
603<p style="margin-left: 5.0em; text-indent: -5.0em">$user
604<br>
605Inserts the current user's login name.
606<p style="margin-left: 5.0em; text-indent: -5.0em">$username
607<br>
608Inserts the username from the URI provided to <i>ipptool</i>, if any.
a2326b5b 609
a2326b5b 610<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
c277f98c 611<i>ipptool(1)</i>, RFC 2911,
a2326b5b 612<br>
c277f98c 613<a href="http://localhost:631/help">http://localhost:631/help</a>
8e67b75b 614<br>
c277f98c 615<a href="http://www.iana.org/assignments/ipp-registrations">http://www.iana.org/assignments/ipp-registrations</a>
8e67b75b 616<br>
c277f98c 617<a href="http://www.pwg.org/ipp">http://www.pwg.org/ipp</a>
a2326b5b 618<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
8e67b75b 619Copyright 2007-2014 by Apple Inc.
a2326b5b
MS
620
621</body>
622</html>