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>ippeveprinter(1)</title> 7*5e7646d2SAndroid Build Coastguard Worker</head> 8*5e7646d2SAndroid Build Coastguard Worker<body> 9*5e7646d2SAndroid Build Coastguard Worker<h1 class="title">ippeveprinter(1)</h1> 10*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="NAME">Name</a></h2> 11*5e7646d2SAndroid Build Coastguard Workerippeveprinter - an ipp everywhere printer application for cups 12*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="SYNOPSIS">Synopsis</a></h2> 13*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 14*5e7646d2SAndroid Build Coastguard Worker[ 15*5e7646d2SAndroid Build Coastguard Worker<b>--help</b> 16*5e7646d2SAndroid Build Coastguard Worker] [ 17*5e7646d2SAndroid Build Coastguard Worker<b>--no-web-forms</b> 18*5e7646d2SAndroid Build Coastguard Worker] [ 19*5e7646d2SAndroid Build Coastguard Worker<b>--pam-service</b> 20*5e7646d2SAndroid Build Coastguard Worker<i>service</i> 21*5e7646d2SAndroid Build Coastguard Worker] [ 22*5e7646d2SAndroid Build Coastguard Worker<b>--version</b> 23*5e7646d2SAndroid Build Coastguard Worker] [ 24*5e7646d2SAndroid Build Coastguard Worker<b>-2</b> 25*5e7646d2SAndroid Build Coastguard Worker] [ 26*5e7646d2SAndroid Build Coastguard Worker<b>-A</b> 27*5e7646d2SAndroid Build Coastguard Worker] [ 28*5e7646d2SAndroid Build Coastguard Worker<b>-D</b> 29*5e7646d2SAndroid Build Coastguard Worker<i>device-uri</i> 30*5e7646d2SAndroid Build Coastguard Worker] [ 31*5e7646d2SAndroid Build Coastguard Worker<b>-F</b> 32*5e7646d2SAndroid Build Coastguard Worker<i>output-type/subtype</i> 33*5e7646d2SAndroid Build Coastguard Worker] [ 34*5e7646d2SAndroid Build Coastguard Worker<b>-K</b> 35*5e7646d2SAndroid Build Coastguard Worker<i>keypath</i> 36*5e7646d2SAndroid Build Coastguard Worker] [ 37*5e7646d2SAndroid Build Coastguard Worker<b>-M</b> 38*5e7646d2SAndroid Build Coastguard Worker<i>manufacturer</i> 39*5e7646d2SAndroid Build Coastguard Worker] [ 40*5e7646d2SAndroid Build Coastguard Worker<b>-P</b> 41*5e7646d2SAndroid Build Coastguard Worker<i>filename.ppd</i> 42*5e7646d2SAndroid Build Coastguard Worker] [ 43*5e7646d2SAndroid Build Coastguard Worker<b>-V</b> 44*5e7646d2SAndroid Build Coastguard Worker<i>ipp-version</i> 45*5e7646d2SAndroid Build Coastguard Worker] [ 46*5e7646d2SAndroid Build Coastguard Worker<b>-a</b> 47*5e7646d2SAndroid Build Coastguard Worker<i>filename.conf</i> 48*5e7646d2SAndroid Build Coastguard Worker] [ 49*5e7646d2SAndroid Build Coastguard Worker<b>-c</b> 50*5e7646d2SAndroid Build Coastguard Worker<i>command</i> 51*5e7646d2SAndroid Build Coastguard Worker] [ 52*5e7646d2SAndroid Build Coastguard Worker<b>-d</b> 53*5e7646d2SAndroid Build Coastguard Worker<i>spool-directory</i> 54*5e7646d2SAndroid Build Coastguard Worker] [ 55*5e7646d2SAndroid Build Coastguard Worker<b>-f</b> 56*5e7646d2SAndroid Build Coastguard Worker<i>type/subtype[,...]</i> 57*5e7646d2SAndroid Build Coastguard Worker] [ 58*5e7646d2SAndroid Build Coastguard Worker<b>-i</b> 59*5e7646d2SAndroid Build Coastguard Worker<i>iconfile.png</i> 60*5e7646d2SAndroid Build Coastguard Worker] [ 61*5e7646d2SAndroid Build Coastguard Worker<b>-k</b> 62*5e7646d2SAndroid Build Coastguard Worker] [ 63*5e7646d2SAndroid Build Coastguard Worker<b>-l</b> 64*5e7646d2SAndroid Build Coastguard Worker<i>location</i> 65*5e7646d2SAndroid Build Coastguard Worker] [ 66*5e7646d2SAndroid Build Coastguard Worker<b>-m</b> 67*5e7646d2SAndroid Build Coastguard Worker<i>model</i> 68*5e7646d2SAndroid Build Coastguard Worker] [ 69*5e7646d2SAndroid Build Coastguard Worker<b>-n</b> 70*5e7646d2SAndroid Build Coastguard Worker<i>hostname</i> 71*5e7646d2SAndroid Build Coastguard Worker] [ 72*5e7646d2SAndroid Build Coastguard Worker<b>-p</b> 73*5e7646d2SAndroid Build Coastguard Worker<i>port</i> 74*5e7646d2SAndroid Build Coastguard Worker] [ 75*5e7646d2SAndroid Build Coastguard Worker<b>-r</b> 76*5e7646d2SAndroid Build Coastguard Worker<i>subtype[,subtype]</i> 77*5e7646d2SAndroid Build Coastguard Worker] [ 78*5e7646d2SAndroid Build Coastguard Worker<b>-s</b> 79*5e7646d2SAndroid Build Coastguard Worker<i>speed[,color-speed]</i> 80*5e7646d2SAndroid Build Coastguard Worker] [ 81*5e7646d2SAndroid Build Coastguard Worker<b>-v[vvv]</b> 82*5e7646d2SAndroid Build Coastguard Worker] 83*5e7646d2SAndroid Build Coastguard Worker<i>service-name</i> 84*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="DESCRIPTION">Description</a></h2> 85*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 86*5e7646d2SAndroid Build Coastguard Workeris a simple Internet Printing Protocol (IPP) server conforming to the IPP Everywhere (PWG 5100.14) specification. It can be used to test client software or act as a very basic print server that runs a command for every job that is printed. 87*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="OPTIONS">Options</a></h2> 88*5e7646d2SAndroid Build Coastguard WorkerThe following options are recognized by 89*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter:</b> 90*5e7646d2SAndroid Build Coastguard Worker<dl class="man"> 91*5e7646d2SAndroid Build Coastguard Worker<dt><b>--help</b> 92*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Show program usage. 93*5e7646d2SAndroid Build Coastguard Worker<dt><b>--no-web-forms</b> 94*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Disable the web interface forms used to update the media and supply levels. 95*5e7646d2SAndroid Build Coastguard Worker<dt><b>--pam-service </b><i>service</i> 96*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Set the PAM service name. 97*5e7646d2SAndroid Build Coastguard WorkerThe default service is "cups". 98*5e7646d2SAndroid Build Coastguard Worker<dt><b>--version</b> 99*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Show the CUPS version. 100*5e7646d2SAndroid Build Coastguard Worker<dt><b>-2</b> 101*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Report support for two-sided (duplex) printing. 102*5e7646d2SAndroid Build Coastguard Worker<dt><b>-A</b> 103*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Enable authentication for the created printer. 104*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 105*5e7646d2SAndroid Build Coastguard Workeruses PAM to authenticate HTTP Basic credentials. 106*5e7646d2SAndroid Build Coastguard Worker<dt><b>-D </b><i>device-uri</i> 107*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Set the device URI for print output. 108*5e7646d2SAndroid Build Coastguard WorkerThe URI can be a filename, directory, or a network socket URI of the form "socket://ADDRESS[:PORT]" (where the default port number is 9100). 109*5e7646d2SAndroid Build Coastguard WorkerWhen specifying a directory, 110*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 111*5e7646d2SAndroid Build Coastguard Workerwill create an output file using the job ID and name. 112*5e7646d2SAndroid Build Coastguard Worker<dt><b>-F </b><i>output-type/subtype[,...]</i> 113*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the output MIME media type. 114*5e7646d2SAndroid Build Coastguard WorkerThe default is "application/postscript" when the <b>-P</b> option is specified. 115*5e7646d2SAndroid Build Coastguard Worker<dt><b>-M </b><i>manufacturer</i> 116*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Set the manufacturer of the printer. 117*5e7646d2SAndroid Build Coastguard WorkerThe default is "Example". 118*5e7646d2SAndroid Build Coastguard Worker<dt><b>-P </b><i>filename.ppd</i> 119*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Load printer attributes from the specified PPD file. 120*5e7646d2SAndroid Build Coastguard WorkerThis option is typically used in conjunction with the 121*5e7646d2SAndroid Build Coastguard Worker<b>ippeveps</b>(7) 122*5e7646d2SAndroid Build Coastguard Workerprinter command ("-c ippeveps"). 123*5e7646d2SAndroid Build Coastguard Worker<dt><b>-V 1.1</b> 124*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em"><dt><b>-V 2.0</b> 125*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the maximum IPP version to report. 126*5e7646d2SAndroid Build Coastguard Worker2.0 is the default. 127*5e7646d2SAndroid Build Coastguard Worker<dt><b>-c </b><i>command</i> 128*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Run the specified command for each document that is printed. 129*5e7646d2SAndroid Build Coastguard WorkerIf "command" is not an absolute path ("/path/to/command"), 130*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 131*5e7646d2SAndroid Build Coastguard Workerlooks for the command in the "command" subdirectory of the CUPS binary directory, typically /usr/lib/cups/command or /usr/libexec/cups/command. 132*5e7646d2SAndroid Build Coastguard WorkerThe 133*5e7646d2SAndroid Build Coastguard Worker<b>cups-config</b>(1) 134*5e7646d2SAndroid Build Coastguard Workercommand can be used to discover the correct binary directory ("cups-config --serverbin"). 135*5e7646d2SAndroid Build Coastguard WorkerIn addition, the CUPS_SERVERBIN environment variable can be used to override the default location of this directory - see the 136*5e7646d2SAndroid Build Coastguard Worker<b>cups</b>(1) 137*5e7646d2SAndroid Build Coastguard Workerman page for more details. 138*5e7646d2SAndroid Build Coastguard Worker<dt><b>-d </b><i>spool-directory</i> 139*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the directory that will hold the print files. 140*5e7646d2SAndroid Build Coastguard WorkerThe default is a directory under the user's current temporary directory. 141*5e7646d2SAndroid Build Coastguard Worker<dt><b>-f </b><i>type/subtype[,...]</i> 142*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies a list of MIME media types that the server will accept. 143*5e7646d2SAndroid Build Coastguard WorkerThe default depends on the type of printer created. 144*5e7646d2SAndroid Build Coastguard Worker<dt><b>-i </b><i>iconfile.png</i> 145*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the printer icon file for the server. 146*5e7646d2SAndroid Build Coastguard WorkerThe file must be a PNG format image. 147*5e7646d2SAndroid Build Coastguard WorkerThe default is an internally-provided PNG image. 148*5e7646d2SAndroid Build Coastguard Worker<dt><b>-k</b> 149*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Keeps the print documents in the spool directory rather than deleting them. 150*5e7646d2SAndroid Build Coastguard Worker<dt><b>-l </b><i>location</i> 151*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the human-readable location string that is reported by the server. 152*5e7646d2SAndroid Build Coastguard WorkerThe default is the empty string. 153*5e7646d2SAndroid Build Coastguard Worker<dt><b>-m </b><i>model</i> 154*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the model name of the printer. 155*5e7646d2SAndroid Build Coastguard WorkerThe default is "Printer". 156*5e7646d2SAndroid Build Coastguard Worker<dt><b>-n </b><i>hostname</i> 157*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the hostname that is reported by the server. 158*5e7646d2SAndroid Build Coastguard WorkerThe default is the name returned by the 159*5e7646d2SAndroid Build Coastguard Worker<b>hostname</b>(1) 160*5e7646d2SAndroid Build Coastguard Workercommand. 161*5e7646d2SAndroid Build Coastguard Worker<dt><b>-p </b><i>port</i> 162*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the port number to listen on. 163*5e7646d2SAndroid Build Coastguard WorkerThe default is a user-specific number from 8000 to 8999. 164*5e7646d2SAndroid Build Coastguard Worker<dt><b>-r</b><b>off</b> 165*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Turns off DNS-SD service advertisements entirely. 166*5e7646d2SAndroid Build Coastguard Worker<dt><b>-r </b><i>subtype[,subtype]</i> 167*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the DNS-SD subtype(s) to advertise. 168*5e7646d2SAndroid Build Coastguard WorkerSeparate multiple subtypes with a comma. 169*5e7646d2SAndroid Build Coastguard WorkerThe default is "_print". 170*5e7646d2SAndroid Build Coastguard Worker<dt><b>-s </b><i>speed[,color-speed]</i> 171*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Specifies the printer speed in pages per minute. 172*5e7646d2SAndroid Build Coastguard WorkerIf two numbers are specified and the second number is greater than zero, the server will report support for color printing. 173*5e7646d2SAndroid Build Coastguard WorkerThe default is "10,0". 174*5e7646d2SAndroid Build Coastguard Worker<dt><b>-v[vvv]</b> 175*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Be (very) verbose when logging activity to standard error. 176*5e7646d2SAndroid Build Coastguard Worker</dl> 177*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="EXIT_STATUS">Exit Status</a></h2> 178*5e7646d2SAndroid Build Coastguard WorkerThe 179*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 180*5e7646d2SAndroid Build Coastguard Workerprogram returns 1 if it is unable to process the command-line arguments or register the IPP service. 181*5e7646d2SAndroid Build Coastguard WorkerOtherwise 182*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 183*5e7646d2SAndroid Build Coastguard Workerwill run continuously until terminated. 184*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="CONFORMING_TO">Conforming To</a></h2> 185*5e7646d2SAndroid Build Coastguard WorkerThe 186*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 187*5e7646d2SAndroid Build Coastguard Workerprogram is unique to CUPS and conforms to the IPP Everywhere (PWG 5100.14) specification. 188*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="ENVIRONMENT">Environment</a></h2> 189*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 190*5e7646d2SAndroid Build Coastguard Workeradds environment variables starting with "IPP_" for all IPP Job attributes in the print request. 191*5e7646d2SAndroid Build Coastguard WorkerFor example, when executing a command for an IPP Job containing the "media" Job Template attribute, the "IPP_MEDIA" environment variable will be set to the value of that attribute. 192*5e7646d2SAndroid Build Coastguard Worker<p>In addition, all IPP "xxx-default" and "pwg-xxx" Printer Description attributes are added to the environment. 193*5e7646d2SAndroid Build Coastguard WorkerFor example, the "IPP_MEDIA_DEFAULT" environment variable will be set to the default value for the "media" Job Template attribute. 194*5e7646d2SAndroid Build Coastguard Worker<p>Enumerated values are converted to their keyword equivalents. 195*5e7646d2SAndroid Build Coastguard WorkerFor example, a "print-quality" Job Template attribute with a enum value of 3 will become the "IPP_PRINT_QUALITY" environment variable with a value of "draft". 196*5e7646d2SAndroid Build Coastguard WorkerThis string conversion only happens for standard Job Template attributes, currently "finishings", "orientation-requested", and "print-quality". 197*5e7646d2SAndroid Build Coastguard Worker<p>Finally, the "CONTENT_TYPE" environment variable contains the MIME media type of the document being printed, the "DEVICE_URI" environment variable contains the device URI as specified with the "-D" option, the "OUTPUT_FORMAT" environment variable contains the output MIME media type, and the "PPD" environment variable contains the PPD filename as specified with the "-P" option. 198*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="COMMAND_OUTPUT">Command Output</a></h2> 199*5e7646d2SAndroid Build Coastguard WorkerUnless they communicate directly with a printer, print commands send printer-ready data to the standard output. 200*5e7646d2SAndroid Build Coastguard Worker<p>Print commands can send messages back to 201*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 202*5e7646d2SAndroid Build Coastguard Workeron the standard error with one of the following prefixes: 203*5e7646d2SAndroid Build Coastguard Worker<dl class="man"> 204*5e7646d2SAndroid Build Coastguard Worker<dt><b>ATTR: </b><i>attribute=value[ attribute=value]</i> 205*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Sets the named attribute(s) to the given values. 206*5e7646d2SAndroid Build Coastguard WorkerCurrently only the "job-impressions" and "job-impressions-completed" Job Status attributes and the "marker-xxx", "printer-alert", "printer-alert-description", "printer-supply", and "printer-supply-description" Printer Status attributes can be set. 207*5e7646d2SAndroid Build Coastguard Worker<dt><b>DEBUG: </b><i>Debugging message</i> 208*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Logs a debugging message if at least two -v's have been specified. 209*5e7646d2SAndroid Build Coastguard Worker<dt><b>ERROR: </b><i>Error message</i> 210*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Logs an error message and copies the message to the "job-state-message" attribute. 211*5e7646d2SAndroid Build Coastguard Worker<dt><b>INFO: </b><i>Informational message</i> 212*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Logs an informational/progress message if -v has been specified and copies the message to the "job-state-message" attribute unless an error has been reported. 213*5e7646d2SAndroid Build Coastguard Worker<dt><b>STATE: </b><i>keyword[,keyword,...]</i> 214*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Sets the printer's "printer-state-reasons" attribute to the listed keywords. 215*5e7646d2SAndroid Build Coastguard Worker<dt><b>STATE: -</b><i>keyword[,keyword,...]</i> 216*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Removes the listed keywords from the printer's "printer-state-reasons" attribute. 217*5e7646d2SAndroid Build Coastguard Worker<dt><b>STATE: +</b><i>keyword[,keyword,...]</i> 218*5e7646d2SAndroid Build Coastguard Worker<dd style="margin-left: 5.0em">Adds the listed keywords to the printer's "printer-state-reasons" attribute. 219*5e7646d2SAndroid Build Coastguard Worker</dl> 220*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="EXAMPLES">Examples</a></h2> 221*5e7646d2SAndroid Build Coastguard WorkerRun 222*5e7646d2SAndroid Build Coastguard Worker<b>ippeveprinter</b> 223*5e7646d2SAndroid Build Coastguard Workerwith a service name of My Cool Printer: 224*5e7646d2SAndroid Build Coastguard Worker<pre class="man"> 225*5e7646d2SAndroid Build Coastguard Worker 226*5e7646d2SAndroid Build Coastguard Worker ippeveprinter "My Cool Printer" 227*5e7646d2SAndroid Build Coastguard Worker</pre> 228*5e7646d2SAndroid Build Coastguard Worker<p>Run the 229*5e7646d2SAndroid Build Coastguard Worker<b>file</b>(1) 230*5e7646d2SAndroid Build Coastguard Workercommand whenever a job is sent to the server: 231*5e7646d2SAndroid Build Coastguard Worker<pre class="man"> 232*5e7646d2SAndroid Build Coastguard Worker 233*5e7646d2SAndroid Build Coastguard Worker ippeveprinter -c /usr/bin/file "My Cool Printer" 234*5e7646d2SAndroid Build Coastguard Worker</pre> 235*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="SEE_ALSO">See Also</a></h2> 236*5e7646d2SAndroid Build Coastguard Worker<b>ippevepcl</b>(7), 237*5e7646d2SAndroid Build Coastguard Worker<b>ippeveps</b>(7), 238*5e7646d2SAndroid Build Coastguard WorkerPWG Internet Printing Protocol Workgroup (<a href="http://www.pwg.org/ipp">http://www.pwg.org/ipp</a>) 239*5e7646d2SAndroid Build Coastguard Worker<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2> 240*5e7646d2SAndroid Build Coastguard WorkerCopyright © 2007-2019 by Apple Inc. 241*5e7646d2SAndroid Build Coastguard Worker 242*5e7646d2SAndroid Build Coastguard Worker</body> 243*5e7646d2SAndroid Build Coastguard Worker</html> 244