|
|
.\"
|
|
|
.\" ippeveprinter man page for CUPS.
|
|
|
.\"
|
|
|
.\" Copyright © 2014-2019 by Apple Inc.
|
|
|
.\"
|
|
|
.\" Licensed under Apache License v2.0. See the file "LICENSE" for more
|
|
|
.\" information.
|
|
|
.\"
|
|
|
.TH ippeveprinter 1 "CUPS" "2 December 2019" "Apple Inc."
|
|
|
.SH NAME
|
|
|
ippeveprinter \- an ipp everywhere printer application for cups
|
|
|
.SH SYNOPSIS
|
|
|
.B ippeveprinter
|
|
|
[
|
|
|
.B \-\-help
|
|
|
] [
|
|
|
.B \-\-no\-web\-forms
|
|
|
] [
|
|
|
.B \-\-pam\-service
|
|
|
.I service
|
|
|
] [
|
|
|
.B \-\-version
|
|
|
] [
|
|
|
.B \-2
|
|
|
] [
|
|
|
.B \-A
|
|
|
] [
|
|
|
.B \-D
|
|
|
.I device-uri
|
|
|
] [
|
|
|
.B \-F
|
|
|
.I output-type/subtype
|
|
|
] [
|
|
|
.B \-K
|
|
|
.I keypath
|
|
|
] [
|
|
|
.B \-M
|
|
|
.I manufacturer
|
|
|
] [
|
|
|
.B \-P
|
|
|
.I filename.ppd
|
|
|
] [
|
|
|
.B \-V
|
|
|
.I ipp-version
|
|
|
] [
|
|
|
.B \-a
|
|
|
.I filename.conf
|
|
|
] [
|
|
|
.B \-c
|
|
|
.I command
|
|
|
] [
|
|
|
.B \-d
|
|
|
.I spool-directory
|
|
|
] [
|
|
|
.B \-f
|
|
|
.I type/subtype[,...]
|
|
|
] [
|
|
|
.B \-i
|
|
|
.I iconfile.png
|
|
|
] [
|
|
|
.B \-k
|
|
|
] [
|
|
|
.B \-l
|
|
|
.I location
|
|
|
] [
|
|
|
.B \-m
|
|
|
.I model
|
|
|
] [
|
|
|
.B \-n
|
|
|
.I hostname
|
|
|
] [
|
|
|
.B \-p
|
|
|
.I port
|
|
|
] [
|
|
|
.B \-r
|
|
|
.I subtype[,subtype]
|
|
|
] [
|
|
|
.B \-s
|
|
|
.I speed[,color-speed]
|
|
|
] [
|
|
|
.B \-v[vvv]
|
|
|
]
|
|
|
.I service-name
|
|
|
.SH DESCRIPTION
|
|
|
.B ippeveprinter
|
|
|
is 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.
|
|
|
.SH OPTIONS
|
|
|
The following options are recognized by
|
|
|
.B ippeveprinter:
|
|
|
.TP 5
|
|
|
.B \-\-help
|
|
|
Show program usage.
|
|
|
.TP 5
|
|
|
.B \-\-no\-web\-forms
|
|
|
Disable the web interface forms used to update the media and supply levels.
|
|
|
.TP 5
|
|
|
\fB\-\-pam\-service \fIservice\fR
|
|
|
Set the PAM service name.
|
|
|
The default service is "cups".
|
|
|
.TP 5
|
|
|
.B \-\-version
|
|
|
Show the CUPS version.
|
|
|
.TP 5
|
|
|
.B \-2
|
|
|
Report support for two-sided (duplex) printing.
|
|
|
.TP 5
|
|
|
.B \-A
|
|
|
Enable authentication for the created printer.
|
|
|
.B ippeveprinter
|
|
|
uses PAM to authenticate HTTP Basic credentials.
|
|
|
.TP 5
|
|
|
\fB\-D \fIdevice-uri\fR
|
|
|
Set the device URI for print output.
|
|
|
The URI can be a filename, directory, or a network socket URI of the form "socket://ADDRESS[:PORT]" (where the default port number is 9100).
|
|
|
When specifying a directory,
|
|
|
.B ippeveprinter
|
|
|
will create an output file using the job ID and name.
|
|
|
.TP 5
|
|
|
\fB\-F \fIoutput-type/subtype[,...]\fR
|
|
|
Specifies the output MIME media type.
|
|
|
The default is "application/postscript" when the \fB\-P\fR option is specified.
|
|
|
.TP 5
|
|
|
\fB\-M \fImanufacturer\fR
|
|
|
Set the manufacturer of the printer.
|
|
|
The default is "Example".
|
|
|
.TP 5
|
|
|
\fB\-P \fIfilename.ppd\fR
|
|
|
Load printer attributes from the specified PPD file.
|
|
|
This option is typically used in conjunction with the
|
|
|
.BR ippeveps (7)
|
|
|
printer command ("\-c ippeveps").
|
|
|
.TP 5
|
|
|
\fB\-V 1.1\fR
|
|
|
.TP 5
|
|
|
\fB\-V 2.0\fR
|
|
|
Specifies the maximum IPP version to report.
|
|
|
2.0 is the default.
|
|
|
.TP 5
|
|
|
\fB\-c \fIcommand\fR
|
|
|
Run the specified command for each document that is printed.
|
|
|
If "command" is not an absolute path ("/path/to/command"),
|
|
|
.B ippeveprinter
|
|
|
looks for the command in the "command" subdirectory of the CUPS binary directory, typically /usr/lib/cups/command or /usr/libexec/cups/command.
|
|
|
The
|
|
|
.BR cups-config (1)
|
|
|
command can be used to discover the correct binary directory ("cups-config --serverbin").
|
|
|
In addition, the CUPS_SERVERBIN environment variable can be used to override the default location of this directory - see the
|
|
|
.BR cups (1)
|
|
|
man page for more details.
|
|
|
.TP 5
|
|
|
\fB\-d \fIspool-directory\fR
|
|
|
Specifies the directory that will hold the print files.
|
|
|
The default is a directory under the user's current temporary directory.
|
|
|
.TP 5
|
|
|
\fB\-f \fItype/subtype[,...]\fR
|
|
|
Specifies a list of MIME media types that the server will accept.
|
|
|
The default depends on the type of printer created.
|
|
|
.TP 5
|
|
|
\fB\-i \fIiconfile.png\fR
|
|
|
Specifies the printer icon file for the server.
|
|
|
The file must be a PNG format image.
|
|
|
The default is an internally-provided PNG image.
|
|
|
.TP 5
|
|
|
.B \-k
|
|
|
Keeps the print documents in the spool directory rather than deleting them.
|
|
|
.TP 5
|
|
|
\fB\-l \fIlocation\fR
|
|
|
Specifies the human-readable location string that is reported by the server.
|
|
|
The default is the empty string.
|
|
|
.TP 5
|
|
|
\fB\-m \fImodel\fR
|
|
|
Specifies the model name of the printer.
|
|
|
The default is "Printer".
|
|
|
.TP 5
|
|
|
\fB\-n \fIhostname\fR
|
|
|
Specifies the hostname that is reported by the server.
|
|
|
The default is the name returned by the
|
|
|
.BR hostname (1)
|
|
|
command.
|
|
|
.TP 5
|
|
|
\fB\-p \fIport\fR
|
|
|
Specifies the port number to listen on.
|
|
|
The default is a user-specific number from 8000 to 8999.
|
|
|
.TP 5
|
|
|
.B \-r off
|
|
|
Turns off DNS-SD service advertisements entirely.
|
|
|
.TP 5
|
|
|
\fB\-r \fIsubtype[,subtype]\fR
|
|
|
Specifies the DNS-SD subtype(s) to advertise.
|
|
|
Separate multiple subtypes with a comma.
|
|
|
The default is "_print".
|
|
|
.TP 5
|
|
|
\fB\-s \fIspeed[,color-speed]\fR
|
|
|
Specifies the printer speed in pages per minute.
|
|
|
If two numbers are specified and the second number is greater than zero, the server will report support for color printing.
|
|
|
The default is "10,0".
|
|
|
.TP 5
|
|
|
.B \-v[vvv]
|
|
|
Be (very) verbose when logging activity to standard error.
|
|
|
.SH EXIT STATUS
|
|
|
The
|
|
|
.B ippeveprinter
|
|
|
program returns 1 if it is unable to process the command-line arguments or register the IPP service.
|
|
|
Otherwise
|
|
|
.B ippeveprinter
|
|
|
will run continuously until terminated.
|
|
|
.SH CONFORMING TO
|
|
|
The
|
|
|
.B ippeveprinter
|
|
|
program is unique to CUPS and conforms to the IPP Everywhere (PWG 5100.14) specification.
|
|
|
.SH ENVIRONMENT
|
|
|
.B ippeveprinter
|
|
|
adds environment variables starting with "IPP_" for all IPP Job attributes in the print request.
|
|
|
For 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.
|
|
|
.LP
|
|
|
In addition, all IPP "xxx-default" and "pwg-xxx" Printer Description attributes are added to the environment.
|
|
|
For example, the "IPP_MEDIA_DEFAULT" environment variable will be set to the default value for the "media" Job Template attribute.
|
|
|
.LP
|
|
|
Enumerated values are converted to their keyword equivalents.
|
|
|
For 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".
|
|
|
This string conversion only happens for standard Job Template attributes, currently "finishings", "orientation-requested", and "print-quality".
|
|
|
.LP
|
|
|
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.
|
|
|
.SH COMMAND OUTPUT
|
|
|
Unless they communicate directly with a printer, print commands send printer-ready data to the standard output.
|
|
|
.LP
|
|
|
Print commands can send messages back to
|
|
|
.B ippeveprinter
|
|
|
on the standard error with one of the following prefixes:
|
|
|
.TP 5
|
|
|
\fBATTR: \fIattribute=value[ attribute=value]\fR
|
|
|
Sets the named attribute(s) to the given values.
|
|
|
Currently 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.
|
|
|
.TP 5
|
|
|
\fBDEBUG: \fIDebugging message\fR
|
|
|
Logs a debugging message if at least two \-v's have been specified.
|
|
|
.TP 5
|
|
|
\fBERROR: \fIError message\fR
|
|
|
Logs an error message and copies the message to the "job-state-message" attribute.
|
|
|
.TP 5
|
|
|
\fBINFO: \fIInformational message\fR
|
|
|
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.
|
|
|
.TP 5
|
|
|
\fBSTATE: \fIkeyword[,keyword,...]\fR
|
|
|
Sets the printer's "printer-state-reasons" attribute to the listed keywords.
|
|
|
.TP 5
|
|
|
\fBSTATE: -\fIkeyword[,keyword,...]\fR
|
|
|
Removes the listed keywords from the printer's "printer-state-reasons" attribute.
|
|
|
.TP 5
|
|
|
\fBSTATE: +\fIkeyword[,keyword,...]\fR
|
|
|
Adds the listed keywords to the printer's "printer-state-reasons" attribute.
|
|
|
.SH EXAMPLES
|
|
|
Run
|
|
|
.B ippeveprinter
|
|
|
with a service name of My Cool Printer:
|
|
|
.nf
|
|
|
|
|
|
ippeveprinter "My Cool Printer"
|
|
|
.fi
|
|
|
.LP
|
|
|
Run the
|
|
|
.BR file (1)
|
|
|
command whenever a job is sent to the server:
|
|
|
.nf
|
|
|
|
|
|
ippeveprinter \-c /usr/bin/file "My Cool Printer"
|
|
|
.fi
|
|
|
.SH SEE ALSO
|
|
|
.BR ippevepcl (7),
|
|
|
.BR ippeveps (7),
|
|
|
PWG Internet Printing Protocol Workgroup (http://www.pwg.org/ipp)
|
|
|
.SH COPYRIGHT
|
|
|
Copyright \[co] 2007-2019 by Apple Inc.
|