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