diff options
Diffstat (limited to 'doc/help/man-ipptoolfile.html')
-rw-r--r-- | doc/help/man-ipptoolfile.html | 668 |
1 files changed, 668 insertions, 0 deletions
diff --git a/doc/help/man-ipptoolfile.html b/doc/help/man-ipptoolfile.html new file mode 100644 index 00000000..645fd4a1 --- /dev/null +++ b/doc/help/man-ipptoolfile.html @@ -0,0 +1,668 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<!-- SECTION: Man Pages --> +<head> + <link rel="stylesheet" type="text/css" href="../cups-printable.css"> + <title>ipptoolfile(5)</title> +</head> +<body> +<h1 class="title">ipptoolfile(5)</h1> +<h2 class="title"><a name="NAME">Name</a></h2> +ipptoolfile - ipptool file format + +<h2 class="title"><a name="DESCRIPTION">Description</a></h2> +The <a href='man-ipptool.html?TOPIC=Man+Pages'>ipptool(1)</a> 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 curley braces, for example: +<pre> + + # This is a comment + { + # The name of the test + NAME "Print PostScript Job" + + # The request to send + OPERATION Print-Job + GROUP operation-attributes-tag + ATTR charset attributes-charset utf-8 + ATTR language attributes-natural-language en + ATTR uri printer-uri $uri + ATTR name requesting-user-name $user + FILE testfile.ps + + # The response to expect + STATUS successful-ok + EXPECT attributes-charset OF-TYPE charset + EXPECT attributes-natural-language OF-TYPE naturalLanguage + EXPECT job-id OF-TYPE integer + EXPECT job-uri OF-TYPE uri + } + { + # The name of the test + NAME "Get Attributes of PostScript Job" + + # The request to send + OPERATION Get-Job-Attributes + GROUP operation-attributes-tag + ATTR charset attributes-charset utf-8 + ATTR language attributes-natural-language en + ATTR uri printer-uri $uri + ATTR integer job-id $job-id + ATTR name requesting-user-name $user + + # The response to expect + STATUS successful-ok + EXPECT attributes-charset OF-TYPE charset + EXPECT attributes-natural-language OF-TYPE naturalLanguage + EXPECT job-id OF-TYPE integer + EXPECT job-uri OF-TYPE uri + EXPECT job-state OF-TYPE enum + EXPECT job-originating-user-name OF-TYPE name WITH-VALUE "$user" + } +</pre> + +<h2 class="title"><a name="TOP-LEVEL_DIRECTIVES">Top-level Directives</a></h2> +The following directives can be used outside of a test: +<dl> +<dt>{ test } +</dt> +<dd>Defines a test. +</dd> +<dt>DEFINE variable-name value +</dt> +<dd>Defines the named variable to the given value. This is equivalent to specifying +"-d variable-name=value" on the <i>ipptool</i> command-line. +</dd> +<dt>DEFINE-DEFAULT variable-name value +</dt> +<dd>Defines the named variable to the given value if it does not already have a +value. +</dd> +<dt>IGNORE-ERRORS yes +</dt> +<dd></dd> +<dt>IGNORE-ERRORS no +</dt> +<dd>Specifies whether, by default, <i>ipptool</i> will ignore errors and continue with +subsequent tests. +</dd> +<dt>INCLUDE "filename" +</dt> +<dd></dd> +<dt>INCLUDE <filename> +</dt> +<dd>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 <i>ipptool</i> +include directory. +</dd> +<dt>INCLUDE-IF-DEFINED name "filename" +</dt> +<dd></dd> +<dt>INCLUDE-IF-DEFINED name <filename> +</dt> +<dd>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 <i>ipptool</i> include directory. +</dd> +<dt>INCLUDE-IF-NOT-DEFINED name "filename" +</dt> +<dd></dd> +<dt>INCLUDE-IF-NOT-DEFINED name <filename> +</dt> +<dd>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 <i>ipptool</i> include directory. +</dd> +<dt>SKIP-IF-DEFINED variable-name +</dt> +<dd></dd> +<dt>SKIP-IF-NOT-DEFINED variable-name +</dt> +<dd>Specifies that the remainder of the test file should be skipped when the +variable is or is not defined. +</dd> +<dt>TRANSFER auto +</dt> +<dd>Specifies that tests will, by default, use "Transfer-Encoding: chunked" for +requests with attached files and "Content-Length:" for requests without attached +files. +</dd> +<dt>TRANSFER chunked +</dt> +<dd>Specifies that tests will, by default, use the HTTP/1.1 "Transfer-Encoding: +chunked" header. This is the default and is equivalent to specifying "-c" on the +<i>ipptool</i> command-line. Support for chunked requests is required for +conformance with all versions of IPP. +</dd> +<dt>TRANSFER length +</dt> +<dd>Specifies that tests will, by default, use the HTTP/1.0 "Content-Length:" +header. This is equivalent to specifying "-l" on the <i>ipptool</i> command-line. +Support for content length requests is required for conformance with all +versions of IPP. +</dd> +<dt>VERSION 1.0 +</dt> +<dd></dd> +<dt>VERSION 1.1 +</dt> +<dd></dd> +<dt>VERSION 2.0 +</dt> +<dd></dd> +<dt>VERSION 2.1 +</dt> +<dd></dd> +<dt>VERSION 2.2 +</dt> +<dd>Specifies the default IPP version number to use for the tests that follow. + +</dd> +</dl> +<h2 class="title"><a name="TEST_DIRECTIVES">Test Directives</a></h2> +The following directives are understood in a test: +<dl> +<dt>ATTR tag attribute-name value(s) +</dt> +<dd>Adds an attribute to the test request. Values are separated by the comma (",") +character - escape commas using the "" character. +</dd> +<dt>ATTR collection attribute-name { MEMBER tag member-name value(s) ... } [ ... { ... } ] +</dt> +<dd>Adds a collection attribute to the test request. Member attributes follow the +same syntax as regular attributes and can themselves be nested collections. +Multiple collection values can be supplied as needed. +</dd> +<dt>DELAY seconds +</dt> +<dd>Specifies a delay before this test will be run. +</dd> +<dt>DISPLAY attribute-name +</dt> +<dd>Specifies that value of the named attribute should be output as part of the +test report. +</dd> +<dt>EXPECT attribute-name [ predicate(s) ] +</dt> +<dd></dd> +<dt>EXPECT ?attribute-name predicate(s) +</dt> +<dd></dd> +<dt>EXPECT !attribute-name +</dt> +<dd>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. +</dd> +<dt>FILE filename +</dt> +<dd>Specifies a file to include at the end of the request. This is typically used +when sending a test print file. +</dd> +<dt>GROUP tag +</dt> +<dd>Specifies the group tag for subsequent attributes in the request. +</dd> +<dt>IGNORE-ERRORS yes +</dt> +<dd></dd> +<dt>IGNORE-ERRORS no +</dt> +<dd>Specifies whether <i>ipptool</i> will ignore errors and continue with subsequent +tests. +</dd> +<dt>NAME "literal string" +</dt> +<dd>Specifies the human-readable name of the test. +</dd> +<dt>OPERATION operation-code +</dt> +<dd>Specifies the operation to be performed. +</dd> +<dt>REQUEST-ID number +</dt> +<dd></dd> +<dt>REQUEST-ID random +</dt> +<dd>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). +</dd> +<dt>RESOURCE path +</dt> +<dd>Specifies an alternate resource path that is used for the HTTP POST request. +The default is the resource from the URI provided to the <i>ipptool</i> program. +</dd> +<dt>SKIP-IF-DEFINED variable-name +</dt> +<dd></dd> +<dt>SKIP-IF-NOT-DEFINED variable-name +</dt> +<dd>Specifies that the current test should be skipped when the variable is or is not +defined. +</dd> +<dt>SKIP-PREVIOUS-ERROR yes +</dt> +<dd></dd> +<dt>SKIP-PREVIOUS-ERROR no +</dt> +<dd>Specifies whether <i>ipptool</i> will skip the current test if the previous test +resulted in an error/failure. +</dd> +<dt>STATUS status-code [ predicate ] +</dt> +<dd>Specifies an expected response status-code value. Additional requirements can be +added as predicates - see the "STATUS PREDICATES" section for more information +on predicates. +</dd> +<dt>TRANSFER auto +</dt> +<dd>Specifies that this test will use "Transfer-Encoding: chunked" if it has an +attached file or "Content-Length:" otherwise. +</dd> +<dt>TRANSFER chunked +</dt> +<dd>Specifies that this test will use the HTTP/1.1 "Transfer-Encoding: chunked" +header. +</dd> +<dt>TRANSFER length +</dt> +<dd>Specifies that this test will use the HTTP/1.0 "Content-Length:" header. +</dd> +<dt>VERSION 1.0 +</dt> +<dd></dd> +<dt>VERSION 1.1 +</dt> +<dd></dd> +<dt>VERSION 2.0 +</dt> +<dd></dd> +<dt>VERSION 2.1 +</dt> +<dd></dd> +<dt>VERSION 2.2 +</dt> +<dd>Specifies the IPP version number to use for this test. + +</dd> +</dl> +<h2 class="title"><a name="EXPECT_PREDICATES">Expect Predicates</a></h2> +The following predicates are understood following the EXPECT test directive: +<dl> +<dt>COUNT number +</dt> +<dd>Requires the EXPECT attribute to have the specified number of values. +</dd> +<dt>DEFINE-MATCH variable-name +</dt> +<dd>Defines the variable to "1" when the EXPECT condition matches. A side-effect of +this predicate is that this EXPECT will never fail a test. +</dd> +<dt>DEFINE-NO-MATCH variable-name +</dt> +<dd>Defines the variable to "1" when the EXPECT condition does not match. A side- +effect of this predicate is that this EXPECT will never fail a test. +</dd> +<dt>DEFINE-VALUE variable-name +</dt> +<dd>Defines the variable to the value of the attribute when the EXPECT condition +matches. A side-effect of this predicate is that this EXPECT will never fail a test. +</dd> +<dt>IF-DEFINED variable-name +</dt> +<dd>Makes the EXPECT conditions apply only if the specified variable is defined. +</dd> +<dt>IF-NOT-DEFINED variable-name +</dt> +<dd>Makes the EXPECT conditions apply only if the specified variable is not +defined. +</dd> +<dt>IN-GROUP tag +</dt> +<dd>Requires the EXPECT attribute to be in the specified group tag. +</dd> +<dt>OF-TYPE tag[,tag,...] +</dt> +<dd>Requires the EXPECT attribute to use the specified value tag(s). +</dd> +<dt>REPEAT-LIMIT number +</dt> +<dd></dd> +<dd>Specifies the maximum number of times to repeat. The default value is 1000. +</dd> +<dt>REPEAT-MATCH +</dt> +<dd></dd> +<dt>REPEAT-NO-MATCH +</dt> +<dd>Specifies that the current test should be repeated when the EXPECT condition +matches or does not match. +</dd> +<dt>SAME-COUNT-AS attribute-name +</dt> +<dd>Requires the EXPECT attribute to have the same number of values as the specified +parallel attribute. +</dd> +<dt>WITH-ALL-VALUES "literal string" +</dt> +<dd>Requires that all values of the EXPECT attribute match the literal string. Comparisons are case-sensitive. +</dd> +<dt>WITH-ALL-VALUES <number +</dt> +<dd></dd> +<dt>WITH-ALL-VALUES =number +</dt> +<dd></dd> +<dt>WITH-ALL-VALUES >number +</dt> +<dd></dd> +<dt>WITH-ALL-VALUES number[,number,...] +</dt> +<dd>Requires that all values of the EXPECT attribute match the number(s) or numeric comparison. When comparing rangeOfInteger values, the "<" and ">" operators only check the upper bound of the range. +</dd> +<dt>WITH-ALL-VALUES "false" +</dt> +<dd></dd> +<dt>WITH-ALL-VALUES "true" +</dt> +<dd>Requires that all values of the EXPECT attribute match the boolean value given. +</dd> +<dt>WITH-ALL-VALUES "/regular expression/" +</dt> +<dd>Requires that all values of the EXPECT attribute match the regular expression, which must conform to the POSIX regular expression syntax. Comparisons are case-sensitive. +</dd> +<dt>WITH-VALUE "literal string" +</dt> +<dd>Requires that at least one value of the EXPECT attribute matches the literal string. Comparisons are case-sensitive. +</dd> +<dt>WITH-VALUE <number +</dt> +<dd></dd> +<dt>WITH-VALUE =number +</dt> +<dd></dd> +<dt>WITH-VALUE >number +</dt> +<dd></dd> +<dt>WITH-VALUE number[,number,...] +</dt> +<dd>Requires that at least one value of the EXPECT attribute matches the number(s) or numeric comparison. When comparing rangeOfInteger values, the "<" and ">" operators only check the upper bound of the range. +</dd> +<dt>WITH-VALUE "false" +</dt> +<dd></dd> +<dt>WITH-VALUE "true" +</dt> +<dd>Requires that at least one value of the EXPECT attribute matches the boolean value given. +</dd> +<dt>WITH-VALUE "/regular expression/" +</dt> +<dd>Requires 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. + +</dd> +</dl> +<h2 class="title"><a name="STATUS_PREDICATES">Status Predicates</a></h2> +The following predicates are understood following the STATUS test directive: +<dl> +<dt>IF-DEFINED variable-name +</dt> +<dd>Makes the STATUS apply only if the specified variable is defined. +</dd> +<dt>IF-NOT-DEFINED variable-name +</dt> +<dd>Makes the STATUS apply only if the specified variable is not defined. +</dd> +<dt>REPEAT-LIMIT number +</dt> +<dd></dd> +<dd>Specifies the maximum number of times to repeat. The default value is 1000. +</dd> +<dt>REPEAT-MATCH +</dt> +<dd></dd> +<dt>REPEAT-NO-MATCH +</dt> +<dd>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. + +</dd> +</dl> +<h2 class="title"><a name="OPERATION_CODES">Operation Codes</a></h2> +Operation codes correspond to the hexadecimal numbers (0xHHHH) and names from +RFC 2911 and other IPP extension specifications. Here is a complete list: +<pre> + Activate-Printer + CUPS-Accept-Jobs + CUPS-Add-Modify-Class + CUPS-Add-Modify-Printer + CUPS-Authenticate-Job + CUPS-Delete-Class + CUPS-Delete-Printer + CUPS-Get-Classes + CUPS-Get-Default + CUPS-Get-Devices + CUPS-Get-Document + CUPS-Get-PPD + CUPS-Get-PPDs + CUPS-Get-Printers + CUPS-Move-Job + CUPS-Reject-Jobs + CUPS-Set-Default + Cancel-Current-Job + Cancel-Job + Cancel-Jobs + Cancel-My-Jobs + Cancel-Subscription + Close-Job + Create-Job + Create-Job-Subscription + Create-Printer-Subscription + Deactivate-Printer + Disable-Printer + Enable-Printer + Get-Job-Attributes + Get-Jobs + Get-Notifications + Get-Printer-Attributes + Get-Printer-Support-Files + Get-Printer-Supported-Values + Get-Subscription-Attributes + Get-Subscriptions + Hold-Job + Hold-New-Jobs + Identify-Printer + Pause-Printer + Pause-Printer-After-Current-Job + Print-Job + Print-URI + Promote-Job + Purge-Jobs + Release-Held-New-Jobs + Release-Job + Renew-Subscription + Reprocess-Job + Restart-Job + Restart-Printer + Resubmit-Job + Resume-Job + Resume-Printer + Schedule-Job-After + Send-Document + Send-Notifications + Send-URI + Set-Job-Attributes + Set-Printer-Attributes + Shutdown-Printer + Startup-Printer + Suspend-Current-Job + Validate-Document + Validate-Job +</pre> + +<h2 class="title"><a name="STATUS_CODES">Status Codes</a></h2> +Status codes correspond to the hexadecimal numbers (0xHHHH) and names from RFC +2911 and other IPP extension specifications. Here is a complete list: +<pre> + client-error-attributes-not-settable + client-error-attributes-or-values-not-supported + client-error-bad-request + client-error-charset-not-supported + client-error-compression-error + client-error-compression-not-supported + client-error-conflicting-attributes + client-error-document-access-error + client-error-document-format-error + client-error-document-format-not-supported + client-error-document-password-error + client-error-document-permission-error + client-error-document-security-error + client-error-document-unprintable-error + client-error-forbidden + client-error-gone + client-error-ignored-all-notifications + client-error-ignored-all-subscriptions + client-error-not-authenticated + client-error-not-authorized + client-error-not-found + client-error-not-possible + client-error-print-support-file-not-found + client-error-request-entity-too-large + client-error-request-value-too-long + client-error-timeout + client-error-too-many-subscriptions + client-error-uri-scheme-not-supported + cups-see-other + redirection-other-site + server-error-busy + server-error-device-error + server-error-internal-error + server-error-job-canceled + server-error-multiple-document-jobs-not-supported + server-error-not-accepting-jobs + server-error-operation-not-supported + server-error-printer-is-deactivated + server-error-service-unavailable + server-error-temporary-error + server-error-version-not-supported + successful-ok + successful-ok-but-cancel-subscription + successful-ok-conflicting-attributes + successful-ok-events-complete + successful-ok-ignored-notifications + successful-ok-ignored-or-substituted-attributes + successful-ok-ignored-subscriptions + successful-ok-too-many-events +</pre> + +<h2 class="title"><a name="TAGS">Tags</a></h2> +Value and group tags correspond to the names from RFC 2911 and other IPP +extension specifications. Here are the group tags: +<pre> + event-notification-attributes-tag + job-attributes-tag + operation-attributes-tag + printer-attributes-tag + subscription-attributes-tag + unsupported-attributes-tag +</pre> +<p>Here are the value tags: +<pre> + admin-define + boolean + charset + collection + dateTime + default + delete-attribute + enum + integer + keyword + mimeMediaType + nameWithLanguage + nameWithoutLanguage + naturalLanguage + no-value + not-settable + octetString + rangeOfInteger + resolution + textWithLanguage + textWithoutLanguage + unknown + unsupported + uri + uriScheme +</pre> + +<h2 class="title"><a name="VARIABLES">Variables</a></h2> +The <i>ipptool</i> program maintains a list of variables that can be used in any +literal string or attribute value by specifying "$variable-name". Aside from +variables defined using the "-d" option or "DEFINE" directive, the following +pre-defined variables are available: +<dl> +<dt>$$ +</dt> +<dd>Inserts a single "$" character. +</dd> +<dt>$ENV[name] +</dt> +<dd>Inserts the value of the named environment variable, or an empty string if the +environment variable is not defined. +</dd> +<dt>$filename +</dt> +<dd>Inserts the filename provided to <i>ipptool</i> with the "-f" option. +</dd> +<dt>$hostname +</dt> +<dd>Inserts the hostname from the URI provided to <i>ipptool</i>. +</dd> +<dt>$job-id +</dt> +<dd>Inserts the last job-id value returned in a test response or 0 if no job-id has +been seen. +</dd> +<dt>$job-uri +</dt> +<dd>Inserts the last job-uri value returned in a test response or an empty string if +no job-uri has been seen. +</dd> +<dt>$scheme +</dt> +<dd>Inserts the scheme from the URI provided to <i>ipptool</i>. +</dd> +<dt>$notify-subscription-id +</dt> +<dd>Inserts the last notify-subscription-id value returnd in a test response or 0 if +no notify-subscription-id has been seen. +</dd> +<dt>$port +</dt> +<dd>Inserts the port number from the URI provided to <i>ipptool</i>. +</dd> +<dt>$resource +</dt> +<dd>Inserts the resource path from the URI provided to <i>ipptool</i>. +</dd> +<dt>$uri +</dt> +<dd>Inserts the URI provided to <i>ipptool</i>. +</dd> +<dt>$user +</dt> +<dd>Inserts the current user's login name. +</dd> +<dt>$username +</dt> +<dd>Inserts the username from the URI provided to <i>ipptool</i>, if any. + +</dd> +</dl> +<h2 class="title"><a name="SEE_ALSO">See Also</a></h2> +<a href='man-ipptool.html?TOPIC=Man+Pages'>ipptool(1)</a>, +<br> +<a href='http://localhost:631/help'>http://localhost:631/help</a> + +<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2> +Copyright 2007-2012 by Apple Inc. + +</body> +</html> |