2 <!-- SECTION: References -->
4 <TITLE>cupsd.conf
</TITLE>
9 <P>The
<VAR>/etc/cups/cupsd.conf
</VAR> file contains
10 configuration
<I>directives
</I> that control how the server
11 functions. Each directive is listed on a line by itself followed
12 by its value. Comments are introduced using the number sign (
"#")
13 character at the beginning of a line.
</P>
15 <P>Since the server configuration file consists of plain text,
16 you can use your favorite text editor to make changes to it.
17 After making any changes, restart the
<CODE>cupsd(
8)
</CODE>
18 process using the startup script for your operating system:
</P>
22 <LI>AIX, IRIX, Linux, Solaris:
24 /etc/init.d/cups restart
29 /sbin/init.d/cups restart
34 /System/Library/StartupItems/PrintingServices/PrintingServices restart
39 <P>You can also edit this file from the CUPS web interface, which
40 automatically handles restarting the scheduler.
</P>
43 <H2 CLASS=
"title"><A NAME=
"AccessLog">AccessLog
</A></H2>
48 AccessLog /var/log/cups/access_log
49 AccessLog /var/log/cups/access_log-%s
55 <P>The
<CODE>AccessLog
</CODE> directive sets the name of the
56 access log file. If the filename is not absolute then it is
57 assumed to be relative to the
<A
58 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
59 access log file is stored in
"common log format" and can be used
60 by any web access reporting tool to generate a report on CUPS
63 <P>The server name can be included in the filename by using
64 <CODE>%s
</CODE> in the name.
</P>
66 <P>The special name
"syslog" can be used to send the access
67 information to the system log instead of a plain file.
</P>
69 <P>The default access log file is
70 <VAR>/var/log/cups/access_log
</VAR>.
</P>
73 <H2 CLASS=
"title"><A NAME=
"Allow">Allow
</A></H2>
78 <Location /path
>
82 Allow from *.domain.com
83 Allow from .domain.com
84 Allow from host.domain.com
87 Allow from nnn.nnn.nnn.*
88 Allow from nnn.nnn.nnn.nnn
89 Allow from nnn.nnn.nnn.nnn/mm
90 Allow from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
91 Allow from xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
99 <P>The
<CODE>Allow
</CODE> directive specifies a hostname, IP
100 address, or network that is allowed access to the server.
101 <CODE>Allow
</CODE> directives are cummulative, so multiple
102 <CODE>Allow
</CODE> directives can be used to allow access for
103 multiple hosts or networks. The
<CODE>/mm
</CODE> notation
104 specifies a CIDR netmask, as shown in Table
1.
</P>
106 <DIV CLASS=
"table"><TABLE SUMMARY=
"CIDR Netmasks">
107 <CAPTION>Table
1:
<A NAME=
"TABLE1">CIDR Netmasks
</A></CAPTION>
109 <TH WIDTH=
"10%">mm
</TH>
110 <TH WIDTH=
"20%">netmask
</TH>
111 <TH WIDTH=
"10%">mm
</TH>
112 <TH WIDTH=
"20%">netmask
</TH>
115 <TD ALIGN=
"CENTER">0</TD>
116 <TD ALIGN=
"CENTER">0.0.0.0</TD>
117 <TD ALIGN=
"CENTER">8</TD>
118 <TD ALIGN=
"CENTER">255.0.0.0</TD>
121 <TD ALIGN=
"CENTER">1</TD>
122 <TD ALIGN=
"CENTER">128.0.0.0</TD>
123 <TD ALIGN=
"CENTER">16</TD>
124 <TD ALIGN=
"CENTER">255.255.0.0</TD>
127 <TD ALIGN=
"CENTER">2</TD>
128 <TD ALIGN=
"CENTER">192.0.0.0</TD>
129 <TD ALIGN=
"CENTER">24</TD>
130 <TD ALIGN=
"CENTER">255.255.255.0</TD>
133 <TD ALIGN=
"CENTER">...
</TD>
134 <TD ALIGN=
"CENTER">...
</TD>
135 <TD ALIGN=
"CENTER">32</TD>
136 <TD ALIGN=
"CENTER">255.255.255.255</TD>
140 <P>The
<CODE>@LOCAL
</CODE> name will allow access from all local
141 interfaces. The
<CODE>@IF(name)
</CODE> name will allow access
142 from the named interface.
</P>
144 <P>The
<CODE>Allow
</CODE> directive must appear inside a
<A
145 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
146 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
149 <H2 CLASS=
"title"><SPAN CLASS=
"info">Deprecated
</SPAN><A NAME=
"AuthClass">AuthClass
</A></H2>
153 <PRE CLASS=
"command">
154 <Location /path
>
165 <P>The
<CODE>AuthClass
</CODE> directive defines what level of
166 authentication is required:
</P>
170 <LI><CODE>Anonymous
</CODE> - No authentication should be
171 performed (default)
</LI>
173 <LI><CODE>User
</CODE> - A valid username and password is
176 <LI><CODE>System
</CODE> - A valid username and password
177 is required, and the username must belong to the
"sys"
178 group; this can be changed using the
<A
179 HREF=
"#SystemGroup"><CODE>SystemGroup
</CODE></A>
182 <LI><CODE>Group
</CODE> - A valid username and password is
183 required, and the username must belong to the group named
185 HREF=
"#AuthGroupName"><CODE>AuthGroupName
</CODE></A>
190 <P>The
<CODE>AuthClass
</CODE> directive must appear inside a
<A
191 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
192 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
194 <P><B>This directive is deprecated and will be removed from a
195 future release of CUPS.
</B> Consider using the more flexible
<A
196 HREF=
"#Require"><CODE>Require
</CODE></A> directive instead.
</P>
199 <H2 CLASS=
"title"><SPAN CLASS=
"info">Deprecated
</SPAN><A NAME=
"AuthGroupName">AuthGroupName
</A></H2>
203 <PRE CLASS=
"command">
204 <Location /path
>
206 AuthGroupName mygroup
213 <P>The
<CODE>AuthGroupName
</CODE> directive sets the group to use
214 for
<CODE>Group
</CODE> authentication.
</P>
216 <P>The
<CODE>AuthGroupName
</CODE> directive must appear inside a
217 <A HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
218 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
220 <P><B>This directive is deprecated and will be removed from a
221 future release of CUPS.
</B> Consider using the more flexible
<A
222 HREF=
"#Require"><CODE>Require
</CODE></A> directive instead.
</P>
225 <H2 CLASS=
"title"><A NAME=
"AuthType">AuthType
</A></H2>
229 <PRE CLASS=
"command">
230 <Location /path
>
241 <P>The
<CODE>AuthType
</CODE> directive defines the type of
242 authentication to perform:
</P>
246 <LI><CODE>None
</CODE> - No authentication should be
247 performed (default)
</LI>
249 <LI><CODE>Basic
</CODE> - Basic authentication should be
250 performed using the UNIX password and group files
</LI>
252 <LI><CODE>Digest
</CODE> - Digest authentication should be
253 performed using the
<VAR>/etc/cups/passwd.md5
</VAR>
256 <LI><CODE>BasicDigest
</CODE> - Basic authentication
257 should be performed using the
258 <VAR>/etc/cups/passwd.md5
</VAR> file
</LI>
262 <P>When using
<CODE>Basic
</CODE>,
<CODE>Digest
</CODE>, or
263 <CODE>BasicDigest
</CODE> authentication, clients connecting
264 through the
<CODE>localhost
</CODE> interface can also
265 authenticate using certificates.
</P>
267 <P>The
<CODE>AuthType
</CODE> directive must appear inside a
<A
268 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
269 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
272 <H2 CLASS=
"title"><A NAME=
"AutoPurgeJobs">AutoPurgeJobs
</A></H2>
276 <PRE CLASS=
"command">
283 <P>The
<CODE>AutoPurgeJobs
</CODE> directive specifies whether or
284 not to purge completed jobs once they are no longer required for
285 quotas. This option has no effect if quotas are not enabled. The
286 default setting is
<CODE>No
</CODE>.
</P>
289 <H2 CLASS=
"title"><A NAME=
"BrowseAddress">BrowseAddress
</A></H2>
293 <PRE CLASS=
"command">
294 BrowseAddress
255.255.255.255:
631
295 BrowseAddress
192.0.2.255:
631
296 BrowseAddress host.domain.com:
631
298 BrowseAddress @IF(name)
303 <P>The
<CODE>BrowseAddress
</CODE> directive specifies an address
304 to send browsing information to. Multiple
305 <CODE>BrowseAddress
</CODE> directives can be specified to send
306 browsing information to different networks or systems.
</P>
308 <P>The
<CODE>@LOCAL
</CODE> name will broadcast printer
309 information to all local interfaces. The
<CODE>@IF(name)
</CODE>
310 name will broadcast to the named interface.
</P>
312 <P>There is no default browse address.
</P>
314 <BLOCKQUOTE><B>Note:
</B>
316 <P>If you are using HP-UX
10.20 and a subnet that is not
24,
317 16, or
8 bits, printer browsing (and in fact all broadcast
318 reception) will not work. This problem appears to be fixed in
324 <H2 CLASS=
"title"><A NAME=
"BrowseAllow">BrowseAllow
</A></H2>
328 <PRE CLASS=
"command">
330 BrowseAllow from none
331 BrowseAllow from
192.0.2
332 BrowseAllow from
192.0.2.0/
24
333 BrowseAllow from
192.0.2.0/
255.255.255.0
334 BrowseAllow from *.domain.com
335 BrowseAllow from @LOCAL
336 BrowseAllow from @IF(name)
341 <P>The
<CODE>BrowseAllow
</CODE> directive specifies a system or
342 network to accept browse packets from. The default is to accept
343 browse packets from all hosts.
</P>
345 <P>Host and domain name matching require that you enable the
<A
346 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
349 <P>IP address matching supports exact matches, partial addresses
350 that match networks using netmasks of
255.0.0.0,
255.255.0.0, and
351 255.255.255.0, or network addresses using the specified netmask
354 <P>The
<CODE>@LOCAL
</CODE> name will allow browse data from all
355 local interfaces. The
<CODE>@IF(name)
</CODE> name will allow
356 browse data from the named interface.
</P>
359 <H2 CLASS=
"title"><A NAME=
"BrowseDeny">BrowseDeny
</A></H2>
363 <PRE CLASS=
"command">
366 BrowseDeny from
192.0.2
367 BrowseDeny from
192.0.2.0/
24
368 BrowseDeny from
192.0.2.0/
255.255.255.0
369 BrowseDeny from *.domain.com
370 BrowseDeny from @LOCAL
371 BrowseDeny from @IF(name)
376 <P>The
<CODE>BrowseDeny
</CODE> directive specifies a system or
377 network to reject browse packets from. The default is to not deny
378 browse packets from any hosts.
</P>
380 <P>Host and domain name matching require that you enable the
<A
381 HREF=
"#HostNameLookups"><CODE>HostNameLookups
</CODE></A>
384 <P>IP address matching supports exact matches, partial addresses
385 that match networks using netmasks of
255.0.0.0,
255.255.0.0, and
386 255.255.255.0, or network addresses using the specified netmask
389 <P>The
<CODE>@LOCAL
</CODE> name will block browse data from all
390 local interfaces. The
<CODE>@IF(name)
</CODE> name will block
391 browse data from the named interface.
</P>
394 <H2 CLASS=
"title"><A NAME=
"BrowseInterval">BrowseInterval
</A></H2>
398 <PRE CLASS=
"command">
405 <P>The
<CODE>BrowseInterval
</CODE> directive specifies the
406 maximum amount of time between browsing updates. Specifying a
407 value of
0 seconds disables outgoing browse updates but allows a
408 server to receive printer information from other hosts.
</P>
410 <P>The
<CODE>BrowseInterval
</CODE> value should always be less
411 than the
<A HREF=
"#BrowseTimeout"><CODE>BrowseTimeout
</CODE></A>
412 value. Otherwise printers and classes will disappear from client
413 systems between updates.
</P>
416 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"BrowseLDAPBindDN">BrowseLDAPBindDN
</A></H2>
420 <PRE CLASS=
"command">
426 <P>The
<CODE>BrowseLDAPBindDN
</CODE> directive specifies the LDAP
427 domain name to use when listening for printer registrations. The
428 default is undefined.
</P>
431 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"BrowseLDAPDN">BrowseLDAPDN
</A></H2>
435 <PRE CLASS=
"command">
441 <P>The
<CODE>BrowseLDAPDN
</CODE> directive specifies the LDAP
442 domain name to use when registering local shared printers. The
443 default is undefined.
</P>
446 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"BrowseLDAPPassword">BrowseLDAPPassword
</A></H2>
450 <PRE CLASS=
"command">
451 BrowseLDAPPassword foo123
456 <P>The
<CODE>BrowseLDAPPassword
</CODE> directive specifies the
457 access password to use when connecting to the LDAP server. The
458 default is undefined.
</P>
461 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"BrowseLDAPServer">BrowseLDAPServer
</A></H2>
465 <PRE CLASS=
"command">
466 BrowseLDAPServer localhost
471 <P>The
<CODE>BrowseLDAPServer
</CODE> directive specifies the name
472 of the LDAP server to connect to. The default is undefined.
</P>
475 <H2 CLASS=
"title"><A NAME=
"BrowseLocalOptions">BrowseLocalOptions
</A></H2>
479 <PRE CLASS=
"command">
480 BrowseLocalOptions compression=yes
481 BrowseLocalOptions encryption=required
482 BrowseLocalOptions compression=yes
&encryption=required
487 <P>The
<CODE>BrowseLocalOptions
</CODE> directive specifies
488 additional IPP backend options to advertise with local shared
489 printers. The default is to not include any options.
</P>
492 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"BrowseLocalProtocols">BrowseLocalProtocols
</A></H2>
496 <PRE CLASS=
"command">
497 BrowseLocalProtocols all
498 BrowseLocalProtocols none
499 BrowseLocalProtocols cups
500 BrowseLocalProtocols dns-sd
501 BrowseLocalProtocols ldap
502 BrowseLocalProtocols slp
503 BrowseLocalProtocols cups dns-sd
508 <P>The
<CODE>BrowseLocalProtocols
</CODE> directive specifies the
509 protocols to use when advertising local shared printers on the
510 network. Multiple protocols can be specified by separating them
511 with spaces. The default is
<CODE>cups
</CODE>, which is a
512 broadcast-based protocol.
</P>
515 <H2 CLASS=
"title"><A NAME=
"BrowseOrder">BrowseOrder
</A></H2>
519 <PRE CLASS=
"command">
520 BrowseOrder allow,deny
521 BrowseOrder deny,allow
526 <P>The
<CODE>BrowseOrder
</CODE> directive specifies the order of
527 allow/deny processing. The default order is
528 <CODE>deny,allow
</CODE>:
</P>
532 <LI><CODE>allow,deny
</CODE> - Deny browse packets by
533 default, then check
<CODE>BrowseAllow
</CODE> lines
534 followed by
<CODE>BrowseDeny
</CODE> lines.
</LI>
536 <LI><CODE>deny,allow
</CODE> - Allow browse packets by
537 default, then check
<CODE>BrowseDeny
</CODE> lines
538 followed by
<CODE>BrowseAllow
</CODE> lines.
</LI>
543 <H2 CLASS=
"title"><A NAME=
"BrowsePoll">BrowsePoll
</A></H2>
547 <PRE CLASS=
"command">
548 BrowsePoll
192.0.2.2:
631
549 BrowsePoll host.domain.com:
631
554 <P>The
<CODE>BrowsePoll
</CODE> directive polls a server for
555 available printers once every
<A
556 HREF=
"#BrowseInterval"><CODE>BrowseInterval
</CODE></A> seconds.
557 Multiple
<CODE>BrowsePoll
</CODE> directives can be specified to
558 poll multiple servers.
</P>
560 <P>If
<CODE>BrowseInterval
</CODE> is set to
0 then the server is
561 polled once every
30 seconds.
</P>
564 <H2 CLASS=
"title"><A NAME=
"BrowsePort">BrowsePort
</A></H2>
568 <PRE CLASS=
"command">
575 <P>The
<CODE>BrowsePort
</CODE> directive specifies the UDP port number
576 used for browse packets. The default port number is
631.
</P>
578 <BLOCKQUOTE><B>Note:
</B>
580 <P>You must set the
<CODE>BrowsePort
</CODE> to the same value
581 on all of the systems that you want to see.
586 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"BrowseProtocols">BrowseProtocols
</A></H2>
590 <PRE CLASS=
"command">
594 BrowseProtocols dns-sd
597 BrowseProtocols cups dns-sd
602 <P>The
<CODE>BrowseProtocols
</CODE> directive specifies the
603 protocols to use when showing and advertising shared printers on
604 the local network. Multiple protocols can be specified by
605 separating them with spaces. The default protocol is
606 <CODE>cups
</CODE>, which is a broadcast-based protocol.
</P>
608 <BLOCKQUOTE><B>Note:
</B>
610 <P>When using the
<CODE>SLP
</CODE> protocol, you must have at least
611 one Directory Agent (DA) server on your network. Otherwise the
612 CUPS scheduler (
<CODE>cupsd
</CODE>) will not respond to client
613 requests for several seconds while polling the network.
</P>
618 <H2 CLASS=
"title"><A NAME=
"BrowseRelay">BrowseRelay
</A></H2>
622 <PRE CLASS=
"command">
623 BrowseRelay
193.0.2.1 192.0.2.255
624 BrowseRelay
193.0.2.0/
255.255.255.0 192.0.2.255
625 BrowseRelay
193.0.2.0/
24 192.0.2.255
626 BrowseRelay *.domain.com
192.0.2.255
627 BrowseRelay host.domain.com
192.0.2.255
632 <P>The
<CODE>BrowseRelay
</CODE> directive specifies source and
633 destination addresses for relaying browsing information from one
634 host or network to another. Multiple
<CODE>BrowseRelay
</CODE>
635 directives can be specified as needed.
</P>
637 <P><CODE>BrowseRelay
</CODE> is typically used on systems that
638 bridge multiple subnets using one or more network interfaces. It
639 can also be used to relay printer information from polled servers
642 <PRE CLASS=
"command">
643 BrowseRelay
127.0.0.1 @LOCAL
646 <P>This effectively provides access to printers on a WAN for all
647 clients on the LAN(s).
</P>
650 <H2 CLASS=
"title"><A NAME=
"BrowseRemoteOptions">BrowseRemoteOptions
</A></H2>
654 <PRE CLASS=
"command">
655 BrowseRemoteOptions compression=yes
656 BrowseRemoteOptions encryption=required
657 BrowseRemoteOptions ?compression=yes
&encryption=required
662 <P>The
<CODE>BrowseRemoteOptions
</CODE> directive specifies
663 additional IPP backend options to include with remote shared
664 printers. If the options string begins with a question mark (?),
665 the options replace any options specified by the remote server.
666 The default is to not include any options.
</P>
669 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"BrowseRemoteProtocols">BrowseRemoteProtocols
</A></H2>
673 <PRE CLASS=
"command">
674 BrowseRemoteProtocols all
675 BrowseRemoteProtocols none
676 BrowseRemoteProtocols cups
677 BrowseRemoteProtocols dns-sd
678 BrowseRemoteProtocols ldap
679 BrowseRemoteProtocols slp
680 BrowseRemoteProtocols cups dns-sd
685 <P>The
<CODE>BrowseRemoteProtocols
</CODE> directive specifies the
686 protocols to use when finding remote shared printers on the
687 network. Multiple protocols can be specified by separating them
688 with spaces. The default is
<CODE>cups
</CODE>, which is a
689 broadcast-based protocol.
</P>
692 <H2 CLASS=
"title"><A NAME=
"BrowseShortNames">BrowseShortNames
</A></H2>
696 <PRE CLASS=
"command">
703 <P>The
<CODE>BrowseShortNames
</CODE> directive specifies whether
704 or not short names are used for remote printers when possible.
705 Short names are just the remote printer name, without the server
706 (
"printer"). If more than one remote printer is detected with the
707 same name, the printers will have long names (
"printer@server1",
708 "printer@server2".)
</P>
710 <P>The default value for this option is
<CODE>Yes
</CODE>.
</P>
713 <H2 CLASS=
"title"><A NAME=
"BrowseTimeout">BrowseTimeout
</A></H2>
717 <PRE CLASS=
"command">
724 <P>The
<CODE>BrowseTimeout
</CODE> directive sets the timeout for
725 printer or class information that is received in browse packets.
726 Once a printer or class times out it is removed from the list of
727 available destinations.
</P>
729 <P>The
<CODE>BrowseTimeout
</CODE> value should always be greater
731 HREF=
"#BrowseInterval"><CODE>BrowseInterval
</CODE></A> value.
732 Otherwise printers and classes will disappear from client systems
736 <H2 CLASS=
"title"><A NAME=
"Browsing">Browsing
</A></H2>
740 <PRE CLASS=
"command">
747 <P>The
<CODE>Browsing
</CODE> directive controls whether or not
748 network printer browsing is enabled. The default setting is
751 <P>This directive does not enable sharing of local printers by
752 itself; you must also use the
<A
753 HREF=
"#BrowseAddress"><CODE>BrowseAddress
</CODE></A> or
<A
754 HREF=
"#BrowseProtocols"><CODE>BrowseProtocols
</CODE></A>
755 directives to advertise local printers to other systems.
</P>
757 <BLOCKQUOTE><B>Note:
</B>
759 <P>If you are using HP-UX
10.20 and a subnet that is not
24,
760 16, or
8 bits, printer browsing (and in fact all broadcast
761 reception) will not work. This problem appears to be fixed in
767 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Classification">Classification
</A></H2>
771 <PRE CLASS=
"command">
773 Classification classified
774 Classification confidential
775 Classification secret
776 Classification topsecret
777 Classification unclassified
782 <P>The
<CODE>Classification
</CODE> directive sets the
783 classification level on the server. When this option is set, at
784 least one of the banner pages is forced to the classification
785 level, and the classification is placed on each page of output.
786 The default is no classification level.
</P>
789 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"ClassifyOverride">ClassifyOverride
</A></H2>
793 <PRE CLASS=
"command">
800 <P>The
<CODE>ClassifyOverride
</CODE> directive specifies whether
801 users can override the default classification level on the
802 server. When the server classification is set, users can change
803 the classification using the
<CODE>job-sheets
</CODE> option and
804 can choose to only print one security banner before or after the
805 job. If the
<CODE>job-sheets
</CODE> option is set to
806 <CODE>none
</CODE> then the server default classification is
809 <P>The default is to not allow classification overrides.
</P>
812 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.15</SPAN><A NAME=
"ConfigFilePerm">ConfigFilePerm
</A></H2>
816 <PRE CLASS=
"command">
823 <P>The
<CODE>ConfigFilePerm
</CODE> directive specifies the
824 permissions to use when writing configuration files. The default
828 <H2 CLASS=
"title"><A NAME=
"DataDir">DataDir
</A></H2>
832 <PRE CLASS=
"command">
833 DataDir /usr/share/cups
838 <P>The
<CODE>DataDir
</CODE> directive sets the directory to use
842 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"DefaultAuthType">DefaultAuthType
</A></H2>
846 <PRE CLASS=
"command">
847 DefaultAuthType Basic
848 DefaultAuthType BasicDigest
849 DefaultAuthType Digest
854 <P>The
<CODE>DefaultAuthType
</CODE> directive specifies the type
855 of authentication to use for IPP operations that require a
856 username. The default is
<CODE>Basic
</CODE>.
</P>
859 <H2 CLASS=
"title"><A NAME=
"DefaultCharset">DefaultCharset
</A></H2>
863 <PRE CLASS=
"command">
865 DefaultCharset iso-
8859-
1
866 DefaultCharset windows-
1251
871 <P>The
<CODE>DefaultCharset
</CODE> directive sets the default
872 character set to use for client connections. The default
873 character set is
<CODE>utf-
8</CODE> but is overridden by the
874 character set for the language specified by the client or the
875 <CODE>DefaultLanguage
</CODE> directive.
</P>
878 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"DefaultEncryption">DefaultEncryption
</A></H2>
882 <PRE CLASS=
"command">
883 DefaultEncryption Never
884 DefaultEncryption IfRequested
885 DefaultEncryption Required
890 <P>The
<CODE>DefaultEncryption
</CODE> directive specifies the
891 type of encryption to use when performing authentication. The
892 default is
<CODE>Required
</CODE>.
</P>
895 <H2 CLASS=
"title"><A NAME=
"DefaultLanguage">DefaultLanguage
</A></H2>
899 <PRE CLASS=
"command">
909 <P>The
<CODE>DefaultLanguage
</CODE> directive specifies the
910 default language to use for client connections. Setting the
911 default language also sets the default character set if a
912 language localization file exists for it. The default language
913 is
"en" for English.
</P>
916 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"DefaultPolicy">DefaultPolicy
</A></H2>
920 <PRE CLASS=
"command">
921 DefaultPolicy default
927 <P>The
<CODE>DefaultPolicy
</CODE> directive specifies the default
928 policy to use for IPP operation. The default is
929 <CODE>default
</CODE>.
</P>
932 <H2 CLASS=
"title"><A NAME=
"Deny">Deny
</A></H2>
936 <PRE CLASS=
"command">
937 <Location /path
>
941 Deny from *.domain.com
942 Deny from .domain.com
943 Deny from host.domain.com
946 Deny from nnn.nnn.nnn.*
947 Deny from nnn.nnn.nnn.nnn
948 Deny from nnn.nnn.nnn.nnn/mm
949 Deny from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
950 Deny from xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
958 <P>The
<CODE>Deny
</CODE> directive specifies a hostname, IP
959 address, or network that is allowed access to the server.
960 <CODE>Deny
</CODE> directives are cummulative, so multiple
961 <CODE>Deny
</CODE> directives can be used to allow access for
962 multiple hosts or networks. The
<CODE>/mm
</CODE> notation
963 specifies a CIDR netmask, a shown in
<A HREF=
"TABLE1">Table
966 <P>The
<CODE>@LOCAL
</CODE> name will deny access from all local
967 interfaces. The
<CODE>@IF(name)
</CODE> name will deny access from
968 the named interface.
</P>
970 <P>The
<CODE>Deny
</CODE> directive must appear inside a
<A
971 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
972 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
975 <H2 CLASS=
"title"><A NAME=
"DocumentRoot">DocumentRoot
</A></H2>
979 <PRE CLASS=
"command">
980 DocumentRoot /usr/share/doc/cups
981 DocumentRoot /foo/bar/doc/cups
986 <P>The
<CODE>DocumentRoot
</CODE> directive specifies the location
987 of web content for the HTTP server in CUPS. If an absolute path
988 is not specified then it is assumed to be relative to the
<A
989 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
990 default directory is
<VAR>/usr/share/doc/cups
</VAR>.
</P>
992 <P>Documents are first looked up in a sub-directory for the
993 primary language requested by the client (e.g.
994 <VAR>/usr/share/doc/cups/fr/...
</VAR>) and then directly under
995 the
<CODE>DocumentRoot
</CODE> directory (e.g.
996 <VAR>/usr/share/doc/cups/...
</VAR>), so it is possible to
997 localize the web content by providing subdirectories for each
1001 <H2 CLASS=
"title"><A NAME=
"Encryption">Encryption
</A></H2>
1005 <PRE CLASS=
"command">
1006 <Location /path
>
1009 Encryption IfRequested
1014 <H3>Description
</H3>
1016 <P>The
<CODE>Encryption
</CODE> directive must appear instead a
<A
1017 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
1018 HREF=
"#Limit"><CODE>Limit
</CODE></A> section and specifies the
1019 encryption settings for that location. The default setting is
1020 <CODE>IfRequested
</CODE> for all locations.
</P>
1023 <H2 CLASS=
"title"><A NAME=
"ErrorLog">ErrorLog
</A></H2>
1027 <PRE CLASS=
"command">
1028 ErrorLog /var/log/cups/error_log
1029 ErrorLog /var/log/cups/error_log-%s
1033 <H3>Description
</H3>
1035 <P>The
<CODE>ErrorLog
</CODE> directive sets the name of the error
1036 log file. If the filename is not absolute then it is assumed to
1037 be relative to the
<A
1038 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
1039 default error log file is
<VAR>/var/log/cups/error_log
</VAR>.
</P>
1041 <P>The server name can be included in the filename by using
1042 <CODE>%s
</CODE> in the name.
</P>
1044 <P>The special name
"syslog" can be used to send the error
1045 information to the system log instead of a plain file.
</P>
1048 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.18</SPAN><A NAME=
"FileDevice">FileDevice
</A></H2>
1052 <PRE CLASS=
"command">
1057 <H3>Description
</H3>
1059 <P>The
<CODE>FileDevice
</CODE> directive determines whether the
1060 scheduler allows new printers to be added using device URIs of
1061 the form
<CODE>file:/filename
</CODE>. File devices are most often
1062 used to test new printer drivers and do not support raw file
1065 <P>The default setting is
<CODE>No
</CODE>.
</P>
1067 <BLOCKQUOTE><B>Note:
</B>
1069 <P>File devices are managed by the scheduler. Since the
1070 scheduler normally runs as the root user, file devices
1071 can be used to overwrite system files and potentially
1072 gain unauthorized access to the system. If you must
1073 create printers using file devices, we recommend that
1074 you set the
<CODE>FileDevice
</CODE> directive to
1075 <CODE>Yes
</CODE> for only as long as you need to add the
1076 printers to the system, and then reset the directive to
1077 <CODE>No
</CODE>.
</P>
1082 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.3</SPAN><A NAME=
"FilterLimit">FilterLimit
</A></H2>
1086 <PRE CLASS=
"command">
1092 <H3>Description
</H3>
1094 <P>The
<CODE>FilterLimit
</CODE> directive sets the maximum cost
1095 of all running job filters. It can be used to limit the number of
1096 filter programs that are run on a server to minimize disk,
1097 memory, and CPU resource problems. A limit of
0 disables filter
1100 <P>An average print to a non-PostScript printer needs a filter
1101 limit of about
200. A PostScript printer needs about half that
1102 (
100). Setting the limit below these thresholds will effectively
1103 limit the scheduler to printing a single job at any time.
</P>
1105 <P>The default limit is
0.
</P>
1108 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"FilterNice">FilterNice
</A></H2>
1112 <PRE CLASS=
"command">
1118 <H3>Description
</H3>
1120 <P>The
<CODE>FilterNice
</CODE> directive sets the
<B>nice(
1)
</B>
1121 value to assign to filter processes. The nice value ranges from
1122 0, the highest priority, to
19, the lowest priority. The default
1126 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.3</SPAN><A NAME=
"FontPath">FontPath
</A></H2>
1130 <PRE CLASS=
"command">
1131 FontPath /foo/bar/fonts
1132 FontPath /usr/share/cups/fonts:/foo/bar/fonts
1135 <H3>Description
</H3>
1137 <P>The
<CODE>FontPath
</CODE> directive specifies the font path to
1138 use when searching for fonts. The default font path is
1139 <CODE>/usr/share/cups/fonts
</CODE>.
</P>
1142 <H2 CLASS=
"title"><A NAME=
"Group">Group
</A></H2>
1146 <PRE CLASS=
"command">
1151 <H3>Description
</H3>
1153 <P>The
<CODE>Group
</CODE> directive specifies the UNIX group that
1154 filter and CGI programs run as. The default group is
1155 system-specific but is usually
<CODE>lp
</CODE> or
1156 <CODE>nobody
</CODE>.
</P>
1159 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"HideImplicitMembers">HideImplicitMembers
</A></H2>
1163 <PRE CLASS=
"command">
1164 HideImplicitMembers Yes
1165 HideImplicitMembers No
1168 <H3>Description
</H3>
1170 <P>The
<CODE>HideImplicitMembers
</CODE> directive controls
1171 whether the individual printers in an implicit class are hidden
1172 from the user. The default is
<CODE>Yes
</CODE>.
</P>
1174 <P><A HREF=
"#ImplicitClasses"><CODE>ImplicitClasses
</CODE></A>
1175 must be enabled for this directive to have any effect.
</P>
1178 <H2 CLASS=
"title"><A NAME=
"HostNameLookups">HostNameLookups
</A></H2>
1182 <PRE CLASS=
"command">
1185 HostNameLookups Double
1188 <H3>Description
</H3>
1190 <P>The
<CODE>HostNameLookups
</CODE> directive controls whether or
1191 not CUPS looks up the hostname for connecting clients. The
1192 <CODE>Double
</CODE> setting causes CUPS to verify that the
1193 hostname resolved from the address matches one of the addresses
1194 returned for that hostname.
<CODE>Double
</CODE> lookups also
1195 prevent clients with unregistered addresses from connecting to
1198 <P>The default is
<CODE>Off
</CODE> to avoid the potential server
1199 performance problems with hostname lookups. Set this option to
1200 <CODE>On
</CODE> or
<CODE>Double
</CODE> only if absolutely
1204 <H2 CLASS=
"title"><A NAME=
"ImplicitClasses">ImplicitClasses
</A></H2>
1208 <PRE CLASS=
"command">
1213 <H3>Description
</H3>
1215 <P>The
<CODE>ImplicitClasses
</CODE> directive controls whether
1216 implicit classes are created based upon the available network
1217 printers and classes. The default setting is
<CODE>On
</CODE> but
1218 is automatically turned
<CODE>Off
</CODE> if
<A
1219 HREF=
"#Browsing"><CODE>Browsing
</CODE></A> is turned
1220 <CODE>Off
</CODE>.
</P>
1223 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.10</SPAN><A NAME=
"ImplicitAnyClasses">ImplicitAnyClasses
</A></H2>
1227 <PRE CLASS=
"command">
1228 ImplicitAnyClasses On
1229 ImplicitAnyClasses Off
1232 <H3>Description
</H3>
1234 <P>The
<CODE>ImplicitAnyClasses
</CODE> directive controls
1235 whether implicit classes for local and remote printers are
1236 created with the name
<CODE>AnyPrinter
</CODE>. The default
1237 setting is
<CODE>Off
</CODE>.
</P>
1239 <P><A HREF=
"#ImplicitClasses"><CODE>ImplicitClasses
</CODE></A>
1240 must be enabled for this directive to have any effect.
</P>
1243 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.9</SPAN><A NAME=
"Include">Include
</A></H2>
1247 <PRE CLASS=
"command">
1249 Include /foo/bar/filename
1252 <H3>Description
</H3>
1254 <P>The
<CODE>Include
</CODE> directive includes the named file in
1255 the
<CODE>cupsd.conf
</CODE> file. If no leading path is provided,
1256 the file is assumed to be relative to the
<A
1257 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory.
</P>
1260 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"JobRetryInterval">JobRetryInterval
</A></H2>
1264 <PRE CLASS=
"command">
1266 JobRetryInterval
120
1269 <H3>Description
</H3>
1271 <P>The
<CODE>JobRetryInterval
</CODE> directive specifies the
1272 number of seconds to wait before retrying a job. This is
1273 typically used for fax queues but can also be used with normal
1274 print queues whose error policy is
<CODE>retry-job
</CODE>. The
1275 default is
30 seconds.
</P>
1278 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"JobRetryLimit">JobRetryLimit
</A></H2>
1282 <PRE CLASS=
"command">
1287 <H3>Description
</H3>
1289 <P>The
<CODE>JobRetryLimit
</CODE> directive specifies the maximum
1290 number of times the scheduler will try to print a job. This is
1291 typically used for fax queues but can also be used with normal
1292 print queues whose error policy is
<CODE>retry-job
</CODE>. The
1293 default is
5 times.
</P>
1296 <H2 CLASS=
"title"><A NAME=
"KeepAlive">KeepAlive
</A></H2>
1300 <PRE CLASS=
"command">
1305 <H3>Description
</H3>
1307 <P>The
<CODE>KeepAlive
</CODE> directive controls whether or not
1308 to support persistent HTTP connections. The default is
1309 <CODE>On
</CODE>.
</P>
1311 <P>HTTP/
1.1 clients automatically support persistent connections,
1312 while HTTP/
1.0 clients must specifically request them using the
1313 <CODE>Keep-Alive
</CODE> attribute in the
<CODE>Connection:
</CODE>
1314 field of each request.
</P>
1317 <H2 CLASS=
"title"><A NAME=
"KeepAliveTimeout">KeepAliveTimeout
</A></H2>
1321 <PRE CLASS=
"command">
1326 <H3>Description
</H3>
1328 <P>The
<CODE>KeepAliveTimeout
</CODE> directive controls how long
1329 a persistent HTTP connection will remain open after the last
1330 request. The default is
60 seconds.
</P>
1333 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Limit">Limit (Location)
</A></H2>
1337 <PRE CLASS=
"command">
1338 <Location /path
>
1339 <Limit GET POST
>
1349 <H3>Description
</H3>
1351 <P>The
<CODE>Limit
</CODE> directive groups access control
1352 directives for specific types of HTTP requests and must appear
1353 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> section.
1354 Access can be limited for individual request types
1355 (
<CODE>DELETE
</CODE>,
<CODE>GET
</CODE>,
<CODE>HEAD
</CODE>,
1356 <CODE>OPTIONS
</CODE>,
<CODE>POST
</CODE>,
<CODE>PUT
</CODE>, and
1357 <CODE>TRACE
</CODE>) or for all request types (
<CODE>ALL
</CODE>).
1358 The request type names are case-sensitive for compatibility with
1362 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"LimitIPP">Limit (Policy)
</A></H2>
1366 <PRE CLASS=
"command">
1368 <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer
>
1378 <H3>Description
</H3>
1380 <P>When included in
<A HREF=
"#Policy"><CODE>Policy
</CODE></A>
1381 sections, the
<CODE>Limit
</CODE> directive groups access control
1382 directives for specific IPP operations. Multiple operations can
1383 be listed, separated by spaces. Table
2 lists the supported
1386 <DIV CLASS=
"table"><TABLE SUMMARY=
"Supported IPP Operations">
1387 <CAPTION>Table
2:
<A NAME=
"TABLE2">Supported IPP Operations
</A></CAPTION>
1390 <TH>Operation Name
</TH>
1391 <TH>Description
</TH>
1397 <TD>All operations - used as the default limit for
1398 operations that are not listed
</TD>
1402 <TD>Cancel a job
</TD>
1405 <TD>Cancel-Subscription
</TD>
1406 <TD>Cancel a subscription
</TD>
1410 <TD>Create a new, empty job
</TD>
1413 <TD>Create-Job-Subscription
</TD>
1414 <TD>Creates a notification subscription on a job
</TD>
1417 <TD>Create-Printer-Subscription
</TD>
1418 <TD>Creates a notification subscription on a printer
</TD>
1421 <TD>CUPS-Accept-Jobs
</TD>
1422 <TD>Sets the printer-is-accepting-jobs value for a printer to true
</TD>
1425 <TD>CUPS-Add-Modify-Class
</TD>
1426 <TD>Adds or modifies a class
</TD>
1429 <TD>CUPS-Add-Modify-Printer
</TD>
1430 <TD>Adds or modifies a printer
</TD>
1433 <TD>CUPS-Authenticate-Job
</TD>
1434 <TD>Authenticates a job for printing
</TD>
1437 <TD>CUPS-Delete-Class
</TD>
1438 <TD>Deletes a class
</TD>
1441 <TD>CUPS-Delete-Printer
</TD>
1442 <TD>Deletes a printer
</TD>
1445 <TD>CUPS-Get-Classes
</TD>
1446 <TD>Gets a list of classes
</TD>
1449 <TD>CUPS-Get-Default
</TD>
1450 <TD>Gets the (network/server) default printer or class
</TD>
1453 <TD>CUPS-Get-Devices
</TD>
1454 <TD>Gets a list of available devices
</TD>
1457 <TD>CUPS-Get-PPDs
</TD>
1458 <TD>Gets a list of available manufacturers or drivers
</TD>
1461 <TD>CUPS-Get-Printers
</TD>
1462 <TD>Gets a list of printers and/or classes
</TD>
1465 <TD>CUPS-Move-Job
</TD>
1466 <TD>Moves a job to a new destination
</TD>
1469 <TD>CUPS-Reject-Jobs
</TD>
1470 <TD>Sets the printer-is-accepting-jobs value for a printer to false
</TD>
1473 <TD>CUPS-Set-Default
</TD>
1474 <TD>Sets the network/server default printer or class
</TD>
1477 <TD>Disable-Printer
</TD>
1478 <TD>Sets the printer-state value for a printer to stopped
</TD>
1481 <TD>Enable-Printer
</TD>
1482 <TD>Sets the printer-state value for a printer to idle/processing
</TD>
1485 <TD>Get-Job-Attributes
</TD>
1486 <TD>Gets information about a job
</TD>
1490 <TD>Gets a list of jobs
</TD>
1493 <TD>Get-Notifications
</TD>
1494 <TD>Gets a list of events
</TD>
1497 <TD>Get-Printer-Attributes
</TD>
1498 <TD>Gets informaion about a printer or class
</TD>
1501 <TD>Get-Subscription-Attributes
</TD>
1502 <TD>Gets informaion about a notification subscription
</TD>
1505 <TD>Get-Subscriptions
</TD>
1506 <TD>Gets a list of notification subscriptions
</TD>
1510 <TD>Holds a job for printing
</TD>
1513 <TD>Pause-Printer
</TD>
1514 <TD>Sets the printer-state value for a printer to stopped
</TD>
1518 <TD>Creates a job with a single file for printing
</TD>
1522 <TD>Removes all jobs from a printer
</TD>
1525 <TD>Release-Job
</TD>
1526 <TD>Releases a previously held job for printing
</TD>
1529 <TD>Renew-Subscription
</TD>
1530 <TD>Renews a notification subscription
</TD>
1533 <TD>Restart-Job
</TD>
1534 <TD>Reprints a job
</TD>
1537 <TD>Resume-Printer
</TD>
1538 <TD>Sets the printer-stae value for a printer to idle/processing
</TD>
1541 <TD>Send-Document
</TD>
1542 <TD>Adds a file to an job created with Create-Job
</TD>
1545 <TD>Set-Job-Attributes
</TD>
1546 <TD>Changes job options
</TD>
1549 <TD>Validate-Job
</TD>
1550 <TD>Validates job options prior to printing
</TD>
1556 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"LimitExcept">LimitExcept
</A></H2>
1560 <PRE CLASS=
"command">
1561 <Location /path
>
1562 <LimitExcept GET POST
>
1564 </LimitExcept
>
1568 <H3>Description
</H3>
1570 <P>The
<CODE>LimitExcept
</CODE> directive groups access control
1571 directives for specific types of HTTP requests and must appear
1572 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> section.
1573 Unlike the
<A HREF=
"#Limit"><CODE>Limit
</CODE></A> directive,
1574 <CODE>LimitExcept
</CODE> restricts access for all requests
1575 <I>except
</I> those listed on the
<CODE>LimitExcept
</CODE>
1579 <H2 CLASS=
"title"><A NAME=
"LimitRequestBody">LimitRequestBody
</A></H2>
1583 <PRE CLASS=
"command">
1584 LimitRequestBody
10485760
1585 LimitRequestBody
10m
1589 <H3>Description
</H3>
1591 <P>The
<CODE>LimitRequestBody
</CODE> directive controls the
1592 maximum size of print files, IPP requests, and HTML form data in
1593 HTTP POST requests. The default limit is
0 which disables the
1597 <H2 CLASS=
"title"><A NAME=
"Listen">Listen
</A></H2>
1601 <PRE CLASS=
"command">
1602 Listen
127.0.0.1:
631
1603 Listen
192.0.2.1:
631
1608 <H3>Description
</H3>
1610 <P>The
<CODE>Listen
</CODE> directive specifies a network address
1611 and port to listen for connections. Multiple
<CODE>Listen
</CODE>
1612 directives can be provided to listen on multiple addresses.
</P>
1614 <P>The
<CODE>Listen
</CODE> directive is similar to the
<A
1615 HREF=
"#Port"><CODE>Port
</CODE></A> directive but allows you to
1616 restrict access to specific interfaces or networks.
</P>
1619 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"ListenBackLog">ListenBackLog
</A></H2>
1623 <PRE CLASS=
"command">
1628 <H3>Description
</H3>
1630 <P>The
<CODE>ListenBackLog
</CODE> directive sets the maximum
1631 number of pending connections the scheduler will allow. This
1632 normally only affects very busy servers that have reached the
<A
1633 HREF=
"#MaxClients"><CODE>MaxClients
</CODE></A> limit, but can
1634 also be triggered by large numbers of simultaneous connections.
1635 When the limit is reached, the operating system will refuse
1636 additional connections until the scheduler can accept the pending
1637 ones. The default is the OS-defined default limit, typically
1638 either
5 for older operating systems or
128 for newer operating
1642 <H2 CLASS=
"title"><A NAME=
"Location">Location
</A></H2>
1646 <PRE CLASS=
"command">
1651 <Location /admin
>
1655 <Location /admin/conf
>
1659 <Location /admin/log
>
1663 <Location /classes
>
1667 <Location /classes/name
>
1671 <Location /jobs
>
1675 <Location /printers
>
1679 <Location /printers/name
>
1685 <H3>Description
</H3>
1687 <P>The
<CODE>Location
</CODE> directive specifies access control
1688 and authentication options for the specified HTTP resource or
1689 path. The
<A HREF=
"#Allow"><CODE>Allow
</CODE></A>,
<A
1690 HREF=
"#AuthType"><CODE>AuthType
</CODE></A>,
<A
1691 HREF=
"#Deny"><CODE>Deny
</CODE></A>,
<A
1692 HREF=
"#Encryption"><CODE>Encryption
</CODE></A>,
<A
1693 HREF=
"#Limit"><CODE>Limit
</CODE></A>,
<A
1694 HREF=
"#LimitExcept"><CODE>LimitExcept
</CODE></A>,
<A
1695 HREF=
"#Order"><CODE>Order
</CODE></A>,
<A
1696 HREF=
"#Require"><CODE>Require
</CODE></A>, and
<A
1697 HREF=
"#Satisfy"><CODE>Satisfy
</CODE></A> directives may all
1698 appear inside a location.
</P>
1700 <P>Note that more specific resources override the less specific
1701 ones. So the directives inside the
<CODE>/printers/name
</CODE>
1702 location will override ones from
<CODE>/printers
</CODE>.
1703 Directives inside
<CODE>/printers
</CODE> will override ones from
1704 <CODE>/
</CODE>. None of the directives are inherited.
</P>
1706 <DIV CLASS=
"table"><TABLE SUMMARY=
"Common Locaions on the Server">
1707 <CAPTION>Table
3:
<A NAME=
"TABLE3">Common Locations on the Server
</A></CAPTION>
1709 <TR><TH>Location
</TH><TH>Description
</TH></TR>
1712 <TR><TD><CODE>/
</CODE></TD><TD>The path for all get operations (get-printers, get-jobs, etc.)
</TD></TR>
1713 <TR><TD><CODE>/admin
</CODE></TD><TD>The path for all administration operations (add-printer, delete-printer, start-printer, etc.)
</TD></TR>
1714 <TR><TD><CODE>/admin/conf
</CODE></TD><TD>The path for access to the CUPS configuration files (cupsd.conf, client.conf, etc.)
</TD></TR>
1715 <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>
1716 <TR><TD><CODE>/classes
</CODE></TD><TD>The path for all classes
</TD></TR>
1717 <TR><TD><CODE>/classes/name
</CODE></TD><TD>The resource for class
<CODE>name
</CODE></TD></TR>
1718 <TR><TD><CODE>/jobs
</CODE></TD><TD>The path for all jobs (hold-job, release-job, etc.)
</TD></TR>
1719 <TR><TD><CODE>/jobs/id
</CODE></TD><TD>The resource for job
<CODE>id
</CODE></TD></TR>
1720 <TR><TD><CODE>/printers
</CODE></TD><TD>The path for all printers
</TD></TR>
1721 <TR><TD><CODE>/printers/name
</CODE></TD><TD>The path for printer
<CODE>name
</CODE></TD></TR>
1722 <TR><TD><CODE>/printers/name.ppd
</CODE></TD><TD>The PPD file path for printer
<CODE>name
</CODE></TD></TR>
1727 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.15</SPAN><A NAME=
"LogFilePerm">LogFilePerm
</A></H2>
1731 <PRE CLASS=
"command">
1736 <H3>Description
</H3>
1738 <P>The
<CODE>LogFilePerm
</CODE> directive specifies the
1739 permissions to use when writing configuration files. The default
1743 <H2 CLASS=
"title"><A NAME=
"LogLevel">LogLevel
</A></H2>
1747 <PRE CLASS=
"command">
1760 <H3>Description
</H3>
1762 <P>The
<CODE>LogLevel
</CODE> directive specifies the level of
1763 logging for the
<A HREF=
"#ErrorLog"><CODE>ErrorLog
</CODE></A>
1764 file. The following values are recognized (each level logs
1765 everything under the preceding levels):
</P>
1769 <LI><CODE>none
</CODE> - Log nothing
</LI>
1771 <LI><CODE>emerg
</CODE> - Log emergency conditions that
1772 prevent the server from running
</LI>
1774 <LI><CODE>alert
</CODE> - Log alerts that must be handled
1777 <LI><CODE>crit
</CODE> - Log critical errors that don't
1778 prevent the server from running
</LI>
1780 <LI><CODE>error
</CODE> - Log general errors
</LI>
1782 <LI><CODE>warn
</CODE> - Log errors and warnings
</LI>
1784 <LI><CODE>notice
</CODE> - Log temporary error conditions
</LI>
1786 <LI><CODE>info
</CODE> - Log all requests and state
1787 changes (default)
</LI>
1789 <LI><CODE>debug
</CODE> - Log basic debugging
1792 <LI><CODE>debug2
</CODE> - Log all debugging
1798 <H2 CLASS=
"title"><A NAME=
"MaxClients">MaxClients
</A></H2>
1802 <PRE CLASS=
"command">
1807 <H3>Description
</H3>
1809 <P>The
<CODE>MaxClients
</CODE> directive controls the maximum
1810 number of simultaneous clients that will be allowed by the
1811 server. The default is
100 clients.
</P>
1813 <BLOCKQUOTE><B>Note:
</B>
1815 <P>Since each print job requires a file descriptor for the status
1816 pipe, the scheduler internally limits the
<CODE>MaxClients
</CODE>
1817 value to
1/
3 of the available file descriptors to avoid possible
1818 problems when printing large numbers of jobs.
</P>
1823 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.18</SPAN><A NAME=
"MaxClientsPerHost">MaxClientsPerHost
</A></H2>
1827 <PRE CLASS=
"command">
1828 MaxClientsPerHost
10
1831 <H3>Description
</H3>
1833 <P>The
<CODE>MaxClientsPerHost
</CODE> directive controls the
1834 maximum number of simultaneous clients that will be allowed from
1835 a single host by the server. The default is the
1836 <CODE>MaxClients
</CODE> value.
</P>
1838 <P>This directive provides a small measure of protection against
1839 Denial of Service attacks from a single host.
</P>
1842 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"MaxCopies">MaxCopies
</A></H2>
1846 <PRE CLASS=
"command">
1851 <H3>Description
</H3>
1853 <P>The
<CODE>MaxCopies
</CODE> directive controls the maximum
1854 number of copies that a user can print of a job. The default is
1857 <BLOCKQUOTE><B>Note:
</B>
1859 <P>Most HP PCL laser printers internally limit the number of
1866 <H2 CLASS=
"title"><A NAME=
"MaxJobs">MaxJobs
</A></H2>
1870 <PRE CLASS=
"command">
1876 <H3>Description
</H3>
1878 <P>The
<CODE>MaxJobs
</CODE> directive controls the maximum number
1879 of jobs that are kept in memory. Once the number of jobs reaches
1880 the limit, the oldest completed job is automatically purged from
1881 the system to make room for the new one. If all of the known jobs
1882 are still pending or active then the new job will be
1885 <P>Setting the maximum size to
0 disables this functionality. The
1886 default setting is
0.
</P>
1889 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"MaxJobsPerPrinter">MaxJobsPerPrinter
</A></H2>
1893 <PRE CLASS=
"command">
1894 MaxJobsPerPrinter
100
1895 MaxJobsPerPrinter
9999
1899 <H3>Description
</H3>
1901 <P>The
<CODE>MaxJobsPerPrinter
</CODE> directive controls the
1902 maximum number of active jobs that are allowed for each printer
1903 or class. Once a printer or class reaches the limit, new jobs
1904 will be rejected until one of the active jobs is completed,
1905 stopped, aborted, or canceled.
</P>
1907 <P>Setting the maximum to
0 disables this functionality. The
1908 default setting is
0.
</P>
1911 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"MaxJobsPerUser">MaxJobsPerUser
</A></H2>
1915 <PRE CLASS=
"command">
1921 <H3>Description
</H3>
1923 <P>The
<CODE>MaxJobsPerUser
</CODE> directive controls the maximum
1924 number of active jobs that are allowed for each user. Once a user
1925 reaches the limit, new jobs will be rejected until one of the
1926 active jobs is completed, stopped, aborted, or canceled.
</P>
1928 <P>Setting the maximum to
0 disables this functionality. The
1929 default setting is
0.
</P>
1932 <H2 CLASS=
"title"><A NAME=
"MaxLogSize">MaxLogSize
</A></H2>
1936 <PRE CLASS=
"command">
1942 <H3>Description
</H3>
1944 <P>The
<CODE>MaxLogSize
</CODE> directive controls the maximum
1945 size of each log file. Once a log file reaches or exceeds the
1946 maximum size it is closed and renamed to
<VAR>filename.O
</VAR>.
1947 This allows you to rotate the logs automatically. The default
1948 size is
1048576 bytes (
1MB).
</P>
1950 <P>Setting the maximum size to
0 disables log rotation.
</P>
1953 <H2 CLASS=
"title"><SPAN CLASS=
"info">Deprecated
</SPAN><A NAME=
"MaxRequestSize">MaxRequestSize
</A></H2>
1957 <PRE CLASS=
"command">
1958 MaxRequestSize
10485760
1963 <H3>Description
</H3>
1965 <P>The
<CODE>MaxRequestSize
</CODE> directive controls the maximum
1966 size of print files, IPP requests, and HTML form data in HTTP
1967 POST requests. The default limit is
0 which disables the limit
1970 <P><B>This directive is deprecated and will be removed in a
1971 future CUPS release.
</B> Use the
<A
1972 HREF=
"#LimitRequestBody"><CODE>LimitRequestBody
</CODE></A>
1973 directive instead.
</P>
1976 <H2 CLASS=
"title"><A NAME=
"Order">Order
</A></H2>
1980 <PRE CLASS=
"command">
1981 <Location /path
>
1988 <H3>Description
</H3>
1990 <P>The
<CODE>Order
</CODE> directive defines the default access
1991 control. The following values are supported:
</P>
1995 <LI><CODE>allow,deny
</CODE> - Deny requests by default,
1996 then check the
<A HREF=
"#Allow"><CODE>Allow
</CODE></A>
1997 lines followed by the
<A
1998 HREF=
"#Deny"><CODE>Deny
</CODE></A> lines
</LI>
2000 <LI><CODE>deny,allow
</CODE> - Allow requests by default,
2001 then check the
<A HREF=
"#Deny"><CODE>Deny
</CODE></A>
2002 lines followed by the
<A
2003 HREF=
"#Allow"><CODE>Allow
</CODE></A> lines
</LI>
2007 <P>The
<CODE>Order
</CODE> directive must appear inside a
<A
2008 HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
2009 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
2012 <H2 CLASS=
"title"><A NAME=
"PageLog">PageLog
</A></H2>
2016 <PRE CLASS=
"command">
2017 PageLog /var/log/cups/page_log
2018 PageLog /var/log/cups/page_log-%s
2022 <H3>Description
</H3>
2024 <P>The
<CODE>PageLog
</CODE> directive sets the name of the page
2025 log file. If the filename is not absolute then it is assumed to
2026 be relative to the
<A
2027 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
2028 default page log file is
<VAR>/var/log/cups/page_log
</VAR>.
</P>
2030 <P>The server name can be included in the filename by using
2031 <CODE>%s
</CODE> in the name.
</P>
2033 <P>The special name
"syslog" can be used to send the page
2034 information to the system log instead of a plain file.
</P>
2037 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"PassEnv">PassEnv
</A></H2>
2041 <PRE CLASS=
"command">
2042 PassEnv MY_ENV_VARIABLE
2045 <H3>Description
</H3>
2047 <P>The
<CODE>PassEnv
</CODE> directive specifies an environment
2048 variable that should be passed to child processes. Normally, the
2049 scheduler only passes the
<CODE>DYLD_LIBRARY_PATH
</CODE>,
2050 <CODE>LD_ASSUME_KERNEL
</CODE>,
<CODE>LD_LIBRARY_PATH
</CODE>,
2051 <CODE>LD_PRELOAD
</CODE>,
<CODE>NLSPATH
</CODE>,
2052 <CODE>SHLIB_PATH
</CODE>,
<CODE>TZ
</CODE>, and
<CODE>VGARGS
</CODE>
2053 environment variables to child processes.
</P>
2056 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"Policy">Policy
</A></H2>
2060 <PRE CLASS=
"command">
2062 <Limit operation ... operation
>
2065 <Limit operation ... operation
>
2074 <H3>Description
</H3>
2076 <P>The
<CODE>Policy
</CODE> directive specifies IPP operation
2077 access control limits. Each policy contains
1 or more
<A
2078 HREF=
"#LimitIPP"><CODE>Limit
</CODE></A> sections to set the
2079 access control limits for specific operations - user limits,
2080 authentication, encryption, and allowed/denied addresses,
2081 domains, or hosts. The
<CODE><Limit All
></CODE> section
2082 specifies the default access control limits for operations that
2085 <P>Policies are named and associated with printers via the
2086 printer's operation policy setting
2087 (
<CODE>printer-op-policy
</CODE>). The default policy for the
2088 scheduler is specified using the
<A
2089 HREF=
"#DefaultPolicy"><CODE>DefaultPolicy
</CODE></A>
2093 <H2 CLASS=
"title"><A NAME=
"Port">Port
</A></H2>
2097 <PRE CLASS=
"command">
2102 <H3>Description
</H3>
2104 <P>The
<CODE>Port
</CODE> directive specifies a port to listen on.
2105 Multiple
<CODE>Port
</CODE> lines can be specified to listen on
2106 multiple ports. The
<CODE>Port
</CODE> directive is equivalent to
2107 "<CODE>Listen *:nnn</CODE>". The default port is
631.
</P>
2109 <BLOCKQUOTE><B>Note:
</B>
2111 <P>On systems that support IPv6, this directive will bind to both
2112 the IPv4 and IPv6 wildcard address.
</P>
2117 <H2 CLASS=
"title"><A NAME=
"PreserveJobHistory">PreserveJobHistory
</A></H2>
2121 <PRE CLASS=
"command">
2122 PreserveJobHistory On
2123 PreserveJobHistory Off
2126 <H3>Description
</H3>
2128 <P>The
<CODE>PreserveJobHistory
</CODE> directive controls whether
2129 the history of completed, canceled, or aborted print jobs is
2132 <P>A value of
<CODE>On
</CODE> (the default) preserves job
2133 information until the administrator purges it with the
2134 <CODE>cancel
</CODE> command.
</P>
2136 <P>A value of
<CODE>Off
</CODE> removes the job information as
2137 soon as each job is completed, canceled, or aborted.
</P>
2140 <H2 CLASS=
"title"><A NAME=
"PreserveJobFiles">PreserveJobFiles
</A></H2>
2144 <PRE CLASS=
"command">
2146 PreserveJobFiles Off
2149 <H3>Description
</H3>
2151 <P>The
<CODE>PreserveJobFiles
</CODE> directive controls whether
2152 the document files of completed, canceled, or aborted print jobs
2153 are stored on disk.
</P>
2155 <P>A value of
<CODE>On
</CODE> preserves job files until the
2156 administrator purges them with the
<CODE>cancel
</CODE> command.
2157 Jobs can be restarted (and reprinted) as desired until they are
2160 <P>A value of
<CODE>Off
</CODE> (the default) removes the job
2161 files as soon as each job is completed, canceled, or aborted.
</P>
2164 <H2 CLASS=
"title"><A NAME=
"Printcap">Printcap
</A></H2>
2168 <PRE CLASS=
"command">
2170 Printcap /etc/printcap
2171 Printcap /etc/printers.conf
2174 <H3>Description
</H3>
2176 <P>The
<CODE>Printcap
</CODE> directive controls whether or not a
2177 printcap file is automatically generated and updated with a list
2178 of available printers. If specified with no value, then no
2179 printcap file will be generated. The default is to generate a
2180 file named
<VAR>/etc/printcap
</VAR>.
</P>
2182 <P>When a filename is specified (e.g.
<VAR>/etc/printcap
</VAR>),
2183 the printcap file is written whenever a printer is added or
2184 removed. The printcap file can then be used by applications that
2185 are hardcoded to look at the printcap file for the available
2189 <H2 CLASS=
"title"><A NAME=
"PrintcapFormat">PrintcapFormat
</A></H2>
2193 <PRE CLASS=
"command">
2195 PrintcapFormat Solaris
2198 <H3>Description
</H3>
2200 <P>The
<CODE>PrintcapFormat
</CODE> directive controls the output
2201 format of the printcap file. The default is to generate a BSD
2205 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.13</SPAN><A NAME=
"PrintcapGUI">PrintcapGUI
</A></H2>
2209 <PRE CLASS=
"command">
2210 PrintGUI /usr/bin/glpoptions
2213 <H3>Description
</H3>
2215 <P>The
<CODE>PrintcapGUI
</CODE> directive sets the program to
2216 associate with the IRIX printer GUI interface script which is
2217 used by IRIX applications to display printer-specific options.
2218 There is no default program.
</P>
2221 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.21</SPAN><A NAME=
"ReloadTimeout">ReloadTimeout
</A></H2>
2225 <PRE CLASS=
"command">
2230 <H3>Description
</H3>
2232 <P>The
<CODE>ReloadTimeout
</CODE> directive specifies the number
2233 of seconds the scheduler will wait for active jobs to complete
2234 before doing a restart. The default is
60 seconds.
</P>
2237 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.3</SPAN><A NAME=
"RemoteRoot">RemoteRoot
</A></H2>
2241 <PRE CLASS=
"command">
2246 <H3>Description
</H3>
2248 <P>The
<CODE>RemoteRoot
</CODE> directive sets the username for
2249 unauthenticated root requests from remote hosts. The default
2250 username is
<VAR>remroot
</VAR>. Setting
<CODE>RemoteRoot
</CODE>
2251 to
<VAR>root
</VAR> effectively disables this security
2255 <H2 CLASS=
"title"><A NAME=
"RequestRoot">RequestRoot
</A></H2>
2259 <PRE CLASS=
"command">
2260 RequestRoot /var/spool/cups
2261 RequestRoot /foo/bar/spool/cups
2264 <H3>Description
</H3>
2266 <P>The
<CODE>RequestRoot
</CODE> directive sets the directory for
2267 incoming IPP requests and HTML forms. If an absolute path is not
2268 provided then it is assumed to be relative to the
<A
2269 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
2270 default request directory is
<VAR>/var/spool/cups
</VAR>.
</P>
2273 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Require">Require
</A></H2>
2277 <PRE CLASS=
"command">
2278 <Location /path
>
2280 Require group foo bar
2281 Require user john mary
2283 Require user @groupname
2284 Require user @SYSTEM
2289 <H3>Description
</H3>
2291 <P>The
<CODE>Require
</CODE> directive specifies that
2292 authentication is required for the resource. The
2293 <CODE>group
</CODE> keyword specifies that the authenticated user
2294 must be a member of one or more of the named groups that
2297 <P>The
<CODE>user
</CODE> keyboard specifies that the
2298 authenticated user must be one of the named users or groups that
2299 follow. Group names are specified using the
"@" prefix.
</P>
2301 <P>The
<CODE>valid-user
</CODE> keyword specifies that any
2302 authenticated user may access the resource.
</P>
2304 <P>The default is to do no authentication. This directive must
2305 appear inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> or
2306 <A HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
2309 <H2 CLASS=
"title"><A NAME=
"RIPCache">RIPCache
</A></H2>
2313 <PRE CLASS=
"command">
2319 <H3>Description
</H3>
2321 <P>The
<CODE>RIPCache
</CODE> directive sets the size of the
2322 memory cache used by Raster Image Processor (
"RIP") filters such
2323 as
<CODE>imagetoraster
</CODE> and
<CODE>pstoraster
</CODE>. The
2324 size can be suffixed with a
"k" for kilobytes,
"m" for megabytes,
2325 or
"g" for gigabytes. The default cache size is
"8m", or
8
2329 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.16</SPAN><A NAME=
"RootCertDuration">RootCertDuration
</A></H2>
2333 <PRE CLASS=
"command">
2335 RootCertDuration
300
2338 <H3>Description
</H3>
2340 <P>The
<CODE>RootCertDuration
</CODE> directive specifies the
2341 number of seconds the
<EM>root certificate
</EM> remains valid.
2342 The scheduler will generate a new certificate as needed when the
2343 number of seconds has expired. If set to
0, the root certificate
2344 is generated only once on startup or on a restart. The default is
2348 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.7</SPAN><A NAME=
"Satisfy">Satisfy
</A></H2>
2352 <PRE CLASS=
"command">
2353 <Location /path
>
2360 <H3>Description
</H3>
2362 <P>The
<CODE>Satisfy
</CODE> directive specifies whether all
2363 conditions must be satisfied to allow access to the resource. If
2364 set to
<CODE>all
</CODE>, then all authentication and access
2365 control conditions must be satified to allow access.
</P>
2367 <P>Setting
<CODE>Satisfy
</CODE> to
<CODE>any
</CODE> allows a user
2368 to gain access if the authentication or access control
2369 requirements are satisfied. For example, you might require
2370 authentication for remote access, but allow local access without
2373 <P>The default is
<CODE>all
</CODE>. This directive must appear
2374 inside a
<A HREF=
"#Location"><CODE>Location
</CODE></A> or
<A
2375 HREF=
"#Limit"><CODE>Limit
</CODE></A> section.
</P>
2378 <H2 CLASS=
"title"><A NAME=
"ServerAdmin">ServerAdmin
</A></H2>
2382 <PRE CLASS=
"command">
2383 ServerAdmin user@host
2384 ServerAdmin root@foo.bar.com
2387 <H3>Description
</H3>
2389 <P>The
<CODE>ServerAdmin
</CODE> directive identifies the email
2390 address for the administrator on the system. By default the
2391 administrator email address is
<CODE>root@server
</CODE>, where
2392 <CODE>server
</CODE> is the
<A
2393 HREF=
"#ServerName"><CODE>ServerName
</CODE></A>.
</P>
2396 <H2 CLASS=
"title"><A NAME=
"ServerBin">ServerBin
</A></H2>
2400 <PRE CLASS=
"command">
2401 ServerBin /usr/lib/cups
2402 ServerBin /foo/bar/lib/cups
2405 <H3>Description
</H3>
2407 <P>The
<CODE>ServerBin
</CODE> directive sets the directory for
2408 server-run executables. If an absolute path is not provided then
2409 it is assumed to be relative to the
<A
2410 HREF=
"#ServerRoot"><CODE>ServerRoot
</CODE></A> directory. The
2411 default executable directory is
<VAR>/usr/lib/cups
</VAR>,
2412 <VAR>/usr/lib32/cups
</VAR>, or
<VAR>/usr/libexec/cups
</VAR>
2413 depending on the operating system.
</P>
2416 <H2 CLASS=
"title"><A NAME=
"ServerCertificate">ServerCertificate
</A></H2>
2420 <PRE CLASS=
"command">
2421 ServerCertificate /etc/cups/ssl/server.crt
2424 <H3>Description
</H3>
2426 <P>The
<CODE>ServerCertificate
</CODE> directive specifies the
2427 location of the SSL certificate file used by the server when
2428 negotiating encrypted connections. The certificate must not be
2429 encrypted (password protected) since the scheduler normally runs
2430 in the background and will be unable to ask for a password.
</P>
2432 <P>The default certificate file is
2433 <VAR>/etc/cups/ssl/server.crt
</VAR>.
</P>
2436 <H2 CLASS=
"title"><A NAME=
"ServerKey">ServerKey
</A></H2>
2440 <PRE CLASS=
"command">
2441 ServerKey /etc/cups/ssl/server.key
2444 <H3>Description
</H3>
2446 <P>The
<CODE>ServerKey
</CODE> directive specifies the location of
2447 the SSL private key file used by the server when negotiating
2448 encrypted connections.
</P>
2450 <P>The default key file is
2451 <VAR>/etc/cups/ssl/server.crt
</VAR>.
</P>
2454 <H2 CLASS=
"title"><A NAME=
"ServerName"></A>ServerName
</H2>
2458 <PRE CLASS=
"command">
2459 ServerName foo.domain.com
2460 ServerName myserver.domain.com
2463 <H3>Description
</H3>
2465 <P>The
<CODE>ServerName
</CODE> directive specifies the hostname
2466 that is reported to clients. By default the server name is the
2470 <H2 CLASS=
"title"><A NAME=
"ServerRoot">ServerRoot
</A></H2>
2474 <PRE CLASS=
"command">
2475 ServerRoot /etc/cups
2476 ServerRoot /foo/bar/cups
2479 <H3>Description
</H3>
2481 <P>The
<CODE>ServerRoot
</CODE> directive specifies the absolute
2482 path to the server configuration and state files. It is also used
2483 to resolve relative paths in the
<VAR>cupsd.conf
</VAR> file. The
2484 default server directory is
<VAR>/etc/cups
</VAR>.
</P>
2487 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.1.21</SPAN><A NAME=
"ServerTokens">ServerTokens
</A></H2>
2491 <PRE CLASS=
"command">
2493 ServerTokens ProductOnly
2496 ServerTokens Minimal
2501 <H3>Description
</H3>
2503 <P>The
<CODE>ServerTokens
</CODE> directive specifies the
2504 information that is included in the
<CODE>Server:
</CODE> header
2505 of all HTTP responses. Table
4 lists the token name along with
2506 the text that is returned. The default is
2507 <CODE>Minimal
</CODE>.
</P>
2509 <DIV CLASS=
"table"><TABLE SUMMARY=
"ServerToken Names and Values">
2510 <CAPTION>Table
4:
<A NAME=
"TABLE4">ServerToken Names and Values
</A></CAPTION>
2520 <TD>No
<CODE>Server:
</CODE> header is returned
</TD>
2523 <TD>ProductOnly
</TD>
2536 <TD>"CUPS 1.2.N" where N is the patch release
</TD>
2540 <TD>"CUPS 1.2.N (UNAME)" where N is the patch release and
2541 UNAME is the output of the
<B>uname(
1)
</B> command
</TD>
2545 <TD>"CUPS 1.2.N (UNAME) IPP/1.1" where N is the patch
2546 release and UNAME is the output of the
<B>uname(
1)
</B>
2553 <H2 CLASS=
"title"><SPAN CLASS=
"info">CUPS
1.2</SPAN><A NAME=
"SetEnv">SetEnv
</A></H2>
2557 <PRE CLASS=
"command">
2558 SetEnv PATH /usr/lib/cups/filter:/bin:/usr/bin:/usr/local/bin
2559 SetEnv MY_ENV_VAR foo
2562 <H3>Description
</H3>
2564 <P>The
<CODE>SetEnv
</CODE> directive specifies an environment
2565 variable that should be passed to child processes.
</P>
2568 <H2 CLASS=
"title"><A NAME=
"SSLListen">SSLListen
</A></H2>
2572 <PRE CLASS=
"command">
2573 SSLListen
127.0.0.1:
443
2574 SSLListen
192.0.2.1:
443
2577 <H3>Description
</H3>
2579 <P>The
<CODE>SSLListen
</CODE> directive specifies a network
2580 address and port to listen for secure connections. Multiple
2581 <CODE>SSLListen
</CODE> directives can be provided to listen on
2582 multiple addresses.
</P>
2584 <P>The
<CODE>SSLListen
</CODE> directive is similar to the
<A
2585 HREF=
"#SSLPort"><CODE>SSLPort
</CODE></A> directive but allows you
2586 to restrict access to specific interfaces or networks.
</P>
2589 <H2 CLASS=
"title"><A NAME=
"SSLPort">SSLPort
</A></H2>
2593 <PRE CLASS=
"command">
2597 <H3>Description
</H3>
2599 <P>The
<CODE>SSLPort
</CODE> directive specifies a port to listen
2600 on for secure connections. Multiple
<CODE>SSLPort
</CODE> lines
2601 can be specified to listen on multiple ports.
</P>
2604 <H2 CLASS=
"title"><A NAME=
"SystemGroup">SystemGroup
</A></H2>
2608 <PRE CLASS=
"command">
2613 SystemGroup root lpadmin
2616 <H3>Description
</H3>
2618 <P>The
<CODE>SystemGroup
</CODE> directive specifies the system
2619 administration group for
<CODE>System
</CODE> authentication.
2620 Multiple groups can be listed, separated with spaces. The default
2621 is system-dependent and generally consists of all of the
2622 following groups, if present:
<CODE>lpadmin
</CODE>,
2623 <CODE>root
</CODE>,
<CODE>sys
</CODE>, and/or
2624 <CODE>system
</CODE>.
</P>
2627 <H2 CLASS=
"title"><A NAME=
"TempDir">TempDir
</A></H2>
2631 <PRE CLASS=
"command">
2633 TempDir /foo/bar/tmp
2636 <H3>Description
</H3>
2638 <P>The
<CODE>TempDir
</CODE> directive specifies an absolute path
2639 for the directory to use for temporary files. The default
2640 directory is
<VAR>/var/spool/cups/tmp
</VAR>.
</P>
2642 <P>Temporary directories must be world-writable and should have
2643 the
"sticky" permission bit enabled so that other users cannot
2644 delete filter temporary files. The following commands will create
2645 an appropriate temporary directory called
2646 <VAR>/foo/bar/tmp
</VAR>:
</P>
2648 <PRE CLASS=
"command">
2649 <KBD>mkdir /foo/bar/tmp
</KBD>
2650 <KBD>chmod a+rwxt /foo/bar/tmp
</KBD>
2654 <H2 CLASS=
"title"><A NAME=
"Timeout">Timeout
</A></H2>
2658 <PRE CLASS=
"command">
2663 <H3>Description
</H3>
2665 <P>The
<CODE>Timeout
</CODE> directive controls the amount of time
2666 to wait before an active HTTP or IPP request times out. The
2667 default timeout is
300 seconds.
</P>
2670 <H2 CLASS=
"title"><A NAME=
"User">User
</A></H2>
2674 <PRE CLASS=
"command">
2679 <H3>Description
</H3>
2681 <P>The
<CODE>User
</CODE> directive specifies the UNIX user that
2682 filter and CGI programs run as. The default user is
2683 <CODE>lp
</CODE>.
</P>
2685 <BLOCKQUOTE><B>Note:
</B>
2687 <P>You may not use user
<CODE>root
</CODE>, as that would expose
2688 the system to unacceptable security risks. The scheduler will
2689 automatically choose user
<CODE>nobody
</CODE> if you specify a
2690 user whose ID is
0.
</P>