2 <!-- SECTION: References -->
4 <TITLE>cupsd.conf
</TITLE>
5 <LINK REL=
"STYLESHEET" TYPE=
"text/css" HREF=
"../cups-printable.css">
9 <H1 CLASS=
"title">cupsd.conf
</H1>
11 <P>The
<VAR>/etc/cups/cupsd.conf
</VAR> file contains
12 configuration
<I>directives
</I> that control how the server
13 functions. Each directive is listed on a line by itself followed
14 by its value. Comments are introduced using the number sign (
"#")
15 character at the beginning of a line.
</P>
17 <P>Since the server configuration file consists of plain text,
18 you can use your favorite text editor to make changes to it.
19 After making any changes, restart the
<CODE>cupsd(
8)
</CODE>
20 process using the startup script for your operating system:
</P>
26 /etc/init.d/cups restart
31 sudo launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist
32 sudo launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
37 <P>You can also edit this file from the CUPS web interface, which
38 automatically handles restarting the scheduler.
</P>
40 <BLOCKQUOTE><B>Note:
</B>
42 <P>The specification of time units (
"w" for weeks,
"h" for hours, etc.) in the various time interval directives is new in CUPS
1.6/OS X
10.8. Prior releases of CUPS only supported time intervals in seconds.
</P>
47 <H2 CLASS=
"title"><A NAME=
"AccessLogLevel">AccessLogLevel
</A></H2>
53 AccessLogLevel actions
59 <P>The
<CODE>AccessLogLevel
</CODE> directive controls which requests are logged
60 to the access log file. The following levels are defined:
</P>
64 <LI><CODE>config
</CODE>; Log when printers and classes are added,
65 deleted, or modified and when configuration files are accessed or
68 <LI><CODE>actions
</CODE>; Log when print jobs are submitted,
69 held, released, modified, or canceled, and any of the conditions
70 for
<CODE>config
</CODE>.
</LI>
72 <LI><CODE>all
</CODE>; Log all requests.
</LI>
76 <P>The default access log level is
<CODE>@CUPS_ACCESS_LOG_LEVEL@
</CODE>.
</P>
79 <H2 CLASS=
"title"><A NAME=
"Allow">Allow
</A></H2>
84 <Location /path
>
88 Allow from *.example.com
89 Allow from .example.com
90 Allow from host.example.com
93 Allow from nnn.nnn.nnn.*
94 Allow from nnn.nnn.nnn.nnn
95 Allow from nnn.nnn.nnn.nnn/mm
96 Allow from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
97 Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]
98 Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]/mmm
106 <P>The
<CODE>Allow
</CODE> directive specifies a hostname, IP
107 address, or network that is allowed access to the server.
108 <CODE>Allow
</CODE> directives are cumulative, so multiple
109 <CODE>Allow
</CODE> directives can be used to allow access for
110 multiple hosts or networks.
</P>
112 <P>Host and domain name matching require that you enable the
<A
113 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
116 <P>The
<CODE>/mm
</CODE> notation specifies a CIDR netmask, as shown in
117 <A HREF=
"#TABLE1">Table
1</A>.
</P>
119 <DIV CLASS=
"table"><TABLE SUMMARY=
"CIDR Netmasks">
120 <CAPTION>Table
1:
<A NAME=
"TABLE1">CIDR Netmasks
</A></CAPTION>
122 <TH WIDTH=
"10%">mm
</TH>
123 <TH WIDTH=
"20%">netmask
</TH>
124 <TH WIDTH=
"10%">mm
</TH>
125 <TH WIDTH=
"20%">netmask
</TH>
128 <TD ALIGN=
"CENTER">0</TD>
129 <TD ALIGN=
"CENTER">0.0.0.0</TD>
130 <TD ALIGN=
"CENTER">8</TD>
131 <TD ALIGN=
"CENTER">255.0.0.0</TD>
134 <TD ALIGN=
"CENTER">1</TD>
135 <TD ALIGN=
"CENTER">128.0.0.0</TD>
136 <TD ALIGN=
"CENTER">16</TD>
137 <TD ALIGN=
"CENTER">255.255.0.0</TD>
140 <TD ALIGN=
"CENTER">2</TD>
141 <TD ALIGN=
"CENTER">192.0.0.0</TD>
142 <TD ALIGN=
"CENTER">24</TD>
143 <TD ALIGN=
"CENTER">255.255.255.0</TD>
146 <TD ALIGN=
"CENTER">...
</TD>
147 <TD ALIGN=
"CENTER">...
</TD>
148 <TD ALIGN=
"CENTER">32</TD>
149 <TD ALIGN=
"CENTER">255.255.255.255</TD>
153 <P>The
<CODE>@LOCAL
</CODE> name will allow access from all local
154 interfaces. The
<CODE>@IF(name)
</CODE> name will allow access
155 from the named interface. In both cases, CUPS only allows access
156 from the network that the interface(s) are configured for -
157 requests arriving on the interface from a foreign network will
158 <em>not
</em> be accepted.
</P>
160 <P>The
<CODE>Allow
</CODE> directive must appear inside a
<A
161 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
162 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
165 <H2 CLASS=
"title"><A NAME=
"AuthType">AuthType
</A></H2>
169 <PRE CLASS=
"command">
170 <Location /path
>
182 <P>The
<CODE>AuthType
</CODE> directive defines the type of
183 authentication to perform:
</P>
187 <LI><CODE>None
</CODE> - No authentication should be
188 performed (default)
</LI>
190 <LI><CODE>Basic
</CODE> - Basic authentication should be
191 performed using the UNIX password and group files
</LI>
193 <LI><CODE>Digest
</CODE> - Digest authentication should be
194 performed using the
<VAR>/etc/cups/passwd.md5
</VAR>
197 <LI><CODE>BasicDigest
</CODE> - Basic authentication
198 should be performed using the
199 <VAR>/etc/cups/passwd.md5
</VAR> file
</LI>
201 <LI><CODE>Negotiate
</CODE> - Kerberos authentication
202 should be performed
</LI>
206 <P>When using
<CODE>Basic
</CODE>,
<CODE>Digest
</CODE>,
207 <CODE>BasicDigest
</CODE>, or
<CODE>Negotiate
</CODE> authentication,
208 clients connecting through the
<CODE>localhost
</CODE> interface can
209 also authenticate using certificates.
</P>
211 <P>The
<CODE>AuthType
</CODE> directive must appear inside a
<A
212 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
213 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
216 <H2 CLASS=
"title"><A NAME=
"AutoPurgeJobs">AutoPurgeJobs
</A></H2>
220 <PRE CLASS=
"command">
227 <P>The
<CODE>AutoPurgeJobs
</CODE> directive specifies whether or
228 not to purge completed jobs once they are no longer required for
229 quotas. This option has no effect if quotas are not enabled. The
230 default setting is
<CODE>No
</CODE>.
</P>
233 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"BrowseLocalProtocols">BrowseLocalProtocols
</A></H2>
237 <PRE CLASS=
"command">
238 BrowseLocalProtocols all
239 BrowseLocalProtocols none
240 BrowseLocalProtocols dnssd
245 <P>The
<CODE>BrowseLocalProtocols
</CODE> directive specifies the protocols to use when advertising local shared printers on the network. Multiple protocols can be specified by separating them with spaces. The default is
"<CODE>dnssd</CODE>" on systems that support Bonjour and
"<CODE>none</CODE>" on all others.
</P>
248 <H2 CLASS=
"title"><A NAME=
"BrowseWebIF">BrowseWebIF
</A></H2>
252 <PRE CLASS=
"command">
259 <P>The
<CODE>BrowseWebIF
</CODE> directive controls whether the CUPS web
260 interface is advertised via DNS-SD. The default setting is
261 <CODE>Off
</CODE>.
</P>
264 <H2 CLASS=
"title"><A NAME=
"Browsing">Browsing
</A></H2>
268 <PRE CLASS=
"command">
275 <P>The
<CODE>Browsing
</CODE> directive controls whether or not printer sharing is enabled. The default setting is
<CODE>On
</CODE>.
</P>
278 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Classification">Classification
</A></H2>
282 <PRE CLASS=
"command">
284 Classification classified
285 Classification confidential
286 Classification secret
287 Classification topsecret
288 Classification unclassified
293 <P>The
<CODE>Classification
</CODE> directive sets the
294 classification level on the server. When this option is set, at
295 least one of the banner pages is forced to the classification
296 level, and the classification is placed on each page of output.
297 The default is no classification level.
</P>
300 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"ClassifyOverride">ClassifyOverride
</A></H2>
304 <PRE CLASS=
"command">
311 <P>The
<CODE>ClassifyOverride
</CODE> directive specifies whether
312 users can override the default classification level on the
313 server. When the server classification is set, users can change
314 the classification using the
<CODE>job-sheets
</CODE> option and
315 can choose to only print one security banner before or after the
316 job. If the
<CODE>job-sheets
</CODE> option is set to
317 <CODE>none
</CODE> then the server default classification is
320 <P>The default is to not allow classification overrides.
</P>
323 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"DefaultAuthType">DefaultAuthType
</A></H2>
327 <PRE CLASS=
"command">
328 DefaultAuthType Basic
329 DefaultAuthType BasicDigest
330 DefaultAuthType Digest
331 DefaultAuthType Negotiate
336 <P>The
<CODE>DefaultAuthType
</CODE> directive specifies the type
337 of authentication to use for IPP operations that require a
338 username. The default is
<CODE>Basic
</CODE>.
</P>
341 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"DefaultEncryption">DefaultEncryption
</A></H2>
345 <PRE CLASS=
"command">
346 DefaultEncryption Never
347 DefaultEncryption IfRequested
348 DefaultEncryption Required
353 <P>The
<CODE>DefaultEncryption
</CODE> directive specifies the
354 type of encryption to use when performing authentication. The
355 default is
<CODE>Required
</CODE>.
</P>
358 <H2 CLASS=
"title"><A NAME=
"DefaultLanguage">DefaultLanguage
</A></H2>
362 <PRE CLASS=
"command">
372 <P>The
<CODE>DefaultLanguage
</CODE> directive specifies the
373 default language to use for client connections. Setting the
374 default language also sets the default character set if a
375 language localization file exists for it. The default language
376 is
"en" for English.
</P>
379 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/OS X
10.6</SPAN><A NAME=
"DefaultPaperSize">DefaultPaperSize
</A></H2>
383 <PRE CLASS=
"command">
384 DefaultPaperSize Letter
386 DefaultPaperSize Auto
387 DefaultPaperSize None
392 <P>The
<CODE>DefaultPaperSize
</CODE> directive specifies the default paper
393 size to use when creating new printers. The default is
<CODE>Auto
</CODE>
394 which uses a paper size appropriate for the system default locale. A value
395 of
<CODE>None
</CODE> tells the scheduler to not set the default paper
399 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"DefaultPolicy">DefaultPolicy
</A></H2>
403 <PRE CLASS=
"command">
404 DefaultPolicy default
405 DefaultPolicy authenticated
411 <P>The
<CODE>DefaultPolicy
</CODE> directive specifies the default
412 policy to use for IPP operation. The default is
413 <CODE>default
</CODE>. CUPS also includes a policy called
414 <CODE>authenticated
</CODE> that requires a username and password for printing
415 and other job operations.
</P>
418 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"DefaultShared">DefaultShared
</A></H2>
422 <PRE CLASS=
"command">
429 <P>The
<CODE>DefaultShared
</CODE> directive specifies whether printers are shared (published) by default. The default is
<CODE>Yes
</CODE>.
</P>
432 <H2 CLASS=
"title"><A NAME=
"Deny">Deny
</A></H2>
436 <PRE CLASS=
"command">
437 <Location /path
>
441 Deny from *.example.com
442 Deny from .example.com
443 Deny from host.example.com
446 Deny from nnn.nnn.nnn.*
447 Deny from nnn.nnn.nnn.nnn
448 Deny from nnn.nnn.nnn.nnn/mm
449 Deny from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
450 Deny from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]
451 Deny from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]/mmm
459 <P>The
<CODE>Deny
</CODE> directive specifies a hostname, IP
460 address, or network that is denied access to the server.
461 <CODE>Deny
</CODE> directives are cumulative, so multiple
462 <CODE>Deny
</CODE> directives can be used to deny access for
463 multiple hosts or networks.
</P>
465 <P>Host and domain name matching require that you enable the
<A
466 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
469 <P>The
<CODE>/mm
</CODE> notation specifies a CIDR netmask, a shown in
470 <A HREF=
"TABLE1">Table
1</A>.
</P>
472 <P>The
<CODE>@LOCAL
</CODE> name will deny access from all local
473 interfaces. The
<CODE>@IF(name)
</CODE> name will deny access from
474 the named interface. In both cases, CUPS only denies access from
475 the network that the interface(s) are configured for - requests
476 arriving on the interface from a foreign network will
477 <em>not
</em> be denied.
</P>
479 <P>The
<CODE>Deny
</CODE> directive must appear inside a
<A
480 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
481 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
484 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/OS X
10.6</SPAN><A NAME=
"DirtyCleanInterval">DirtyCleanInterval
</A></H2>
488 <PRE CLASS=
"command">
489 DirtyCleanInterval
1w
490 DirtyCleanInterval
1d
491 DirtyCleanInterval
1h
492 DirtyCleanInterval
1m
493 DirtyCleanInterval
30
499 <P>The
<CODE>DirtyCleanInterval
</CODE> directive specifies the amount of time to wait before updating configuration and state files for printers, classes, subscriptions, and jobs in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix). A value of
<CODE>0</CODE> causes the update to occur as soon as possible, typically within a few milliseconds.
</P>
501 <P>The default value is
<CODE>30</CODE> (
30 seconds).
</P>
504 <H2 CLASS=
"title"><A NAME=
"Encryption">Encryption
</A></H2>
508 <PRE CLASS=
"command">
509 <Location /path
>
512 Encryption IfRequested
519 <P>The
<CODE>Encryption
</CODE> directive must appear instead a
<A
520 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
521 HREF=
"#Limit"><CODE>Limit
</CODE></A> section and specifies the
522 encryption settings for that location. The default setting is
523 <CODE>IfRequested
</CODE> for all locations.
</P>
526 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.3/OS X
10.5</SPAN><A NAME=
"ErrorPolicy">ErrorPolicy
</A></H2>
530 <PRE CLASS=
"command">
531 ErrorPolicy abort-job
532 ErrorPolicy retry-job
533 ErrorPolicy stop-printer
538 <P>The
<CODE>ErrorPolicy
</CODE> directive defines the default policy that
539 is used when a backend is unable to send a print job to the
542 <P>The following values are supported:
</P>
546 <LI><CODE>abort-job
</CODE> - Abort the job and proceed
547 with the next job in the queue
</LI>
549 <LI><CODE>retry-job
</CODE> - Retry the job after waiting
550 for N seconds; the
<VAR>cupsd.conf
</VAR> <A
551 HREF=
"#JobRetryInterval"><CODE>JobRetryInterval
</CODE></A>
552 directive controls the value of N
</LI>
554 <LI><CODE>retry-this-job
</CODE> - Retry the current job immediately
555 and indefinitely.
</LI>
557 <LI><CODE>stop-printer
</CODE> - Stop the printer and keep
558 the job for future printing; this is the default
564 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.3</SPAN><A NAME=
"FilterLimit">FilterLimit
</A></H2>
568 <PRE CLASS=
"command">
576 <P>The
<CODE>FilterLimit
</CODE> directive sets the maximum cost
577 of all running job filters. It can be used to limit the number of
578 filter programs that are run on a server to minimize disk,
579 memory, and CPU resource problems. A limit of
0 disables filter
582 <P>An average print to a non-PostScript printer needs a filter
583 limit of about
200. A PostScript printer needs about half that
584 (
100). Setting the limit below these thresholds will effectively
585 limit the scheduler to printing a single job at any time.
</P>
587 <P>The default limit is
0.
</P>
590 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"FilterNice">FilterNice
</A></H2>
594 <PRE CLASS=
"command">
602 <P>The
<CODE>FilterNice
</CODE> directive sets the
<B>nice(
1)
</B>
603 value to assign to filter processes. The nice value ranges from
604 0, the highest priority, to
19, the lowest priority. The default
608 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.6/OS X
10.8</SPAN><A NAME=
"GSSServiceName">GSSServiceName
</A></H2>
612 <PRE CLASS=
"command">
619 <P>The
<CODE>GSSServiceName
</CODE> directive sets the Kerberos service name to use. The default is
<CODE>http
</CODE> for compatibility with Microsoft Windows.
</P>
622 <H2 CLASS=
"title"><A NAME=
"HostNameLookups">HostNameLookups
</A></H2>
626 <PRE CLASS=
"command">
629 HostNameLookups Double
634 <P>The
<CODE>HostNameLookups
</CODE> directive controls whether or
635 not CUPS looks up the hostname for connecting clients. The
636 <CODE>Double
</CODE> setting causes CUPS to verify that the
637 hostname resolved from the address matches one of the addresses
638 returned for that hostname.
<CODE>Double
</CODE> lookups also
639 prevent clients with unregistered addresses from connecting to
642 <P>The default is
<CODE>Off
</CODE> to avoid the potential server
643 performance problems with hostname lookups. Set this option to
644 <CODE>On
</CODE> or
<CODE>Double
</CODE> only if absolutely
648 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.9</SPAN><A NAME=
"Include">Include
</A></H2>
652 <PRE CLASS=
"command">
654 Include /foo/bar/filename
659 <P>The
<CODE>Include
</CODE> directive includes the named file in
660 the
<CODE>cupsd.conf
</CODE> file. If no leading path is provided,
661 the file is assumed to be relative to the
<A
662 HREF=
"ref-cups-files-conf.html#ServerRoot"><CODE>ServerRoot
</CODE></A> directory.
</P>
665 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.5</SPAN><A NAME=
"JobPrivateAccess">JobPrivateAccess
</A></H2>
669 <PRE CLASS=
"command">
671 JobPrivateAccess default
672 JobPrivateAccess {user|@group|@ACL|@OWNER|@SYSTEM}+
677 <P>The
<CODE>JobPrivateAccess
</CODE> directive specifies the access list for a
678 job's private values. The
"default" access list is
"@OWNER @SYSTEM".
"@ACL" maps
679 to the printer's requesting-user-name-allowed or requesting-user-name-denied
682 <P>The
<CODE>JobPrivateAccess
</CODE> directive must appear inside a
<A
683 HREF=
"#Policy"><CODE>Policy
</CODE></A> section.
</P>
686 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.5</SPAN><A NAME=
"JobPrivateValues">JobPrivateValues
</A></H2>
690 <PRE CLASS=
"command">
692 JobPrivateValues default
693 JobPrivateValues none
694 JobPrivateValues attribute-name-
1 [ ... attribute-name-N ]
699 <P>The
<CODE>JobPrivateValues
</CODE> directive specifies the list of job values
700 to make private. The
"default" values are
"job-name",
701 "job-originating-host-name",
"job-originating-user-name", and
"phone".
</P>
703 <P>The
<CODE>JobPrivateValues
</CODE> directive must appear inside a
<A
704 HREF=
"#Policy"><CODE>Policy
</CODE></A> section.
</P>
707 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"JobRetryInterval">JobRetryInterval
</A></H2>
711 <PRE CLASS=
"command">
721 <P>The
<CODE>JobRetryInterval
</CODE> directive specifies the amount of time to wait before retrying a job in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix). This is typically used for fax queues but can also be used with normal print queues whose error policy is
<CODE>retry-job
</CODE> or
<CODE>retry-current-job
</CODE>.
</P>
723 <P>The default is
<CODE>30</CODE> (
30 seconds).
</P>
726 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/OS X
10.6</SPAN><A NAME=
"JobKillDelay">JobKillDelay
</A></H2>
730 <PRE CLASS=
"command">
740 <P>The
<CODE>JobKillDelay
</CODE> directive specifies the amount of time to wait before killing the filters and backend associated with a canceled or held job in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
742 <P>The default is
<CODE>30</CODE> (
30 seconds).
</P>
745 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"JobRetryLimit">JobRetryLimit
</A></H2>
749 <PRE CLASS=
"command">
756 <P>The
<CODE>JobRetryLimit
</CODE> directive specifies the maximum
757 number of times the scheduler will try to print a job. This is
758 typically used for fax queues but can also be used with normal
759 print queues whose error policy is
<CODE>retry-job
</CODE>. The
760 default is
5 times.
</P>
763 <H2 CLASS=
"title"><A NAME=
"KeepAlive">KeepAlive
</A></H2>
767 <PRE CLASS=
"command">
774 <P>The
<CODE>KeepAlive
</CODE> directive controls whether or not
775 to support persistent HTTP connections. The default is
778 <P>HTTP/
1.1 clients automatically support persistent connections,
779 while HTTP/
1.0 clients must specifically request them using the
780 <CODE>Keep-Alive
</CODE> attribute in the
<CODE>Connection:
</CODE>
781 field of each request.
</P>
784 <H2 CLASS=
"title"><A NAME=
"KeepAliveTimeout">KeepAliveTimeout
</A></H2>
788 <PRE CLASS=
"command">
798 <P>The
<CODE>KeepAliveTimeout
</CODE> directive controls how long a persistent HTTP connection will remain open after the last request in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
800 <P>The default is
<CODE>30</CODE> (
30 seconds).
</P>
803 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Limit">Limit (Location)
</A></H2>
807 <PRE CLASS=
"command">
808 <Location /path
>
809 <Limit GET POST
>
821 <P>The
<CODE>Limit
</CODE> directive groups access control
822 directives for specific types of HTTP requests and must appear
823 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> section.
824 Access can be limited for individual request types
825 (
<CODE>DELETE
</CODE>,
<CODE>GET
</CODE>,
<CODE>HEAD
</CODE>,
826 <CODE>OPTIONS
</CODE>,
<CODE>POST
</CODE>,
<CODE>PUT
</CODE>, and
827 <CODE>TRACE
</CODE>) or for all request types (
<CODE>ALL
</CODE>).
828 The request type names are case-sensitive for compatibility with
832 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"LimitIPP">Limit (Policy)
</A></H2>
836 <PRE CLASS=
"command">
838 <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer
>
850 <P>When included in
<A HREF=
"#Policy"><CODE>Policy
</CODE></A>
851 sections, the
<CODE>Limit
</CODE> directive groups access control
852 directives for specific IPP operations. Multiple operations can
853 be listed, separated by spaces. Table
2 lists the supported
856 <DIV CLASS=
"table"><TABLE SUMMARY=
"Supported IPP Operations">
857 <CAPTION>Table
2:
<A NAME=
"TABLE2">Supported IPP Operations
</A></CAPTION>
860 <TH>Operation Name
</TH>
867 <TD>All operations - used as the default limit for
868 operations that are not listed
</TD>
872 <TD>Cancel a job
</TD>
875 <TD>Cancel-Subscription
</TD>
876 <TD>Cancel a subscription
</TD>
880 <TD>Create a new, empty job
</TD>
883 <TD>Create-Job-Subscription
</TD>
884 <TD>Creates a notification subscription on a job
</TD>
887 <TD>Create-Printer-Subscription
</TD>
888 <TD>Creates a notification subscription on a printer
</TD>
891 <TD>CUPS-Accept-Jobs
</TD>
892 <TD>Sets the printer-is-accepting-jobs value for a printer to true
</TD>
895 <TD>CUPS-Add-Modify-Class
</TD>
896 <TD>Adds or modifies a class
</TD>
899 <TD>CUPS-Add-Modify-Printer
</TD>
900 <TD>Adds or modifies a printer
</TD>
903 <TD>CUPS-Authenticate-Job
</TD>
904 <TD>Authenticates a job for printing
</TD>
907 <TD>CUPS-Delete-Class
</TD>
908 <TD>Deletes a class
</TD>
911 <TD>CUPS-Delete-Printer
</TD>
912 <TD>Deletes a printer
</TD>
915 <TD>CUPS-Get-Classes
</TD>
916 <TD>Gets a list of classes
</TD>
919 <TD>CUPS-Get-Default
</TD>
920 <TD>Gets the (network/server) default printer or class
</TD>
923 <TD>CUPS-Get-Devices
</TD>
924 <TD>Gets a list of available devices
</TD>
927 <TD>CUPS-Get-PPDs
</TD>
928 <TD>Gets a list of available manufacturers or drivers
</TD>
931 <TD>CUPS-Get-Printers
</TD>
932 <TD>Gets a list of printers and/or classes
</TD>
935 <TD>CUPS-Move-Job
</TD>
936 <TD>Moves a job to a new destination
</TD>
939 <TD>CUPS-Reject-Jobs
</TD>
940 <TD>Sets the printer-is-accepting-jobs value for a printer to false
</TD>
943 <TD>CUPS-Set-Default
</TD>
944 <TD>Sets the network/server default printer or class
</TD>
947 <TD>Disable-Printer
</TD>
948 <TD>Sets the printer-state value for a printer to stopped
</TD>
951 <TD>Enable-Printer
</TD>
952 <TD>Sets the printer-state value for a printer to idle/processing
</TD>
955 <TD>Get-Job-Attributes
</TD>
956 <TD>Gets information about a job
</TD>
960 <TD>Gets a list of jobs
</TD>
963 <TD>Get-Notifications
</TD>
964 <TD>Gets a list of events
</TD>
967 <TD>Get-Printer-Attributes
</TD>
968 <TD>Gets information about a printer or class
</TD>
971 <TD>Get-Subscription-Attributes
</TD>
972 <TD>Gets information about a notification subscription
</TD>
975 <TD>Get-Subscriptions
</TD>
976 <TD>Gets a list of notification subscriptions
</TD>
980 <TD>Holds a job for printing
</TD>
983 <TD>Pause-Printer
</TD>
984 <TD>Sets the printer-state value for a printer to stopped
</TD>
988 <TD>Creates a job with a single file for printing
</TD>
992 <TD>Removes all jobs from a printer
</TD>
996 <TD>Releases a previously held job for printing
</TD>
999 <TD>Renew-Subscription
</TD>
1000 <TD>Renews a notification subscription
</TD>
1003 <TD>Restart-Job
</TD>
1004 <TD>Reprints a job
</TD>
1007 <TD>Resume-Printer
</TD>
1008 <TD>Sets the printer-state value for a printer to idle/processing
</TD>
1011 <TD>Send-Document
</TD>
1012 <TD>Adds a file to an job created with Create-Job
</TD>
1015 <TD>Set-Job-Attributes
</TD>
1016 <TD>Changes job options
</TD>
1019 <TD>Validate-Job
</TD>
1020 <TD>Validates job options prior to printing
</TD>
1026 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"LimitExcept">LimitExcept
</A></H2>
1030 <PRE CLASS=
"command">
1031 <Location /path
>
1032 <LimitExcept GET POST
>
1034 </LimitExcept
>
1038 <H3>Description
</H3>
1040 <P>The
<CODE>LimitExcept
</CODE> directive groups access control
1041 directives for specific types of HTTP requests and must appear
1042 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> section.
1043 Unlike the
<A HREF=
"#Limit"><CODE>Limit
</CODE></A> directive,
1044 <CODE>LimitExcept
</CODE> restricts access for all requests
1045 <I>except
</I> those listed on the
<CODE>LimitExcept
</CODE>
1049 <H2 CLASS=
"title"><A NAME=
"LimitRequestBody">LimitRequestBody
</A></H2>
1053 <PRE CLASS=
"command">
1054 LimitRequestBody
10485760
1055 LimitRequestBody
10m
1059 <H3>Description
</H3>
1061 <P>The
<CODE>LimitRequestBody
</CODE> directive controls the
1062 maximum size of print files, IPP requests, and HTML form data in
1063 HTTP POST requests. The default limit is
0 which disables the
1067 <H2 CLASS=
"title"><A NAME=
"Listen">Listen
</A></H2>
1071 <PRE CLASS=
"command">
1072 Listen
127.0.0.1:
631
1073 Listen
192.0.2.1:
631
1078 <H3>Description
</H3>
1080 <P>The
<CODE>Listen
</CODE> directive specifies a network address
1081 and port to listen for connections. Multiple
<CODE>Listen
</CODE>
1082 directives can be provided to listen on multiple addresses.
</P>
1084 <P>The
<CODE>Listen
</CODE> directive is similar to the
<A
1085 HREF=
"#Port"><CODE>Port
</CODE></A> directive but allows you to
1086 restrict access to specific interfaces or networks.
</P>
1089 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"ListenBackLog">ListenBackLog
</A></H2>
1093 <PRE CLASS=
"command">
1098 <H3>Description
</H3>
1100 <P>The
<CODE>ListenBackLog
</CODE> directive sets the maximum
1101 number of pending connections the scheduler will allow. This
1102 normally only affects very busy servers that have reached the
<A
1103 HREF=
"#MaxClients"><CODE>MaxClients
</CODE></A> limit, but can
1104 also be triggered by large numbers of simultaneous connections.
1105 When the limit is reached, the operating system will refuse
1106 additional connections until the scheduler can accept the pending
1107 ones. The default is the OS-defined default limit, typically
1108 either
5 for older operating systems or
128 for newer operating
1112 <H2 CLASS=
"title"><A NAME=
"Location">Location
</A></H2>
1116 <PRE CLASS=
"command">
1121 <Location /admin
>
1125 <Location /admin/conf
>
1129 <Location /admin/log
>
1133 <Location /classes
>
1137 <Location /classes/name
>
1141 <Location /jobs
>
1145 <Location /printers
>
1149 <Location /printers/name
>
1155 <H3>Description
</H3>
1157 <P>The
<CODE>Location
</CODE> directive specifies access control
1158 and authentication options for the specified HTTP resource or
1159 path. The
<A HREF=
"#Allow"><CODE>Allow
</CODE></A>,
<A
1160 HREF=
"#AuthType"><CODE>AuthType
</CODE></A>,
<A
1161 HREF=
"#Deny"><CODE>Deny
</CODE></A>,
<A
1162 HREF=
"#Encryption"><CODE>Encryption
</CODE></A>,
<A
1163 HREF=
"#Limit"><CODE>Limit
</CODE></A>,
<A
1164 HREF=
"#LimitExcept"><CODE>LimitExcept
</CODE></A>,
<A
1165 HREF=
"#Order"><CODE>Order
</CODE></A>,
<A
1166 HREF=
"#Require"><CODE>Require
</CODE></A>, and
<A
1167 HREF=
"#Satisfy"><CODE>Satisfy
</CODE></A> directives may all
1168 appear inside a location.
</P>
1170 <P>Note that more specific resources override the less specific
1171 ones. So the directives inside the
<CODE>/printers/name
</CODE>
1172 location will override ones from
<CODE>/printers
</CODE>.
1173 Directives inside
<CODE>/printers
</CODE> will override ones from
1174 <CODE>/
</CODE>. None of the directives are inherited.
</P>
1176 <DIV CLASS=
"table"><TABLE SUMMARY=
"Common Locations on the Server">
1177 <CAPTION>Table
3:
<A NAME=
"TABLE3">Common Locations on the Server
</A></CAPTION>
1179 <TR><TH>Location
</TH><TH>Description
</TH></TR>
1182 <TR><TD><CODE>/
</CODE></TD><TD>The path for all get operations (get-printers, get-jobs, etc.)
</TD></TR>
1183 <TR><TD><CODE>/admin
</CODE></TD><TD>The path for all administration operations (add-printer, delete-printer, start-printer, etc.)
</TD></TR>
1184 <TR><TD><CODE>/admin/conf
</CODE></TD><TD>The path for access to the CUPS configuration files (cupsd.conf, client.conf, etc.)
</TD></TR>
1185 <TR><TD><CODE>/admin/log
</CODE></TD><TD>The path for access to the CUPS log files (access_log, error_log, page_log)
</TD></TR>
1186 <TR><TD><CODE>/classes
</CODE></TD><TD>The path for all classes
</TD></TR>
1187 <TR><TD><CODE>/classes/name
</CODE></TD><TD>The resource for class
<CODE>name
</CODE></TD></TR>
1188 <TR><TD><CODE>/jobs
</CODE></TD><TD>The path for all jobs (hold-job, release-job, etc.)
</TD></TR>
1189 <TR><TD><CODE>/jobs/id
</CODE></TD><TD>The resource for job
<CODE>id
</CODE></TD></TR>
1190 <TR><TD><CODE>/printers
</CODE></TD><TD>The path for all printers
</TD></TR>
1191 <TR><TD><CODE>/printers/name
</CODE></TD><TD>The path for printer
<CODE>name
</CODE></TD></TR>
1192 <TR><TD><CODE>/printers/name.ppd
</CODE></TD><TD>The PPD file path for printer
<CODE>name
</CODE></TD></TR>
1197 <H2 CLASS=
"title"><A NAME=
"LogDebugHistory">LogDebugHistory
</A></H2>
1201 <PRE CLASS=
"command">
1206 <H3>Description
</H3>
1208 <P>When
<A HREF=
"#LogLevel"><CODE>LogLevel
</CODE></A> is not set to
1209 <CODE>debug
</CODE> or
<CODE>debug2
</CODE>, the
<CODE>LogDebugHistory
</CODE>
1210 directive specifies the number of debugging messages that are logged when an
1211 error occurs during printing. The default is
200 messages. A value of
0
1212 disables debugging history entirely and is not recommended.
</P>
1215 <H2 CLASS=
"title"><A NAME=
"LogLevel">LogLevel
</A></H2>
1219 <PRE CLASS=
"command">
1232 <H3>Description
</H3>
1234 <P>The
<CODE>LogLevel
</CODE> directive specifies the level of
1235 logging for the
<A HREF=
"ref-cups-files-conf.html#ErrorLog"><CODE>ErrorLog
</CODE></A>
1236 file. The following values are recognized (each level logs
1237 everything under the preceding levels):
</P>
1241 <LI><CODE>none
</CODE> - Log nothing
</LI>
1243 <LI><CODE>emerg
</CODE> - Log emergency conditions that
1244 prevent the server from running
</LI>
1246 <LI><CODE>alert
</CODE> - Log alerts that must be handled
1249 <LI><CODE>crit
</CODE> - Log critical errors that don't
1250 prevent the server from running
</LI>
1252 <LI><CODE>error
</CODE> - Log general errors
</LI>
1254 <LI><CODE>warn
</CODE> - Log errors and warnings
</LI>
1256 <LI><CODE>notice
</CODE> - Log temporary error conditions
</LI>
1258 <LI><CODE>info
</CODE> - Log all requests and state
1261 <LI><CODE>debug
</CODE> - Log basic debugging
1264 <LI><CODE>debug2
</CODE> - Log all debugging
1269 <p>The default
<code>LogLevel
</code> is
<code>@CUPS_LOG_LEVEL@
</code>.
</p>
1272 <H2 CLASS=
"title"><A NAME=
"LogTimeFormat">LogTimeFormat
</A></H2>
1276 <PRE CLASS=
"command">
1277 LogTimeFormat standard
1281 <H3>Description
</H3>
1283 <P>The
<CODE>LogTimeFormat
</CODE> directive specifies the format used for the
1284 date and time in the log files.
<CODE>Standard
</CODE> uses the standard Apache
1285 Common Log Format date and time while
<CODE>usecs
</CODE> adds microseconds.
1286 The default is
<CODE>standard
</CODE>.
</P>
1289 <H2 CLASS=
"title"><A NAME=
"MaxClients">MaxClients
</A></H2>
1293 <PRE CLASS=
"command">
1298 <H3>Description
</H3>
1300 <P>The
<CODE>MaxClients
</CODE> directive controls the maximum
1301 number of simultaneous clients that will be allowed by the
1302 server. The default is
100 clients.
</P>
1304 <BLOCKQUOTE><B>Note:
</B>
1306 <P>Since each print job requires a file descriptor for the status
1307 pipe, the scheduler internally limits the
<CODE>MaxClients
</CODE>
1308 value to
1/
3 of the available file descriptors to avoid possible
1309 problems when printing large numbers of jobs.
</P>
1314 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.18</SPAN><A NAME=
"MaxClientsPerHost">MaxClientsPerHost
</A></H2>
1318 <PRE CLASS=
"command">
1319 MaxClientsPerHost
10
1322 <H3>Description
</H3>
1324 <P>The
<CODE>MaxClientsPerHost
</CODE> directive controls the
1325 maximum number of simultaneous clients that will be allowed from
1326 a single host by the server. The default is the
1327 <CODE>MaxClients
</CODE> value.
</P>
1329 <P>This directive provides a small measure of protection against
1330 Denial of Service attacks from a single host.
</P>
1333 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"MaxCopies">MaxCopies
</A></H2>
1337 <PRE CLASS=
"command">
1342 <H3>Description
</H3>
1344 <P>The
<CODE>MaxCopies
</CODE> directive controls the maximum
1345 number of copies that a user can print of a job. The default is
1346 @CUPS_MAX_COPIES@ copies.
</P>
1348 <BLOCKQUOTE><B>Note:
</B>
1350 <P>Most HP PCL laser printers internally limit the number of
1356 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.6/OS X
10.8</SPAN><A NAME=
"MaxHoldTime">MaxHoldTime
</A></H2>
1360 <PRE CLASS=
"command">
1367 <H3>Description
</H3>
1369 <P>The
<CODE>MaxHoldTime
</CODE> directive controls the maximum number of seconds allowed for a job to remain in the
"indefinite" hold state. The job is canceled automatically if it remains held indefinitely longer than the specified time interval in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
1371 <p>The default setting is
<CODE>0</CODE> which disables this functionality.
</P>
1374 <H2 CLASS=
"title"><A NAME=
"MaxJobs">MaxJobs
</A></H2>
1378 <PRE CLASS=
"command">
1384 <H3>Description
</H3>
1386 <P>The
<CODE>MaxJobs
</CODE> directive controls the maximum number
1387 of jobs that are kept in memory. Once the number of jobs reaches
1388 the limit, the oldest completed job is automatically purged from
1389 the system to make room for the new one. If all of the known jobs
1390 are still pending or active then the new job will be
1393 <P>Setting the maximum size to
0 disables this functionality. The
1394 default setting is
500.
</P>
1397 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"MaxJobsPerPrinter">MaxJobsPerPrinter
</A></H2>
1401 <PRE CLASS=
"command">
1402 MaxJobsPerPrinter
100
1403 MaxJobsPerPrinter
9999
1407 <H3>Description
</H3>
1409 <P>The
<CODE>MaxJobsPerPrinter
</CODE> directive controls the
1410 maximum number of active jobs that are allowed for each printer
1411 or class. Once a printer or class reaches the limit, new jobs
1412 will be rejected until one of the active jobs is completed,
1413 stopped, aborted, or canceled.
</P>
1415 <P>Setting the maximum to
0 disables this functionality. The
1416 default setting is
0.
</P>
1419 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"MaxJobsPerUser">MaxJobsPerUser
</A></H2>
1423 <PRE CLASS=
"command">
1429 <H3>Description
</H3>
1431 <P>The
<CODE>MaxJobsPerUser
</CODE> directive controls the maximum
1432 number of active jobs that are allowed for each user. Once a user
1433 reaches the limit, new jobs will be rejected until one of the
1434 active jobs is completed, stopped, aborted, or canceled.
</P>
1436 <P>Setting the maximum to
0 disables this functionality. The
1437 default setting is
0.
</P>
1440 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.6/OS X
10.8</SPAN><A NAME=
"MaxJobTime">MaxJobTime
</A></H2>
1444 <PRE CLASS=
"command">
1451 <H3>Description
</H3>
1453 <P>The
<CODE>MaxJobTime
</CODE> directive controls the maximum number of
1454 seconds allowed for a job to complete printing before it is considered
"stuck".
1455 The job is canceled automatically if it takes longer than the specified time to complete in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
1457 <p>Setting the maximum time to
<CODE>0</CODE> disables this functionality. The default setting is
<CODE>3h
</CODE> (
3 hours).
</P>
1460 <H2 CLASS=
"title"><A NAME=
"MaxLogSize">MaxLogSize
</A></H2>
1464 <PRE CLASS=
"command">
1470 <H3>Description
</H3>
1472 <P>The
<CODE>MaxLogSize
</CODE> directive controls the maximum
1473 size of each log file. Once a log file reaches or exceeds the
1474 maximum size it is closed and renamed to
<VAR>filename.O
</VAR>.
1475 This allows you to rotate the logs automatically. The default
1476 size is
1048576 bytes (
1MB).
</P>
1478 <P>Setting the maximum size to
0 disables log rotation.
</P>
1481 <H2 CLASS=
"title"><SPAN CLASS=
"info">Deprecated
</SPAN><A NAME=
"MaxRequestSize">MaxRequestSize
</A></H2>
1485 <PRE CLASS=
"command">
1486 MaxRequestSize
10485760
1491 <H3>Description
</H3>
1493 <P>The
<CODE>MaxRequestSize
</CODE> directive controls the maximum
1494 size of print files, IPP requests, and HTML form data in HTTP
1495 POST requests. The default limit is
0 which disables the limit
1498 <P><B>This directive is deprecated and will be removed in a
1499 future CUPS release.
</B> Use the
<A
1500 HREF=
"#LimitRequestBody"><CODE>LimitRequestBody
</CODE></A>
1501 directive instead.
</P>
1504 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/OS X
10.6</SPAN><A NAME=
"MultipleOperationTimeout">MultipleOperationTimeout
</A></H2>
1508 <PRE CLASS=
"command">
1509 MultipleOperationTimeout
1w
1510 MultipleOperationTimeout
1d
1511 MultipleOperationTimeout
1h
1512 MultipleOperationTimeout
5m
1513 MultipleOperationTimeout
300
1516 <H3>Description
</H3>
1518 <P>The
<CODE>MultipleOperationTimeout
</CODE> directive sets the maximum amount of time between files in a multi-file print job in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
1520 <P>The default is
<CODE>5m
</CODE> (five minutes).
</P>
1523 <H2 CLASS=
"title"><A NAME=
"Order">Order
</A></H2>
1527 <PRE CLASS=
"command">
1528 <Location /path
>
1535 <H3>Description
</H3>
1537 <P>The
<CODE>Order
</CODE> directive defines the default access
1538 control. The following values are supported:
</P>
1542 <LI><CODE>allow,deny
</CODE> - Deny requests by default,
1543 then check the
<A HREF=
"#Allow"><CODE>Allow
</CODE></A>
1544 lines followed by the
<A
1545 HREF=
"#Deny"><CODE>Deny
</CODE></A> lines
</LI>
1547 <LI><CODE>deny,allow
</CODE> - Allow requests by default,
1548 then check the
<A HREF=
"#Deny"><CODE>Deny
</CODE></A>
1549 lines followed by the
<A
1550 HREF=
"#Allow"><CODE>Allow
</CODE></A> lines
</LI>
1554 <P>The
<CODE>Order
</CODE> directive must appear inside a
<A
1555 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
1556 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
1559 <H2 CLASS=
"title"><A NAME=
"PageLogFormat">PageLogFormat
</A></H2>
1563 <PRE CLASS=
"command">
1564 PageLogFormat %p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}
1565 PageLogFormat PAGE %p %u %j %P %C %{job-billing} %{job-originating-host-name}
1568 <H3>Description
</H3>
1570 <P>The
<CODE>PageLogFormat
</CODE> directive sets the format of lines
1571 that are logged to the page log file. Sequences beginning with percent (%)
1572 characters are replaced with the corresponding information, while all other
1573 characters are copied literally. The following percent sequences are
1578 <LI><CODE>%%
</CODE>: Inserts a single percent character.
</LI>
1580 <LI><CODE>%{name}
</CODE>: Inserts the value of the specified IPP
1583 <LI><CODE>%C
</CODE>: Inserts the number of copies for the current page.
</LI>
1585 <LI><CODE>%P
</CODE>: Inserts the current page number.
</LI>
1587 <LI><CODE>%T
</CODE>: Inserts the current date and time in common log
1590 <LI><CODE>%j
</CODE>: Inserts the job ID.
</LI>
1592 <LI><CODE>%p
</CODE>: Inserts the printer name.
</LI>
1594 <LI><CODE>%u
</CODE>: Inserts the username.
</LI>
1598 <P>The default is
"%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".
</P>
1601 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"PassEnv">PassEnv
</A></H2>
1605 <PRE CLASS=
"command">
1606 PassEnv MY_ENV_VARIABLE
1609 <H3>Description
</H3>
1611 <P>The
<CODE>PassEnv
</CODE> directive specifies an environment
1612 variable that should be passed to child processes. Normally, the
1613 scheduler only passes the
<CODE>DYLD_LIBRARY_PATH
</CODE>,
1614 <CODE>LD_ASSUME_KERNEL
</CODE>,
<CODE>LD_LIBRARY_PATH
</CODE>,
1615 <CODE>LD_PRELOAD
</CODE>,
<CODE>NLSPATH
</CODE>,
1616 <CODE>SHLIB_PATH
</CODE>,
<CODE>TZ
</CODE>, and
<CODE>VGARGS
</CODE>
1617 environment variables to child processes.
</P>
1620 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"Policy">Policy
</A></H2>
1624 <PRE CLASS=
"command">
1626 <Limit operation ... operation
>
1629 <Limit operation ... operation
>
1638 <H3>Description
</H3>
1640 <P>The
<CODE>Policy
</CODE> directive specifies IPP operation
1641 access control limits. Each policy contains
1 or more
<A
1642 HREF=
"#LimitIPP"><CODE>Limit
</CODE></A> sections to set the
1643 access control limits for specific operations - user limits,
1644 authentication, encryption, and allowed/denied addresses,
1645 domains, or hosts. The
<CODE><Limit All
></CODE> section
1646 specifies the default access control limits for operations that
1649 <P>Policies are named and associated with printers via the
1650 printer's operation policy setting
1651 (
<CODE>printer-op-policy
</CODE>). The default policy for the
1652 scheduler is specified using the
<A
1653 HREF=
"#DefaultPolicy"><CODE>DefaultPolicy
</CODE></A>
1657 <H2 CLASS=
"title"><A NAME=
"Port">Port
</A></H2>
1661 <PRE CLASS=
"command">
1666 <H3>Description
</H3>
1668 <P>The
<CODE>Port
</CODE> directive specifies a port to listen on.
1669 Multiple
<CODE>Port
</CODE> lines can be specified to listen on
1670 multiple ports. The
<CODE>Port
</CODE> directive is equivalent to
1671 "<CODE>Listen *:nnn</CODE>". The default port is
631.
</P>
1673 <BLOCKQUOTE><B>Note:
</B>
1675 <P>On systems that support IPv6, this directive will bind to both
1676 the IPv4 and IPv6 wildcard address.
</P>
1681 <H2 CLASS=
"title"><A NAME=
"PreserveJobHistory">PreserveJobHistory
</A></H2>
1685 <PRE CLASS=
"command">
1686 PreserveJobHistory On
1687 PreserveJobHistory Off
1688 PreserveJobHistory
1w
1689 PreserveJobHistory
7d
1690 PreserveJobHistory
168h
1691 PreserveJobHistory
10080m
1692 PreserveJobHistory
604800
1695 <H3>Description
</H3>
1697 <P>The
<CODE>PreserveJobHistory
</CODE> directive controls whether the history of completed, canceled, or aborted print jobs is retained by the scheduler. A value of
<CODE>On
</CODE> preserves job information until the administrator purges it with the
<CODE>cancel
</CODE> command. A value of
<CODE>Off
</CODE> removes the job information as soon as each job is completed, canceled, or aborted. Numeric values preserve job information for the specified number of seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
1699 <P>The default value is
<CODE>On
</CODE>.
</P>
1701 <BLOCKQUOTE><B>Note:
</B>
1703 <P>The
<A HREF=
"#MaxJobs"><CODE>MaxJobs
</CODE></A>,
<A HREF=
"#MaxJobsPerPrinter"><CODE>MaxJobsPerPrinter
</CODE></A>, and
<A HREF=
"#MaxJobsPerUser"><CODE>MaxJobsPerUser
</CODE></A> directives can cause job history to be discarded to make room for new jobs.
</P>
1708 <H2 CLASS=
"title"><A NAME=
"PreserveJobFiles">PreserveJobFiles
</A></H2>
1712 <PRE CLASS=
"command">
1714 PreserveJobFiles Off
1717 PreserveJobFiles
168h
1718 PreserveJobFiles
10080m
1719 PreserveJobFiles
604800
1722 <H3>Description
</H3>
1724 <P>The
<CODE>PreserveJobFiles
</CODE> directive controls whether the document files of completed, canceled, or aborted print jobs are retained. Jobs can be restarted (and reprinted) as desired until they are purged.
</P>
1726 <P>A value of
<CODE>On
</CODE> preserves job files until the administrator purges them with the
<CODE>cancel
</CODE> command. A value of
<CODE>Off
</CODE> removes the job files as soon as each job is completed, canceled, or aborted. Numeric values preserve job files for the specified number of seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
1728 <P>The default value is
<CODE>1d
</CODE> (one day).
</P>
1730 <BLOCKQUOTE><B>Note:
</B>
1732 <P>The
<A HREF=
"#MaxJobs"><CODE>MaxJobs
</CODE></A>,
<A HREF=
"#MaxJobsPerPrinter"><CODE>MaxJobsPerPrinter
</CODE></A>,
<A HREF=
"#MaxJobsPerUser"><CODE>MaxJobsPerUser
</CODE></A>, and
<A HREF=
"#PreserveJobHistory"><CODE>PreserveJobHistory
</CODE></A> directives can cause job files to be discarded sooner than specified.
</P>
1737 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.21</SPAN><A NAME=
"ReloadTimeout">ReloadTimeout
</A></H2>
1741 <PRE CLASS=
"command">
1746 <H3>Description
</H3>
1748 <P>The
<CODE>ReloadTimeout
</CODE> directive specifies the number
1749 of seconds the scheduler will wait for active jobs to complete
1750 before doing a restart. The default is
30 seconds.
</P>
1753 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Require">Require
</A></H2>
1757 <PRE CLASS=
"command">
1758 <Location /path
>
1760 Require group foo bar
1761 Require user john mary
1763 Require user @groupname
1764 Require user @SYSTEM
1769 <H3>Description
</H3>
1771 <P>The
<CODE>Require
</CODE> directive specifies that
1772 authentication is required for the resource. The
1773 <CODE>group
</CODE> keyword specifies that the authenticated user
1774 must be a member of one or more of the named groups that
1777 <P>The
<CODE>user
</CODE> keyword specifies that the
1778 authenticated user must be one of the named users or groups that
1779 follow. Group names are specified using the
"@" prefix.
</P>
1781 <P>The
<CODE>valid-user
</CODE> keyword specifies that any
1782 authenticated user may access the resource.
</P>
1784 <P>The default is to do no authentication. This directive must
1785 appear inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> or
1786 <A HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
1789 <H2 CLASS=
"title"><A NAME=
"RIPCache">RIPCache
</A></H2>
1793 <PRE CLASS=
"command">
1799 <H3>Description
</H3>
1801 <P>The
<CODE>RIPCache
</CODE> directive sets the size of the
1802 memory cache used by Raster Image Processor (
"RIP") filters such
1803 as
<CODE>imagetoraster
</CODE> and
<CODE>pstoraster
</CODE>. The
1804 size can be suffixed with a
"k" for kilobytes,
"m" for megabytes,
1805 or
"g" for gigabytes. The default cache size is
"128m", or
128
1809 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"RootCertDuration">RootCertDuration
</A></H2>
1813 <PRE CLASS=
"command">
1819 RootCertDuration
300
1822 <H3>Description
</H3>
1824 <P>The
<CODE>RootCertDuration
</CODE> directive specifies the amount of time the
<EM>root certificate
</EM> remains valid in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix). The scheduler will generate a new certificate as needed when the given time interval has expired. If set to
0, the root certificate is generated only once on startup or on a restart.
</P>
1826 <P>The default is
<CODE>5m
</CODE> (five minutes).
</P>
1829 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Satisfy">Satisfy
</A></H2>
1833 <PRE CLASS=
"command">
1834 <Location /path
>
1841 <H3>Description
</H3>
1843 <P>The
<CODE>Satisfy
</CODE> directive specifies whether all
1844 conditions must be satisfied to allow access to the resource. If
1845 set to
<CODE>all
</CODE>, then all authentication and access
1846 control conditions must be satisfied to allow access.
</P>
1848 <P>Setting
<CODE>Satisfy
</CODE> to
<CODE>any
</CODE> allows a user
1849 to gain access if the authentication or access control
1850 requirements are satisfied. For example, you might require
1851 authentication for remote access, but allow local access without
1854 <P>The default is
<CODE>all
</CODE>. This directive must appear
1855 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
1856 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
1859 <H2 CLASS=
"title"><A NAME=
"ServerAdmin">ServerAdmin
</A></H2>
1863 <PRE CLASS=
"command">
1864 ServerAdmin user@host
1865 ServerAdmin root@foo.bar.com
1868 <H3>Description
</H3>
1870 <P>The
<CODE>ServerAdmin
</CODE> directive identifies the email
1871 address for the administrator on the system. By default the
1872 administrator email address is
<CODE>root@server
</CODE>, where
1873 <CODE>server
</CODE> is the
<A
1874 HREF=
"#ServerName"><CODE>ServerName
</CODE></A>.
</P>
1877 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.3.10</SPAN><A NAME=
"ServerAlias">ServerAlias
</A></H2>
1881 <PRE CLASS=
"command">
1883 ServerAlias foo.example.com
1884 ServerAlias bar.example.com
1885 ServerAlias one.example.com two.example.com
1889 <H3>Description
</H3>
1891 <P>The
<CODE>ServerAlias
</CODE> directive specifies alternate names that the server is known by. By default it contains a list of all aliases associated with the
<A HREF=
"#ServerName"><CODE>ServerName
</CODE></A>. The special name
"*" can be used to allow any hostname when accessing CUPS via an external network interfaces.
</P>
1893 <BLOCKQUOTE><B>Note
</B>
1895 <P>The
<CODE>ServerAlias
</CODE> directive is used for HTTP Host header
1896 validation when clients connect to the scheduler from external interfaces.
1897 Using the special name
"*" can expose your system to known browser-based
1898 DNS rebinding attacks, even when accessing sites through a firewall. If the
1899 auto-discovery of alternate names does not work, we recommend listing each
1900 alternate name with a ServerAlias directive instead of using
"*".
</P>
1905 <H2 CLASS=
"title"><A NAME=
"ServerName">ServerName
</A></H2>
1909 <PRE CLASS=
"command">
1910 ServerName foo.example.com
1911 ServerName myserver.example.com
1914 <H3>Description
</H3>
1916 <P>The
<CODE>ServerName
</CODE> directive specifies the hostname
1917 that is reported to clients. By default the server name is the
1921 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.21</SPAN><A NAME=
"ServerTokens">ServerTokens
</A></H2>
1925 <PRE CLASS=
"command">
1927 ServerTokens ProductOnly
1930 ServerTokens Minimal
1935 <H3>Description
</H3>
1937 <P>The
<CODE>ServerTokens
</CODE> directive specifies the
1938 information that is included in the
<CODE>Server:
</CODE> header
1939 of all HTTP responses. Table
4 lists the token name along with
1940 the text that is returned. The default is
1941 <CODE>Minimal
</CODE>.
</P>
1943 <DIV CLASS=
"table"><TABLE SUMMARY=
"ServerToken Names and Values">
1944 <CAPTION>Table
4:
<A NAME=
"TABLE4">ServerToken Names and Values
</A></CAPTION>
1954 <TD>No
<CODE>Server:
</CODE> header is returned
</TD>
1957 <TD>ProductOnly
</TD>
1970 <TD>"CUPS 1.2.N" where N is the patch release
</TD>
1974 <TD>"CUPS 1.2.N (UNAME)" where N is the patch release and
1975 UNAME is the output of the
<B>uname(
1)
</B> command
</TD>
1979 <TD>"CUPS 1.2.N (UNAME) IPP/1.1" where N is the patch
1980 release and UNAME is the output of the
<B>uname(
1)
</B>
1987 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/OS X
10.5</SPAN><A NAME=
"SetEnv">SetEnv
</A></H2>
1991 <PRE CLASS=
"command">
1992 SetEnv PATH /usr/lib/cups/filter:/bin:/usr/bin:/usr/local/bin
1993 SetEnv MY_ENV_VAR foo
1996 <H3>Description
</H3>
1998 <P>The
<CODE>SetEnv
</CODE> directive specifies an environment
1999 variable that should be passed to child processes.
</P>
2002 <H2 CLASS=
"title"><A NAME=
"SSLListen">SSLListen
</A></H2>
2006 <PRE CLASS=
"command">
2007 SSLListen
127.0.0.1:
443
2008 SSLListen
192.0.2.1:
443
2011 <H3>Description
</H3>
2013 <P>The
<CODE>SSLListen
</CODE> directive specifies a network
2014 address and port to listen for secure connections. Multiple
2015 <CODE>SSLListen
</CODE> directives can be provided to listen on
2016 multiple addresses.
</P>
2018 <P>The
<CODE>SSLListen
</CODE> directive is similar to the
<A
2019 HREF=
"#SSLPort"><CODE>SSLPort
</CODE></A> directive but allows you
2020 to restrict access to specific interfaces or networks.
</P>
2023 <H2 CLASS=
"title"><A NAME=
"SSLOptions">SSLOptions
</A></H2>
2027 <PRE CLASS=
"command">
2029 SSLOptions NoEmptyFragments
2032 <H3>Description
</H3>
2034 <P>The
<CODE>SSLOptions
</CODE> directive specifies additional SSL/TLS
2035 protocol options to use for encrypted connected. Currently only two
2036 options are supported -
<code>None
</code> (the default) for the most
2037 secure mode and
<code>NoEmptyFragments
</code> to allow CUPS to work with
2038 Microsoft Windows with the FIPS conformance mode enabled.
</p>
2041 <H2 CLASS=
"title"><A NAME=
"SSLPort">SSLPort
</A></H2>
2045 <PRE CLASS=
"command">
2049 <H3>Description
</H3>
2051 <P>The
<CODE>SSLPort
</CODE> directive specifies a port to listen
2052 on for secure connections. Multiple
<CODE>SSLPort
</CODE> lines
2053 can be specified to listen on multiple ports.
</P>
2056 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.6</SPAN><A NAME=
"StrictConformance">StrictConformance
</A></H2>
2060 <PRE CLASS=
"command">
2061 StrictConformance No
2062 StrictConformance Yes
2065 <H3>Description
</H3>
2067 <P>The
<CODE>StrictConformance
</CODE> directive specifies whether the scheduler
2068 requires strict IPP conformance for client requests, for example to not allow
2069 document attributes in a Create-Job request. The default is
2070 <code>No
</code>.
</P>
2073 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.5</SPAN><A NAME=
"SubscriptionPrivateAccess">SubscriptionPrivateAccess
</A></H2>
2077 <PRE CLASS=
"command">
2078 SubscriptionPrivateAccess all
2079 SubscriptionPrivateAccess default
2080 SubscriptionPrivateAccess {user|@group|@ACL|@OWNER|@SYSTEM}+
2083 <H3>Description
</H3>
2085 <P>The
<CODE>SubscriptionPrivateAccess
</CODE> directive specifies the access list for a
2086 subscription's private values. The
"default" access list is
"@OWNER @SYSTEM".
2087 "@ACL" maps to the printer's requesting-user-name-allowed or
2088 requesting-user-name-denied values.
</P>
2090 <P>The
<CODE>SubscriptionPrivateAccess
</CODE> directive must appear inside a
<A
2091 HREF=
"#Policy"><CODE>Policy
</CODE></A> section.
</P>
2094 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.5</SPAN><A NAME=
"SubscriptionPrivateValues">SubscriptionPrivateValues
</A></H2>
2098 <PRE CLASS=
"command">
2099 SubscriptionPrivateValues all
2100 SubscriptionPrivateValues default
2101 SubscriptionPrivateValues none
2102 SubscriptionPrivateValues attribute-name-
1 [ ... attribute-name-N ]
2105 <H3>Description
</H3>
2107 <P>The
<CODE>SubscriptionPrivateValues
</CODE> directive specifies the list of
2108 subscription values to make private. The
"default" values are
"notify-events",
2109 "notify-pull-method",
"notify-recipient-uri",
"notify-subscriber-user-name", and
2110 "notify-user-data".
</P>
2112 <P>The
<CODE>SubscriptionPrivateValues
</CODE> directive must appear inside a
<A
2113 HREF=
"#Policy"><CODE>Policy
</CODE></A> section.
</P>
2116 <H2 CLASS=
"title"><A NAME=
"Timeout">Timeout
</A></H2>
2120 <PRE CLASS=
"command">
2128 <H3>Description
</H3>
2130 <P>The
<CODE>Timeout
</CODE> directive controls the amount of time
2131 to wait before an active HTTP or IPP request times out in seconds (no suffix), minutes (
"m" suffix), hours (
"h" suffix), days (
"d" suffix), or weeks (
"w" suffix).
</P>
2133 <P>The default timeout is
<CODE>5m
</CODE> (five minutes).
</P>
2136 <H2 CLASS=
"title"><SPAN CLASS=
"INFO">CUPS
1.5</SPAN><A NAME=
"WebInterface">WebInterface
</A></H2>
2140 <PRE CLASS=
"command">
2145 <H3>Description
</H3>
2147 <P>The
<CODE>WebInterface
</CODE> directive specifies whether the web interface is enabled. The default value is
<CODE>No
</CODE> on OS X and
<CODE>Yes
</CODE> on all other operating systems.
</P>