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>
24 <LI>AIX, IRIX, Linux, Solaris:
26 /etc/init.d/cups restart
31 /sbin/init.d/cups restart
36 sudo launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist
37 sudo launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
42 <P>You can also edit this file from the CUPS web interface, which
43 automatically handles restarting the scheduler.
</P>
46 <H2 CLASS=
"title"><A NAME=
"AccessLog">AccessLog
</A></H2>
51 AccessLog /var/log/cups/access_log
52 AccessLog /var/log/cups/access_log-%s
58 <P>The
<CODE>AccessLog
</CODE> directive sets the name of the
59 access log file. If the filename is not absolute then it is
60 assumed to be relative to the
<A
61 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
62 access log file is stored in
"common log format" and can be used
63 by any web access reporting tool to generate a report on CUPS
66 <P>The server name can be included in the filename by using
67 <CODE>%s
</CODE> in the name.
</P>
69 <P>The special name
"syslog" can be used to send the access
70 information to the system log instead of a plain file.
</P>
72 <P>The default access log file is
73 <VAR>@CUPS_LOGDIR@/access_log
</VAR>.
</P>
76 <H2 CLASS=
"title"><A NAME=
"AccessLogLevel">AccessLogLevel
</A></H2>
82 AccessLogLevel actions
88 <P>The
<CODE>AccessLogLevel
</CODE> directive controls which requests are logged
89 to the access log file. The following levels are defined:
</P>
93 <LI><CODE>config
</CODE>; Log when printers and classes are added,
94 deleted, or modified and when configuration files are accessed or
97 <LI><CODE>actions
</CODE>; Log when print jobs are submitted,
98 held, released, modified, or canceled, and any of the conditions
99 for
<CODE>config
</CODE>.
</LI>
101 <LI><CODE>all
</CODE>; Log all requests.
</LI>
105 <P>The default access log level is
<CODE>@CUPS_ACCESS_LOG_LEVEL@
</CODE>.
</P>
108 <H2 CLASS=
"title"><A NAME=
"Allow">Allow
</A></H2>
112 <PRE CLASS=
"command">
113 <Location /path
>
117 Allow from *.domain.com
118 Allow from .domain.com
119 Allow from host.domain.com
122 Allow from nnn.nnn.nnn.*
123 Allow from nnn.nnn.nnn.nnn
124 Allow from nnn.nnn.nnn.nnn/mm
125 Allow from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
126 Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]
127 Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]/mmm
135 <P>The
<CODE>Allow
</CODE> directive specifies a hostname, IP
136 address, or network that is allowed access to the server.
137 <CODE>Allow
</CODE> directives are cummulative, so multiple
138 <CODE>Allow
</CODE> directives can be used to allow access for
139 multiple hosts or networks.
</P>
141 <P>Host and domain name matching require that you enable the
<A
142 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
145 <P>The
<CODE>/mm
</CODE> notation specifies a CIDR netmask, as shown in
146 <A HREF=
"#TABLE1">Table
1</A>.
</P>
148 <DIV CLASS=
"table"><TABLE SUMMARY=
"CIDR Netmasks">
149 <CAPTION>Table
1:
<A NAME=
"TABLE1">CIDR Netmasks
</A></CAPTION>
151 <TH WIDTH=
"10%">mm
</TH>
152 <TH WIDTH=
"20%">netmask
</TH>
153 <TH WIDTH=
"10%">mm
</TH>
154 <TH WIDTH=
"20%">netmask
</TH>
157 <TD ALIGN=
"CENTER">0</TD>
158 <TD ALIGN=
"CENTER">0.0.0.0</TD>
159 <TD ALIGN=
"CENTER">8</TD>
160 <TD ALIGN=
"CENTER">255.0.0.0</TD>
163 <TD ALIGN=
"CENTER">1</TD>
164 <TD ALIGN=
"CENTER">128.0.0.0</TD>
165 <TD ALIGN=
"CENTER">16</TD>
166 <TD ALIGN=
"CENTER">255.255.0.0</TD>
169 <TD ALIGN=
"CENTER">2</TD>
170 <TD ALIGN=
"CENTER">192.0.0.0</TD>
171 <TD ALIGN=
"CENTER">24</TD>
172 <TD ALIGN=
"CENTER">255.255.255.0</TD>
175 <TD ALIGN=
"CENTER">...
</TD>
176 <TD ALIGN=
"CENTER">...
</TD>
177 <TD ALIGN=
"CENTER">32</TD>
178 <TD ALIGN=
"CENTER">255.255.255.255</TD>
182 <P>The
<CODE>@LOCAL
</CODE> name will allow access from all local
183 interfaces. The
<CODE>@IF(name)
</CODE> name will allow access
184 from the named interface. In both cases, CUPS only allows access
185 from the network that the interface(s) are configured for -
186 requests arriving on the interface from a foreign network will
187 <em>not
</em> be accepted.
</P>
189 <P>The
<CODE>Allow
</CODE> directive must appear inside a
<A
190 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
191 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
194 <H2 CLASS=
"title"><SPAN CLASS=
"info">Deprecated
</SPAN><A NAME=
"AuthClass">AuthClass
</A></H2>
198 <PRE CLASS=
"command">
199 <Location /path
>
210 <P>The
<CODE>AuthClass
</CODE> directive defines what level of
211 authentication is required:
</P>
215 <LI><CODE>Anonymous
</CODE> - No authentication should be
216 performed (default)
</LI>
218 <LI><CODE>User
</CODE> - A valid username and password is
221 <LI><CODE>System
</CODE> - A valid username and password
222 is required, and the username must belong to the
"sys"
223 group; this can be changed using the
<A
224 HREF=
"#SystemGroup"><CODE>SystemGroup
</CODE></A>
227 <LI><CODE>Group
</CODE> - A valid username and password is
228 required, and the username must belong to the group named
230 HREF=
"#AuthGroupName"><CODE>AuthGroupName
</CODE></A>
235 <P>The
<CODE>AuthClass
</CODE> directive must appear inside a
<A
236 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
237 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
239 <P><B>This directive is deprecated and will be removed from a
240 future release of CUPS.
</B> Consider using the more flexible
<A
241 HREF=
"#Require"><CODE>Require
</CODE></A> directive instead.
</P>
244 <H2 CLASS=
"title"><SPAN CLASS=
"info">Deprecated
</SPAN><A NAME=
"AuthGroupName">AuthGroupName
</A></H2>
248 <PRE CLASS=
"command">
249 <Location /path
>
251 AuthGroupName mygroup
258 <P>The
<CODE>AuthGroupName
</CODE> directive sets the group to use
259 for
<CODE>Group
</CODE> authentication.
</P>
261 <P>The
<CODE>AuthGroupName
</CODE> directive must appear inside a
262 <A HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
263 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
265 <P><B>This directive is deprecated and will be removed from a
266 future release of CUPS.
</B> Consider using the more flexible
<A
267 HREF=
"#Require"><CODE>Require
</CODE></A> directive instead.
</P>
270 <H2 CLASS=
"title"><A NAME=
"AuthType">AuthType
</A></H2>
274 <PRE CLASS=
"command">
275 <Location /path
>
287 <P>The
<CODE>AuthType
</CODE> directive defines the type of
288 authentication to perform:
</P>
292 <LI><CODE>None
</CODE> - No authentication should be
293 performed (default)
</LI>
295 <LI><CODE>Basic
</CODE> - Basic authentication should be
296 performed using the UNIX password and group files
</LI>
298 <LI><CODE>Digest
</CODE> - Digest authentication should be
299 performed using the
<VAR>/etc/cups/passwd.md5
</VAR>
302 <LI><CODE>BasicDigest
</CODE> - Basic authentication
303 should be performed using the
304 <VAR>/etc/cups/passwd.md5
</VAR> file
</LI>
306 <LI><CODE>Negotiate
</CODE> - Kerberos authentication
307 should be performed
</LI>
311 <P>When using
<CODE>Basic
</CODE>,
<CODE>Digest
</CODE>,
312 <CODE>BasicDigest
</CODE>, or
<CODE>Negotiate
</CODE> authentication,
313 clients connecting through the
<CODE>localhost
</CODE> interface can
314 also authenticate using certificates.
</P>
316 <P>The
<CODE>AuthType
</CODE> directive must appear inside a
<A
317 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
318 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
321 <H2 CLASS=
"title"><A NAME=
"AutoPurgeJobs">AutoPurgeJobs
</A></H2>
325 <PRE CLASS=
"command">
332 <P>The
<CODE>AutoPurgeJobs
</CODE> directive specifies whether or
333 not to purge completed jobs once they are no longer required for
334 quotas. This option has no effect if quotas are not enabled. The
335 default setting is
<CODE>No
</CODE>.
</P>
338 <H2 CLASS=
"title"><A NAME=
"BrowseAddress">BrowseAddress
</A></H2>
342 <PRE CLASS=
"command">
343 BrowseAddress
255.255.255.255:
631
344 BrowseAddress
192.0.2.255:
631
345 BrowseAddress host.domain.com:
631
347 BrowseAddress @IF(name)
352 <P>The
<CODE>BrowseAddress
</CODE> directive specifies an address
353 to send browsing information to. Multiple
354 <CODE>BrowseAddress
</CODE> directives can be specified to send
355 browsing information to different networks or systems.
</P>
357 <P>The
<CODE>@LOCAL
</CODE> name will broadcast printer
358 information to all local interfaces. The
<CODE>@IF(name)
</CODE>
359 name will broadcast to the named interface.
</P>
361 <P>There is no default browse address.
</P>
363 <BLOCKQUOTE><B>Note:
</B>
365 <P>If you are using HP-UX
10.20 and a subnet that is not
24,
366 16, or
8 bits, printer browsing (and in fact all broadcast
367 reception) will not work. This problem appears to be fixed in
373 <H2 CLASS=
"title"><A NAME=
"BrowseAllow">BrowseAllow
</A></H2>
377 <PRE CLASS=
"command">
379 BrowseAllow from none
380 BrowseAllow from
192.0.2
381 BrowseAllow from
192.0.2.0/
24
382 BrowseAllow from
192.0.2.0/
255.255.255.0
383 BrowseAllow from *.domain.com
384 BrowseAllow from @LOCAL
385 BrowseAllow from @IF(name)
390 <P>The
<CODE>BrowseAllow
</CODE> directive specifies a system or
391 network to accept browse packets from. The default is to accept
392 browse packets from all hosts.
</P>
394 <P>Host and domain name matching require that you enable the
<A
395 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
398 <P>IP address matching supports exact matches, partial addresses that match
399 networks using netmasks of
255.0.0.0,
255.255.0.0, and
255.255.255.0, or network
400 addresses using the specified netmask or bit count. The
<CODE>/mm
</CODE>
401 notation specifies a CIDR netmask, a shown in
<A HREF=
"TABLE1">Table
1</A>.
</P>
403 <P>The
<CODE>@LOCAL
</CODE> name will allow browse data from all
404 local interfaces. The
<CODE>@IF(name)
</CODE> name will allow
405 browse data from the named interface. In both cases, CUPS only
406 allows data from the network that the interface(s) are configured
407 for - data arriving on the interface from a foreign network will
408 <em>not
</em> be allowed.
</P>
411 <H2 CLASS=
"title"><A NAME=
"BrowseDeny">BrowseDeny
</A></H2>
415 <PRE CLASS=
"command">
418 BrowseDeny from
192.0.2
419 BrowseDeny from
192.0.2.0/
24
420 BrowseDeny from
192.0.2.0/
255.255.255.0
421 BrowseDeny from *.domain.com
422 BrowseDeny from @LOCAL
423 BrowseDeny from @IF(name)
428 <P>The
<CODE>BrowseDeny
</CODE> directive specifies a system or
429 network to reject browse packets from. The default is to not deny
430 browse packets from any hosts.
</P>
432 <P>Host and domain name matching require that you enable the
<A
433 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
436 <P>IP address matching supports exact matches, partial addresses that match
437 networks using netmasks of
255.0.0.0,
255.255.0.0, and
255.255.255.0, or network
438 addresses using the specified netmask or bit count. The
<CODE>/mm
</CODE>
439 notation specifies a CIDR netmask, a shown in
<A HREF=
"TABLE1">Table
1</A>.
</P>
441 <P>The
<CODE>@LOCAL
</CODE> name will block browse data from all
442 local interfaces. The
<CODE>@IF(name)
</CODE> name will block
443 browse data from the named interface. In both cases, CUPS only
444 blocks data from the network that the interface(s) are configured
445 for - data arriving on the interface from a foreign network will
446 <em>not
</em> be blocked.
</P>
449 <H2 CLASS=
"title"><A NAME=
"BrowseInterval">BrowseInterval
</A></H2>
453 <PRE CLASS=
"command">
460 <P>The
<CODE>BrowseInterval
</CODE> directive specifies the
461 maximum amount of time between browsing updates. Specifying a
462 value of
0 seconds disables outgoing browse updates but allows a
463 server to receive printer information from other hosts.
</P>
465 <P>The
<CODE>BrowseInterval
</CODE> value should always be less
466 than the
<A HREF=
"#BrowseTimeout"><CODE>BrowseTimeout
</CODE></A>
467 value. Otherwise printers and classes will disappear from client
468 systems between updates.
</P>
471 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"BrowseLDAPBindDN">BrowseLDAPBindDN
</A></H2>
475 <PRE CLASS=
"command">
481 <P>The
<CODE>BrowseLDAPBindDN
</CODE> directive specifies the LDAP
482 domain name to use when listening for printer registrations. The
483 default is undefined.
</P>
486 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/Mac OS X
10.6</SPAN><A NAME=
"BrowseLDAPCACertFile">BrowseLDAPCACertFile
</A></H2>
490 <PRE CLASS=
"command">
491 BrowseLDAPCACertFile /etc/cups/ssl/certs
496 <P>The
<CODE>BrowseLDAPCACertFile
</CODE> directive specifies the SSL certificate
497 authority file to use for LDAP + SSL. The default is undefined.
</P>
500 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"BrowseLDAPDN">BrowseLDAPDN
</A></H2>
504 <PRE CLASS=
"command">
510 <P>The
<CODE>BrowseLDAPDN
</CODE> directive specifies the LDAP
511 domain name to use when registering local shared printers. The
512 default is undefined.
</P>
515 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"BrowseLDAPPassword">BrowseLDAPPassword
</A></H2>
519 <PRE CLASS=
"command">
520 BrowseLDAPPassword foo123
525 <P>The
<CODE>BrowseLDAPPassword
</CODE> directive specifies the
526 access password to use when connecting to the LDAP server. The
527 default is undefined.
</P>
530 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"BrowseLDAPServer">BrowseLDAPServer
</A></H2>
534 <PRE CLASS=
"command">
535 BrowseLDAPServer localhost
540 <P>The
<CODE>BrowseLDAPServer
</CODE> directive specifies the name
541 of the LDAP server to connect to. The default is undefined.
</P>
544 <H2 CLASS=
"title"><A NAME=
"BrowseLocalOptions">BrowseLocalOptions
</A></H2>
548 <PRE CLASS=
"command">
549 BrowseLocalOptions compression=yes
550 BrowseLocalOptions encryption=required
551 BrowseLocalOptions compression=yes
&encryption=required
556 <P>The
<CODE>BrowseLocalOptions
</CODE> directive specifies
557 additional IPP backend options to advertise with local shared
558 printers. The default is to not include any options.
</P>
561 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"BrowseLocalProtocols">BrowseLocalProtocols
</A></H2>
565 <PRE CLASS=
"command">
566 BrowseLocalProtocols all
567 BrowseLocalProtocols none
568 BrowseLocalProtocols cups
569 BrowseLocalProtocols dnssd
570 BrowseLocalProtocols ldap
571 BrowseLocalProtocols lpd
572 BrowseLocalProtocols slp
573 BrowseLocalProtocols smb
574 BrowseLocalProtocols cups dnssd
579 <P>The
<CODE>BrowseLocalProtocols
</CODE> directive specifies the
580 protocols to use when advertising local shared printers on the
581 network. Multiple protocols can be specified by separating them
582 with spaces. The default is
"<CODE>@CUPS_BROWSE_LOCAL_PROTOCOLS@</CODE>".
</P>
585 <H2 CLASS=
"title"><A NAME=
"BrowseOrder">BrowseOrder
</A></H2>
589 <PRE CLASS=
"command">
590 BrowseOrder allow,deny
591 BrowseOrder deny,allow
596 <P>The
<CODE>BrowseOrder
</CODE> directive specifies the order of
597 allow/deny processing. The default order is
598 <CODE>deny,allow
</CODE>:
</P>
602 <LI><CODE>allow,deny
</CODE> - Deny browse packets by
603 default, then check
<CODE>BrowseAllow
</CODE> lines
604 followed by
<CODE>BrowseDeny
</CODE> lines.
</LI>
606 <LI><CODE>deny,allow
</CODE> - Allow browse packets by
607 default, then check
<CODE>BrowseDeny
</CODE> lines
608 followed by
<CODE>BrowseAllow
</CODE> lines.
</LI>
613 <H2 CLASS=
"title"><A NAME=
"BrowsePoll">BrowsePoll
</A></H2>
617 <PRE CLASS=
"command">
618 BrowsePoll
192.0.2.2:
631
619 BrowsePoll host.domain.com:
631
624 <P>The
<CODE>BrowsePoll
</CODE> directive polls a server for
625 available printers once every
<A
626 HREF=
"#BrowseInterval"><CODE>BrowseInterval
</CODE></A> seconds.
627 Multiple
<CODE>BrowsePoll
</CODE> directives can be specified to
628 poll multiple servers.
</P>
630 <P>If
<CODE>BrowseInterval
</CODE> is set to
0 then the server is
631 polled once every
30 seconds.
</P>
634 <H2 CLASS=
"title"><A NAME=
"BrowsePort">BrowsePort
</A></H2>
638 <PRE CLASS=
"command">
645 <P>The
<CODE>BrowsePort
</CODE> directive specifies the UDP port number
646 used for browse packets. The default port number is
631.
</P>
648 <BLOCKQUOTE><B>Note:
</B>
650 <P>You must set the
<CODE>BrowsePort
</CODE> to the same value
651 on all of the systems that you want to see.
656 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"BrowseProtocols">BrowseProtocols
</A></H2>
660 <PRE CLASS=
"command">
664 BrowseProtocols dnssd
669 BrowseProtocols cups dnssd
674 <P>The
<CODE>BrowseProtocols
</CODE> directive specifies the
675 protocols to use when showing and advertising shared printers on
676 the local network. Multiple protocols can be specified by
677 separating them with spaces. The default protocol is
678 "<CODE>@CUPS_BROWSE_LOCAL_PROTOCOLS@</CODE>" for
679 <A HREF=
"#BrowseLocalProtocols"><CODE>BrowseLocalProtocols
</CODE></A> and
680 "<CODE>@CUPS_BROWSE_REMOTE_PROTOCOLS@</CODE>" for
681 <A HREF=
"#BrowseRemoteProtocols"><CODE>BrowseRemoteProtocols
</CODE></A>.
</P>
683 <BLOCKQUOTE><B>Note:
</B>
685 <P>When using the
<CODE>SLP
</CODE> protocol, you must have at least
686 one Directory Agent (DA) server on your network. Otherwise the
687 CUPS scheduler (
<CODE>cupsd
</CODE>) will not respond to client
688 requests for several seconds while polling the network.
</P>
693 <H2 CLASS=
"title"><A NAME=
"BrowseRelay">BrowseRelay
</A></H2>
697 <PRE CLASS=
"command">
698 BrowseRelay
193.0.2.1 192.0.2.255
699 BrowseRelay
193.0.2.0/
255.255.255.0 192.0.2.255
700 BrowseRelay
193.0.2.0/
24 192.0.2.255
701 BrowseRelay *.domain.com
192.0.2.255
702 BrowseRelay host.domain.com
192.0.2.255
707 <P>The
<CODE>BrowseRelay
</CODE> directive specifies source and
708 destination addresses for relaying browsing information from one
709 host or network to another. Multiple
<CODE>BrowseRelay
</CODE>
710 directives can be specified as needed.
</P>
712 <P><CODE>BrowseRelay
</CODE> is typically used on systems that
713 bridge multiple subnets using one or more network interfaces. It
714 can also be used to relay printer information from polled servers
717 <PRE CLASS=
"command">
718 BrowseRelay
127.0.0.1 @LOCAL
721 <P>This effectively provides access to printers on a WAN for all
722 clients on the LAN(s).
</P>
725 <H2 CLASS=
"title"><A NAME=
"BrowseRemoteOptions">BrowseRemoteOptions
</A></H2>
729 <PRE CLASS=
"command">
730 BrowseRemoteOptions compression=yes
731 BrowseRemoteOptions encryption=required
732 BrowseRemoteOptions ?compression=yes
&encryption=required
737 <P>The
<CODE>BrowseRemoteOptions
</CODE> directive specifies
738 additional IPP backend options to include with remote shared
739 printers. If the options string begins with a question mark (?),
740 the options replace any options specified by the remote server.
741 The default is to not include any options.
</P>
744 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"BrowseRemoteProtocols">BrowseRemoteProtocols
</A></H2>
748 <PRE CLASS=
"command">
749 BrowseRemoteProtocols all
750 BrowseRemoteProtocols none
751 BrowseRemoteProtocols cups
752 BrowseRemoteProtocols ldap
753 BrowseRemoteProtocols slp
758 <P>The
<CODE>BrowseRemoteProtocols
</CODE> directive specifies the
759 protocols to use when finding remote shared printers on the
760 network. Multiple protocols can be specified by separating them
761 with spaces. The default is
"<CODE>@CUPS_BROWSE_REMOTE_PROTOCOLS@</CODE>".
</P>
764 <H2 CLASS=
"title"><A NAME=
"BrowseShortNames">BrowseShortNames
</A></H2>
768 <PRE CLASS=
"command">
775 <P>The
<CODE>BrowseShortNames
</CODE> directive specifies whether
776 or not short names are used for remote printers when possible.
777 Short names are just the remote printer name, without the server
778 (
"printer"). If more than one remote printer is detected with the
779 same name, the printers will have long names (
"printer@server1",
780 "printer@server2".)
</P>
782 <P>The default value for this option is
<CODE>@CUPS_BROWSE_SHORT_NAMES@
</CODE>.
</P>
785 <H2 CLASS=
"title"><A NAME=
"BrowseTimeout">BrowseTimeout
</A></H2>
789 <PRE CLASS=
"command">
796 <P>The
<CODE>BrowseTimeout
</CODE> directive sets the timeout for
797 printer or class information that is received in browse packets.
798 Once a printer or class times out it is removed from the list of
799 available destinations.
</P>
801 <P>The
<CODE>BrowseTimeout
</CODE> value should always be greater
803 HREF=
"#BrowseInterval"><CODE>BrowseInterval
</CODE></A> value.
804 Otherwise printers and classes will disappear from client systems
808 <H2 CLASS=
"title"><A NAME=
"BrowseWebIF">BrowseWebIF
</A></H2>
812 <PRE CLASS=
"command">
819 <P>The
<CODE>BrowseWebIF
</CODE> directive controls whether the CUPS web
820 interface is advertised via DNS-SD. The default setting is
821 <CODE>Off
</CODE>.
</P>
824 <H2 CLASS=
"title"><A NAME=
"Browsing">Browsing
</A></H2>
828 <PRE CLASS=
"command">
835 <P>The
<CODE>Browsing
</CODE> directive controls whether or not
836 network printer browsing is enabled. The default setting is
837 <CODE>@CUPS_BROWSING@
</CODE>.
</P>
839 <P>This directive does not enable sharing of local printers by
840 itself; you must also use the
<A
841 HREF=
"#BrowseAddress"><CODE>BrowseAddress
</CODE></A> or
<A
842 HREF=
"#BrowseProtocols"><CODE>BrowseProtocols
</CODE></A>
843 directives to advertise local printers to other systems.
</P>
845 <BLOCKQUOTE><B>Note:
</B>
847 <P>If you are using HP-UX
10.20 and a subnet that is not
24,
848 16, or
8 bits, printer browsing (and in fact all broadcast
849 reception) will not work. This problem appears to be fixed in
855 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Classification">Classification
</A></H2>
859 <PRE CLASS=
"command">
861 Classification classified
862 Classification confidential
863 Classification secret
864 Classification topsecret
865 Classification unclassified
870 <P>The
<CODE>Classification
</CODE> directive sets the
871 classification level on the server. When this option is set, at
872 least one of the banner pages is forced to the classification
873 level, and the classification is placed on each page of output.
874 The default is no classification level.
</P>
877 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"ClassifyOverride">ClassifyOverride
</A></H2>
881 <PRE CLASS=
"command">
888 <P>The
<CODE>ClassifyOverride
</CODE> directive specifies whether
889 users can override the default classification level on the
890 server. When the server classification is set, users can change
891 the classification using the
<CODE>job-sheets
</CODE> option and
892 can choose to only print one security banner before or after the
893 job. If the
<CODE>job-sheets
</CODE> option is set to
894 <CODE>none
</CODE> then the server default classification is
897 <P>The default is to not allow classification overrides.
</P>
900 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.15</SPAN><A NAME=
"ConfigFilePerm">ConfigFilePerm
</A></H2>
904 <PRE CLASS=
"command">
911 <P>The
<CODE>ConfigFilePerm
</CODE> directive specifies the
912 permissions to use when writing configuration files. The default
913 is @CUPS_CONFIG_FILE_PERM@.
</P>
916 <H2 CLASS=
"title"><A NAME=
"DataDir">DataDir
</A></H2>
920 <PRE CLASS=
"command">
921 DataDir /usr/share/cups
926 <P>The
<CODE>DataDir
</CODE> directive sets the directory to use
930 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"DefaultAuthType">DefaultAuthType
</A></H2>
934 <PRE CLASS=
"command">
935 DefaultAuthType Basic
936 DefaultAuthType BasicDigest
937 DefaultAuthType Digest
938 DefaultAuthType Negotiate
943 <P>The
<CODE>DefaultAuthType
</CODE> directive specifies the type
944 of authentication to use for IPP operations that require a
945 username. The default is
<CODE>Basic
</CODE>.
</P>
948 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"DefaultEncryption">DefaultEncryption
</A></H2>
952 <PRE CLASS=
"command">
953 DefaultEncryption Never
954 DefaultEncryption IfRequested
955 DefaultEncryption Required
960 <P>The
<CODE>DefaultEncryption
</CODE> directive specifies the
961 type of encryption to use when performing authentication. The
962 default is
<CODE>Required
</CODE>.
</P>
965 <H2 CLASS=
"title"><A NAME=
"DefaultLanguage">DefaultLanguage
</A></H2>
969 <PRE CLASS=
"command">
979 <P>The
<CODE>DefaultLanguage
</CODE> directive specifies the
980 default language to use for client connections. Setting the
981 default language also sets the default character set if a
982 language localization file exists for it. The default language
983 is
"en" for English.
</P>
986 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/Mac OS X
10.6</SPAN><A NAME=
"DefaultPaperSize">DefaultPaperSize
</A></H2>
990 <PRE CLASS=
"command">
991 DefaultPaperSize Letter
993 DefaultPaperSize Auto
994 DefaultPaperSize None
999 <P>The
<CODE>DefaultPaperSize
</CODE> directive specifies the default paper
1000 size to use when creating new printers. The default is
<CODE>Auto
</CODE>
1001 which uses a paper size appropriate for the system default locale. A value
1002 of
<CODE>None
</CODE> tells the scheduler to not set the default paper
1006 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"DefaultPolicy">DefaultPolicy
</A></H2>
1010 <PRE CLASS=
"command">
1011 DefaultPolicy default
1015 <H3>Description
</H3>
1017 <P>The
<CODE>DefaultPolicy
</CODE> directive specifies the default
1018 policy to use for IPP operation. The default is
1019 <CODE>default
</CODE>.
</P>
1022 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"DefaultShared">DefaultShared
</A></H2>
1026 <PRE CLASS=
"command">
1031 <H3>Description
</H3>
1033 <P>The
<CODE>DefaultShared
</CODE> directive specifies whether
1034 printers are shared (published) by default. The default is
1035 <CODE>@CUPS_DEFAULT_SHARED@
</CODE>.
</P>
1038 <H2 CLASS=
"title"><A NAME=
"Deny">Deny
</A></H2>
1042 <PRE CLASS=
"command">
1043 <Location /path
>
1047 Deny from *.domain.com
1048 Deny from .domain.com
1049 Deny from host.domain.com
1052 Deny from nnn.nnn.nnn.*
1053 Deny from nnn.nnn.nnn.nnn
1054 Deny from nnn.nnn.nnn.nnn/mm
1055 Deny from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
1056 Deny from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]
1057 Deny from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]/mmm
1063 <H3>Description
</H3>
1065 <P>The
<CODE>Deny
</CODE> directive specifies a hostname, IP
1066 address, or network that is denied access to the server.
1067 <CODE>Deny
</CODE> directives are cummulative, so multiple
1068 <CODE>Deny
</CODE> directives can be used to allow access for
1069 multiple hosts or networks.
</P>
1071 <P>Host and domain name matching require that you enable the
<A
1072 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
1075 <P>The
<CODE>/mm
</CODE> notation specifies a CIDR netmask, a shown in
1076 <A HREF=
"TABLE1">Table
1</A>.
</P>
1078 <P>The
<CODE>@LOCAL
</CODE> name will deny access from all local
1079 interfaces. The
<CODE>@IF(name)
</CODE> name will deny access from
1080 the named interface. In both cases, CUPS only denies access from
1081 the network that the interface(s) are configured for - requests
1082 arriving on the interface from a foreign network will
1083 <em>not
</em> be denied.
</P>
1085 <P>The
<CODE>Deny
</CODE> directive must appear inside a
<A
1086 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
1087 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
1090 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/Mac OS X
10.6</SPAN><A NAME=
"DirtyCleanInterval">DirtyCleanInterval
</A></H2>
1094 <PRE CLASS=
"command">
1095 DirtyCleanInterval
30
1096 DirtyCleanInterval
0
1099 <H3>Description
</H3>
1101 <P>The
<CODE>DirtyCleanInterval
</CODE> directive specifies the number of
1102 seconds to wait before updating configuration and state files for printers,
1103 classes, subscriptions, and jobs. The default is
30 seconds. A value of
0
1104 causes the update to occur as soon as possible, typically within a few
1108 <H2 CLASS=
"title"><A NAME=
"DocumentRoot">DocumentRoot
</A></H2>
1112 <PRE CLASS=
"command">
1113 DocumentRoot /usr/share/doc/cups
1114 DocumentRoot /foo/bar/doc/cups
1117 <H3>Description
</H3>
1119 <P>The
<CODE>DocumentRoot
</CODE> directive specifies the location
1120 of web content for the HTTP server in CUPS. If an absolute path
1121 is not specified then it is assumed to be relative to the
<A
1122 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
1123 default directory is
<VAR>@CUPS_DOCROOT@
</VAR>.
</P>
1125 <P>Documents are first looked up in a sub-directory for the
1126 primary language requested by the client (e.g.
1127 <VAR>@CUPS_DOCROOT@/fr/...
</VAR>) and then directly under
1128 the
<CODE>DocumentRoot
</CODE> directory (e.g.
1129 <VAR>@CUPS_DOCROOT@/...
</VAR>), so it is possible to
1130 localize the web content by providing subdirectories for each
1131 language needed.
</P>
1134 <H2 CLASS=
"title"><A NAME=
"Encryption">Encryption
</A></H2>
1138 <PRE CLASS=
"command">
1139 <Location /path
>
1142 Encryption IfRequested
1147 <H3>Description
</H3>
1149 <P>The
<CODE>Encryption
</CODE> directive must appear instead a
<A
1150 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
1151 HREF=
"#Limit"><CODE>Limit
</CODE></A> section and specifies the
1152 encryption settings for that location. The default setting is
1153 <CODE>IfRequested
</CODE> for all locations.
</P>
1156 <H2 CLASS=
"title"><A NAME=
"ErrorLog">ErrorLog
</A></H2>
1160 <PRE CLASS=
"command">
1161 ErrorLog /var/log/cups/error_log
1162 ErrorLog /var/log/cups/error_log-%s
1166 <H3>Description
</H3>
1168 <P>The
<CODE>ErrorLog
</CODE> directive sets the name of the error
1169 log file. If the filename is not absolute then it is assumed to
1170 be relative to the
<A
1171 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
1172 default error log file is
<VAR>@CUPS_LOGDIR@/error_log
</VAR>.
</P>
1174 <P>The server name can be included in the filename by using
1175 <CODE>%s
</CODE> in the name.
</P>
1177 <P>The special name
"syslog" can be used to send the error
1178 information to the system log instead of a plain file.
</P>
1181 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.3/Mac OS X
10.5</SPAN><A NAME=
"ErrorPolicy">ErrorPolicy
</A></H2>
1185 <PRE CLASS=
"command">
1186 ErrorPolicy abort-job
1187 ErrorPolicy retry-job
1188 ErrorPolicy stop-printer
1191 <H3>Description
</H3>
1193 <P>The
<CODE>ErrorPolicy
</CODE> directive defines the default policy that
1194 is used when a backend is unable to send a print job to the
1197 <P>The following values are supported:
</P>
1201 <LI><CODE>abort-job
</CODE> - Abort the job and proceed
1202 with the next job in the queue
</LI>
1204 <LI><CODE>retry-job
</CODE> - Retry the job after waiting
1205 for N seconds; the
<VAR>cupsd.conf
</VAR> <A
1206 HREF=
"#JobRetryInterval"><CODE>JobRetryInterval
</CODE></A>
1207 directive controls the value of N
</LI>
1209 <LI><CODE>retry-this-job
</CODE> - Retry the current job immediately
1210 and indefinitely.
</LI>
1212 <LI><CODE>stop-printer
</CODE> - Stop the printer and keep
1213 the job for future printing; this is the default
1220 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/Mac OS X
10.6</SPAN><A NAME=
"FatalErrors">FatalErrors
</A></H2>
1224 <PRE CLASS=
"command">
1231 FatalErrors permissions
1232 FatalErrors all -permissions
1233 FatalErrors config permissions log
1236 <H3>Description
</H3>
1238 <P>The
<CODE>FatalErrors
</CODE> directive determines whether certain kinds of
1239 errors are fatal. The following kinds of errors are currently recognized:
</P>
1243 <LI><CODE>none
</CODE> - No errors are fatal
</LI>
1245 <LI><CODE>all
</CODE> - All of the errors below are fatal
</LI>
1247 <LI><CODE>browse
</CODE> - Browsing initialization errors are fatal,
1248 for example failed binding to the CUPS browse port or failed connections
1249 to LDAP servers
</LI>
1251 <LI><CODE>config
</CODE> - Configuration file syntax errors are
1254 <LI><CODE>listen
</CODE> - Listen or Port errors are fatal, except for
1255 IPv6 failures on the loopback or
"any" addresses
</LI>
1257 <LI><CODE>log
</CODE> - Log file creation or write errors are fatal
</LI>
1259 <LI><CODE>permissions
</CODE> - Bad startup file permissions are
1260 fatal, for example shared SSL certificate and key files with world-
1261 read permissions
</LI>
1265 <P>Multiple errors can be listed, and the form
"-kind" can be used with
1266 <CODE>all
</CODE> to remove specific kinds of errors. The default setting is
1267 <CODE>@CUPS_FATAL_ERRORS@
</CODE>.
</P>
1270 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.18</SPAN><A NAME=
"FileDevice">FileDevice
</A></H2>
1274 <PRE CLASS=
"command">
1279 <H3>Description
</H3>
1281 <P>The
<CODE>FileDevice
</CODE> directive determines whether the
1282 scheduler allows new printers to be added using device URIs of
1283 the form
<CODE>file:/filename
</CODE>. File devices are most often
1284 used to test new printer drivers and do not support raw file
1287 <P>The default setting is
<CODE>No
</CODE>.
</P>
1289 <BLOCKQUOTE><B>Note:
</B>
1291 <P>File devices are managed by the scheduler. Since the
1292 scheduler normally runs as the root user, file devices
1293 can be used to overwrite system files and potentially
1294 gain unauthorized access to the system. If you must
1295 create printers using file devices, we recommend that
1296 you set the
<CODE>FileDevice
</CODE> directive to
1297 <CODE>Yes
</CODE> for only as long as you need to add the
1298 printers to the system, and then reset the directive to
1299 <CODE>No
</CODE>.
</P>
1304 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.3</SPAN><A NAME=
"FilterLimit">FilterLimit
</A></H2>
1308 <PRE CLASS=
"command">
1314 <H3>Description
</H3>
1316 <P>The
<CODE>FilterLimit
</CODE> directive sets the maximum cost
1317 of all running job filters. It can be used to limit the number of
1318 filter programs that are run on a server to minimize disk,
1319 memory, and CPU resource problems. A limit of
0 disables filter
1322 <P>An average print to a non-PostScript printer needs a filter
1323 limit of about
200. A PostScript printer needs about half that
1324 (
100). Setting the limit below these thresholds will effectively
1325 limit the scheduler to printing a single job at any time.
</P>
1327 <P>The default limit is
0.
</P>
1330 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"FilterNice">FilterNice
</A></H2>
1334 <PRE CLASS=
"command">
1340 <H3>Description
</H3>
1342 <P>The
<CODE>FilterNice
</CODE> directive sets the
<B>nice(
1)
</B>
1343 value to assign to filter processes. The nice value ranges from
1344 0, the highest priority, to
19, the lowest priority. The default
1348 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.3</SPAN><A NAME=
"FontPath">FontPath
</A></H2>
1352 <PRE CLASS=
"command">
1353 FontPath /foo/bar/fonts
1354 FontPath /usr/share/cups/fonts:/foo/bar/fonts
1357 <H3>Description
</H3>
1359 <P>The
<CODE>FontPath
</CODE> directive specifies the font path to
1360 use when searching for fonts. The default font path is
1361 <CODE>/usr/share/cups/fonts
</CODE>.
</P>
1364 <H2 CLASS=
"title"><A NAME=
"Group">Group
</A></H2>
1368 <PRE CLASS=
"command">
1373 <H3>Description
</H3>
1375 <P>The
<CODE>Group
</CODE> directive specifies the UNIX group that
1376 filter and CGI programs run as. The default group is
1377 system-specific but is usually
<CODE>lp
</CODE> or
1378 <CODE>nobody
</CODE>.
</P>
1381 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"HideImplicitMembers">HideImplicitMembers
</A></H2>
1385 <PRE CLASS=
"command">
1386 HideImplicitMembers Yes
1387 HideImplicitMembers No
1390 <H3>Description
</H3>
1392 <P>The
<CODE>HideImplicitMembers
</CODE> directive controls
1393 whether the individual printers in an implicit class are hidden
1394 from the user. The default is
<CODE>Yes
</CODE>.
</P>
1396 <P><A HREF=
"#ImplicitClasses"><CODE>ImplicitClasses
</CODE></A>
1397 must be enabled for this directive to have any effect.
</P>
1400 <H2 CLASS=
"title"><A NAME=
"HostNameLookups">HostNameLookups
</A></H2>
1404 <PRE CLASS=
"command">
1407 HostNameLookups Double
1410 <H3>Description
</H3>
1412 <P>The
<CODE>HostNameLookups
</CODE> directive controls whether or
1413 not CUPS looks up the hostname for connecting clients. The
1414 <CODE>Double
</CODE> setting causes CUPS to verify that the
1415 hostname resolved from the address matches one of the addresses
1416 returned for that hostname.
<CODE>Double
</CODE> lookups also
1417 prevent clients with unregistered addresses from connecting to
1420 <P>The default is
<CODE>Off
</CODE> to avoid the potential server
1421 performance problems with hostname lookups. Set this option to
1422 <CODE>On
</CODE> or
<CODE>Double
</CODE> only if absolutely
1426 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"ImplicitAnyClasses">ImplicitAnyClasses
</A></H2>
1430 <PRE CLASS=
"command">
1431 ImplicitAnyClasses On
1432 ImplicitAnyClasses Off
1435 <H3>Description
</H3>
1437 <P>The
<CODE>ImplicitAnyClasses
</CODE> directive controls
1438 whether implicit classes for local and remote printers are
1439 created with the name
<CODE>AnyPrinter
</CODE>. The default
1440 setting is
<CODE>Off
</CODE>.
</P>
1442 <P><A HREF=
"#ImplicitClasses"><CODE>ImplicitClasses
</CODE></A>
1443 must be enabled for this directive to have any effect.
</P>
1446 <H2 CLASS=
"title"><A NAME=
"ImplicitClasses">ImplicitClasses
</A></H2>
1450 <PRE CLASS=
"command">
1455 <H3>Description
</H3>
1457 <P>The
<CODE>ImplicitClasses
</CODE> directive controls whether
1458 implicit classes are created based upon the available network
1459 printers and classes. The default setting is
1460 <CODE>@CUPS_IMPLICIT_CLASSES@
</CODE> but is automatically turned
1461 <CODE>Off
</CODE> if
<A HREF=
"#Browsing"><CODE>Browsing
</CODE></A> is turned
1462 <CODE>Off
</CODE>.
</P>
1465 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.9</SPAN><A NAME=
"Include">Include
</A></H2>
1469 <PRE CLASS=
"command">
1471 Include /foo/bar/filename
1474 <H3>Description
</H3>
1476 <P>The
<CODE>Include
</CODE> directive includes the named file in
1477 the
<CODE>cupsd.conf
</CODE> file. If no leading path is provided,
1478 the file is assumed to be relative to the
<A
1479 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory.
</P>
1482 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"JobRetryInterval">JobRetryInterval
</A></H2>
1486 <PRE CLASS=
"command">
1488 JobRetryInterval
120
1491 <H3>Description
</H3>
1493 <P>The
<CODE>JobRetryInterval
</CODE> directive specifies the
1494 number of seconds to wait before retrying a job. This is
1495 typically used for fax queues but can also be used with normal
1496 print queues whose error policy is
<CODE>retry-job
</CODE>. The
1497 default is
30 seconds.
</P>
1500 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/Mac OS X
10.6</SPAN><A NAME=
"JobKillDelay">JobKillDelay
</A></H2>
1504 <PRE CLASS=
"command">
1509 <H3>Description
</H3>
1511 <P>The
<CODE>JobKillDelay
</CODE> directive specifies the number of seconds to
1512 wait before killing the filters and backend associated with a canceled or held
1513 job. The default is
30 seconds.
</P>
1516 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"JobRetryLimit">JobRetryLimit
</A></H2>
1520 <PRE CLASS=
"command">
1525 <H3>Description
</H3>
1527 <P>The
<CODE>JobRetryLimit
</CODE> directive specifies the maximum
1528 number of times the scheduler will try to print a job. This is
1529 typically used for fax queues but can also be used with normal
1530 print queues whose error policy is
<CODE>retry-job
</CODE>. The
1531 default is
5 times.
</P>
1534 <H2 CLASS=
"title"><A NAME=
"KeepAlive">KeepAlive
</A></H2>
1538 <PRE CLASS=
"command">
1543 <H3>Description
</H3>
1545 <P>The
<CODE>KeepAlive
</CODE> directive controls whether or not
1546 to support persistent HTTP connections. The default is
1547 <CODE>On
</CODE>.
</P>
1549 <P>HTTP/
1.1 clients automatically support persistent connections,
1550 while HTTP/
1.0 clients must specifically request them using the
1551 <CODE>Keep-Alive
</CODE> attribute in the
<CODE>Connection:
</CODE>
1552 field of each request.
</P>
1555 <H2 CLASS=
"title"><A NAME=
"KeepAliveTimeout">KeepAliveTimeout
</A></H2>
1559 <PRE CLASS=
"command">
1564 <H3>Description
</H3>
1566 <P>The
<CODE>KeepAliveTimeout
</CODE> directive controls how long
1567 a persistent HTTP connection will remain open after the last
1568 request. The default is
30 seconds.
</P>
1571 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Limit">Limit (Location)
</A></H2>
1575 <PRE CLASS=
"command">
1576 <Location /path
>
1577 <Limit GET POST
>
1587 <H3>Description
</H3>
1589 <P>The
<CODE>Limit
</CODE> directive groups access control
1590 directives for specific types of HTTP requests and must appear
1591 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> section.
1592 Access can be limited for individual request types
1593 (
<CODE>DELETE
</CODE>,
<CODE>GET
</CODE>,
<CODE>HEAD
</CODE>,
1594 <CODE>OPTIONS
</CODE>,
<CODE>POST
</CODE>,
<CODE>PUT
</CODE>, and
1595 <CODE>TRACE
</CODE>) or for all request types (
<CODE>ALL
</CODE>).
1596 The request type names are case-sensitive for compatibility with
1600 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"LimitIPP">Limit (Policy)
</A></H2>
1604 <PRE CLASS=
"command">
1606 <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer
>
1616 <H3>Description
</H3>
1618 <P>When included in
<A HREF=
"#Policy"><CODE>Policy
</CODE></A>
1619 sections, the
<CODE>Limit
</CODE> directive groups access control
1620 directives for specific IPP operations. Multiple operations can
1621 be listed, separated by spaces. Table
2 lists the supported
1624 <DIV CLASS=
"table"><TABLE SUMMARY=
"Supported IPP Operations">
1625 <CAPTION>Table
2:
<A NAME=
"TABLE2">Supported IPP Operations
</A></CAPTION>
1628 <TH>Operation Name
</TH>
1629 <TH>Description
</TH>
1635 <TD>All operations - used as the default limit for
1636 operations that are not listed
</TD>
1640 <TD>Cancel a job
</TD>
1643 <TD>Cancel-Subscription
</TD>
1644 <TD>Cancel a subscription
</TD>
1648 <TD>Create a new, empty job
</TD>
1651 <TD>Create-Job-Subscription
</TD>
1652 <TD>Creates a notification subscription on a job
</TD>
1655 <TD>Create-Printer-Subscription
</TD>
1656 <TD>Creates a notification subscription on a printer
</TD>
1659 <TD>CUPS-Accept-Jobs
</TD>
1660 <TD>Sets the printer-is-accepting-jobs value for a printer to true
</TD>
1663 <TD>CUPS-Add-Modify-Class
</TD>
1664 <TD>Adds or modifies a class
</TD>
1667 <TD>CUPS-Add-Modify-Printer
</TD>
1668 <TD>Adds or modifies a printer
</TD>
1671 <TD>CUPS-Authenticate-Job
</TD>
1672 <TD>Authenticates a job for printing
</TD>
1675 <TD>CUPS-Delete-Class
</TD>
1676 <TD>Deletes a class
</TD>
1679 <TD>CUPS-Delete-Printer
</TD>
1680 <TD>Deletes a printer
</TD>
1683 <TD>CUPS-Get-Classes
</TD>
1684 <TD>Gets a list of classes
</TD>
1687 <TD>CUPS-Get-Default
</TD>
1688 <TD>Gets the (network/server) default printer or class
</TD>
1691 <TD>CUPS-Get-Devices
</TD>
1692 <TD>Gets a list of available devices
</TD>
1695 <TD>CUPS-Get-PPDs
</TD>
1696 <TD>Gets a list of available manufacturers or drivers
</TD>
1699 <TD>CUPS-Get-Printers
</TD>
1700 <TD>Gets a list of printers and/or classes
</TD>
1703 <TD>CUPS-Move-Job
</TD>
1704 <TD>Moves a job to a new destination
</TD>
1707 <TD>CUPS-Reject-Jobs
</TD>
1708 <TD>Sets the printer-is-accepting-jobs value for a printer to false
</TD>
1711 <TD>CUPS-Set-Default
</TD>
1712 <TD>Sets the network/server default printer or class
</TD>
1715 <TD>Disable-Printer
</TD>
1716 <TD>Sets the printer-state value for a printer to stopped
</TD>
1719 <TD>Enable-Printer
</TD>
1720 <TD>Sets the printer-state value for a printer to idle/processing
</TD>
1723 <TD>Get-Job-Attributes
</TD>
1724 <TD>Gets information about a job
</TD>
1728 <TD>Gets a list of jobs
</TD>
1731 <TD>Get-Notifications
</TD>
1732 <TD>Gets a list of events
</TD>
1735 <TD>Get-Printer-Attributes
</TD>
1736 <TD>Gets informaion about a printer or class
</TD>
1739 <TD>Get-Subscription-Attributes
</TD>
1740 <TD>Gets informaion about a notification subscription
</TD>
1743 <TD>Get-Subscriptions
</TD>
1744 <TD>Gets a list of notification subscriptions
</TD>
1748 <TD>Holds a job for printing
</TD>
1751 <TD>Pause-Printer
</TD>
1752 <TD>Sets the printer-state value for a printer to stopped
</TD>
1756 <TD>Creates a job with a single file for printing
</TD>
1760 <TD>Removes all jobs from a printer
</TD>
1763 <TD>Release-Job
</TD>
1764 <TD>Releases a previously held job for printing
</TD>
1767 <TD>Renew-Subscription
</TD>
1768 <TD>Renews a notification subscription
</TD>
1771 <TD>Restart-Job
</TD>
1772 <TD>Reprints a job
</TD>
1775 <TD>Resume-Printer
</TD>
1776 <TD>Sets the printer-stae value for a printer to idle/processing
</TD>
1779 <TD>Send-Document
</TD>
1780 <TD>Adds a file to an job created with Create-Job
</TD>
1783 <TD>Set-Job-Attributes
</TD>
1784 <TD>Changes job options
</TD>
1787 <TD>Validate-Job
</TD>
1788 <TD>Validates job options prior to printing
</TD>
1794 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"LimitExcept">LimitExcept
</A></H2>
1798 <PRE CLASS=
"command">
1799 <Location /path
>
1800 <LimitExcept GET POST
>
1802 </LimitExcept
>
1806 <H3>Description
</H3>
1808 <P>The
<CODE>LimitExcept
</CODE> directive groups access control
1809 directives for specific types of HTTP requests and must appear
1810 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> section.
1811 Unlike the
<A HREF=
"#Limit"><CODE>Limit
</CODE></A> directive,
1812 <CODE>LimitExcept
</CODE> restricts access for all requests
1813 <I>except
</I> those listed on the
<CODE>LimitExcept
</CODE>
1817 <H2 CLASS=
"title"><A NAME=
"LimitRequestBody">LimitRequestBody
</A></H2>
1821 <PRE CLASS=
"command">
1822 LimitRequestBody
10485760
1823 LimitRequestBody
10m
1827 <H3>Description
</H3>
1829 <P>The
<CODE>LimitRequestBody
</CODE> directive controls the
1830 maximum size of print files, IPP requests, and HTML form data in
1831 HTTP POST requests. The default limit is
0 which disables the
1835 <H2 CLASS=
"title"><A NAME=
"Listen">Listen
</A></H2>
1839 <PRE CLASS=
"command">
1840 Listen
127.0.0.1:
631
1841 Listen
192.0.2.1:
631
1846 <H3>Description
</H3>
1848 <P>The
<CODE>Listen
</CODE> directive specifies a network address
1849 and port to listen for connections. Multiple
<CODE>Listen
</CODE>
1850 directives can be provided to listen on multiple addresses.
</P>
1852 <P>The
<CODE>Listen
</CODE> directive is similar to the
<A
1853 HREF=
"#Port"><CODE>Port
</CODE></A> directive but allows you to
1854 restrict access to specific interfaces or networks.
</P>
1857 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"ListenBackLog">ListenBackLog
</A></H2>
1861 <PRE CLASS=
"command">
1866 <H3>Description
</H3>
1868 <P>The
<CODE>ListenBackLog
</CODE> directive sets the maximum
1869 number of pending connections the scheduler will allow. This
1870 normally only affects very busy servers that have reached the
<A
1871 HREF=
"#MaxClients"><CODE>MaxClients
</CODE></A> limit, but can
1872 also be triggered by large numbers of simultaneous connections.
1873 When the limit is reached, the operating system will refuse
1874 additional connections until the scheduler can accept the pending
1875 ones. The default is the OS-defined default limit, typically
1876 either
5 for older operating systems or
128 for newer operating
1880 <H2 CLASS=
"title"><A NAME=
"Location">Location
</A></H2>
1884 <PRE CLASS=
"command">
1889 <Location /admin
>
1893 <Location /admin/conf
>
1897 <Location /admin/log
>
1901 <Location /classes
>
1905 <Location /classes/name
>
1909 <Location /jobs
>
1913 <Location /printers
>
1917 <Location /printers/name
>
1923 <H3>Description
</H3>
1925 <P>The
<CODE>Location
</CODE> directive specifies access control
1926 and authentication options for the specified HTTP resource or
1927 path. The
<A HREF=
"#Allow"><CODE>Allow
</CODE></A>,
<A
1928 HREF=
"#AuthType"><CODE>AuthType
</CODE></A>,
<A
1929 HREF=
"#Deny"><CODE>Deny
</CODE></A>,
<A
1930 HREF=
"#Encryption"><CODE>Encryption
</CODE></A>,
<A
1931 HREF=
"#Limit"><CODE>Limit
</CODE></A>,
<A
1932 HREF=
"#LimitExcept"><CODE>LimitExcept
</CODE></A>,
<A
1933 HREF=
"#Order"><CODE>Order
</CODE></A>,
<A
1934 HREF=
"#Require"><CODE>Require
</CODE></A>, and
<A
1935 HREF=
"#Satisfy"><CODE>Satisfy
</CODE></A> directives may all
1936 appear inside a location.
</P>
1938 <P>Note that more specific resources override the less specific
1939 ones. So the directives inside the
<CODE>/printers/name
</CODE>
1940 location will override ones from
<CODE>/printers
</CODE>.
1941 Directives inside
<CODE>/printers
</CODE> will override ones from
1942 <CODE>/
</CODE>. None of the directives are inherited.
</P>
1944 <DIV CLASS=
"table"><TABLE SUMMARY=
"Common Locations on the Server">
1945 <CAPTION>Table
3:
<A NAME=
"TABLE3">Common Locations on the Server
</A></CAPTION>
1947 <TR><TH>Location
</TH><TH>Description
</TH></TR>
1950 <TR><TD><CODE>/
</CODE></TD><TD>The path for all get operations (get-printers, get-jobs, etc.)
</TD></TR>
1951 <TR><TD><CODE>/admin
</CODE></TD><TD>The path for all administration operations (add-printer, delete-printer, start-printer, etc.)
</TD></TR>
1952 <TR><TD><CODE>/admin/conf
</CODE></TD><TD>The path for access to the CUPS configuration files (cupsd.conf, client.conf, etc.)
</TD></TR>
1953 <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>
1954 <TR><TD><CODE>/classes
</CODE></TD><TD>The path for all classes
</TD></TR>
1955 <TR><TD><CODE>/classes/name
</CODE></TD><TD>The resource for class
<CODE>name
</CODE></TD></TR>
1956 <TR><TD><CODE>/jobs
</CODE></TD><TD>The path for all jobs (hold-job, release-job, etc.)
</TD></TR>
1957 <TR><TD><CODE>/jobs/id
</CODE></TD><TD>The resource for job
<CODE>id
</CODE></TD></TR>
1958 <TR><TD><CODE>/printers
</CODE></TD><TD>The path for all printers
</TD></TR>
1959 <TR><TD><CODE>/printers/name
</CODE></TD><TD>The path for printer
<CODE>name
</CODE></TD></TR>
1960 <TR><TD><CODE>/printers/name.ppd
</CODE></TD><TD>The PPD file path for printer
<CODE>name
</CODE></TD></TR>
1965 <H2 CLASS=
"title"><A NAME=
"LogDebugHistory">LogDebugHistory
</A></H2>
1969 <PRE CLASS=
"command">
1974 <H3>Description
</H3>
1976 <P>When
<A HREF=
"#LogLevel"><CODE>LogLevel
</CODE></A> is not set to
1977 <CODE>debug
</CODE> or
<CODE>debug2
</CODE>, the
<CODE>LogDebugHistory
</CODE>
1978 directive specifies the number of debugging messages that are logged when an
1979 error occurs during printing. The default is
200 messages. A value of
0
1980 disables debugging history entirely and is not recommended.
</P>
1983 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.15</SPAN><A NAME=
"LogFilePerm">LogFilePerm
</A></H2>
1987 <PRE CLASS=
"command">
1992 <H3>Description
</H3>
1994 <P>The
<CODE>LogFilePerm
</CODE> directive specifies the
1995 permissions to use when writing configuration files. The default
1996 is @CUPS_LOG_FILE_PERM@.
</P>
1999 <H2 CLASS=
"title"><A NAME=
"LogLevel">LogLevel
</A></H2>
2003 <PRE CLASS=
"command">
2016 <H3>Description
</H3>
2018 <P>The
<CODE>LogLevel
</CODE> directive specifies the level of
2019 logging for the
<A HREF=
"#ErrorLog"><CODE>ErrorLog
</CODE></A>
2020 file. The following values are recognized (each level logs
2021 everything under the preceding levels):
</P>
2025 <LI><CODE>none
</CODE> - Log nothing
</LI>
2027 <LI><CODE>emerg
</CODE> - Log emergency conditions that
2028 prevent the server from running
</LI>
2030 <LI><CODE>alert
</CODE> - Log alerts that must be handled
2033 <LI><CODE>crit
</CODE> - Log critical errors that don't
2034 prevent the server from running
</LI>
2036 <LI><CODE>error
</CODE> - Log general errors
</LI>
2038 <LI><CODE>warn
</CODE> - Log errors and warnings
</LI>
2040 <LI><CODE>notice
</CODE> - Log temporary error conditions
</LI>
2042 <LI><CODE>info
</CODE> - Log all requests and state
2045 <LI><CODE>debug
</CODE> - Log basic debugging
2048 <LI><CODE>debug2
</CODE> - Log all debugging
2053 <p>The default
<code>LogLevel
</code> is
<code>@CUPS_LOG_LEVEL@
</code>.
</p>
2056 <H2 CLASS=
"title"><A NAME=
"LogTimeFormat">LogTimeFormat
</A></H2>
2060 <PRE CLASS=
"command">
2061 LogTimeFormat standard
2065 <H3>Description
</H3>
2067 <P>The
<CODE>LogTimeFormat
</CODE> directive specifies the format used for the
2068 date and time in the log files.
<CODE>Standard
</CODE> uses the standard Apache
2069 Common Log Format date and time while
<CODE>usecs
</CODE> adds microseconds.
2070 The default is
<CODE>standard
</CODE>.
</P>
2073 <H2 CLASS=
"title"><A NAME=
"MaxClients">MaxClients
</A></H2>
2077 <PRE CLASS=
"command">
2082 <H3>Description
</H3>
2084 <P>The
<CODE>MaxClients
</CODE> directive controls the maximum
2085 number of simultaneous clients that will be allowed by the
2086 server. The default is
100 clients.
</P>
2088 <BLOCKQUOTE><B>Note:
</B>
2090 <P>Since each print job requires a file descriptor for the status
2091 pipe, the scheduler internally limits the
<CODE>MaxClients
</CODE>
2092 value to
1/
3 of the available file descriptors to avoid possible
2093 problems when printing large numbers of jobs.
</P>
2098 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.18</SPAN><A NAME=
"MaxClientsPerHost">MaxClientsPerHost
</A></H2>
2102 <PRE CLASS=
"command">
2103 MaxClientsPerHost
10
2106 <H3>Description
</H3>
2108 <P>The
<CODE>MaxClientsPerHost
</CODE> directive controls the
2109 maximum number of simultaneous clients that will be allowed from
2110 a single host by the server. The default is the
2111 <CODE>MaxClients
</CODE> value.
</P>
2113 <P>This directive provides a small measure of protection against
2114 Denial of Service attacks from a single host.
</P>
2117 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"MaxCopies">MaxCopies
</A></H2>
2121 <PRE CLASS=
"command">
2126 <H3>Description
</H3>
2128 <P>The
<CODE>MaxCopies
</CODE> directive controls the maximum
2129 number of copies that a user can print of a job. The default is
2130 @CUPS_MAX_COPIES@ copies.
</P>
2132 <BLOCKQUOTE><B>Note:
</B>
2134 <P>Most HP PCL laser printers internally limit the number of
2141 <H2 CLASS=
"title"><A NAME=
"MaxJobs">MaxJobs
</A></H2>
2145 <PRE CLASS=
"command">
2151 <H3>Description
</H3>
2153 <P>The
<CODE>MaxJobs
</CODE> directive controls the maximum number
2154 of jobs that are kept in memory. Once the number of jobs reaches
2155 the limit, the oldest completed job is automatically purged from
2156 the system to make room for the new one. If all of the known jobs
2157 are still pending or active then the new job will be
2160 <P>Setting the maximum size to
0 disables this functionality. The
2161 default setting is
500.
</P>
2164 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"MaxJobsPerPrinter">MaxJobsPerPrinter
</A></H2>
2168 <PRE CLASS=
"command">
2169 MaxJobsPerPrinter
100
2170 MaxJobsPerPrinter
9999
2174 <H3>Description
</H3>
2176 <P>The
<CODE>MaxJobsPerPrinter
</CODE> directive controls the
2177 maximum number of active jobs that are allowed for each printer
2178 or class. Once a printer or class reaches the limit, new jobs
2179 will be rejected until one of the active jobs is completed,
2180 stopped, aborted, or canceled.
</P>
2182 <P>Setting the maximum to
0 disables this functionality. The
2183 default setting is
0.
</P>
2186 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"MaxJobsPerUser">MaxJobsPerUser
</A></H2>
2190 <PRE CLASS=
"command">
2196 <H3>Description
</H3>
2198 <P>The
<CODE>MaxJobsPerUser
</CODE> directive controls the maximum
2199 number of active jobs that are allowed for each user. Once a user
2200 reaches the limit, new jobs will be rejected until one of the
2201 active jobs is completed, stopped, aborted, or canceled.
</P>
2203 <P>Setting the maximum to
0 disables this functionality. The
2204 default setting is
0.
</P>
2207 <H2 CLASS=
"title"><A NAME=
"MaxLogSize">MaxLogSize
</A></H2>
2211 <PRE CLASS=
"command">
2217 <H3>Description
</H3>
2219 <P>The
<CODE>MaxLogSize
</CODE> directive controls the maximum
2220 size of each log file. Once a log file reaches or exceeds the
2221 maximum size it is closed and renamed to
<VAR>filename.O
</VAR>.
2222 This allows you to rotate the logs automatically. The default
2223 size is
1048576 bytes (
1MB).
</P>
2225 <P>Setting the maximum size to
0 disables log rotation.
</P>
2228 <H2 CLASS=
"title"><SPAN CLASS=
"info">Deprecated
</SPAN><A NAME=
"MaxRequestSize">MaxRequestSize
</A></H2>
2232 <PRE CLASS=
"command">
2233 MaxRequestSize
10485760
2238 <H3>Description
</H3>
2240 <P>The
<CODE>MaxRequestSize
</CODE> directive controls the maximum
2241 size of print files, IPP requests, and HTML form data in HTTP
2242 POST requests. The default limit is
0 which disables the limit
2245 <P><B>This directive is deprecated and will be removed in a
2246 future CUPS release.
</B> Use the
<A
2247 HREF=
"#LimitRequestBody"><CODE>LimitRequestBody
</CODE></A>
2248 directive instead.
</P>
2251 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.4/Mac OS X
10.6</SPAN><A NAME=
"MultipleOperationTimeout">MultipleOperationTimeout
</A></H2>
2255 <PRE CLASS=
"command">
2256 MultipleOperationTimeout
60
2257 MultipleOperationTimeout
300
2258 MultipleOperationTimeout
86400
2261 <H3>Description
</H3>
2263 <P>The
<CODE>MultipleOperationTimeout
</CODE> directive sets the maximum amount
2264 of time between files in a multi-file print job. The default is
300 seconds.
</P>
2267 <H2 CLASS=
"title"><A NAME=
"Order">Order
</A></H2>
2271 <PRE CLASS=
"command">
2272 <Location /path
>
2279 <H3>Description
</H3>
2281 <P>The
<CODE>Order
</CODE> directive defines the default access
2282 control. The following values are supported:
</P>
2286 <LI><CODE>allow,deny
</CODE> - Deny requests by default,
2287 then check the
<A HREF=
"#Allow"><CODE>Allow
</CODE></A>
2288 lines followed by the
<A
2289 HREF=
"#Deny"><CODE>Deny
</CODE></A> lines
</LI>
2291 <LI><CODE>deny,allow
</CODE> - Allow requests by default,
2292 then check the
<A HREF=
"#Deny"><CODE>Deny
</CODE></A>
2293 lines followed by the
<A
2294 HREF=
"#Allow"><CODE>Allow
</CODE></A> lines
</LI>
2298 <P>The
<CODE>Order
</CODE> directive must appear inside a
<A
2299 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
2300 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
2303 <H2 CLASS=
"title"><A NAME=
"PageLog">PageLog
</A></H2>
2307 <PRE CLASS=
"command">
2308 PageLog /var/log/cups/page_log
2309 PageLog /var/log/cups/page_log-%s
2313 <H3>Description
</H3>
2315 <P>The
<CODE>PageLog
</CODE> directive sets the name of the page
2316 log file. If the filename is not absolute then it is assumed to
2317 be relative to the
<A
2318 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
2319 default page log file is
<VAR>@CUPS_LOGDIR@/page_log
</VAR>.
</P>
2321 <P>The server name can be included in the filename by using
2322 <CODE>%s
</CODE> in the name.
</P>
2324 <P>The special name
"syslog" can be used to send the page
2325 information to the system log instead of a plain file.
</P>
2328 <H2 CLASS=
"title"><A NAME=
"PageLogFormat">PageLogFormat
</A></H2>
2332 <PRE CLASS=
"command">
2333 PageLogFormat %p %j %u %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}
2334 PageLogFormat PAGE %p %j %u %P %C %{job-billing} %{job-originating-host-name}
2337 <H3>Description
</H3>
2339 <P>The
<CODE>PageLogFormat
</CODE> directive sets the format of lines
2340 that are logged to the page log file. Sequences beginning with percent (%)
2341 characters are replaced with the corresponding information, while all other
2342 characters are copied literally. The following percent sequences are
2347 <LI><CODE>%%
</CODE>: Inserts a single percent character.
</LI>
2349 <LI><CODE>%{name}
</CODE>: Inserts the value of the specified IPP
2352 <LI><CODE>%C
</CODE>: Inserts the number of copies for the current page.
</LI>
2354 <LI><CODE>%P
</CODE>: Inserts the current page number.
</LI>
2356 <LI><CODE>%T
</CODE>: Inserts the current date and time in common log
2359 <LI><CODE>%j
</CODE>: Inserts the job ID.
</LI>
2361 <LI><CODE>%p
</CODE>: Inserts the printer name.
</LI>
2363 <LI><CODE>%u
</CODE>: Inserts the username.
</LI>
2367 <P>The default is
"%p %j %u %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".
</P>
2370 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"PassEnv">PassEnv
</A></H2>
2374 <PRE CLASS=
"command">
2375 PassEnv MY_ENV_VARIABLE
2378 <H3>Description
</H3>
2380 <P>The
<CODE>PassEnv
</CODE> directive specifies an environment
2381 variable that should be passed to child processes. Normally, the
2382 scheduler only passes the
<CODE>DYLD_LIBRARY_PATH
</CODE>,
2383 <CODE>LD_ASSUME_KERNEL
</CODE>,
<CODE>LD_LIBRARY_PATH
</CODE>,
2384 <CODE>LD_PRELOAD
</CODE>,
<CODE>NLSPATH
</CODE>,
2385 <CODE>SHLIB_PATH
</CODE>,
<CODE>TZ
</CODE>, and
<CODE>VGARGS
</CODE>
2386 environment variables to child processes.
</P>
2389 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"Policy">Policy
</A></H2>
2393 <PRE CLASS=
"command">
2395 <Limit operation ... operation
>
2398 <Limit operation ... operation
>
2407 <H3>Description
</H3>
2409 <P>The
<CODE>Policy
</CODE> directive specifies IPP operation
2410 access control limits. Each policy contains
1 or more
<A
2411 HREF=
"#LimitIPP"><CODE>Limit
</CODE></A> sections to set the
2412 access control limits for specific operations - user limits,
2413 authentication, encryption, and allowed/denied addresses,
2414 domains, or hosts. The
<CODE><Limit All
></CODE> section
2415 specifies the default access control limits for operations that
2418 <P>Policies are named and associated with printers via the
2419 printer's operation policy setting
2420 (
<CODE>printer-op-policy
</CODE>). The default policy for the
2421 scheduler is specified using the
<A
2422 HREF=
"#DefaultPolicy"><CODE>DefaultPolicy
</CODE></A>
2426 <H2 CLASS=
"title"><A NAME=
"Port">Port
</A></H2>
2430 <PRE CLASS=
"command">
2435 <H3>Description
</H3>
2437 <P>The
<CODE>Port
</CODE> directive specifies a port to listen on.
2438 Multiple
<CODE>Port
</CODE> lines can be specified to listen on
2439 multiple ports. The
<CODE>Port
</CODE> directive is equivalent to
2440 "<CODE>Listen *:nnn</CODE>". The default port is
631.
</P>
2442 <BLOCKQUOTE><B>Note:
</B>
2444 <P>On systems that support IPv6, this directive will bind to both
2445 the IPv4 and IPv6 wildcard address.
</P>
2450 <H2 CLASS=
"title"><A NAME=
"PreserveJobHistory">PreserveJobHistory
</A></H2>
2454 <PRE CLASS=
"command">
2455 PreserveJobHistory On
2456 PreserveJobHistory Off
2459 <H3>Description
</H3>
2461 <P>The
<CODE>PreserveJobHistory
</CODE> directive controls whether
2462 the history of completed, canceled, or aborted print jobs is
2465 <P>A value of
<CODE>On
</CODE> (the default) preserves job
2466 information until the administrator purges it with the
2467 <CODE>cancel
</CODE> command.
</P>
2469 <P>A value of
<CODE>Off
</CODE> removes the job information as
2470 soon as each job is completed, canceled, or aborted.
</P>
2473 <H2 CLASS=
"title"><A NAME=
"PreserveJobFiles">PreserveJobFiles
</A></H2>
2477 <PRE CLASS=
"command">
2479 PreserveJobFiles Off
2482 <H3>Description
</H3>
2484 <P>The
<CODE>PreserveJobFiles
</CODE> directive controls whether
2485 the document files of completed, canceled, or aborted print jobs
2486 are stored on disk.
</P>
2488 <P>A value of
<CODE>On
</CODE> preserves job files until the
2489 administrator purges them with the
<CODE>cancel
</CODE> command.
2490 Jobs can be restarted (and reprinted) as desired until they are
2493 <P>A value of
<CODE>Off
</CODE> (the default) removes the job
2494 files as soon as each job is completed, canceled, or aborted.
</P>
2497 <H2 CLASS=
"title"><A NAME=
"Printcap">Printcap
</A></H2>
2501 <PRE CLASS=
"command">
2503 Printcap /etc/printcap
2504 Printcap /etc/printers.conf
2505 Printcap /Library/Preferences/org.cups.printers.plist
2508 <H3>Description
</H3>
2510 <P>The
<CODE>Printcap
</CODE> directive controls whether or not a
2511 printcap file is automatically generated and updated with a list
2512 of available printers. If specified with no value, then no
2513 printcap file will be generated. The default is to generate a
2514 file named
<VAR>@CUPS_DEFAUL_PRINTCAP@
</VAR>.
</P>
2516 <P>When a filename is specified (e.g.
<VAR>@CUPS_DEFAULT_PRINTCAP@
</VAR>),
2517 the printcap file is written whenever a printer is added or
2518 removed. The printcap file can then be used by applications that
2519 are hardcoded to look at the printcap file for the available
2523 <H2 CLASS=
"title"><A NAME=
"PrintcapFormat">PrintcapFormat
</A></H2>
2527 <PRE CLASS=
"command">
2529 PrintcapFormat Solaris
2530 PrintcapFormat plist
2533 <H3>Description
</H3>
2535 <P>The
<CODE>PrintcapFormat
</CODE> directive controls the output format of the
2536 printcap file. The default is to generate the plist format on Mac OS X, the
2537 Solaris format on Solaris, and the BSD format on other operating systems.
</P>
2540 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.13</SPAN><A NAME=
"PrintcapGUI">PrintcapGUI
</A></H2>
2544 <PRE CLASS=
"command">
2545 PrintGUI /usr/bin/glpoptions
2548 <H3>Description
</H3>
2550 <P>The
<CODE>PrintcapGUI
</CODE> directive sets the program to
2551 associate with the IRIX printer GUI interface script which is
2552 used by IRIX applications to display printer-specific options.
2553 There is no default program.
</P>
2556 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.21</SPAN><A NAME=
"ReloadTimeout">ReloadTimeout
</A></H2>
2560 <PRE CLASS=
"command">
2565 <H3>Description
</H3>
2567 <P>The
<CODE>ReloadTimeout
</CODE> directive specifies the number
2568 of seconds the scheduler will wait for active jobs to complete
2569 before doing a restart. The default is
30 seconds.
</P>
2572 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.3</SPAN><A NAME=
"RemoteRoot">RemoteRoot
</A></H2>
2576 <PRE CLASS=
"command">
2581 <H3>Description
</H3>
2583 <P>The
<CODE>RemoteRoot
</CODE> directive sets the username for
2584 unauthenticated root requests from remote hosts. The default
2585 username is
<VAR>remroot
</VAR>. Setting
<CODE>RemoteRoot
</CODE>
2586 to
<VAR>root
</VAR> effectively disables this security
2590 <H2 CLASS=
"title"><A NAME=
"RequestRoot">RequestRoot
</A></H2>
2594 <PRE CLASS=
"command">
2595 RequestRoot /var/spool/cups
2596 RequestRoot /foo/bar/spool/cups
2599 <H3>Description
</H3>
2601 <P>The
<CODE>RequestRoot
</CODE> directive sets the directory for
2602 incoming IPP requests and HTML forms. If an absolute path is not
2603 provided then it is assumed to be relative to the
<A
2604 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
2605 default request directory is
<VAR>@CUPS_REQUESTS@
</VAR>.
</P>
2608 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Require">Require
</A></H2>
2612 <PRE CLASS=
"command">
2613 <Location /path
>
2615 Require group foo bar
2616 Require user john mary
2618 Require user @groupname
2619 Require user @SYSTEM
2624 <H3>Description
</H3>
2626 <P>The
<CODE>Require
</CODE> directive specifies that
2627 authentication is required for the resource. The
2628 <CODE>group
</CODE> keyword specifies that the authenticated user
2629 must be a member of one or more of the named groups that
2632 <P>The
<CODE>user
</CODE> keyword specifies that the
2633 authenticated user must be one of the named users or groups that
2634 follow. Group names are specified using the
"@" prefix.
</P>
2636 <P>The
<CODE>valid-user
</CODE> keyword specifies that any
2637 authenticated user may access the resource.
</P>
2639 <P>The default is to do no authentication. This directive must
2640 appear inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> or
2641 <A HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
2644 <H2 CLASS=
"title"><A NAME=
"RIPCache">RIPCache
</A></H2>
2648 <PRE CLASS=
"command">
2654 <H3>Description
</H3>
2656 <P>The
<CODE>RIPCache
</CODE> directive sets the size of the
2657 memory cache used by Raster Image Processor (
"RIP") filters such
2658 as
<CODE>imagetoraster
</CODE> and
<CODE>pstoraster
</CODE>. The
2659 size can be suffixed with a
"k" for kilobytes,
"m" for megabytes,
2660 or
"g" for gigabytes. The default cache size is
"8m", or
8
2664 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"RootCertDuration">RootCertDuration
</A></H2>
2668 <PRE CLASS=
"command">
2670 RootCertDuration
300
2673 <H3>Description
</H3>
2675 <P>The
<CODE>RootCertDuration
</CODE> directive specifies the
2676 number of seconds the
<EM>root certificate
</EM> remains valid.
2677 The scheduler will generate a new certificate as needed when the
2678 number of seconds has expired. If set to
0, the root certificate
2679 is generated only once on startup or on a restart. The default is
2683 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Satisfy">Satisfy
</A></H2>
2687 <PRE CLASS=
"command">
2688 <Location /path
>
2695 <H3>Description
</H3>
2697 <P>The
<CODE>Satisfy
</CODE> directive specifies whether all
2698 conditions must be satisfied to allow access to the resource. If
2699 set to
<CODE>all
</CODE>, then all authentication and access
2700 control conditions must be satified to allow access.
</P>
2702 <P>Setting
<CODE>Satisfy
</CODE> to
<CODE>any
</CODE> allows a user
2703 to gain access if the authentication or access control
2704 requirements are satisfied. For example, you might require
2705 authentication for remote access, but allow local access without
2708 <P>The default is
<CODE>all
</CODE>. This directive must appear
2709 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
2710 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
2713 <H2 CLASS=
"title"><A NAME=
"ServerAdmin">ServerAdmin
</A></H2>
2717 <PRE CLASS=
"command">
2718 ServerAdmin user@host
2719 ServerAdmin root@foo.bar.com
2722 <H3>Description
</H3>
2724 <P>The
<CODE>ServerAdmin
</CODE> directive identifies the email
2725 address for the administrator on the system. By default the
2726 administrator email address is
<CODE>root@server
</CODE>, where
2727 <CODE>server
</CODE> is the
<A
2728 HREF=
"#ServerName"><CODE>ServerName
</CODE></A>.
</P>
2731 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.3.10</SPAN><A NAME=
"ServerAlias">ServerAlias
</A></H2>
2735 <PRE CLASS=
"command">
2737 ServerAlias althost.foo.com
2738 ServerAlias althost.bar.com
2742 <H3>Description
</H3>
2744 <P>The
<CODE>ServerAlias
</CODE> directive specifies alternate names that the
2745 server is known by. By default it contains a list of all aliases associated
2746 with the
<A HREF=
"#ServerName"><CODE>ServerName
</CODE></A>. The special name
2747 "*" can be used to allow any hostname when accessing CUPS via an external
2748 network interfaces.
</P>
2750 <BLOCKQUOTE><B>Note
</B>
2752 <P>The
<CODE>ServerAlias
</CODE> directive is used for HTTP Host header
2753 validation when clients connect to the scheduler from external interfaces.
2754 Using the special name
"*" can expose your system to known browser-based
2755 DNS rebinding attacks, even when accessing sites through a firewall. If the
2756 auto-discovery of alternate names does not work, we recommend listing each
2757 alternate name with a ServerAlias directive instead of using
"*".
</P>
2762 <H2 CLASS=
"title"><A NAME=
"ServerBin">ServerBin
</A></H2>
2766 <PRE CLASS=
"command">
2767 ServerBin /usr/lib/cups
2768 ServerBin /foo/bar/lib/cups
2771 <H3>Description
</H3>
2773 <P>The
<CODE>ServerBin
</CODE> directive sets the directory for
2774 server-run executables. If an absolute path is not provided then
2775 it is assumed to be relative to the
<A
2776 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
2777 default executable directory is
<VAR>/usr/lib/cups
</VAR>,
2778 <VAR>/usr/lib32/cups
</VAR>, or
<VAR>/usr/libexec/cups
</VAR>
2779 depending on the operating system.
</P>
2782 <H2 CLASS=
"title"><A NAME=
"ServerCertificate">ServerCertificate
</A></H2>
2786 <PRE CLASS=
"command">
2787 ServerCertificate /etc/cups/ssl/server.crt
2790 <H3>Description
</H3>
2792 <P>The
<CODE>ServerCertificate
</CODE> directive specifies the
2793 location of the SSL certificate file used by the server when
2794 negotiating encrypted connections. The certificate must not be
2795 encrypted (password protected) since the scheduler normally runs
2796 in the background and will be unable to ask for a password.
</P>
2798 <P>The default certificate file is
2799 <VAR>/etc/cups/ssl/server.crt
</VAR>.
</P>
2802 <H2 CLASS=
"title"><A NAME=
"ServerKey">ServerKey
</A></H2>
2806 <PRE CLASS=
"command">
2807 ServerKey /etc/cups/ssl/server.key
2810 <H3>Description
</H3>
2812 <P>The
<CODE>ServerKey
</CODE> directive specifies the location of
2813 the SSL private key file used by the server when negotiating
2814 encrypted connections.
</P>
2816 <P>The default key file is
2817 <VAR>/etc/cups/ssl/server.crt
</VAR>.
</P>
2820 <H2 CLASS=
"title"><A NAME=
"ServerName">ServerName
</A></H2>
2824 <PRE CLASS=
"command">
2825 ServerName foo.domain.com
2826 ServerName myserver.domain.com
2829 <H3>Description
</H3>
2831 <P>The
<CODE>ServerName
</CODE> directive specifies the hostname
2832 that is reported to clients. By default the server name is the
2836 <H2 CLASS=
"title"><A NAME=
"ServerRoot">ServerRoot
</A></H2>
2840 <PRE CLASS=
"command">
2841 ServerRoot /etc/cups
2842 ServerRoot /foo/bar/cups
2845 <H3>Description
</H3>
2847 <P>The
<CODE>ServerRoot
</CODE> directive specifies the absolute
2848 path to the server configuration and state files. It is also used
2849 to resolve relative paths in the
<VAR>cupsd.conf
</VAR> file. The
2850 default server directory is
<VAR>/etc/cups
</VAR>.
</P>
2853 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.21</SPAN><A NAME=
"ServerTokens">ServerTokens
</A></H2>
2857 <PRE CLASS=
"command">
2859 ServerTokens ProductOnly
2862 ServerTokens Minimal
2867 <H3>Description
</H3>
2869 <P>The
<CODE>ServerTokens
</CODE> directive specifies the
2870 information that is included in the
<CODE>Server:
</CODE> header
2871 of all HTTP responses. Table
4 lists the token name along with
2872 the text that is returned. The default is
2873 <CODE>Minimal
</CODE>.
</P>
2875 <DIV CLASS=
"table"><TABLE SUMMARY=
"ServerToken Names and Values">
2876 <CAPTION>Table
4:
<A NAME=
"TABLE4">ServerToken Names and Values
</A></CAPTION>
2886 <TD>No
<CODE>Server:
</CODE> header is returned
</TD>
2889 <TD>ProductOnly
</TD>
2902 <TD>"CUPS 1.2.N" where N is the patch release
</TD>
2906 <TD>"CUPS 1.2.N (UNAME)" where N is the patch release and
2907 UNAME is the output of the
<B>uname(
1)
</B> command
</TD>
2911 <TD>"CUPS 1.2.N (UNAME) IPP/1.1" where N is the patch
2912 release and UNAME is the output of the
<B>uname(
1)
</B>
2919 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"SetEnv">SetEnv
</A></H2>
2923 <PRE CLASS=
"command">
2924 SetEnv PATH /usr/lib/cups/filter:/bin:/usr/bin:/usr/local/bin
2925 SetEnv MY_ENV_VAR foo
2928 <H3>Description
</H3>
2930 <P>The
<CODE>SetEnv
</CODE> directive specifies an environment
2931 variable that should be passed to child processes.
</P>
2934 <H2 CLASS=
"title"><A NAME=
"SSLListen">SSLListen
</A></H2>
2938 <PRE CLASS=
"command">
2939 SSLListen
127.0.0.1:
443
2940 SSLListen
192.0.2.1:
443
2943 <H3>Description
</H3>
2945 <P>The
<CODE>SSLListen
</CODE> directive specifies a network
2946 address and port to listen for secure connections. Multiple
2947 <CODE>SSLListen
</CODE> directives can be provided to listen on
2948 multiple addresses.
</P>
2950 <P>The
<CODE>SSLListen
</CODE> directive is similar to the
<A
2951 HREF=
"#SSLPort"><CODE>SSLPort
</CODE></A> directive but allows you
2952 to restrict access to specific interfaces or networks.
</P>
2955 <H2 CLASS=
"title"><A NAME=
"SSLOptions">SSLOptions
</A></H2>
2959 <PRE CLASS=
"command">
2961 SSLOptions NoEmptyFragments
2964 <H3>Description
</H3>
2966 <P>The
<CODE>SSLOptions
</CODE> directive specifies additional SSL/TLS
2967 protocol options to use for encrypted connected. Currently only two
2968 options are supported -
<code>None
</code> (the default) for the most
2969 secure mode and
<code>NoEmptyFragments
</code> to allow CUPS to work with
2970 Microsoft Windows with the FIPS conformance mode enabled.
</p>
2973 <H2 CLASS=
"title"><A NAME=
"SSLPort">SSLPort
</A></H2>
2977 <PRE CLASS=
"command">
2981 <H3>Description
</H3>
2983 <P>The
<CODE>SSLPort
</CODE> directive specifies a port to listen
2984 on for secure connections. Multiple
<CODE>SSLPort
</CODE> lines
2985 can be specified to listen on multiple ports.
</P>
2988 <H2 CLASS=
"title"><A NAME=
"SystemGroup">SystemGroup
</A></H2>
2992 <PRE CLASS=
"command">
2997 SystemGroup root lpadmin
3000 <H3>Description
</H3>
3002 <P>The
<CODE>SystemGroup
</CODE> directive specifies the system
3003 administration group for
<CODE>System
</CODE> authentication.
3004 Multiple groups can be listed, separated with spaces. The default
3005 group list is
<CODE>@CUPS_SYSTEM_GROUPS@
</CODE>.
</P>
3008 <H2 CLASS=
"title"><A NAME=
"TempDir">TempDir
</A></H2>
3012 <PRE CLASS=
"command">
3014 TempDir /foo/bar/tmp
3017 <H3>Description
</H3>
3019 <P>The
<CODE>TempDir
</CODE> directive specifies an absolute path
3020 for the directory to use for temporary files. The default
3021 directory is
<VAR>@CUPS_REQUESTS@/tmp
</VAR>.
</P>
3023 <P>Temporary directories must be world-writable and should have
3024 the
"sticky" permission bit enabled so that other users cannot
3025 delete filter temporary files. The following commands will create
3026 an appropriate temporary directory called
3027 <VAR>/foo/bar/tmp
</VAR>:
</P>
3029 <PRE CLASS=
"command">
3030 <KBD>mkdir /foo/bar/tmp
</KBD>
3031 <KBD>chmod a+rwxt /foo/bar/tmp
</KBD>
3035 <H2 CLASS=
"title"><A NAME=
"Timeout">Timeout
</A></H2>
3039 <PRE CLASS=
"command">
3044 <H3>Description
</H3>
3046 <P>The
<CODE>Timeout
</CODE> directive controls the amount of time
3047 to wait before an active HTTP or IPP request times out. The
3048 default timeout is
300 seconds.
</P>
3051 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2/Mac OS X
10.5</SPAN><A NAME=
"UseNetworkDefault">UseNetworkDefault
</A></H2>
3055 <PRE CLASS=
"command">
3056 UseNetworkDefault yes
3057 UseNetworkDefault no
3060 <H3>Description
</H3>
3062 <P>The
<CODE>UseNetworkDefault
</CODE> directive controls whether
3063 the client will use a network/remote printer as a default
3064 printer. If enabled, the default printer of a server is used as
3065 the default printer on a client. When multiple servers are
3066 advertising a default printer, the client's default printer is
3067 set to the first discovered printer, or to the implicit class for
3068 the same printer available from multiple servers.
</P>
3070 <P>The default is
<CODE>@CUPS_USE_NETWORK_DEFAULT@
</CODE>.
</P>
3073 <H2 CLASS=
"title"><A NAME=
"User">User
</A></H2>
3077 <PRE CLASS=
"command">
3082 <H3>Description
</H3>
3084 <P>The
<CODE>User
</CODE> directive specifies the UNIX user that
3085 filter and CGI programs run as. The default user is
3086 <CODE>@CUPS_USER@
</CODE>.
</P>
3088 <BLOCKQUOTE><B>Note:
</B>
3090 <P>You may not use user
<CODE>root
</CODE>, as that would expose
3091 the system to unacceptable security risks. The scheduler will
3092 automatically choose user
<CODE>nobody
</CODE> if you specify a
3093 user whose ID is
0.
</P>