1<!DOCTYPE HTML> 2<html> 3<!-- SECTION: Man Pages --> 4<head> 5 <link rel="stylesheet" type="text/css" href="../cups-printable.css"> 6 <title>ipptool(1)</title> 7</head> 8<body> 9<h1 class="title">ipptool(1)</h1> 10<h2 class="title"><a name="NAME">Name</a></h2> 11ipptool - perform internet printing protocol requests 12<h2 class="title"><a name="SYNOPSIS">Synopsis</a></h2> 13<b>ipptool</b> 14[ 15<b>--help</b> 16] [ 17<b>--ippserver</b> 18<i>filename</i> 19] [ 20<b>--stop-after-include-error</b> 21] [ 22<b>--version</b> 23] [ 24<b>-4</b> 25] [ 26<b>-6</b> 27] [ 28<b>-C</b> 29] [ 30<b>-E</b> 31] [ 32<b>-I</b> 33] [ 34<b>-L</b> 35] [ 36<b>-P</b> 37<i>filename.plist</i> 38] [ 39<b>-S</b> 40] [ 41<b>-T</b> 42<i>seconds</i> 43] [ 44<b>-V</b> 45<i>version</i> 46] [ 47<b>-X</b> 48] [ 49<b>-c</b> 50] [ 51<b>-d</b> 52<i>name=value</i> 53] [ 54<b>-f</b> 55<i>filename</i> 56] [ 57<b>-h</b> 58] [ 59<b>-i</b> 60<i>seconds</i> 61] [ 62<b>-j</b> 63] [ 64<b>-n</b> 65<i>repeat-count</i> 66] [ 67<b>-q</b> 68] [ 69<b>-t</b> 70] [ 71<b>-v</b><b>]</b> 72<i>printer-uri</i> 73<i>testfile</i> 74[ ... 75<i>testfile</i> 76] 77<h2 class="title"><a name="DESCRIPTION">Description</a></h2> 78<b>ipptool</b> 79sends IPP requests to the specified 80<i>printer-uri</i> 81and tests and/or displays the results. 82Each named 83<i>testfile</i> 84defines one or more requests, including the expected response status, attributes, and values. 85Output is either a plain text, formatted text, CSV, or XML report on the standard output, with a non-zero exit status indicating that one or more tests have failed. 86The 87<i>testfile</i> 88format is described in 89<a href="man-ipptoolfile.html?TOPIC=Man+Pages"><b>ipptoolfile</b>(5).</a> 90<h2 class="title"><a name="OPTIONS">Options</a></h2> 91The following options are recognized by 92<b>ipptool:</b> 93<dl class="man"> 94<dt><b>--help</b> 95<dd style="margin-left: 5.0em">Shows program help. 96<dt><b>--ippserver </b><i>filename</i> 97<dd style="margin-left: 5.0em">Specifies that the test results should be written to the named 98<b>ippserver</b> 99attributes file. 100<dt><b>--stop-after-include-error</b> 101<dd style="margin-left: 5.0em">Tells 102<b>ipptool</b> 103to stop if an error occurs in an included file. Normally 104<b>ipptool</b> 105will continue with subsequent tests after the INCLUDE directive. 106<dt><b>--version</b> 107<dd style="margin-left: 5.0em">Shows the version of 108<b>ipptool</b> 109being used. 110<dt><b>-4</b> 111<dd style="margin-left: 5.0em">Specifies that 112<b>ipptool</b> 113must connect to the printer or server using IPv4. 114<dt><b>-6</b> 115<dd style="margin-left: 5.0em">Specifies that 116<b>ipptool</b> 117must connect to the printer or server using IPv6. 118<dt><b>-C</b> 119<dd style="margin-left: 5.0em">Specifies that requests should be sent using the HTTP/1.1 "Transfer-Encoding: chunked" header, which is required for conformance by all versions of IPP. 120The default is to use "Transfer-Encoding: chunked" for requests with attached files and "Content-Length:" for requests without attached files. 121<dt><b>-E</b> 122<dd style="margin-left: 5.0em">Forces TLS encryption when connecting to the server using the HTTP "Upgrade" header. 123<dt><b>-I</b> 124<dd style="margin-left: 5.0em">Specifies that 125<b>ipptool</b> 126will continue past errors. 127<dt><b>-L</b> 128<dd style="margin-left: 5.0em">Specifies that requests should be sent using the HTTP/1.0 "Content-Length:" header, which is required for conformance by all versions of IPP. 129The default is to use "Transfer-Encoding: chunked" for requests with attached files and "Content-Length:" for requests without attached files. 130<dt><b>-P</b><i> filename.plist</i> 131<dd style="margin-left: 5.0em">Specifies that the test results should be written to the named XML (Apple plist) file in addition to the regular test report (<b>-t</b>). 132This option is incompatible with the <b>-i</b> (interval) and <b>-n</b> (repeat-count) options. 133<dt><b>-S</b> 134<dd style="margin-left: 5.0em">Forces (dedicated) TLS encryption when connecting to the server. 135<dt><b>-T</b><i> seconds</i> 136<dd style="margin-left: 5.0em">Specifies a timeout for IPP requests in seconds. 137<dt><b>-V</b><i> version</i> 138<dd style="margin-left: 5.0em">Specifies the default IPP version to use: 1.0, 1.1, 2.0, 2.1, or 2.2. If not specified, version 1.1 is used. 139<dt><b>-X</b> 140<dd style="margin-left: 5.0em">Specifies that XML (Apple plist) output is desired instead of the plain text report. 141This option is incompatible with the <b>-i</b> (interval) and <b>-n</b> (repeat-count) options. 142<dt><b>-c</b> 143<dd style="margin-left: 5.0em">Specifies that CSV (comma-separated values) output is desired instead of the plain text output. 144<dt><b>-d</b><i> name=value</i> 145<dd style="margin-left: 5.0em">Defines the named variable. 146<dt><b>-f</b><i> filename</i> 147<dd style="margin-left: 5.0em">Defines the default request filename for tests. 148<dt><b>-h</b> 149<dd style="margin-left: 5.0em">Validate HTTP response headers. 150<dt><b>-i</b><i> seconds</i> 151<dd style="margin-left: 5.0em">Specifies that the (last) 152<i>testfile</i> 153should be repeated at the specified interval. 154This option is incompatible with the <b>-X</b> (XML plist output) option. 155<dt><b>-j</b> 156<dd style="margin-left: 5.0em">Specifies that 157<b>ipptool</b> 158will produce JSON output. 159<dt><b>-l</b> 160<dd style="margin-left: 5.0em">Specifies that plain text output is desired. 161<dt><b>-n</b><i> repeat-count</i> 162<dd style="margin-left: 5.0em">Specifies that the (last) 163<i>testfile</i> 164should be repeated the specified number of times. 165This option is incompatible with the <i>-X</i> (XML plist output) option. 166<dt><b>-q</b> 167<dd style="margin-left: 5.0em">Be quiet and produce no output. 168<dt><b>-t</b> 169<dd style="margin-left: 5.0em">Specifies that CUPS test report output is desired instead of the plain text output. 170<dt><b>-v</b> 171<dd style="margin-left: 5.0em">Specifies that all request and response attributes should be output in CUPS test mode (<b>-t</b>). 172This is the default for XML output. 173</dl> 174<h2 class="title"><a name="EXIT_STATUS">Exit Status</a></h2> 175The 176<b>ipptool</b> 177program returns 0 if all tests were successful and 1 otherwise. 178<h2 class="title"><a name="FILES">Files</a></h2> 179The following standard files are available: 180<pre class="man"> 181 color.jpg 182 create-printer-subscription.test 183 document-a4.pdf 184 document-a4.ps 185 document-letter.pdf 186 document-letter.ps 187 get-completed-jobs.test 188 get-jobs.test 189 get-notifications.test 190 get-printer-attributes.test 191 get-subscriptions.test 192 gray.jpg 193 ipp-1.1.test 194 ipp-2.0.test 195 ipp-2.1.test 196 ipp-2.2.test 197 ipp-everywhere.test 198 onepage-a4.pdf 199 onepage-a4.ps 200 onepage-letter.pdf 201 onepage-letter.ps 202 print-job.test 203 print-job-deflate.test 204 print-job-gzip.test 205 testfile.jpg 206 testfile.pcl 207 testfile.pdf 208 testfile.ps 209 testfile.txt 210 validate-job.test 211</pre> 212<h2 class="title"><a name="CONFORMING_TO">Conforming To</a></h2> 213The 214<b>ipptool</b> 215program is unique to CUPS and conforms to the Internet Printing Protocol up to version 2.2. 216<h2 class="title"><a name="EXAMPLES">Examples</a></h2> 217Get a list of completed jobs for "myprinter": 218<pre class="man"> 219 ipptool ipp://localhost/printers/myprinter get-completed-jobs.test 220</pre> 221<p>Send email notifications to "user@example.com" when "myprinter" changes: 222<pre class="man"> 223 ipptool -d recipient=mailto:user@example.com \ 224 ipp://localhost/printers/myprinter create-printer-subscription.test 225</pre> 226<h2 class="title"><a name="SEE_ALSO">See Also</a></h2> 227<a href="man-ipptoolfile.html?TOPIC=Man+Pages"><b>ipptoolfile</b>(5),</a> 228IANA IPP Registry (<a href="https://www.iana.org/assignments/ipp-registrations">https://www.iana.org/assignments/ipp-registrations</a>), 229PWG Internet Printing Protocol Workgroup (<a href="https://www.pwg.org/ipp">https://www.pwg.org/ipp</a>) 230RFC 8011 (<a href="https://datatracker.ietf.org/doc/html/rfc8011">https://datatracker.ietf.org/doc/html/rfc8011</a>), 231<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2> 232Copyright © 2020-2024 by OpenPrinting. 233 234</body> 235</html> 236