HTML man page updates.
<b>lpinfo</b>(8)
to query for available printers using the backend.
The one exception is the SNMP backend - see
-<b>cups-snmp</b>(8)
+<a href="man-cups-snmp.html?TOPIC=Man+Pages"><b>cups-snmp</b>(8)</a>
for more information.
<h2 class="title"><a name="NOTES">Notes</a></h2>
CUPS printer drivers and backends are deprecated and will no longer be supported in a future feature release of CUPS.
</pre>
<h2 class="title"><a name="NOTES">Notes</a></h2>
Administrators wishing to prevent unauthorized cancellation of jobs via the <i>-u</i> option should require authentication for Cancel-Jobs operations in
-<b>cupsd.conf</b>(5).
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5).</a>
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cupsd.conf</b>(5),
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>lp</b>(1),
<b>lpmove</b>(8),
<b>lpstat</b>(1),
<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
The <b>classes.conf</b> file defines the local printer classes that are available.
It is normally located in the <i>/etc/cups</i> directory and is maintained by the
-<b>cupsd</b>(8)
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8)</a>
program.
This file is not intended to be edited or managed manually.
<h2 class="title"><a name="NOTES">Notes</a></h2>
The name, location, and format of this file are an implementation detail that will change in future releases of CUPS.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cupsd</b>(8),
-<b>cupsd.conf</b>(5),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>mime.convs</b>(5),
<b>mime.types</b>(5),
<b>printers.conf</b>(5),
cups-files.conf - file and directory configuration file for cups
<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
The <b>cups-files.conf</b> file configures the files and directories used by the CUPS scheduler,
-<b>cupsd</b>(8).
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8).</a>
It is normally located in the <i>/etc/cups</i> directory.
<p>Each line in the file can be a configuration directive, a blank line, or a comment.
Configuration directives typically consist of a name and zero or more values separated by whitespace.
Comment lines start with the # character.
<h3><a name="DIRECTIVES">Directives</a></h3>
The following directives are understood by
-<b>cupsd</b>(8):
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8):</a>
<dl class="man">
<dt><a name="AccessLog"></a><b>AccessLog</b>
<dd style="margin-left: 5.0em"><dt><b>AccessLog </b><i>filename</i>
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>classes.conf</b>(5),
<b>cups</b>(1),
-<b>cupsd</b>(8),
-<b>cupsd.conf</b>(5),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>mime.convs</b>(5),
<b>mime.types</b>(5),
<b>printers.conf</b>(5),
service using the corresponding control program.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>cups</b>(1),
-<b>cupsd</b>(8),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>inetconv</b>(1m),
<b>inetd</b>(8),
<b>launchd</b>(8),
file configures how the standard CUPS network backends (http, https, ipp, ipps, lpd, snmp, and socket) access printer information using SNMPv1 and is normally located in the <i>/etc/cups</i> directory.
Each line in the file can be a configuration directive, a blank line, or a comment. Comment lines start with the # character.
<p>The Community and DebugLevel directives are used by all backends. The remainder apply only to the SNMP backend -
-<b>cups-snmp</b>(8).
+<a href="man-cups-snmp.html?TOPIC=Man+Pages"><b>cups-snmp</b>(8).</a>
<h2 class="title"><a name="DIRECTIVES">Directives</a></h2>
The following directives are understood by the CUPS network backends:
<dl class="man">
Printers that do not support IPP can be supported using applications such as
<b>ippeveprinter</b>(1).
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cups-snmp</b>(8),
+<a href="man-cups-snmp.html?TOPIC=Man+Pages"><b>cups-snmp</b>(8),</a>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
Copyright © 2007-2019 by Apple Inc.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>backend</b>(7),
<b>cups-snmp.conf</b>(5),
-<b>cupsd</b>(8),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>lpinfo</b>(8),
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
<b>ippeveprinter</b>(1).
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>cancel</b>(1),
-<b>client.conf</b>(7),
+<a href="man-client.conf.html?TOPIC=Man+Pages"><b>client.conf</b>(7),</a>
<b>cupsctl</b>(8),
-<b>cupsd</b>(8),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>lp</b>(1),
<b>lpadmin</b>(8),
<b>lpinfo</b>(8),
-<b>lpoptions</b>(1),
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1),</a>
<b>lpr</b>(1),
<b>lprm</b>(1),
<b>lpq</b>(1),
<h2 class="title"><a name="KNOWN_ISSUES">Known Issues</a></h2>
You cannot set the Listen or Port directives using <b>cupsctl</b>.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cupsd.conf</b>(5),
-<b>cupsd</b>(8),
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<br>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
<i>argvN</i>
<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
The <b>cupsd-helper</b> programs perform long-running operations on behalf of the scheduler,
-<b>cupsd</b>(8).
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8).</a>
The <b>cups-deviced</b> helper program runs each CUPS
<b>backend</b>(7)
with no arguments in order to discover the available printers.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>backend</b>(7),
<b>cups</b>(1),
-<b>cupsd</b>(8),
-<b>cupsd.conf</b>(5),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>filter</b>(7),
<b>ppdcfile</b>(5),
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="NAME">Name</a></h2>
cupsd-logs - cupsd log files (access_log, error_log, and page_log)
<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
-<b>cupsd</b>(8)
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8)</a>
normally maintains three log files: <i>access_log</i> to track requests that are submitted to the scheduler, <i>error_log</i> to track progress and errors, and <i>page_log</i> to track pages that are printed.
Configuration directives in
-<b>cupsd.conf</b>(5)
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5)</a>
and
-<b>cups-files.conf</b>(5)
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5)</a>
control what information is logged and where it is stored.
<h3><a name="ACCESS_LOG_FILE_FORMAT">Access Log File Format</a></h3>
The <i>access_log</i> file lists each HTTP resource that is accessed by a web browser or client.
<p>The <i>ipp-status</i> field contains either "-" for non-IPP requests or the IPP status code name for POST requests containing an IPP response.
<h3><a name="ERROR_LOG_FILE_FORMAT">Error Log File Format</a></h3>
The <i>error_log</i> file lists messages from the scheduler - errors, warnings, etc. The LogLevel directive in the
-<b>cupsd.conf</b>(5)
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5)</a>
file controls which messages are logged:
<pre class="man">
</pre>
The PageLogFormat directive in the
-<b>cupsd.conf</b>(5)
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5)</a>
file can be used to change this information.
<p>The <i>printer</i> field contains the name of the printer that printed the page.
If you send a job to a printer class, this field will contain the name of the printer that was assigned the job.
<p>The <i>media</i> field contains a copy of the media or media-col/media-size attribute provided with the IPP Create-Job or Print-Job requests or "-" if none was provided.
<p>The <i>sides</i> field contains a copy of the sides attribute provided with the IPP Create-Job or Print-Job requests or "-" if none was provided.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cupsd</b>(8),
-<b>cupsd.conf</b>(5),
-<b>cups-files.conf</b>(5),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
Copyright © 2007-2019 by Apple Inc.
The
<i>cupsd.conf</i>
file configures the CUPS scheduler,
-<b>cupsd</b>(8).
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8).</a>
It is normally located in the
<i>/etc/cups</i>
directory.
Comment lines start with the # character.
<h3><a name="TOP_LEVEL_DIRECTIVES">Top-level Directives</a></h3>
The following top-level directives are understood by
-<b>cupsd</b>(8):
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8):</a>
<dl class="man">
<dt><a name="AccessLogLevel"></a><b>AccessLogLevel config</b>
<dd style="margin-left: 5.0em"><dt><b>AccessLogLevel actions</b>
<dd style="margin-left: 5.0em"><dt><b>HostNameLookups Double</b>
<dd style="margin-left: 5.0em">Specifies whether to do reverse lookups on connecting clients.
The "Double" setting causes
-<b>cupsd</b>(8)
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8)</a>
to verify that the hostname resolved from the address matches one of the addresses returned for that hostname.
Double lookups also prevent clients with unregistered addresses from connecting to your server.
The default is "Off" to avoid the potential server performance problems with hostname lookups.
<dd style="margin-left: 5.0em">Specifies the length of time to wait before shutting down due to inactivity.
The default is "60" seconds.
Note: Only applicable when
-<b>cupsd</b>(8)
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8)</a>
is run on-demand (e.g., with <b>-l</b>).
<dt><a name="JobKillDelay"></a><b>JobKillDelay </b><i>seconds</i>
<dd style="margin-left: 5.0em">Specifies the number of seconds to wait before killing the filters and backend associated with a canceled or held job.
</dl>
<h3><a name="HTTP_METHOD_NAMES">Http Method Names</a></h3>
The following HTTP methods are supported by
-<b>cupsd</b>(8):
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8):</a>
<dl class="man">
<dt>GET
<dd style="margin-left: 5.0em">Used by a client to download icons and other printer resources and to access the CUPS web interface.
</dl>
<h3><a name="IPP_OPERATION_NAMES">Ipp Operation Names</a></h3>
The following IPP operations are supported by
-<b>cupsd</b>(8):
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8):</a>
<dl class="man">
<dt>CUPS-Accept-Jobs
<dd style="margin-left: 5.0em">Allows a printer to accept new jobs.
</dl>
<h3><a name="LOCATION_PATHS">Location Paths</a></h3>
The following paths are commonly used when configuring
-<b>cupsd</b>(8):
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8):</a>
<dl class="man">
<dt>/
<dd style="margin-left: 5.0em">The path for all get operations (get-printers, get-jobs, etc.)
<dt><b>Require user {</b><i>user-name</i>|<b>@</b><i>group-name</i>} ...
<dd style="margin-left: 5.0em">Specifies that an authenticated user must match one of the named users or be a member of one of the named groups.
The group name "@SYSTEM" corresponds to the list of groups defined by the SystemGroup directive in the
-<b>cups-files.conf</b>(5)
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5)</a>
file.
The group name "@OWNER" corresponds to the owner of the resource, for example the person that submitted a print job.
Note: The 'root' user is not special and must be granted privileges like any other user account.
"@ACL" maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values.
"@OWNER" maps to the job's owner.
"@SYSTEM" maps to the groups listed for the SystemGroup directive in the
-<b>cups-files.conf</b>(5)
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5)</a>
file.
<dt><b>JobPrivateValues all</b>
<dd style="margin-left: 5.0em"><dt><b>JobPrivateValues default</b>
"@ACL" maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values.
"@OWNER" maps to the job's owner.
"@SYSTEM" maps to the groups listed for the SystemGroup directive in the
-<b>cups-files.conf</b>(5)
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5)</a>
file.
<dt><b>SubscriptionPrivateValues all</b>
<dd style="margin-left: 5.0em"><dt><b>SubscriptionPrivateValues default</b>
</dl>
<h2 class="title"><a name="NOTES">Notes</a></h2>
File, directory, and user configuration directives that used to be allowed in the <b>cupsd.conf</b> file are now stored in the
-<b>cups-files.conf</b>(5)
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5)</a>
file instead in order to prevent certain types of privilege escalation attacks.
<p>The scheduler MUST be restarted manually after making changes to the <b>cupsd.conf</b> file.
On Linux this is typically done using the
</pre>
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>classes.conf</b>(5),
-<b>cups-files.conf</b>(5),
-<b>cupsd</b>(8),
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>mime.convs</b>(5),
<b>mime.types</b>(5),
<b>printers.conf</b>(5),
<b>backend</b>(7),
<b>classes.conf</b>(5),
<b>cups</b>(1),
-<b>cups-files.conf</b>(5),
-<b>cups-lpd</b>(8),
-<b>cupsd.conf</b>(5),
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
+<a href="man-cups-lpd.html?TOPIC=Man+Pages"><b>cups-lpd</b>(8),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>cupsd-helper</b>(8),
<b>cupsd-logs</b>(8),
<b>filter</b>(7),
</pre>
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>cups</b>(1),
-<b>cupsd.conf</b>(5),
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>filter(7),</b>
<b>mime.convs</b>(7),
<b>mime.types</b>(7),
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>backend</b>(7),
<b>cups</b>(1),
-<b>cups-files.conf</b>(5),
-<b>cupsd</b>(8),
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>cupsfilter</b>(8),
<br>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<dt><b>COUNT </b><i>number</i>
<dd style="margin-left: 5.0em">Requires the <b>EXPECT</b> attribute to have the specified number of values.
<dt><b>DEFINE-MATCH </b><i>variable-name</i>
-<dd style="margin-left: 5.0em">Defines the variable to "1" when the <b>EXPECT</b> condition matches. A side-effect of this predicate is that this <b>EXPECT</b> will never fail a test.
+<dd style="margin-left: 5.0em">Defines the variable to "1" when the <b>EXPECT</b> condition matches.
+A side-effect of this predicate is that this <b>EXPECT</b> will never fail a test.
<dt><b>DEFINE-NO-MATCH </b><i>variable-name</i>
-<dd style="margin-left: 5.0em">Defines the variable to "1" when the <b>EXPECT</b> condition does not match. A side-effect of this predicate is that this <b>EXPECT</b> will never fail a test.
+<dd style="margin-left: 5.0em">Defines the variable to "1" when the <b>EXPECT</b> condition does not match.
+A side-effect of this predicate is that this <b>EXPECT</b> will never fail a test.
<dt><b>DEFINE-VALUE </b><i>variable-name</i>
-<dd style="margin-left: 5.0em">Defines the variable to the value of the attribute when the <b>EXPECT</b> condition matches. A side-effect of this predicate is that this <b>EXPECT</b> will never fail a test.
+<dd style="margin-left: 5.0em">Defines the variable to the value of the attribute when the <b>EXPECT</b> condition matches.
+A side-effect of this predicate is that this <b>EXPECT</b> will never fail a test.
+<dt><b>DISPLAY-MATCH </b><i>"message"</i>
+<dd style="margin-left: 5.0em">Displays the specified message when the <b>EXPECT</b> condition matches.
<dt><b>IF-DEFINED </b><i>variable-name</i>
<dd style="margin-left: 5.0em">Makes the <b>EXPECT</b> conditions apply only if the specified variable is defined.
<dt><b>IF-NOT-DEFINED </b><i>variable-name</i>
<h3><a name="THE_DEFAULT_DESTINATION">The Default Destination</a></h3>
CUPS provides many ways to set the default destination. The <b>LPDEST</b> and <b>PRINTER</b> environment variables are consulted first.
If neither are set, the current default set using the
-<b>lpoptions</b>(1)
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1)</a>
command is used, followed by the default set using the
<b>lpadmin</b>(8)
command.
</dl>
<h3><a name="COMMON_JOB_OPTIONS">Common Job Options</a></h3>
Aside from the printer-specific options reported by the
-<b>lpoptions</b>(1)
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1)</a>
command, the following generic options are available:
<dl class="man">
<dt><b>-o job-sheets=</b><i>name</i>
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>cancel</b>(1),
<b>lpadmin</b>(8),
-<b>lpoptions</b>(1),
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1),</a>
<b>lpq</b>(1),
<b>lpr</b>(1),
<b>lprm</b>(1),
or
<b>lpr</b>(1)
commands will use this destination unless the user specifies otherwise with the
-<b>lpoptions</b>(1)
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1)</a>
command.
<p>The second form of the command (<i>-p</i>) configures the named printer or class. The additional options are described below.
<p>The third form of the command (<i>-x</i>) deletes the printer or class <i>destination</i>.
<dt><b>-o </b><i>name</i><b>=</b><i>value</i>
<dd style="margin-left: 5.0em">Sets a PPD option for the printer.
PPD options can be listed using the <i>-l</i> option with the
-<b>lpoptions</b>(1)
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1)</a>
command.
<dt><b>-o </b><i>name</i><b>-default=</b><i>value</i>
<dd style="margin-left: 5.0em">Sets a default server-side option for the destination.
<b>cupsaccept</b>(8),
<b>cupsenable</b>(8),
<b>lpinfo</b>(8),
-<b>lpoptions</b>(1),
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1),</a>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
Copyright © 2007-2019 by Apple Inc.
<h3><a name="THE_DEFAULT_DESTINATION">The Default Destination</a></h3>
CUPS provides many ways to set the default destination. The <b>LPDEST</b> and <b>PRINTER</b> environment variables are consulted first.
If neither are set, the current default set using the
-<b>lpoptions</b>(1)
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1)</a>
command is used, followed by the default set using the
<b>lpadmin</b>(8)
command.
</dl>
<h3><a name="COMMON_JOB_OPTIONS">Common Job Options</a></h3>
Aside from the printer-specific options reported by the
-<b>lpoptions</b>(1)
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1)</a>
command, the following generic options are available:
<dl class="man">
<dt><b>-o job-sheets=</b><i>name</i>
<b>cancel</b>(1),
<b>lp</b>(1),
<b>lpadmin</b>(8),
-<b>lpoptions</b>(1),
+<a href="man-lpoptions.html?TOPIC=Man+Pages"><b>lpoptions</b>(1),</a>
<b>lpq</b>(1),
<b>lprm</b>(1),
<b>lpstat</b>(1),
<dd style="margin-left: 5.0em">Specifies a prefix string for the subject line of an email notification.
</dl>
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cupsd</b>(8),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
Copyright © 2007-2019 by Apple Inc.
Printers that do not support IPP can be supported using applications such as
<b>ippeveprinter</b>(1).
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cups-files.conf</b>(5),
-<b>cupsd.conf</b>(5),
-<b>cupsd</b>(8),
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>cupsfilter</b>(8),
<b>mime.types</b>(5),
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
string(4,PwgRaster<00>) priority(150)
</pre>
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cups-files.conf</b>(5),
-<b>cupsd.conf</b>(5),
-<b>cupsd</b>(8),
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>cupsfilter</b>(8),
<b>mime.convs</b>(5),
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
Notifiers inherit the environment and can use the logging mechanism documented in
<b>filter</b>(7).
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
-<b>cupsd</b>(8),
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
<b>filter</b>(7),
CUPS Online Help (<a href="http://localhost:631/help">http://localhost:631/help</a>)
<h2 class="title"><a name="COPYRIGHT">Copyright</a></h2>
printers.conf - printer configuration file for cups
<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
The <b>printers.conf</b> file defines the local printers that are available. It is normally located in the <i>/etc/cups</i> directory and is maintained by the
-<b>cupsd</b>(8)
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8)</a>
program. This file is not intended to be edited or managed manually.
<h2 class="title"><a name="NOTES">Notes</a></h2>
The name, location, and format of this file are an implementation detail that will change in future releases of CUPS.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>classes.conf</b>(5),
-<b>cups-files.conf</b>(5),
-<b>cupsd</b>(8),
-<b>cupsd.conf</b>(5),
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>mime.convs</b>(5),
<b>mime.types</b>(5),
<b>subscriptions.conf</b>(5),
<h2 class="title"><a name="DESCRIPTION">Description</a></h2>
The <b>subscriptions.conf</b> file defines the local event notification subscriptions that are active.
It is normally located in the <i>/etc/cups</i> directory and is maintained by the
-<b>cupsd</b>(8)
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8)</a>
program.
This file is not intended to be edited or managed manually.
<h2 class="title"><a name="NOTES">Notes</a></h2>
The name, location, and format of this file are an implementation detail that will change in future releases of CUPS.
<h2 class="title"><a name="SEE_ALSO">See Also</a></h2>
<b>classes.conf</b>(5),
-<b>cups-files.conf</b>(5),
-<b>cupsd</b>(8),
-<b>cupsd.conf</b>(5),
+<a href="man-cups-files.conf.html?TOPIC=Man+Pages"><b>cups-files.conf</b>(5),</a>
+<a href="man-cupsd.html?TOPIC=Man+Pages"><b>cupsd</b>(8),</a>
+<a href="man-cupsd.conf.html?TOPIC=Man+Pages"><b>cupsd.conf</b>(5),</a>
<b>mime.convs</b>(5),
<b>mime.types</b>(5),
<b>printers.conf</b>(5),
.\" Licensed under Apache License v2.0. See the file "LICENSE" for more
.\" information.
.\"
-.TH ipptoolfile 5 "CUPS" "5 April 2021" "Apple Inc."
+.TH ipptoolfile 5 "CUPS" "12 May 2021" "Apple Inc."
.SH NAME
ipptoolfile \- ipptool file format
.SH DESCRIPTION
Requires the \fBEXPECT\fR attribute to have the specified number of values.
.TP 5
\fBDEFINE\-MATCH \fIvariable-name\fR
-Defines the variable to "1" when the \fBEXPECT\fR condition matches. A side-effect of this predicate is that this \fBEXPECT\fR will never fail a test.
+Defines the variable to "1" when the \fBEXPECT\fR condition matches.
+A side-effect of this predicate is that this \fBEXPECT\fR will never fail a test.
.TP 5
\fBDEFINE\-NO\-MATCH \fIvariable-name\fR
-Defines the variable to "1" when the \fBEXPECT\fR condition does not match. A side-effect of this predicate is that this \fBEXPECT\fR will never fail a test.
+Defines the variable to "1" when the \fBEXPECT\fR condition does not match.
+A side-effect of this predicate is that this \fBEXPECT\fR will never fail a test.
.TP 5
\fBDEFINE\-VALUE \fIvariable-name\fR
-Defines the variable to the value of the attribute when the \fBEXPECT\fR condition matches. A side-effect of this predicate is that this \fBEXPECT\fR will never fail a test.
+Defines the variable to the value of the attribute when the \fBEXPECT\fR condition matches.
+A side-effect of this predicate is that this \fBEXPECT\fR will never fail a test.
+.TP 5
+\fBDISPLAY\-MATCH \fI"message"\fR
+Displays the specified message when the \fBEXPECT\fR condition matches.
.TP 5
\fBIF\-DEFINED \fIvariable-name\fR
Makes the \fBEXPECT\fR conditions apply only if the specified variable is defined.
*with_value_from, /* Attribute must have one of the values in this attribute */
*define_match, /* Variable to define on match */
*define_no_match, /* Variable to define on no-match */
- *define_value; /* Variable to define with value */
+ *define_value, /* Variable to define with value */
+ *display_match; /* Message to display on a match */
int repeat_limit, /* Maximum number of times to repeat */
repeat_match, /* Repeat test on match */
repeat_no_match, /* Repeat test on no match */
break;
}
+ if (found && expect->display_match && (data->output == IPPTOOL_OUTPUT_TEST || (data->output == IPPTOOL_OUTPUT_PLIST && data->outfile != cupsFileStdout())))
+ cupsFilePrintf(cupsFileStdout(), "CONT]\n\n%s\n\n %-68.68s [", expect->display_match, data->name);
+
if (found && expect->define_match)
{
_ippVarsSet(data->vars, expect->define_match, "1");
}
}
+ if (found && expect->display_match && (data->output == IPPTOOL_OUTPUT_TEST || (data->output == IPPTOOL_OUTPUT_PLIST && data->outfile != cupsFileStdout())))
+ cupsFilePrintf(cupsFileStdout(), "\n%s\n\n", expect->display_match);
+
if (found && expect->define_match)
_ippVarsSet(data->vars, expect->define_match, "1");
for (i = 0; i < data->num_statuses; i ++)
{
- if (data->statuses[i].if_defined)
- free(data->statuses[i].if_defined);
- if (data->statuses[i].if_not_defined)
- free(data->statuses[i].if_not_defined);
- if (data->statuses[i].define_match)
- free(data->statuses[i].define_match);
- if (data->statuses[i].define_no_match)
- free(data->statuses[i].define_no_match);
+ free(data->statuses[i].if_defined);
+ free(data->statuses[i].if_not_defined);
+ free(data->statuses[i].define_match);
+ free(data->statuses[i].define_no_match);
}
data->num_statuses = 0;
for (i = data->num_expects, expect = data->expects; i > 0; i --, expect ++)
{
free(expect->name);
- if (expect->of_type)
- free(expect->of_type);
- if (expect->same_count_as)
- free(expect->same_count_as);
- if (expect->if_defined)
- free(expect->if_defined);
- if (expect->if_not_defined)
- free(expect->if_not_defined);
- if (expect->with_value)
- free(expect->with_value);
- if (expect->define_match)
- free(expect->define_match);
- if (expect->define_no_match)
- free(expect->define_no_match);
- if (expect->define_value)
- free(expect->define_value);
+ free(expect->of_type);
+ free(expect->same_count_as);
+ free(expect->if_defined);
+ free(expect->if_not_defined);
+ free(expect->with_value);
+ free(expect->define_match);
+ free(expect->define_no_match);
+ free(expect->define_value);
+ free(expect->display_match);
}
data->num_expects = 0;
for (i = data->num_monitor_expects, expect = data->monitor_expects; i > 0; i --, expect ++)
{
free(expect->name);
- if (expect->of_type)
- free(expect->of_type);
- if (expect->same_count_as)
- free(expect->same_count_as);
- if (expect->if_defined)
- free(expect->if_defined);
- if (expect->if_not_defined)
- free(expect->if_not_defined);
- if (expect->with_value)
- free(expect->with_value);
- if (expect->define_match)
- free(expect->define_match);
- if (expect->define_no_match)
- free(expect->define_no_match);
- if (expect->define_value)
- free(expect->define_value);
+ free(expect->of_type);
+ free(expect->same_count_as);
+ free(expect->if_defined);
+ free(expect->if_not_defined);
+ free(expect->with_value);
+ free(expect->define_match);
+ free(expect->define_no_match);
+ free(expect->define_value);
+ free(expect->display_match);
}
data->num_monitor_expects = 0;
_cups_strcasecmp(token, "DEFINE-MATCH") &&
_cups_strcasecmp(token, "DEFINE-NO-MATCH") &&
_cups_strcasecmp(token, "DEFINE-VALUE") &&
+ _cups_strcasecmp(token, "DISPLAY-MATCH") &&
_cups_strcasecmp(token, "IF-DEFINED") &&
_cups_strcasecmp(token, "IF-NOT-DEFINED") &&
_cups_strcasecmp(token, "IN-GROUP") &&
return (0);
}
}
+ else if (!_cups_strcasecmp(token, "DISPLAY-MATCH"))
+ {
+ if (!_ippFileReadToken(f, temp, sizeof(temp)))
+ {
+ print_fatal_error(data, "Missing DISPLAY-MATCH message on line %d of \"%s\".", f->linenum, f->filename);
+ return (0);
+ }
+
+ if (data->last_expect)
+ {
+ data->last_expect->display_match = strdup(temp);
+ }
+ else
+ {
+ print_fatal_error(data, "DISPLAY-MATCH without a preceding EXPECT on line %d of \"%s\".", f->linenum, f->filename);
+ return (0);
+ }
+ }
else if (!_cups_strcasecmp(token, "DELAY"))
{
/*
* Display the prompt...
*/
- cupsFilePrintf(cupsFileStdout(), "%s\n---- PRESS ANY KEY ----", message);
+ cupsFilePrintf(cupsFileStdout(), "\n%s\n\n---- PRESS ANY KEY ----", message);
#ifdef _WIN32
/*
_cups_strcasecmp(token, "DEFINE-MATCH") &&
_cups_strcasecmp(token, "DEFINE-NO-MATCH") &&
_cups_strcasecmp(token, "DEFINE-VALUE") &&
+ _cups_strcasecmp(token, "DISPLAY-MATCH") &&
_cups_strcasecmp(token, "IF-DEFINED") &&
_cups_strcasecmp(token, "IF-NOT-DEFINED") &&
_cups_strcasecmp(token, "IN-GROUP") &&
return (0);
}
}
+ else if (!_cups_strcasecmp(token, "DISPLAY-MATCH"))
+ {
+ if (!_ippFileReadToken(f, temp, sizeof(temp)))
+ {
+ print_fatal_error(data, "Missing DISPLAY-MATCH mesaage on line %d of \"%s\".", f->linenum, f->filename);
+ return (0);
+ }
+
+ if (data->last_expect)
+ {
+ data->last_expect->display_match = strdup(temp);
+ }
+ else
+ {
+ print_fatal_error(data, "DISPLAY-MATCH without a preceding EXPECT on line %d of \"%s\".", f->linenum, f->filename);
+ return (0);
+ }
+ }
else if (!_cups_strcasecmp(token, "OF-TYPE"))
{
if (!_ippFileReadToken(f, temp, sizeof(temp)))