1ipptoolfile(5) OpenPrinting ipptoolfile(5)
2
3
4
6 ipptoolfile - ipptool file format
7
9 The ipptool(1) program accepts free-form plain text files that describe
10 one or more IPP requests. Comments start with the "#" character and
11 continue to the end of the line. Each request is enclosed by curly
12 braces, for example:
13
14 # This is a comment
15 {
16 # The name of the test
17 NAME "Print PDF File"
18
19 # The request to send
20 OPERATION Print-Job
21
22 GROUP operation-attributes-tag
23 ATTR charset attributes-charset utf-8
24 ATTR language attributes-natural-language en
25 ATTR uri printer-uri $uri
26 ATTR name requesting-user-name $user
27 ATTR mimeMediaType document-format application/pdf
28
29 GROUP job-attributes-tag
30 ATTR collection media-col {
31 # US Letter plain paper from the "main" tray
32 MEMBER collection media-size {
33 MEMBER integer x-dimension 21590
34 MEMBER integer y-dimension 27940
35 }
36 MEMBER integer media-top-margin 423
37 MEMBER integer media-bottom-margin 423
38 MEMBER integer media-left-margin 423
39 MEMBER integer media-right-margin 423
40 MEMBER keyword media-source "main"
41 MEMBER keyword media-type "stationery"
42 }
43
44 FILE testfile.pdf
45
46 # The response to expect
47 STATUS successful-ok
48 EXPECT job-id OF-TYPE integer WITH-VALUE >0
49 EXPECT job-uri OF-TYPE uri
50 }
51 {
52 # The name of the test
53 NAME "Wait for Job to Complete"
54
55 # The request to send
56 OPERATION Get-Job-Attributes
57
58 GROUP operation-attributes-tag
59 ATTR charset attributes-charset utf-8
60 ATTR language attributes-natural-language en
61 ATTR uri printer-uri $uri
62 ATTR integer job-id $job-id
63 ATTR name requesting-user-name $user
64
65 # The response to expect
66 STATUS successful-ok
67 EXPECT job-id OF-TYPE integer WITH-VALUE $job-id
68 EXPECT job-uri OF-TYPE uri
69 EXPECT job-state OF-TYPE enum WITH-VALUE >5 REPEAT-NO-MATCH
70 EXPECT job-originating-user-name OF-TYPE name WITH-VALUE "$user"
71
72 # Show the job state until completed...
73 DISPLAY job-state
74 DISPLAY job-state-reasons
75 }
76
77 TOP-LEVEL DIRECTIVES
78 The following directives can be used outside of a test:
79
80 { test }
81 Defines a test.
82
83 DEFINE variable-name value
84 Defines the named variable to the given value. This is equivalent
85 to specifying -d variable-name=value on the ipptool(8) command-
86 line.
87
88 DEFINE-DEFAULT variable-name value
89 Defines the named variable to the given value if it does not al‐
90 ready have a value.
91
92 FILE-ID "identifier"
93 Specifies an identifier string for the current file.
94
95 IGNORE-ERRORS yes
96
97 IGNORE-ERRORS no
98 Specifies whether, by default, ipptool(8) will ignore errors and
99 continue with subsequent tests.
100
101 INCLUDE "filename"
102
103 INCLUDE <filename>
104 Includes another test file. The first form includes a file rela‐
105 tive to the current test file, while the second form includes a
106 file from the ipptool(8) include directory.
107
108 INCLUDE-IF-DEFINED name "filename"
109
110 INCLUDE-IF-DEFINED name <filename>
111 Includes another test file if the named variable is defined. The
112 first form includes a file relative to the current test file,
113 while the second form includes a file from the ipptool(8) include
114 directory.
115
116 INCLUDE-IF-NOT-DEFINED name "filename"
117
118 INCLUDE-IF-NOT-DEFINED name <filename>
119 Includes another test file if the named variable is not defined.
120 The first form includes a file relative to the current test file,
121 while the second form includes a file from the ipptool(8) include
122 directory.
123
124 SKIP-IF-DEFINED variable-name
125
126 SKIP-IF-NOT-DEFINED variable-name
127 Specifies that the remainder of the test file should be skipped
128 when the variable is or is not defined.
129
130 STOP-AFTER-INCLUDE-ERROR no
131
132 STOP-AFTER-INCLUDE-ERROR yes
133 Specifies whether tests will be stopped after an error in an in‐
134 cluded file.
135
136 TRANSFER auto
137 Specifies that tests will, by default, use "Transfer-Encoding:
138 chunked" for requests with attached files and "Content-Length:"
139 for requests without attached files.
140
141 TRANSFER chunked
142 Specifies that tests will, by default, use the HTTP/1.1 "Transfer-
143 Encoding: chunked" header. This is the default and is equivalent
144 to specifying -c on the ipptool(8) command-line. Support for chun‐
145 ked requests is required for conformance with all versions of IPP.
146
147 TRANSFER length
148 Specifies that tests will, by default, use the HTTP/1.0 "Content-
149 Length:" header. This is equivalent to specifying -l on the ipp‐
150 tool(8) command-line. Support for content length requests is re‐
151 quired for conformance with all versions of IPP.
152
153 VERSION 1.0
154
155 VERSION 1.1
156
157 VERSION 2.0
158
159 VERSION 2.1
160
161 VERSION 2.2
162 Specifies the default IPP version number to use for the tests that
163 follow.
164
165 TEST DIRECTIVES
166 The following directives are understood within a test:
167
168 ATTR out-of-band-tag attribute-name
169
170 ATTR tag attribute-name value(s)
171 Adds an attribute to the test request. Out-of-band tags (admin-
172 define, delete-attribute, no-value, not-settable, unknown, unsup‐
173 ported) have no value. Values for other tags are delimited by the
174 comma (",") character - escape commas using the "\" character.
175 Common attributes and values are listed in the IANA IPP registry -
176 see references below.
177
178 ATTR collection attribute-name { MEMBER tag member-name value(s) ... }
179 [ ... ,{ ... } ]
180 Adds a collection attribute to the test request. Member at‐
181 tributes follow the same syntax as regular attributes and can
182 themselves be nested collections. Multiple collection values can
183 be supplied as needed, separated by commas.
184
185 COMPRESSION deflate
186
187 COMPRESSION gzip
188
189 COMPRESSION none
190 Uses the specified compression on the document data following the
191 attributes in a Print-Job or Send-Document request.
192
193 DELAY seconds[,repeat-seconds]
194 Specifies a delay in seconds before this test will be run. If two
195 values are specified, the second value is used as the delay be‐
196 tween repeated tests. A default repeat interval of 5 seconds is
197 used if this directive is not provided.
198
199 DISPLAY attribute-name
200 Specifies that value of the named attribute should be output as
201 part of the test report.
202
203 EXPECT attribute-name [ predicate(s) ]
204
205 EXPECT ?attribute-name predicate(s)
206
207 EXPECT !attribute-name
208 Specifies that the response must/may/must not include the named
209 attribute. Additional requirements can be added as predicates -
210 see the "EXPECT PREDICATES" section for more information on predi‐
211 cates. Attribute names can specify member attributes by separating
212 the attribute and member names with the forward slash, for example
213 "media-col/media-size/x-dimension".
214
215 EXPECT-ALL attribute-name [ predicate(s) ]
216
217 EXPECT-ALL ?attribute-name predicate(s)
218 Specifies that the response must/may include the named attribute
219 and that all occurrences of that attribute must match the given
220 predicates.
221
222 FILE filename
223 Specifies a file to include at the end of the request. This is
224 typically used when sending a test print file.
225
226 GROUP tag
227 Specifies the group tag for subsequent attributes in the request.
228
229 IGNORE-ERRORS yes
230
231 IGNORE-ERRORS no
232 Specifies whether ipptool(8) will ignore errors and continue with
233 subsequent tests.
234
235 MONITOR-PRINTER-STATE [ printer-uri ] { EXPECT attribute-name [ predi‐
236 cate(s) ] }
237 Specifies printer state monitoring tests to run in parallel with
238 the test operation. The monitoring tests will run until all of
239 the EXPECT conditions are satisfied or the primary test operation
240 has completed, whichever occurs first.
241
242 NAME "literal string"
243 Specifies the human-readable name of the test.
244
245 OPERATION operation-code
246 Specifies the operation to be performed.
247
248 PASS-IF-DEFINED variable-name
249
250 PASS-IF-NOT-DEFINED variable-name
251 Specifies that the current test should be passed automatically
252 when the variable is or is not defined.
253
254 PAUSE "message"
255 Displays the provided message and waits for the user to press a
256 key to continue.
257
258 REQUEST-ID number
259
260 REQUEST-ID random
261 Specifies the request-id value to use in the request, either an
262 integer or the word "random" to use a randomly generated value
263 (the default).
264
265 RESOURCE path
266 Specifies an alternate resource path that is used for the HTTP
267 POST request. The default is the resource from the URI provided to
268 the ipptool(8) program.
269
270 SKIP-IF-DEFINED variable-name
271
272 SKIP-IF-NOT-DEFINED variable-name
273 Specifies that the current test should be skipped when the vari‐
274 able is or is not defined.
275
276 SKIP-PREVIOUS-ERROR yes
277
278 SKIP-PREVIOUS-ERROR no
279 Specifies whether ipptool(8) will skip the current test if the
280 previous test resulted in an error/failure.
281
282 STATUS status-code [ predicate ]
283 Specifies an expected response status-code value. Additional re‐
284 quirements can be added as predicates - see the "STATUS PREDI‐
285 CATES" section for more information on predicates.
286
287 TEST-ID "identifier"
288 Specifies an identifier string for the current test.
289
290 TRANSFER auto
291 Specifies that this test will use "Transfer-Encoding: chunked" if
292 it has an attached file or "Content-Length:" otherwise.
293
294 TRANSFER chunked
295 Specifies that this test will use the HTTP/1.1 "Transfer-Encoding:
296 chunked" header.
297
298 TRANSFER length
299 Specifies that this test will use the HTTP/1.0 "Content-Length:"
300 header.
301
302 VERSION 1.0
303
304 VERSION 1.1
305
306 VERSION 2.0
307
308 VERSION 2.1
309
310 VERSION 2.2
311 Specifies the IPP version number to use for this test.
312
313 EXPECT PREDICATES
314 The following predicates are understood following the EXPECT test di‐
315 rective:
316
317 COUNT number
318 Requires the EXPECT attribute to have the specified number of val‐
319 ues.
320
321 DEFINE-MATCH variable-name
322 Defines the variable to "1" when the EXPECT condition matches. A
323 side-effect of this predicate is that this EXPECT will never fail
324 a test.
325
326 DEFINE-NO-MATCH variable-name
327 Defines the variable to "1" when the EXPECT condition does not
328 match. A side-effect of this predicate is that this EXPECT will
329 never fail a test.
330
331 DEFINE-VALUE variable-name
332 Defines the variable to the value of the attribute when the EXPECT
333 condition matches. A side-effect of this predicate is that this
334 EXPECT will never fail a test.
335
336 DISPLAY-MATCH "message"
337 Displays the specified message when the EXPECT condition matches.
338
339 IF-DEFINED variable-name
340 Makes the EXPECT conditions apply only if the specified variable
341 is defined.
342
343 IF-NOT-DEFINED variable-name
344 Makes the EXPECT conditions apply only if the specified variable
345 is not defined.
346
347 IN-GROUP tag
348 Requires the EXPECT attribute to be in the specified group tag.
349
350 OF-TYPE tag[(limits)|tag|...]
351 Requires the EXPECT attribute to use one of the specified value
352 tag(s). Most value tags also support the specification of limits
353 in parenthesis, for example "name(42)" would allow nameWith/With‐
354 outLanguage strings up to 42 octets in length, "name(4:MAX)" would
355 allow nameWith/WithoutLanguage strings between 4 and 255 octets in
356 length, and "integer(-273:MAX)" would allow integers between -273
357 and 2147483647.
358
359 REPEAT-LIMIT number
360 Specifies the maximum number of times to repeat if the REPEAT-
361 MATCH or REPEAT-NO-MATCH predicate is specified. The default value
362 is 1000.
363
364 REPEAT-MATCH
365
366 REPEAT-NO-MATCH
367 Specifies that the current test should be repeated when the EXPECT
368 condition matches or does not match.
369
370 SAME-COUNT-AS attribute-name
371 Requires the EXPECT attribute to have the same number of values as
372 the specified parallel attribute.
373
374 WITH-ALL-HOSTNAMES "literal string"
375
376 WITH-ALL-HOSTNAMES "/regular expression/"
377 Requires that all URI values contain a matching hostname.
378
379 WITH-ALL-RESOURCES "literal string"
380
381 WITH-ALL-RESOURCES "/regular expression/"
382 Requires that all URI values contain a matching resource (includ‐
383 ing leading /).
384
385 WITH-ALL-SCHEMES "literal string"
386
387 WITH-ALL-SCHEMES "/regular expression/"
388 Requires that all URI values contain a matching scheme.
389
390 WITH-ALL-VALUES "literal string"
391 Requires that all values of the EXPECT attribute match the literal
392 string. Comparisons are case-sensitive.
393
394 WITH-ALL-VALUES <number
395
396 WITH-ALL-VALUES =number
397
398 WITH-ALL-VALUES >number
399
400 WITH-ALL-VALUES number[,...,number]
401 Requires that all values of the EXPECT attribute match the num‐
402 ber(s) or numeric comparison. When comparing rangeOfInteger val‐
403 ues, the "<" and ">" operators only check the upper bound of the
404 range.
405
406 WITH-ALL-VALUES "false"
407
408 WITH-ALL-VALUES "true"
409 Requires that all values of the EXPECT attribute match the boolean
410 value given.
411
412 WITH-ALL-VALUES "/regular expression/"
413 Requires that all values of the EXPECT attribute match the regular
414 expression, which must conform to the POSIX regular expression
415 syntax. Comparisons are case-sensitive.
416
417 WITH-DISTINCT-VALUES
418 Requires that all values of the EXPECT attribute are unique. Com‐
419 parisons are case-sensitive. Only charset, collection, enum, in‐
420 teger, keyword, mimeMediaType, naturalLanguage, rangeOfInteger,
421 resolution, uriScheme attributes support this predicate.
422
423 WITH-HOSTNAME "literal string"
424
425 WITH-HOSTNAME "/regular expression/"
426 Requires that at least one URI value contains a matching hostname.
427
428 WITH-RESOURCE "literal string"
429
430 WITH-RESOURCE "/regular expression/"
431 Requires that at least one URI value contains a matching resource
432 (including leading /).
433
434 WITH-SCHEME "literal string"
435
436 WITH-SCHEME "/regular expression/"
437 Requires that at least one URI value contains a matching scheme.
438
439 WITH-VALUE "literal string"
440 Requires that at least one value of the EXPECT attribute matches
441 the literal string. Comparisons are case-sensitive.
442
443 WITH-VALUE <number
444
445 WITH-VALUE =number
446
447 WITH-VALUE >number
448
449 WITH-VALUE number[,...,number]
450 Requires that at least one value of the EXPECT attribute matches
451 the number(s) or numeric comparison. When comparing rangeOfInteger
452 values, the "<" and ">" operators only check the upper bound of
453 the range.
454
455 WITH-VALUE "false"
456
457 WITH-VALUE "true"
458 Requires that at least one value of the EXPECT attribute matches
459 the boolean value given.
460
461 WITH-VALUE "/regular expression/"
462 Requires that at least one value of the EXPECT attribute matches
463 the regular expression, which must conform to the POSIX regular
464 expression syntax. Comparisons are case-sensitive.
465
466 WITH-VALUE-FROM attribute-name
467 Requires that the value(s) of the EXPECT attribute matches the
468 value(s) in the specified attribute. For example, "EXPECT
469 job-sheets WITH-VALUE-FROM job-sheets-supported" requires that the
470 "job-sheets" value is listed as a value of the "job-sheets-sup‐
471 ported" attribute.
472
473 STATUS PREDICATES
474 The following predicates are understood following the STATUS test di‐
475 rective:
476
477 DEFINE-MATCH variable-name
478 Defines the variable to "1" when the STATUS matches. A side-effect
479 of this predicate is that this STATUS will never fail a test.
480
481 DEFINE-NO-MATCH variable-name
482 Defines the variable to "1" when the STATUS does not match. A
483 side-effect of this predicate is that this STATUS will never fail
484 a test.
485
486 IF-DEFINED variable-name
487 Makes the STATUS apply only if the specified variable is defined.
488
489 IF-NOT-DEFINED variable-name
490 Makes the STATUS apply only if the specified variable is not de‐
491 fined.
492
493 REPEAT-LIMIT number
494 Specifies the maximum number of times to repeat. The default value
495 is 1000.
496
497 REPEAT-MATCH
498
499 REPEAT-NO-MATCH
500 Specifies that the current test should be repeated when the re‐
501 sponse status-code matches or does not match the value specified
502 by the STATUS directive.
503
504 OPERATION CODES
505 Operation codes correspond to the hexadecimal numbers (0xHHHH) and
506 names from RFC 8011 and other IPP extension specifications. Here is a
507 complete list of names supported by ipptool(8):
508
509 Acknowledge-Document
510 Acknowledge-Identify-Printer
511 Acknowledge-Job
512 Activate-Printer
513 Add-Document-Images
514 Allocate-Printer-Resources
515 Cancel-Current-Job
516 Cancel-Job
517 Cancel-Jobs
518 Cancel-My-Jobs
519 Cancel-Resource
520 Cancel-Subscription
521 Close-Job
522 Create-Job
523 Create-Job-Subscriptions
524 Create-Printer
525 Create-Printer-Subscriptions
526 Create-Resource
527 Create-Resource-Subscriptions
528 Create-System-Subscriptions
529 CUPS-Accept-Jobs
530 CUPS-Accept-Jobs
531 CUPS-Add-Modify-Class
532 CUPS-Add-Modify-Printer
533 CUPS-Authenticate-Job
534 CUPS-Create-Local-Printer
535 CUPS-Delete-Class
536 CUPS-Delete-Printer
537 CUPS-Get-Classes
538 CUPS-Get-Default
539 CUPS-Get-Devices
540 CUPS-Get-Document
541 CUPS-Get-PPD
542 CUPS-Get-PPDs
543 CUPS-Get-Printers
544 CUPS-Move-Job
545 CUPS-Reject-Jobs
546 CUPS-Set-Default
547 Deactivate-Printer
548 Deallocate-Printer-Resources
549 Delete-Printer
550 Deregister-Output-Device
551 Disable-All-Printers
552 Disable-Printer
553 Enable-All-Printers
554 Enable-Printer
555 Fetch-Document
556 Fetch-Job
557 Get-Job-Attributes
558 Get-Jobs
559 Get-Next-Document-Data
560 Get-Notifications
561 Get-Output-Device-Attributes
562 Get-Printer-Attributes
563 Get-Printer-Support-Files
564 Get-Printer-Supported-Values
565 Get-Printers
566 Get-Subscription-Attributes
567 Get-Subscriptions
568 Get-System-Attributes
569 Get-System-Supported-Values
570 Hold-Job
571 Hold-New-Jobs
572 Identify-Printer
573 Install-Resource
574 Pause-All-Printers
575 Pause-All-Printers-After-Current-Job
576 Pause-Printer
577 Pause-Printer-After-Current-Job
578 Print-Job
579 Print-URI
580 Promote-Job
581 Purge-Jobs
582 Register-Output-Device
583 Release-Held-New-Jobs
584 Release-Job
585 Renew-Subscription
586 Reprocess-Job
587 Restart-Job
588 Restart-Printer
589 Restart-System
590 Resubmit-Job
591 Resume-All-Printers
592 Resume-Job
593 Resume-Printer
594 Schedule-Job-After
595 Send-Document
596 Send-Hardcopy-Document
597 Send-Notifications
598 Send-Resource-Data
599 Send-URI
600 Set-Job-Attributes
601 Set-Printer-Attributes
602 Set-Resource-Attributes
603 Set-System-Attributes
604 Shutdown-All-Printers
605 Shutdown-One-Printer
606 Shutdown-Printer
607 Startup-All-Printers
608 Startup-One-Printer
609 Startup-Printer
610 Suspend-Current-Job
611 Update-Active-Jobs
612 Update-Document-Status
613 Update-Job-Status
614 Update-Output-Device-Attributes
615 Validate-Document
616 Validate-Job
617
618 STATUS CODES
619 Status codes correspond to the hexadecimal numbers (0xHHHH) and names
620 from RFC 8011 and other IPP extension specifications. Here is a com‐
621 plete list of the names supported by ipptool(8):
622
623 client-error-account-authorization-failed
624 client-error-account-closed
625 client-error-account-info-needed
626 client-error-account-limit-reached
627 client-error-attributes-not-settable
628 client-error-attributes-or-values-not-supported
629 client-error-bad-request
630 client-error-charset-not-supported
631 client-error-compression-error
632 client-error-compression-not-supported
633 client-error-conflicting-attributes
634 client-error-document-access-error
635 client-error-document-format-error
636 client-error-document-format-not-supported
637 client-error-document-password-error
638 client-error-document-permission-error
639 client-error-document-security-error
640 client-error-document-unprintable-error
641 client-error-forbidden
642 client-error-gone
643 client-error-ignored-all-notifications
644 client-error-ignored-all-subscriptions
645 client-error-not-authenticated
646 client-error-not-authorized
647 client-error-not-fetchable
648 client-error-not-found
649 client-error-not-possible
650 client-error-print-support-file-not-found
651 client-error-request-entity-too-large
652 client-error-request-value-too-long
653 client-error-timeout
654 client-error-too-many-subscriptions
655 client-error-uri-scheme-not-supported
656 cups-error-account-authorization-failed
657 cups-error-account-closed
658 cups-error-account-info-needed
659 cups-error-account-limit-reached
660 cups-see-other
661 redirection-other-site
662 server-error-busy
663 server-error-device-error
664 server-error-internal-error
665 server-error-job-canceled
666 server-error-multiple-document-jobs-not-supported
667 server-error-not-accepting-jobs
668 server-error-operation-not-supported
669 server-error-printer-is-deactivated
670 server-error-service-unavailable
671 server-error-temporary-error
672 server-error-version-not-supported
673 successful-ok
674 successful-ok-but-cancel-subscription
675 successful-ok-conflicting-attributes
676 successful-ok-events-complete
677 successful-ok-ignored-notifications
678 successful-ok-ignored-or-substituted-attributes
679 successful-ok-ignored-subscriptions
680 successful-ok-too-many-events
681
682 TAGS
683 Value and group tags correspond to the names from RFC 8011 and other
684 IPP extension specifications. Here are the group tags:
685
686 document-attributes-tag
687 event-notification-attributes-tag
688 job | job-attributes-tag
689 operation | operation-attributes-tag
690 printer | printer-attributes-tag
691 resource-attributes-tag
692 subscription-attributes-tag
693 system-attributes-tag
694 unsupported-attributes-tag
695
696 Here are the value tags:
697
698 admin-define
699 boolean
700 charset
701 collection | begCollection
702 dateTime
703 default
704 delete-attribute
705 enum
706 integer
707 keyword
708 language | naturalLanguage
709 mimetype | mimeMediaType
710 name | nameWithLanguage | nameWithoutLanguage
711 no-value
712 not-settable
713 octetString
714 rangeOfInteger
715 resolution
716 text | textWithLanguage | textWithoutLanguage
717 unknown
718 unsupported
719 uri
720 uriScheme
721
722 VARIABLES
723 The ipptool(8) program maintains a list of variables that can be used
724 in any literal string or attribute value by specifying "$variable-
725 name". Aside from variables defined using the -d option or DEFINE di‐
726 rective, the following pre-defined variables are available:
727
728 $$ Inserts a single "$" character.
729
730 $ENV[name]
731 Inserts the value of the named environment variable, or an empty
732 string if the environment variable is not defined.
733
734 $date-current
735 Inserts the current date and time using the ISO-8601 format
736 ("yyyy-mm-ddThh:mm:ssZ").
737
738 $date-start
739 Inserts the starting date and time using the ISO-8601 format
740 ("yyyy-mm-ddThh:mm:ssZ").
741
742 $filename
743 Inserts the filename provided to ipptool(8) with the -f option.
744
745 $filetype
746 Inserts the MIME media type for the filename provided to ipp‐
747 tool(8) with the -f option.
748
749 $hostname
750 Inserts the hostname from the URI provided to ipptool(8).
751
752 $job-id
753 Inserts the last "job-id" attribute value returned in a test re‐
754 sponse or 0 if no "job-id" attribute has been seen.
755
756 $job-uri
757 Inserts the last "job-uri" attribute value returned in a test re‐
758 sponse or an empty string if no "job-uri" attribute has been seen.
759
760 $notify-subscription-id
761 Inserts the last "notify-subscription-id" attribute value returned
762 in a test response or 0 if no "notify-subscription-id" attribute
763 has been seen.
764
765 $port
766 Inserts the port number from the URI provided to ipptool(8).
767
768 $resource
769 Inserts the resource path from the URI provided to ipptool(8).
770
771 $scheme
772 Inserts the scheme from the URI provided to ipptool(8).
773
774 $uri Inserts the URI provided to ipptool(8).
775
776 $uriuser
777 Inserts the username from the URI provided to ipptool(8), if any.
778
779 $user
780 Inserts the current user's login name.
781
783 ipptool(1), IANA IPP Registry (https://www.iana.org/assignments/ipp-
784 registrations), PWG Internet Printing Protocol Workgroup
785 (https://www.pwg.org/ipp), RFC 8011 (https://data‐
786 tracker.ietf.org/doc/html/rfc8011)
787
789 Copyright © 2021-2023 by OpenPrinting.
790
791
792
7932021-09-20 CUPS ipptoolfile(5)