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