]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/ref-cupsd-conf.html.in
Merge changes from CUPS 1.4svn-r8454.
[thirdparty/cups.git] / doc / help / ref-cupsd-conf.html.in
CommitLineData
ef416fc2 1<HTML>
2<!-- SECTION: References -->
3<HEAD>
4 <TITLE>cupsd.conf</TITLE>
5</HEAD>
6<BODY>
7
bd7854cb 8
ef416fc2 9<P>The <VAR>/etc/cups/cupsd.conf</VAR> file contains
10configuration <I>directives</I> that control how the server
11functions. Each directive is listed on a line by itself followed
12by its value. Comments are introduced using the number sign ("#")
13character at the beginning of a line.</P>
14
15<P>Since the server configuration file consists of plain text,
16you can use your favorite text editor to make changes to it.
17After making any changes, restart the <CODE>cupsd(8)</CODE>
18process using the startup script for your operating system:</P>
19
20<UL>
21
480ef0fe 22 <LI>AIX, IRIX, Linux, Solaris:
ef416fc2 23 <PRE CLASS="command">
24/etc/init.d/cups restart
25 </PRE></LI>
26
27 <LI>HP-UX:
28 <PRE CLASS="command">
29/sbin/init.d/cups restart
30 </PRE></LI>
31
ef416fc2 32 <LI>MacOS X:
33 <PRE CLASS="command">
568fa3fa
MS
34sudo launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist
35sudo launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
ef416fc2 36 </PRE></LI>
37
ef416fc2 38</UL>
39
40<P>You can also edit this file from the CUPS web interface, which
41automatically handles restarting the scheduler.</P>
42
43
480ef0fe 44<H2 CLASS="title"><A NAME="AccessLog">AccessLog</A></H2>
ef416fc2 45
480ef0fe 46<H3>Examples</H3>
ef416fc2 47
48<PRE CLASS="command">
49AccessLog /var/log/cups/access_log
50AccessLog /var/log/cups/access_log-%s
51AccessLog syslog
52</PRE>
53
480ef0fe 54<H3>Description</H3>
ef416fc2 55
56<P>The <CODE>AccessLog</CODE> directive sets the name of the
57access log file. If the filename is not absolute then it is
58assumed to be relative to the <A
59HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
60access log file is stored in "common log format" and can be used
61by any web access reporting tool to generate a report on CUPS
62server activity.</P>
63
64<P>The server name can be included in the filename by using
65<CODE>%s</CODE> in the name.</P>
66
67<P>The special name "syslog" can be used to send the access
68information to the system log instead of a plain file.</P>
69
70<P>The default access log file is
b94498cf 71<VAR>@CUPS_LOGDIR@/access_log</VAR>.</P>
ef416fc2 72
73
1f0275e3
MS
74<H2 CLASS="title"><A NAME="AccessLogLevel">AccessLogLevel</A></H2>
75
76<H3>Examples</H3>
77
78<PRE CLASS="command">
79AccessLogLevel config
80AccessLogLevel actions
81AccessLogLevel all
82</PRE>
83
84<H3>Description</H3>
85
86<P>The <CODE>AccessLogLevel</CODE> directive controls which requests are logged
87to the access log file. The following levels are defined:</P>
88
89<UL>
90
91 <LI><CODE>config</CODE>; Log when printers and classes are added,
92 deleted, or modified and when configuration files are accessed or
93 updated.</LI>
94
95 <LI><CODE>actions</CODE>; Log when print jobs are submitted,
96 held, released, modified, or canceled, and any of the conditions
97 for <CODE>config</CODE>.</LI>
98
99 <LI><CODE>all</CODE>; Log all requests.</LI>
100
101</UL>
102
103<P>The default access log level is <CODE>@CUPS_ACCESS_LOG_LEVEL@</CODE>.</P>
104
105
480ef0fe 106<H2 CLASS="title"><A NAME="Allow">Allow</A></H2>
ef416fc2 107
480ef0fe 108<H3>Examples</H3>
ef416fc2 109
110<PRE CLASS="command">
480ef0fe 111&lt;Location /path&gt;
112 ...
113 Allow from All
114 Allow from None
115 Allow from *.domain.com
116 Allow from .domain.com
117 Allow from host.domain.com
118 Allow from nnn.*
119 Allow from nnn.nnn.*
120 Allow from nnn.nnn.nnn.*
121 Allow from nnn.nnn.nnn.nnn
122 Allow from nnn.nnn.nnn.nnn/mm
123 Allow from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
124 Allow from xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
125 Allow from @LOCAL
126 Allow from @IF(name)
127&lt;/Location&gt;
ef416fc2 128</PRE>
129
480ef0fe 130<H3>Description</H3>
ef416fc2 131
480ef0fe 132<P>The <CODE>Allow</CODE> directive specifies a hostname, IP
133address, or network that is allowed access to the server.
134<CODE>Allow</CODE> directives are cummulative, so multiple
135<CODE>Allow</CODE> directives can be used to allow access for
136multiple hosts or networks. The <CODE>/mm</CODE> notation
137specifies a CIDR netmask, as shown in Table 1.</P>
ef416fc2 138
480ef0fe 139<DIV CLASS="table"><TABLE SUMMARY="CIDR Netmasks">
140<CAPTION>Table 1: <A NAME="TABLE1">CIDR Netmasks</A></CAPTION>
ef416fc2 141<TR>
142 <TH WIDTH="10%">mm</TH>
143 <TH WIDTH="20%">netmask</TH>
144 <TH WIDTH="10%">mm</TH>
145 <TH WIDTH="20%">netmask</TH>
146</TR>
147<TR>
148 <TD ALIGN="CENTER">0</TD>
149 <TD ALIGN="CENTER">0.0.0.0</TD>
150 <TD ALIGN="CENTER">8</TD>
151 <TD ALIGN="CENTER">255.0.0.0</TD>
152</TR>
153<TR>
154 <TD ALIGN="CENTER">1</TD>
155 <TD ALIGN="CENTER">128.0.0.0</TD>
156 <TD ALIGN="CENTER">16</TD>
157 <TD ALIGN="CENTER">255.255.0.0</TD>
158</TR>
159<TR>
160 <TD ALIGN="CENTER">2</TD>
161 <TD ALIGN="CENTER">192.0.0.0</TD>
162 <TD ALIGN="CENTER">24</TD>
163 <TD ALIGN="CENTER">255.255.255.0</TD>
164</TR>
165<TR>
166 <TD ALIGN="CENTER">...</TD>
167 <TD ALIGN="CENTER">...</TD>
168 <TD ALIGN="CENTER">32</TD>
169 <TD ALIGN="CENTER">255.255.255.255</TD>
170</TR>
171</TABLE></DIV>
172
173<P>The <CODE>@LOCAL</CODE> name will allow access from all local
174interfaces. The <CODE>@IF(name)</CODE> name will allow access
2abf387c 175from the named interface. In both cases, CUPS only allows access
176from the network that the interface(s) are configured for -
177requests arriving on the interface from a foreign network will
178<em>not</em> be accepted.</P>
ef416fc2 179
180<P>The <CODE>Allow</CODE> directive must appear inside a <A
480ef0fe 181HREF="#Location"><CODE>Location</CODE></A> or <A
182HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 183
184
480ef0fe 185<H2 CLASS="title"><SPAN CLASS="info">Deprecated</SPAN><A NAME="AuthClass">AuthClass</A></H2>
ef416fc2 186
480ef0fe 187<H3>Examples</H3>
ef416fc2 188
189<PRE CLASS="command">
480ef0fe 190&lt;Location /path&gt;
191 ...
192 AuthClass Anonymous
193 AuthClass User
194 AuthClass System
195 AuthClass Group
196&lt;/Location&gt;
ef416fc2 197</PRE>
198
480ef0fe 199<H3>Description</H3>
ef416fc2 200
201<P>The <CODE>AuthClass</CODE> directive defines what level of
202authentication is required:</P>
203
204<UL>
205
206 <LI><CODE>Anonymous</CODE> - No authentication should be
207 performed (default)</LI>
208
209 <LI><CODE>User</CODE> - A valid username and password is
210 required</LI>
211
212 <LI><CODE>System</CODE> - A valid username and password
213 is required, and the username must belong to the "sys"
214 group; this can be changed using the <A
215 HREF="#SystemGroup"><CODE>SystemGroup</CODE></A>
216 directive</LI>
217
218 <LI><CODE>Group</CODE> - A valid username and password is
219 required, and the username must belong to the group named
220 by the <A
221 HREF="#AuthGroupName"><CODE>AuthGroupName</CODE></A>
222 directive</LI>
223
224</UL>
225
226<P>The <CODE>AuthClass</CODE> directive must appear inside a <A
480ef0fe 227HREF="#Location"><CODE>Location</CODE></A> or <A
228HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 229
230<P><B>This directive is deprecated and will be removed from a
231future release of CUPS.</B> Consider using the more flexible <A
232HREF="#Require"><CODE>Require</CODE></A> directive instead.</P>
233
234
480ef0fe 235<H2 CLASS="title"><SPAN CLASS="info">Deprecated</SPAN><A NAME="AuthGroupName">AuthGroupName</A></H2>
ef416fc2 236
480ef0fe 237<H3>Examples</H3>
ef416fc2 238
239<PRE CLASS="command">
480ef0fe 240&lt;Location /path&gt;
241 ...
242 AuthGroupName mygroup
243 AuthGroupName lp
244&lt;/Location&gt;
ef416fc2 245</PRE>
246
480ef0fe 247<H3>Description</H3>
ef416fc2 248
249<P>The <CODE>AuthGroupName</CODE> directive sets the group to use
250for <CODE>Group</CODE> authentication.</P>
251
252<P>The <CODE>AuthGroupName</CODE> directive must appear inside a
480ef0fe 253<A HREF="#Location"><CODE>Location</CODE></A> or <A
254HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 255
256<P><B>This directive is deprecated and will be removed from a
257future release of CUPS.</B> Consider using the more flexible <A
258HREF="#Require"><CODE>Require</CODE></A> directive instead.</P>
259
260
480ef0fe 261<H2 CLASS="title"><A NAME="AuthType">AuthType</A></H2>
ef416fc2 262
480ef0fe 263<H3>Examples</H3>
ef416fc2 264
265<PRE CLASS="command">
480ef0fe 266&lt;Location /path&gt;
267 ...
268 AuthType None
269 AuthType Basic
270 AuthType Digest
271 AuthType BasicDigest
f7deaa1a 272 AuthType Negotiate
480ef0fe 273&lt;/Location&gt;
ef416fc2 274</PRE>
275
480ef0fe 276<H3>Description</H3>
ef416fc2 277
278<P>The <CODE>AuthType</CODE> directive defines the type of
279authentication to perform:</P>
280
281<UL>
282
283 <LI><CODE>None</CODE> - No authentication should be
284 performed (default)</LI>
285
286 <LI><CODE>Basic</CODE> - Basic authentication should be
287 performed using the UNIX password and group files</LI>
288
289 <LI><CODE>Digest</CODE> - Digest authentication should be
290 performed using the <VAR>/etc/cups/passwd.md5</VAR>
291 file</LI>
292
293 <LI><CODE>BasicDigest</CODE> - Basic authentication
294 should be performed using the
295 <VAR>/etc/cups/passwd.md5</VAR> file</LI>
296
f7deaa1a 297 <LI><CODE>Negotiate</CODE> - Kerberos authentication
298 should be performed</LI>
299
ef416fc2 300</UL>
301
f7deaa1a 302<P>When using <CODE>Basic</CODE>, <CODE>Digest</CODE>,
303<CODE>BasicDigest</CODE>, or <CODE>Negotiate</CODE> authentication,
304clients connecting through the <CODE>localhost</CODE> interface can
305also authenticate using certificates.</P>
ef416fc2 306
307<P>The <CODE>AuthType</CODE> directive must appear inside a <A
480ef0fe 308HREF="#Location"><CODE>Location</CODE></A> or <A
309HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 310
311
480ef0fe 312<H2 CLASS="title"><A NAME="AutoPurgeJobs">AutoPurgeJobs</A></H2>
ef416fc2 313
480ef0fe 314<H3>Examples</H3>
ef416fc2 315
316<PRE CLASS="command">
317AutoPurgeJobs Yes
318AutoPurgeJobs No
319</PRE>
320
480ef0fe 321<H3>Description</H3>
ef416fc2 322
323<P>The <CODE>AutoPurgeJobs</CODE> directive specifies whether or
324not to purge completed jobs once they are no longer required for
325quotas. This option has no effect if quotas are not enabled. The
326default setting is <CODE>No</CODE>.</P>
327
328
480ef0fe 329<H2 CLASS="title"><A NAME="BrowseAddress">BrowseAddress</A></H2>
ef416fc2 330
480ef0fe 331<H3>Examples</H3>
ef416fc2 332
333<PRE CLASS="command">
334BrowseAddress 255.255.255.255:631
335BrowseAddress 192.0.2.255:631
336BrowseAddress host.domain.com:631
337BrowseAddress @LOCAL
338BrowseAddress @IF(name)
339</PRE>
340
480ef0fe 341<H3>Description</H3>
ef416fc2 342
343<P>The <CODE>BrowseAddress</CODE> directive specifies an address
344to send browsing information to. Multiple
345<CODE>BrowseAddress</CODE> directives can be specified to send
346browsing information to different networks or systems.</P>
347
348<P>The <CODE>@LOCAL</CODE> name will broadcast printer
349information to all local interfaces. The <CODE>@IF(name)</CODE>
350name will broadcast to the named interface.</P>
351
352<P>There is no default browse address.</P>
353
354<BLOCKQUOTE><B>Note:</B>
355
356<P>If you are using HP-UX 10.20 and a subnet that is not 24,
35716, or 8 bits, printer browsing (and in fact all broadcast
358reception) will not work. This problem appears to be fixed in
359HP-UX 11.0.</P>
360
361</BLOCKQUOTE>
362
363
480ef0fe 364<H2 CLASS="title"><A NAME="BrowseAllow">BrowseAllow</A></H2>
ef416fc2 365
480ef0fe 366<H3>Examples</H3>
ef416fc2 367
368<PRE CLASS="command">
369BrowseAllow from all
370BrowseAllow from none
371BrowseAllow from 192.0.2
372BrowseAllow from 192.0.2.0/24
373BrowseAllow from 192.0.2.0/255.255.255.0
374BrowseAllow from *.domain.com
375BrowseAllow from @LOCAL
376BrowseAllow from @IF(name)
377</PRE>
378
480ef0fe 379<H3>Description</H3>
ef416fc2 380
381<P>The <CODE>BrowseAllow</CODE> directive specifies a system or
382network to accept browse packets from. The default is to accept
383browse packets from all hosts.</P>
384
385<P>Host and domain name matching require that you enable the <A
386HREF="#HostNameLookups"><CODE>HostNameLookups</CODE></A>
387directive.</P>
388
389<P>IP address matching supports exact matches, partial addresses
390that match networks using netmasks of 255.0.0.0, 255.255.0.0, and
391255.255.255.0, or network addresses using the specified netmask
392or bit count.</P>
393
394<P>The <CODE>@LOCAL</CODE> name will allow browse data from all
395local interfaces. The <CODE>@IF(name)</CODE> name will allow
2abf387c 396browse data from the named interface. In both cases, CUPS only
397allows data from the network that the interface(s) are configured
398for - data arriving on the interface from a foreign network will
399<em>not</em> be allowed.</P>
ef416fc2 400
401
480ef0fe 402<H2 CLASS="title"><A NAME="BrowseDeny">BrowseDeny</A></H2>
ef416fc2 403
480ef0fe 404<H3>Examples</H3>
ef416fc2 405
406<PRE CLASS="command">
407BrowseDeny from all
408BrowseDeny from none
409BrowseDeny from 192.0.2
410BrowseDeny from 192.0.2.0/24
411BrowseDeny from 192.0.2.0/255.255.255.0
412BrowseDeny from *.domain.com
413BrowseDeny from @LOCAL
414BrowseDeny from @IF(name)
415</PRE>
416
480ef0fe 417<H3>Description</H3>
ef416fc2 418
419<P>The <CODE>BrowseDeny</CODE> directive specifies a system or
420network to reject browse packets from. The default is to not deny
421browse packets from any hosts.</P>
422
423<P>Host and domain name matching require that you enable the <A
424HREF="#HostNameLookups"><CODE>HostNameLookups</CODE></A>
425directive.</P>
426
427<P>IP address matching supports exact matches, partial addresses
428that match networks using netmasks of 255.0.0.0, 255.255.0.0, and
429255.255.255.0, or network addresses using the specified netmask
430or bit count.</P>
431
432<P>The <CODE>@LOCAL</CODE> name will block browse data from all
433local interfaces. The <CODE>@IF(name)</CODE> name will block
2abf387c 434browse data from the named interface. In both cases, CUPS only
435blocks data from the network that the interface(s) are configured
436for - data arriving on the interface from a foreign network will
437<em>not</em> be blocked.</P>
ef416fc2 438
439
480ef0fe 440<H2 CLASS="title"><A NAME="BrowseInterval">BrowseInterval</A></H2>
ef416fc2 441
480ef0fe 442<H3>Examples</H3>
443
444<PRE CLASS="command">
445BrowseInterval 0
446BrowseInterval 30
447</PRE>
448
449<H3>Description</H3>
450
451<P>The <CODE>BrowseInterval</CODE> directive specifies the
452maximum amount of time between browsing updates. Specifying a
453value of 0 seconds disables outgoing browse updates but allows a
454server to receive printer information from other hosts.</P>
455
456<P>The <CODE>BrowseInterval</CODE> value should always be less
457than the <A HREF="#BrowseTimeout"><CODE>BrowseTimeout</CODE></A>
458value. Otherwise printers and classes will disappear from client
459systems between updates.</P>
460
461
462<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="BrowseLDAPBindDN">BrowseLDAPBindDN</A></H2>
463
464<H3>Examples</H3>
465
466<PRE CLASS="command">
467BrowseLDAPBindDN foo
468</PRE>
469
470<H3>Description</H3>
471
472<P>The <CODE>BrowseLDAPBindDN</CODE> directive specifies the LDAP
473domain name to use when listening for printer registrations. The
474default is undefined.</P>
475
476
749b1e90
MS
477<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4</SPAN><A NAME="BrowseLDAPCACertFile">BrowseLDAPCACertFile</A></H2>
478
479<H3>Examples</H3>
480
481<PRE CLASS="command">
482BrowseLDAPCACertFile /etc/cups/ssl/certs
483</PRE>
484
485<H3>Description</H3>
486
487<P>The <CODE>BrowseLDAPCACertFile</CODE> directive specifies the SSL certificate
488authority file to use for LDAP + SSL. The default is undefined.</P>
489
490
480ef0fe 491<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="BrowseLDAPDN">BrowseLDAPDN</A></H2>
492
493<H3>Examples</H3>
494
495<PRE CLASS="command">
496BrowseLDAPDN bar
497</PRE>
498
499<H3>Description</H3>
500
501<P>The <CODE>BrowseLDAPDN</CODE> directive specifies the LDAP
502domain name to use when registering local shared printers. The
503default is undefined.</P>
504
505
506<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="BrowseLDAPPassword">BrowseLDAPPassword</A></H2>
507
508<H3>Examples</H3>
509
510<PRE CLASS="command">
511BrowseLDAPPassword foo123
512</PRE>
513
514<H3>Description</H3>
515
516<P>The <CODE>BrowseLDAPPassword</CODE> directive specifies the
517access password to use when connecting to the LDAP server. The
518default is undefined.</P>
519
520
521<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="BrowseLDAPServer">BrowseLDAPServer</A></H2>
522
523<H3>Examples</H3>
524
525<PRE CLASS="command">
526BrowseLDAPServer localhost
527</PRE>
528
529<H3>Description</H3>
530
531<P>The <CODE>BrowseLDAPServer</CODE> directive specifies the name
532of the LDAP server to connect to. The default is undefined.</P>
533
534
535<H2 CLASS="title"><A NAME="BrowseLocalOptions">BrowseLocalOptions</A></H2>
536
537<H3>Examples</H3>
538
539<PRE CLASS="command">
540BrowseLocalOptions compression=yes
541BrowseLocalOptions encryption=required
542BrowseLocalOptions compression=yes&amp;encryption=required
543</PRE>
544
545<H3>Description</H3>
546
547<P>The <CODE>BrowseLocalOptions</CODE> directive specifies
548additional IPP backend options to advertise with local shared
549printers. The default is to not include any options.</P>
550
551
552<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="BrowseLocalProtocols">BrowseLocalProtocols</A></H2>
553
554<H3>Examples</H3>
555
556<PRE CLASS="command">
557BrowseLocalProtocols all
558BrowseLocalProtocols none
559BrowseLocalProtocols cups
a41f09e2 560BrowseLocalProtocols dnssd
480ef0fe 561BrowseLocalProtocols ldap
d2354e63 562BrowseLocalProtocols lpd
480ef0fe 563BrowseLocalProtocols slp
d2354e63 564BrowseLocalProtocols smb
a41f09e2 565BrowseLocalProtocols cups dnssd
480ef0fe 566</PRE>
567
568<H3>Description</H3>
569
570<P>The <CODE>BrowseLocalProtocols</CODE> directive specifies the
571protocols to use when advertising local shared printers on the
572network. Multiple protocols can be specified by separating them
d2354e63 573with spaces. The default is "<CODE>@CUPS_BROWSE_LOCAL_PROTOCOLS@</CODE>".</P>
480ef0fe 574
575
576<H2 CLASS="title"><A NAME="BrowseOrder">BrowseOrder</A></H2>
577
578<H3>Examples</H3>
ef416fc2 579
580<PRE CLASS="command">
581BrowseOrder allow,deny
582BrowseOrder deny,allow
583</PRE>
584
480ef0fe 585<H3>Description</H3>
ef416fc2 586
587<P>The <CODE>BrowseOrder</CODE> directive specifies the order of
588allow/deny processing. The default order is
589<CODE>deny,allow</CODE>:</P>
590
591<UL>
592
593 <LI><CODE>allow,deny</CODE> - Deny browse packets by
594 default, then check <CODE>BrowseAllow</CODE> lines
595 followed by <CODE>BrowseDeny</CODE> lines.</LI>
596
597 <LI><CODE>deny,allow</CODE> - Allow browse packets by
598 default, then check <CODE>BrowseDeny</CODE> lines
599 followed by <CODE>BrowseAllow</CODE> lines.</LI>
600
601</UL>
602
603
480ef0fe 604<H2 CLASS="title"><A NAME="BrowsePoll">BrowsePoll</A></H2>
ef416fc2 605
480ef0fe 606<H3>Examples</H3>
ef416fc2 607
608<PRE CLASS="command">
609BrowsePoll 192.0.2.2:631
610BrowsePoll host.domain.com:631
611</PRE>
612
480ef0fe 613<H3>Description</H3>
ef416fc2 614
615<P>The <CODE>BrowsePoll</CODE> directive polls a server for
616available printers once every <A
617HREF="#BrowseInterval"><CODE>BrowseInterval</CODE></A> seconds.
618Multiple <CODE>BrowsePoll</CODE> directives can be specified to
619poll multiple servers.</P>
620
621<P>If <CODE>BrowseInterval</CODE> is set to 0 then the server is
622polled once every 30 seconds.</P>
623
624
480ef0fe 625<H2 CLASS="title"><A NAME="BrowsePort">BrowsePort</A></H2>
ef416fc2 626
480ef0fe 627<H3>Examples</H3>
ef416fc2 628
629<PRE CLASS="command">
630BrowsePort 631
631BrowsePort 9999
632</PRE>
633
480ef0fe 634<H3>Description</H3>
ef416fc2 635
636<P>The <CODE>BrowsePort</CODE> directive specifies the UDP port number
637used for browse packets. The default port number is 631.</P>
638
639<BLOCKQUOTE><B>Note:</B>
640
641<P>You must set the <CODE>BrowsePort</CODE> to the same value
642on all of the systems that you want to see.
643
644</BLOCKQUOTE>
645
646
480ef0fe 647<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="BrowseProtocols">BrowseProtocols</A></H2>
ef416fc2 648
480ef0fe 649<H3>Examples</H3>
ef416fc2 650
651<PRE CLASS="command">
ef416fc2 652BrowseProtocols all
480ef0fe 653BrowseProtocols none
654BrowseProtocols cups
a41f09e2 655BrowseProtocols dnssd
480ef0fe 656BrowseProtocols ldap
d2354e63 657BrowseProtocols lpd
480ef0fe 658BrowseProtocols slp
d2354e63 659BrowseProtocols smb
a41f09e2 660BrowseProtocols cups dnssd
ef416fc2 661</PRE>
662
480ef0fe 663<H3>Description</H3>
ef416fc2 664
665<P>The <CODE>BrowseProtocols</CODE> directive specifies the
480ef0fe 666protocols to use when showing and advertising shared printers on
667the local network. Multiple protocols can be specified by
668separating them with spaces. The default protocol is
d2354e63 669"<CODE>@CUPS_BROWSE_LOCAL_PROTOCOLS@</CODE>" for
b94498cf 670<A HREF="#BrowseLocalProtocols"><CODE>BrowseLocalProtocols</CODE></A> and
d2354e63 671"<CODE>@CUPS_BROWSE_REMOTE_PROTOCOLS@</CODE>" for
b94498cf 672<A HREF="#BrowseRemoteProtocols"><CODE>BrowseRemoteProtocols</CODE></A>.</P>
ef416fc2 673
674<BLOCKQUOTE><B>Note:</B>
675
676<P>When using the <CODE>SLP</CODE> protocol, you must have at least
677one Directory Agent (DA) server on your network. Otherwise the
678CUPS scheduler (<CODE>cupsd</CODE>) will not respond to client
679requests for several seconds while polling the network.</P>
680
681</BLOCKQUOTE>
682
683
480ef0fe 684<H2 CLASS="title"><A NAME="BrowseRelay">BrowseRelay</A></H2>
ef416fc2 685
480ef0fe 686<H3>Examples</H3>
ef416fc2 687
688<PRE CLASS="command">
689BrowseRelay 193.0.2.1 192.0.2.255
690BrowseRelay 193.0.2.0/255.255.255.0 192.0.2.255
691BrowseRelay 193.0.2.0/24 192.0.2.255
692BrowseRelay *.domain.com 192.0.2.255
693BrowseRelay host.domain.com 192.0.2.255
694</PRE>
695
480ef0fe 696<H3>Description</H3>
ef416fc2 697
698<P>The <CODE>BrowseRelay</CODE> directive specifies source and
699destination addresses for relaying browsing information from one
700host or network to another. Multiple <CODE>BrowseRelay</CODE>
701directives can be specified as needed.</P>
702
703<P><CODE>BrowseRelay</CODE> is typically used on systems that
704bridge multiple subnets using one or more network interfaces. It
705can also be used to relay printer information from polled servers
706with the line:</P>
707
708<PRE CLASS="command">
709BrowseRelay 127.0.0.1 @LOCAL
710</PRE>
711
712<P>This effectively provides access to printers on a WAN for all
713clients on the LAN(s).</P>
714
715
480ef0fe 716<H2 CLASS="title"><A NAME="BrowseRemoteOptions">BrowseRemoteOptions</A></H2>
717
718<H3>Examples</H3>
719
720<PRE CLASS="command">
721BrowseRemoteOptions compression=yes
722BrowseRemoteOptions encryption=required
723BrowseRemoteOptions ?compression=yes&amp;encryption=required
724</PRE>
725
726<H3>Description</H3>
727
728<P>The <CODE>BrowseRemoteOptions</CODE> directive specifies
729additional IPP backend options to include with remote shared
730printers. If the options string begins with a question mark (?),
731the options replace any options specified by the remote server.
732The default is to not include any options.</P>
733
ef416fc2 734
480ef0fe 735<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="BrowseRemoteProtocols">BrowseRemoteProtocols</A></H2>
736
737<H3>Examples</H3>
738
739<PRE CLASS="command">
740BrowseRemoteProtocols all
741BrowseRemoteProtocols none
742BrowseRemoteProtocols cups
480ef0fe 743BrowseRemoteProtocols ldap
744BrowseRemoteProtocols slp
480ef0fe 745</PRE>
746
747<H3>Description</H3>
748
749<P>The <CODE>BrowseRemoteProtocols</CODE> directive specifies the
750protocols to use when finding remote shared printers on the
751network. Multiple protocols can be specified by separating them
d2354e63 752with spaces. The default is "<CODE>@CUPS_BROWSE_REMOTE_PROTOCOLS@</CODE>".</P>
480ef0fe 753
754
755<H2 CLASS="title"><A NAME="BrowseShortNames">BrowseShortNames</A></H2>
756
757<H3>Examples</H3>
ef416fc2 758
759<PRE CLASS="command">
760BrowseShortNames Yes
761BrowseShortNames No
762</PRE>
763
480ef0fe 764<H3>Description</H3>
ef416fc2 765
766<P>The <CODE>BrowseShortNames</CODE> directive specifies whether
767or not short names are used for remote printers when possible.
768Short names are just the remote printer name, without the server
769("printer"). If more than one remote printer is detected with the
770same name, the printers will have long names ("printer@server1",
771"printer@server2".)</P>
772
b94498cf 773<P>The default value for this option is <CODE>@CUPS_BROWSE_SHORT_NAMES@</CODE>.</P>
ef416fc2 774
775
480ef0fe 776<H2 CLASS="title"><A NAME="BrowseTimeout">BrowseTimeout</A></H2>
ef416fc2 777
480ef0fe 778<H3>Examples</H3>
ef416fc2 779
780<PRE CLASS="command">
781BrowseTimeout 300
782BrowseTimeout 60
783</PRE>
784
480ef0fe 785<H3>Description</H3>
ef416fc2 786
787<P>The <CODE>BrowseTimeout</CODE> directive sets the timeout for
788printer or class information that is received in browse packets.
789Once a printer or class times out it is removed from the list of
790available destinations.</P>
791
792<P>The <CODE>BrowseTimeout</CODE> value should always be greater
793than the <A
794HREF="#BrowseInterval"><CODE>BrowseInterval</CODE></A> value.
795Otherwise printers and classes will disappear from client systems
796between updates.</P>
797
798
b19ccc9e
MS
799<H2 CLASS="title"><A NAME="BrowseWebIF">BrowseWebIF</A></H2>
800
801<H3>Examples</H3>
802
803<PRE CLASS="command">
804BrowseWebIF On
805BrowseWebIF Off
806</PRE>
807
808<H3>Description</H3>
809
810<P>The <CODE>BrowseWebIF</CODE> directive controls whether the CUPS web
811interface is advertised via DNS-SD. The default setting is
812<CODE>Off</CODE>.</P>
813
814
480ef0fe 815<H2 CLASS="title"><A NAME="Browsing">Browsing</A></H2>
ef416fc2 816
480ef0fe 817<H3>Examples</H3>
ef416fc2 818
819<PRE CLASS="command">
820Browsing On
821Browsing Off
822</PRE>
823
480ef0fe 824<H3>Description</H3>
ef416fc2 825
826<P>The <CODE>Browsing</CODE> directive controls whether or not
827network printer browsing is enabled. The default setting is
b94498cf 828<CODE>@CUPS_BROWSING@</CODE>.</P>
ef416fc2 829
830<P>This directive does not enable sharing of local printers by
831itself; you must also use the <A
832HREF="#BrowseAddress"><CODE>BrowseAddress</CODE></A> or <A
833HREF="#BrowseProtocols"><CODE>BrowseProtocols</CODE></A>
834directives to advertise local printers to other systems.</P>
835
836<BLOCKQUOTE><B>Note:</B>
837
838<P>If you are using HP-UX 10.20 and a subnet that is not 24,
83916, or 8 bits, printer browsing (and in fact all broadcast
840reception) will not work. This problem appears to be fixed in
841HP-UX 11.0.</P>
842
843</BLOCKQUOTE>
844
845
480ef0fe 846<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Classification">Classification</A></H2>
ef416fc2 847
480ef0fe 848<H3>Examples</H3>
ef416fc2 849
850<PRE CLASS="command">
851Classification
852Classification classified
853Classification confidential
854Classification secret
855Classification topsecret
856Classification unclassified
857</PRE>
858
480ef0fe 859<H3>Description</H3>
ef416fc2 860
861<P>The <CODE>Classification</CODE> directive sets the
862classification level on the server. When this option is set, at
863least one of the banner pages is forced to the classification
864level, and the classification is placed on each page of output.
865The default is no classification level.</P>
866
867
480ef0fe 868<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="ClassifyOverride">ClassifyOverride</A></H2>
ef416fc2 869
480ef0fe 870<H3>Examples</H3>
ef416fc2 871
872<PRE CLASS="command">
873ClassifyOverride Yes
874ClassifyOverride No
875</PRE>
876
480ef0fe 877<H3>Description</H3>
ef416fc2 878
879<P>The <CODE>ClassifyOverride</CODE> directive specifies whether
880users can override the default classification level on the
881server. When the server classification is set, users can change
882the classification using the <CODE>job-sheets</CODE> option and
883can choose to only print one security banner before or after the
884job. If the <CODE>job-sheets</CODE> option is set to
885<CODE>none</CODE> then the server default classification is
886used.</P>
887
888<P>The default is to not allow classification overrides.</P>
889
890
480ef0fe 891<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.15</SPAN><A NAME="ConfigFilePerm">ConfigFilePerm</A></H2>
ef416fc2 892
480ef0fe 893<H3>Examples</H3>
ef416fc2 894
895<PRE CLASS="command">
896ConfigFilePerm 0644
480ef0fe 897ConfigFilePerm 0640
ef416fc2 898</PRE>
899
480ef0fe 900<H3>Description</H3>
ef416fc2 901
902<P>The <CODE>ConfigFilePerm</CODE> directive specifies the
903permissions to use when writing configuration files. The default
b94498cf 904is @CUPS_CONFIG_FILE_PERM@.</P>
ef416fc2 905
906
480ef0fe 907<H2 CLASS="title"><A NAME="DataDir">DataDir</A></H2>
ef416fc2 908
480ef0fe 909<H3>Examples</H3>
ef416fc2 910
911<PRE CLASS="command">
912DataDir /usr/share/cups
913</PRE>
914
480ef0fe 915<H3>Description</H3>
ef416fc2 916
917<P>The <CODE>DataDir</CODE> directive sets the directory to use
918for data files.</P>
919
920
480ef0fe 921<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="DefaultAuthType">DefaultAuthType</A></H2>
922
923<H3>Examples</H3>
924
925<PRE CLASS="command">
926DefaultAuthType Basic
927DefaultAuthType BasicDigest
928DefaultAuthType Digest
f7deaa1a 929DefaultAuthType Negotiate
480ef0fe 930</PRE>
931
932<H3>Description</H3>
933
934<P>The <CODE>DefaultAuthType</CODE> directive specifies the type
935of authentication to use for IPP operations that require a
936username. The default is <CODE>Basic</CODE>.</P>
ef416fc2 937
480ef0fe 938
939<H2 CLASS="title"><A NAME="DefaultCharset">DefaultCharset</A></H2>
940
941<H3>Examples</H3>
ef416fc2 942
943<PRE CLASS="command">
944DefaultCharset utf-8
945DefaultCharset iso-8859-1
946DefaultCharset windows-1251
947</PRE>
948
480ef0fe 949<H3>Description</H3>
ef416fc2 950
951<P>The <CODE>DefaultCharset</CODE> directive sets the default
952character set to use for client connections. The default
953character set is <CODE>utf-8</CODE> but is overridden by the
954character set for the language specified by the client or the
955<CODE>DefaultLanguage</CODE> directive.</P>
956
957
480ef0fe 958<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="DefaultEncryption">DefaultEncryption</A></H2>
959
960<H3>Examples</H3>
961
962<PRE CLASS="command">
963DefaultEncryption Never
964DefaultEncryption IfRequested
965DefaultEncryption Required
966</PRE>
967
968<H3>Description</H3>
969
970<P>The <CODE>DefaultEncryption</CODE> directive specifies the
971type of encryption to use when performing authentication. The
972default is <CODE>Required</CODE>.</P>
973
ef416fc2 974
480ef0fe 975<H2 CLASS="title"><A NAME="DefaultLanguage">DefaultLanguage</A></H2>
976
977<H3>Examples</H3>
ef416fc2 978
979<PRE CLASS="command">
980DefaultLanguage de
981DefaultLanguage en
982DefaultLanguage es
983DefaultLanguage fr
984DefaultLanguage it
985</PRE>
986
480ef0fe 987<H3>Description</H3>
ef416fc2 988
989<P>The <CODE>DefaultLanguage</CODE> directive specifies the
990default language to use for client connections. Setting the
991default language also sets the default character set if a
992language localization file exists for it. The default language
993is "en" for English.</P>
994
995
49d87452
MS
996<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4</SPAN><A NAME="DefaultPaperSize">DefaultPaperSize</A></H2>
997
998<H3>Examples</H3>
999
1000<PRE CLASS="command">
1001DefaultPaperSize Letter
1002DefaultPaperSize A4
1003DefaultPaperSize Auto
1004DefaultPaperSize None
1005</PRE>
1006
1007<H3>Description</H3>
1008
1009<P>The <CODE>DefaultPaperSize</CODE> directive specifies the default paper
1010size to use when creating new printers. The default is <CODE>Auto</CODE>
1011which uses a paper size appropriate for the system default locale. A value
1012of <CODE>None</CODE> tells the scheduler to not set the default paper
1013size.</P>
1014
1015
480ef0fe 1016<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="DefaultPolicy">DefaultPolicy</A></H2>
1017
1018<H3>Examples</H3>
1019
1020<PRE CLASS="command">
1021DefaultPolicy default
1022DefaultPolicy foo
1023</PRE>
1024
1025<H3>Description</H3>
1026
1027<P>The <CODE>DefaultPolicy</CODE> directive specifies the default
1028policy to use for IPP operation. The default is
1029<CODE>default</CODE>.</P>
1030
1031
a74454a7 1032<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="DefaultShared">DefaultShared</A></H2>
1033
1034<H3>Examples</H3>
1035
1036<PRE CLASS="command">
1037DefaultShared yes
1038DefaultShared no
1039</PRE>
1040
1041<H3>Description</H3>
1042
1043<P>The <CODE>DefaultShared</CODE> directive specifies whether
1044printers are shared (published) by default. The default is
b94498cf 1045<CODE>@CUPS_DEFAULT_SHARED@</CODE>.</P>
a74454a7 1046
1047
480ef0fe 1048<H2 CLASS="title"><A NAME="Deny">Deny</A></H2>
ef416fc2 1049
480ef0fe 1050<H3>Examples</H3>
ef416fc2 1051
1052<PRE CLASS="command">
480ef0fe 1053&lt;Location /path&gt;
1054 ..
1055 Deny from All
1056 Deny from None
1057 Deny from *.domain.com
1058 Deny from .domain.com
1059 Deny from host.domain.com
1060 Deny from nnn.*
1061 Deny from nnn.nnn.*
1062 Deny from nnn.nnn.nnn.*
1063 Deny from nnn.nnn.nnn.nnn
1064 Deny from nnn.nnn.nnn.nnn/mm
1065 Deny from nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
1066 Deny from xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
1067 Deny from @LOCAL
1068 Deny from @IF(name)
1069&lt;/Location&gt;
ef416fc2 1070</PRE>
1071
480ef0fe 1072<H3>Description</H3>
ef416fc2 1073
1074<P>The <CODE>Deny</CODE> directive specifies a hostname, IP
dd1abb6b 1075address, or network that is denied access to the server.
ef416fc2 1076<CODE>Deny</CODE> directives are cummulative, so multiple
1077<CODE>Deny</CODE> directives can be used to allow access for
1078multiple hosts or networks. The <CODE>/mm</CODE> notation
480ef0fe 1079specifies a CIDR netmask, a shown in <A HREF="TABLE1">Table
10801</A>.</P>
ef416fc2 1081
1082<P>The <CODE>@LOCAL</CODE> name will deny access from all local
1083interfaces. The <CODE>@IF(name)</CODE> name will deny access from
2abf387c 1084the named interface. In both cases, CUPS only denies access from
1085the network that the interface(s) are configured for - requests
1086arriving on the interface from a foreign network will
1087<em>not</em> be denied.</P>
ef416fc2 1088
1089<P>The <CODE>Deny</CODE> directive must appear inside a <A
480ef0fe 1090HREF="#Location"><CODE>Location</CODE></A> or <A
1091HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 1092
1093
3dfe78b3
MS
1094<H2 CLASS="title"><A NAME="DirtyCleanInterval">DirtyCleanInterval</A></H2>
1095
1096<H3>Examples</H3>
1097
1098<PRE CLASS="command">
49d87452 1099DirtyCleanInterval 30
3dfe78b3
MS
1100DirtyCleanInterval 0
1101</PRE>
1102
1103<H3>Description</H3>
1104
1105<P>The <CODE>DirtyCleanInterval</CODE> directive specifies the number of
1106seconds to wait before updating configuration and state files for printers,
49d87452 1107classes, subscriptions, and jobs. The default is 30 seconds.</P>
3dfe78b3
MS
1108
1109
480ef0fe 1110<H2 CLASS="title"><A NAME="DocumentRoot">DocumentRoot</A></H2>
ef416fc2 1111
480ef0fe 1112<H3>Examples</H3>
ef416fc2 1113
1114<PRE CLASS="command">
1115DocumentRoot /usr/share/doc/cups
1116DocumentRoot /foo/bar/doc/cups
1117</PRE>
1118
480ef0fe 1119<H3>Description</H3>
ef416fc2 1120
1121<P>The <CODE>DocumentRoot</CODE> directive specifies the location
1122of web content for the HTTP server in CUPS. If an absolute path
1123is not specified then it is assumed to be relative to the <A
1124HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 1125default directory is <VAR>@CUPS_DOCROOT@</VAR>.</P>
ef416fc2 1126
1127<P>Documents are first looked up in a sub-directory for the
1128primary language requested by the client (e.g.
b94498cf 1129<VAR>@CUPS_DOCROOT@/fr/...</VAR>) and then directly under
ef416fc2 1130the <CODE>DocumentRoot</CODE> directory (e.g.
b94498cf 1131<VAR>@CUPS_DOCROOT@/...</VAR>), so it is possible to
ef416fc2 1132localize the web content by providing subdirectories for each
1133language needed.</P>
1134
1135
480ef0fe 1136<H2 CLASS="title"><A NAME="Encryption">Encryption</A></H2>
ef416fc2 1137
480ef0fe 1138<H3>Examples</H3>
ef416fc2 1139
1140<PRE CLASS="command">
480ef0fe 1141&lt;Location /path&gt;
1142 ...
1143 Encryption Never
1144 Encryption IfRequested
1145 Encryption Required
1146&lt;/Location&gt;
ef416fc2 1147</PRE>
1148
480ef0fe 1149<H3>Description</H3>
ef416fc2 1150
1151<P>The <CODE>Encryption</CODE> directive must appear instead a <A
480ef0fe 1152HREF="#Location"><CODE>Location</CODE></A> or <A
1153HREF="#Limit"><CODE>Limit</CODE></A> section and specifies the
1154encryption settings for that location. The default setting is
ef416fc2 1155<CODE>IfRequested</CODE> for all locations.</P>
1156
1157
480ef0fe 1158<H2 CLASS="title"><A NAME="ErrorLog">ErrorLog</A></H2>
ef416fc2 1159
480ef0fe 1160<H3>Examples</H3>
ef416fc2 1161
1162<PRE CLASS="command">
1163ErrorLog /var/log/cups/error_log
1164ErrorLog /var/log/cups/error_log-%s
1165ErrorLog syslog
1166</PRE>
1167
480ef0fe 1168<H3>Description</H3>
ef416fc2 1169
1170<P>The <CODE>ErrorLog</CODE> directive sets the name of the error
1171log file. If the filename is not absolute then it is assumed to
1172be relative to the <A
1173HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 1174default error log file is <VAR>@CUPS_LOGDIR@/error_log</VAR>.</P>
ef416fc2 1175
1176<P>The server name can be included in the filename by using
1177<CODE>%s</CODE> in the name.</P>
1178
1179<P>The special name "syslog" can be used to send the error
1180information to the system log instead of a plain file.</P>
1181
1182
323c5de1 1183<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.3</SPAN><A NAME="ErrorPolicy">ErrorPolicy</A></H2>
1184
1185<H3>Examples</H3>
1186
1187<PRE CLASS="command">
1188ErrorPolicy abort-job
1189ErrorPolicy retry-job
1190ErrorPolicy stop-printer
1191</PRE>
1192
1193<H3>Description</H3>
1194
1195<P>The <CODE>ErrorPolicy</CODE> directive defines the default policy that
1196is used when a backend is unable to send a print job to the
1197printer.</P>
1198
1199<P>The following values are supported:</P>
1200
1201<UL>
1202
1203 <LI><CODE>abort-job</CODE> - Abort the job and proceed
1204 with the next job in the queue</LI>
1205
1206 <LI><CODE>retry-job</CODE> - Retry the job after waiting
1207 for N seconds; the <VAR>cupsd.conf</VAR> <A
1208 HREF="#JobRetryInterval"><CODE>JobRetryInterval</CODE></A>
1209 directive controls the value of N</LI>
1210
238c3832
MS
1211 <LI><CODE>retry-this-job</CODE> - Retry the current job immediately
1212 and indefinitely.</LI>
1213
323c5de1 1214 <LI><CODE>stop-printer</CODE> - Stop the printer and keep
1215 the job for future printing; this is the default
1216 value</LI>
1217
1218</UL>
1219
1220
49d87452
MS
1221
1222<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4</SPAN><A NAME="FatalErrors">FatalErrors</A></H2>
1223
1224<H3>Examples</H3>
1225
1226<PRE CLASS="command">
1227FatalErrors none
1228FatalErrors all
1229FatalErrors browse
1230FatalErrors config
1231FatalErrors listen
1232FatalErrors log
1233FatalErrors permissions
1234FatalErrors all -permissions
1235FatalErrors config permissions log
1236</PRE>
1237
1238<H3>Description</H3>
1239
1240<P>The <CODE>FatalErrors</CODE> directive determines whether certain kinds of
1241errors are fatal. The following kinds of errors are currently recognized:</P>
1242
1243<UL>
1244
1245 <LI><CODE>none</CODE> - No errors are fatal</LI>
1246
1247 <LI><CODE>all</CODE> - All of the errors below are fatal</LI>
1248
1249 <LI><CODE>browse</CODE> - Browsing initialization errors are fatal,
1250 for example failed binding to the CUPS browse port or failed connections
1251 to LDAP servers</LI>
1252
1253 <LI><CODE>config</CODE> - Configuration file syntax errors are
1254 fatal</LI>
1255
1256 <LI><CODE>listen</CODE> - Listen or Port errors are fatal, except for
1257 IPv6 failures on the loopback or "any" addresses</LI>
1258
1259 <LI><CODE>log</CODE> - Log file creation or write errors are fatal</LI>
1260
1261 <LI><CODE>permissions</CODE> - Bad startup file permissions are
1262 fatal, for example shared SSL certificate and key files with world-
1263 read permissions</LI>
1264
1265</UL>
1266
1267<P>Multiple errors can be listed, and the form "-kind" can be used with
1268<CODE>all</CODE> to remove specific kinds of errors. The default setting is
1269<CODE>@CUPS_FATAL_ERRORS@</CODE>.</P>
1270
1271
480ef0fe 1272<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.18</SPAN><A NAME="FileDevice">FileDevice</A></H2>
ef416fc2 1273
480ef0fe 1274<H3>Examples</H3>
ef416fc2 1275
1276<PRE CLASS="command">
1277FileDevice Yes
1278FileDevice No
1279</PRE>
1280
480ef0fe 1281<H3>Description</H3>
ef416fc2 1282
1283<P>The <CODE>FileDevice</CODE> directive determines whether the
1284scheduler allows new printers to be added using device URIs of
1285the form <CODE>file:/filename</CODE>. File devices are most often
1286used to test new printer drivers and do not support raw file
1287printing.</P>
1288
1289<P>The default setting is <CODE>No</CODE>.</P>
1290
1291<BLOCKQUOTE><B>Note:</B>
1292
1293<P>File devices are managed by the scheduler. Since the
1294scheduler normally runs as the root user, file devices
1295can be used to overwrite system files and potentially
1296gain unauthorized access to the system. If you must
1297create printers using file devices, we recommend that
1298you set the <CODE>FileDevice</CODE> directive to
1299<CODE>Yes</CODE> for only as long as you need to add the
1300printers to the system, and then reset the directive to
1301<CODE>No</CODE>.</P>
1302
1303</BLOCKQUOTE>
1304
1305
480ef0fe 1306<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="FilterLimit">FilterLimit</A></H2>
ef416fc2 1307
480ef0fe 1308<H3>Examples</H3>
ef416fc2 1309
1310<PRE CLASS="command">
1311FilterLimit 0
1312FilterLimit 200
1313FilterLimit 1000
1314</PRE>
1315
480ef0fe 1316<H3>Description</H3>
ef416fc2 1317
1318<P>The <CODE>FilterLimit</CODE> directive sets the maximum cost
1319of all running job filters. It can be used to limit the number of
1320filter programs that are run on a server to minimize disk,
1321memory, and CPU resource problems. A limit of 0 disables filter
1322limiting.</P>
1323
1324<P>An average print to a non-PostScript printer needs a filter
1325limit of about 200. A PostScript printer needs about half that
1326(100). Setting the limit below these thresholds will effectively
1327limit the scheduler to printing a single job at any time.</P>
1328
1329<P>The default limit is 0.</P>
1330
1331
480ef0fe 1332<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="FilterNice">FilterNice</A></H2>
1333
1334<H3>Examples</H3>
1335
1336<PRE CLASS="command">
1337FilterNice 0
1338FilterNice 10
1339FilterNice 19
1340</PRE>
1341
1342<H3>Description</H3>
1343
1344<P>The <CODE>FilterNice</CODE> directive sets the <B>nice(1)</B>
1345value to assign to filter processes. The nice value ranges from
13460, the highest priority, to 19, the lowest priority. The default
1347is 0.</P>
1348
1349
1350<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="FontPath">FontPath</A></H2>
ef416fc2 1351
480ef0fe 1352<H3>Examples</H3>
ef416fc2 1353
1354<PRE CLASS="command">
1355FontPath /foo/bar/fonts
1356FontPath /usr/share/cups/fonts:/foo/bar/fonts
1357</PRE>
1358
480ef0fe 1359<H3>Description</H3>
ef416fc2 1360
1361<P>The <CODE>FontPath</CODE> directive specifies the font path to
1362use when searching for fonts. The default font path is
1363<CODE>/usr/share/cups/fonts</CODE>.</P>
1364
1365
480ef0fe 1366<H2 CLASS="title"><A NAME="Group">Group</A></H2>
ef416fc2 1367
480ef0fe 1368<H3>Examples</H3>
ef416fc2 1369
1370<PRE CLASS="command">
480ef0fe 1371Group lp
ef416fc2 1372Group nobody
1373</PRE>
1374
480ef0fe 1375<H3>Description</H3>
ef416fc2 1376
1377<P>The <CODE>Group</CODE> directive specifies the UNIX group that
1378filter and CGI programs run as. The default group is
480ef0fe 1379system-specific but is usually <CODE>lp</CODE> or
ef416fc2 1380<CODE>nobody</CODE>.</P>
1381
1382
f7deaa1a 1383<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.3</SPAN><A NAME="GSSServiceName">GSSServiceName</A></H2>
1384
1385<H3>Examples</H3>
1386
1387<PRE CLASS="command">
1388GSSServiceName IPP
1389GSSServiceName HTTP
1390</PRE>
1391
1392<H3>Description</H3>
1393
1394<P>The <CODE>GSSServiceName</CODE> directive specifies the Kerberos service name that is used when passing authorization tickets. The default name is <CODE>IPP</CODE>.</P>
1395
1396
480ef0fe 1397<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="HideImplicitMembers">HideImplicitMembers</A></H2>
ef416fc2 1398
480ef0fe 1399<H3>Examples</H3>
ef416fc2 1400
1401<PRE CLASS="command">
1402HideImplicitMembers Yes
1403HideImplicitMembers No
1404</PRE>
1405
480ef0fe 1406<H3>Description</H3>
ef416fc2 1407
1408<P>The <CODE>HideImplicitMembers</CODE> directive controls
1409whether the individual printers in an implicit class are hidden
1410from the user. The default is <CODE>Yes</CODE>.</P>
1411
1412<P><A HREF="#ImplicitClasses"><CODE>ImplicitClasses</CODE></A>
1413must be enabled for this directive to have any effect.</P>
1414
1415
480ef0fe 1416<H2 CLASS="title"><A NAME="HostNameLookups">HostNameLookups</A></H2>
ef416fc2 1417
480ef0fe 1418<H3>Examples</H3>
ef416fc2 1419
1420<PRE CLASS="command">
1421HostNameLookups On
1422HostNameLookups Off
1423HostNameLookups Double
1424</PRE>
1425
480ef0fe 1426<H3>Description</H3>
ef416fc2 1427
1428<P>The <CODE>HostNameLookups</CODE> directive controls whether or
1429not CUPS looks up the hostname for connecting clients. The
1430<CODE>Double</CODE> setting causes CUPS to verify that the
1431hostname resolved from the address matches one of the addresses
1432returned for that hostname. <CODE>Double</CODE> lookups also
1433prevent clients with unregistered addresses from connecting to
1434your server.</P>
1435
1436<P>The default is <CODE>Off</CODE> to avoid the potential server
1437performance problems with hostname lookups. Set this option to
1438<CODE>On</CODE> or <CODE>Double</CODE> only if absolutely
1439required.</P>
1440
1441
480ef0fe 1442<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="ImplicitAnyClasses">ImplicitAnyClasses</A></H2>
ef416fc2 1443
480ef0fe 1444<H3>Examples</H3>
ef416fc2 1445
1446<PRE CLASS="command">
1447ImplicitAnyClasses On
1448ImplicitAnyClasses Off
1449</PRE>
1450
480ef0fe 1451<H3>Description</H3>
ef416fc2 1452
1453<P>The <CODE>ImplicitAnyClasses</CODE> directive controls
1454whether implicit classes for local and remote printers are
1455created with the name <CODE>AnyPrinter</CODE>. The default
1456setting is <CODE>Off</CODE>.</P>
1457
1458<P><A HREF="#ImplicitClasses"><CODE>ImplicitClasses</CODE></A>
1459must be enabled for this directive to have any effect.</P>
1460
1461
b94498cf 1462<H2 CLASS="title"><A NAME="ImplicitClasses">ImplicitClasses</A></H2>
1463
1464<H3>Examples</H3>
1465
1466<PRE CLASS="command">
1467ImplicitClasses On
1468ImplicitClasses Off
1469</PRE>
1470
1471<H3>Description</H3>
1472
1473<P>The <CODE>ImplicitClasses</CODE> directive controls whether
1474implicit classes are created based upon the available network
1475printers and classes. The default setting is
1476<CODE>@CUPS_IMPLICIT_CLASSES@</CODE> but is automatically turned
1477<CODE>Off</CODE> if <A HREF="#Browsing"><CODE>Browsing</CODE></A> is turned
1478<CODE>Off</CODE>.</P>
1479
1480
480ef0fe 1481<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.9</SPAN><A NAME="Include">Include</A></H2>
ef416fc2 1482
480ef0fe 1483<H3>Examples</H3>
ef416fc2 1484
1485<PRE CLASS="command">
1486Include filename
1487Include /foo/bar/filename
1488</PRE>
1489
480ef0fe 1490<H3>Description</H3>
ef416fc2 1491
1492<P>The <CODE>Include</CODE> directive includes the named file in
1493the <CODE>cupsd.conf</CODE> file. If no leading path is provided,
1494the file is assumed to be relative to the <A
1495HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory.</P>
1496
1497
480ef0fe 1498<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="JobRetryInterval">JobRetryInterval</A></H2>
1499
1500<H3>Examples</H3>
1501
1502<PRE CLASS="command">
1503JobRetryInterval 30
1504JobRetryInterval 120
1505</PRE>
1506
1507<H3>Description</H3>
1508
1509<P>The <CODE>JobRetryInterval</CODE> directive specifies the
1510number of seconds to wait before retrying a job. This is
1511typically used for fax queues but can also be used with normal
1512print queues whose error policy is <CODE>retry-job</CODE>. The
1513default is 30 seconds.</P>
ef416fc2 1514
480ef0fe 1515
238c3832
MS
1516<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4</SPAN><A NAME="JobKillDelay">JobKillDelay</A></H2>
1517
1518<H3>Examples</H3>
1519
1520<PRE CLASS="command">
1521JobKillDelay 30
1522JobKillDelay 120
1523</PRE>
1524
1525<H3>Description</H3>
1526
1527<P>The <CODE>JobKillDelay</CODE> directive specifies the number of seconds to
1528wait before killing the filters and backend associated with a canceled or held
1529job. The default is 30 seconds.</P>
1530
1531
480ef0fe 1532<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="JobRetryLimit">JobRetryLimit</A></H2>
1533
1534<H3>Examples</H3>
1535
1536<PRE CLASS="command">
1537JobRetryLimit 5
1538JobRetryLimit 50
1539</PRE>
1540
1541<H3>Description</H3>
1542
1543<P>The <CODE>JobRetryLimit</CODE> directive specifies the maximum
1544number of times the scheduler will try to print a job. This is
1545typically used for fax queues but can also be used with normal
1546print queues whose error policy is <CODE>retry-job</CODE>. The
1547default is 5 times.</P>
1548
1549
1550<H2 CLASS="title"><A NAME="KeepAlive">KeepAlive</A></H2>
1551
1552<H3>Examples</H3>
ef416fc2 1553
1554<PRE CLASS="command">
1555KeepAlive On
1556KeepAlive Off
1557</PRE>
1558
480ef0fe 1559<H3>Description</H3>
ef416fc2 1560
1561<P>The <CODE>KeepAlive</CODE> directive controls whether or not
1562to support persistent HTTP connections. The default is
1563<CODE>On</CODE>.</P>
1564
1565<P>HTTP/1.1 clients automatically support persistent connections,
1566while HTTP/1.0 clients must specifically request them using the
1567<CODE>Keep-Alive</CODE> attribute in the <CODE>Connection:</CODE>
1568field of each request.</P>
1569
1570
480ef0fe 1571<H2 CLASS="title"><A NAME="KeepAliveTimeout">KeepAliveTimeout</A></H2>
ef416fc2 1572
480ef0fe 1573<H3>Examples</H3>
ef416fc2 1574
1575<PRE CLASS="command">
1576KeepAliveTimeout 60
1577KeepAliveTimeout 30
1578</PRE>
1579
480ef0fe 1580<H3>Description</H3>
ef416fc2 1581
1582<P>The <CODE>KeepAliveTimeout</CODE> directive controls how long
1583a persistent HTTP connection will remain open after the last
49d87452 1584request. The default is 30 seconds.</P>
ef416fc2 1585
1586
480ef0fe 1587<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Limit">Limit (Location)</A></H2>
ef416fc2 1588
480ef0fe 1589<H3>Examples</H3>
ef416fc2 1590
1591<PRE CLASS="command">
480ef0fe 1592&lt;Location /path&gt;
1593 &lt;Limit GET POST&gt;
1594 ...
1595 &lt;/Limit&gt;
ef416fc2 1596
480ef0fe 1597 &lt;Limit ALL&gt;
1598 ...
1599 &lt;/Limit&gt;
1600&lt;/Location&gt;
ef416fc2 1601</PRE>
1602
480ef0fe 1603<H3>Description</H3>
ef416fc2 1604
1605<P>The <CODE>Limit</CODE> directive groups access control
1606directives for specific types of HTTP requests and must appear
1607inside a <A HREF="#Location"><CODE>Location</CODE></A> section.
1608Access can be limited for individual request types
1609(<CODE>DELETE</CODE>, <CODE>GET</CODE>, <CODE>HEAD</CODE>,
1610<CODE>OPTIONS</CODE>, <CODE>POST</CODE>, <CODE>PUT</CODE>, and
1611<CODE>TRACE</CODE>) or for all request types (<CODE>ALL</CODE>).
1612The request type names are case-sensitive for compatibility with
1613Apache.</P>
1614
1615
480ef0fe 1616<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="LimitIPP">Limit (Policy)</A></H2>
ef416fc2 1617
480ef0fe 1618<H3>Examples</H3>
ef416fc2 1619
1620<PRE CLASS="command">
480ef0fe 1621&lt;Policy name&gt;
1622 &lt;Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer&gt;
1623 ...
1624 &lt;/Limit&gt;
1625
1626 &lt;Limit All&gt;
1627 ...
1628 &lt;/Limit&gt;
1629&lt;/Policy&gt;
1630</PRE>
1631
1632<H3>Description</H3>
1633
1634<P>When included in <A HREF="#Policy"><CODE>Policy</CODE></A>
1635sections, the <CODE>Limit</CODE> directive groups access control
1636directives for specific IPP operations. Multiple operations can
1637be listed, separated by spaces. Table 2 lists the supported
1638operations.</P>
1639
1640<DIV CLASS="table"><TABLE SUMMARY="Supported IPP Operations">
1641<CAPTION>Table 2: <A NAME="TABLE2">Supported IPP Operations</A></CAPTION>
1642<THEAD>
1643<TR>
1644 <TH>Operation Name</TH>
1645 <TH>Description</TH>
1646</TR>
1647</THEAD>
1648<TBODY>
1649<TR>
1650 <TD>All</TD>
1651 <TD>All operations - used as the default limit for
1652 operations that are not listed</TD>
1653</TR>
1654<TR>
1655 <TD>Cancel-Job</TD>
1656 <TD>Cancel a job</TD>
1657</TR>
1658<TR>
1659 <TD>Cancel-Subscription</TD>
1660 <TD>Cancel a subscription</TD>
1661</TR>
1662<TR>
1663 <TD>Create-Job</TD>
1664 <TD>Create a new, empty job</TD>
1665</TR>
1666<TR>
1667 <TD>Create-Job-Subscription</TD>
1668 <TD>Creates a notification subscription on a job</TD>
1669</TR>
1670<TR>
1671 <TD>Create-Printer-Subscription</TD>
1672 <TD>Creates a notification subscription on a printer</TD>
1673</TR>
1674<TR>
1675 <TD>CUPS-Accept-Jobs</TD>
1676 <TD>Sets the printer-is-accepting-jobs value for a printer to true</TD>
1677</TR>
1678<TR>
1679 <TD>CUPS-Add-Modify-Class</TD>
1680 <TD>Adds or modifies a class</TD>
1681</TR>
1682<TR>
1683 <TD>CUPS-Add-Modify-Printer</TD>
1684 <TD>Adds or modifies a printer</TD>
1685</TR>
1686<TR>
1687 <TD>CUPS-Authenticate-Job</TD>
1688 <TD>Authenticates a job for printing</TD>
1689</TR>
1690<TR>
1691 <TD>CUPS-Delete-Class</TD>
1692 <TD>Deletes a class</TD>
1693</TR>
1694<TR>
1695 <TD>CUPS-Delete-Printer</TD>
1696 <TD>Deletes a printer</TD>
1697</TR>
1698<TR>
1699 <TD>CUPS-Get-Classes</TD>
1700 <TD>Gets a list of classes</TD>
1701</TR>
1702<TR>
1703 <TD>CUPS-Get-Default</TD>
1704 <TD>Gets the (network/server) default printer or class</TD>
1705</TR>
1706<TR>
1707 <TD>CUPS-Get-Devices</TD>
1708 <TD>Gets a list of available devices</TD>
1709</TR>
1710<TR>
1711 <TD>CUPS-Get-PPDs</TD>
1712 <TD>Gets a list of available manufacturers or drivers</TD>
1713</TR>
1714<TR>
1715 <TD>CUPS-Get-Printers</TD>
1716 <TD>Gets a list of printers and/or classes</TD>
1717</TR>
1718<TR>
1719 <TD>CUPS-Move-Job</TD>
1720 <TD>Moves a job to a new destination</TD>
1721</TR>
1722<TR>
1723 <TD>CUPS-Reject-Jobs</TD>
1724 <TD>Sets the printer-is-accepting-jobs value for a printer to false</TD>
1725</TR>
1726<TR>
1727 <TD>CUPS-Set-Default</TD>
1728 <TD>Sets the network/server default printer or class</TD>
1729</TR>
1730<TR>
1731 <TD>Disable-Printer</TD>
1732 <TD>Sets the printer-state value for a printer to stopped</TD>
1733</TR>
1734<TR>
1735 <TD>Enable-Printer</TD>
1736 <TD>Sets the printer-state value for a printer to idle/processing</TD>
1737</TR>
1738<TR>
1739 <TD>Get-Job-Attributes</TD>
1740 <TD>Gets information about a job</TD>
1741</TR>
1742<TR>
1743 <TD>Get-Jobs</TD>
1744 <TD>Gets a list of jobs</TD>
1745</TR>
1746<TR>
1747 <TD>Get-Notifications</TD>
1748 <TD>Gets a list of events</TD>
1749</TR>
1750<TR>
1751 <TD>Get-Printer-Attributes</TD>
1752 <TD>Gets informaion about a printer or class</TD>
1753</TR>
1754<TR>
1755 <TD>Get-Subscription-Attributes</TD>
1756 <TD>Gets informaion about a notification subscription</TD>
1757</TR>
1758<TR>
1759 <TD>Get-Subscriptions</TD>
1760 <TD>Gets a list of notification subscriptions</TD>
1761</TR>
1762<TR>
1763 <TD>Hold-Job</TD>
1764 <TD>Holds a job for printing</TD>
1765</TR>
1766<TR>
1767 <TD>Pause-Printer</TD>
1768 <TD>Sets the printer-state value for a printer to stopped</TD>
1769</TR>
1770<TR>
1771 <TD>Print-Job</TD>
1772 <TD>Creates a job with a single file for printing</TD>
1773</TR>
1774<TR>
1775 <TD>Purge-Jobs</TD>
1776 <TD>Removes all jobs from a printer</TD>
1777</TR>
1778<TR>
1779 <TD>Release-Job</TD>
1780 <TD>Releases a previously held job for printing</TD>
1781</TR>
1782<TR>
1783 <TD>Renew-Subscription</TD>
1784 <TD>Renews a notification subscription</TD>
1785</TR>
1786<TR>
1787 <TD>Restart-Job</TD>
1788 <TD>Reprints a job</TD>
1789</TR>
1790<TR>
1791 <TD>Resume-Printer</TD>
1792 <TD>Sets the printer-stae value for a printer to idle/processing</TD>
1793</TR>
1794<TR>
1795 <TD>Send-Document</TD>
1796 <TD>Adds a file to an job created with Create-Job</TD>
1797</TR>
1798<TR>
1799 <TD>Set-Job-Attributes</TD>
1800 <TD>Changes job options</TD>
1801</TR>
1802<TR>
1803 <TD>Validate-Job</TD>
1804 <TD>Validates job options prior to printing</TD>
1805</TR>
1806</TBODY>
1807</TABLE></DIV>
1808
1809
1810<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="LimitExcept">LimitExcept</A></H2>
1811
1812<H3>Examples</H3>
1813
1814<PRE CLASS="command">
1815&lt;Location /path&gt;
1816 &lt;LimitExcept GET POST&gt;
1817 ...
1818 &lt;/LimitExcept&gt;
1819&lt;/Location&gt;
ef416fc2 1820</PRE>
1821
480ef0fe 1822<H3>Description</H3>
ef416fc2 1823
1824<P>The <CODE>LimitExcept</CODE> directive groups access control
1825directives for specific types of HTTP requests and must appear
1826inside a <A HREF="#Location"><CODE>Location</CODE></A> section.
1827Unlike the <A HREF="#Limit"><CODE>Limit</CODE></A> directive,
1828<CODE>LimitExcept</CODE> restricts access for all requests
1829<I>except</I> those listed on the <CODE>LimitExcept</CODE>
1830line.</P>
1831
1832
480ef0fe 1833<H2 CLASS="title"><A NAME="LimitRequestBody">LimitRequestBody</A></H2>
ef416fc2 1834
480ef0fe 1835<H3>Examples</H3>
ef416fc2 1836
1837<PRE CLASS="command">
1838LimitRequestBody 10485760
1839LimitRequestBody 10m
1840LimitRequestBody 0
1841</PRE>
1842
480ef0fe 1843<H3>Description</H3>
ef416fc2 1844
1845<P>The <CODE>LimitRequestBody</CODE> directive controls the
1846maximum size of print files, IPP requests, and HTML form data in
1847HTTP POST requests. The default limit is 0 which disables the
1848limit check.</P>
1849
1850
480ef0fe 1851<H2 CLASS="title"><A NAME="Listen">Listen</A></H2>
ef416fc2 1852
480ef0fe 1853<H3>Examples</H3>
ef416fc2 1854
1855<PRE CLASS="command">
1856Listen 127.0.0.1:631
1857Listen 192.0.2.1:631
1858Listen [::1]:631
1859Listen *:631
1860</PRE>
1861
480ef0fe 1862<H3>Description</H3>
ef416fc2 1863
1864<P>The <CODE>Listen</CODE> directive specifies a network address
1865and port to listen for connections. Multiple <CODE>Listen</CODE>
1866directives can be provided to listen on multiple addresses.</P>
1867
1868<P>The <CODE>Listen</CODE> directive is similar to the <A
1869HREF="#Port"><CODE>Port</CODE></A> directive but allows you to
1870restrict access to specific interfaces or networks.</P>
1871
1872
480ef0fe 1873<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="ListenBackLog">ListenBackLog</A></H2>
1874
1875<H3>Examples</H3>
1876
1877<PRE CLASS="command">
1878ListenBackLog 5
1879ListenBackLog 10
1880</PRE>
1881
1882<H3>Description</H3>
1883
1884<P>The <CODE>ListenBackLog</CODE> directive sets the maximum
1885number of pending connections the scheduler will allow. This
1886normally only affects very busy servers that have reached the <A
1887HREF="#MaxClients"><CODE>MaxClients</CODE></A> limit, but can
1888also be triggered by large numbers of simultaneous connections.
1889When the limit is reached, the operating system will refuse
1890additional connections until the scheduler can accept the pending
1891ones. The default is the OS-defined default limit, typically
1892either 5 for older operating systems or 128 for newer operating
1893systems.</P>
1894
1895
1896<H2 CLASS="title"><A NAME="Location">Location</A></H2>
ef416fc2 1897
480ef0fe 1898<H3>Examples</H3>
ef416fc2 1899
1900<PRE CLASS="command">
1901&lt;Location /&gt;
1902...
1903&lt;/Location&gt;
1904
1905&lt;Location /admin&gt;
1906...
1907&lt;/Location&gt;
1908
1909&lt;Location /admin/conf&gt;
1910...
1911&lt;/Location&gt;
1912
1913&lt;Location /admin/log&gt;
1914...
1915&lt;/Location&gt;
1916
1917&lt;Location /classes&gt;
1918...
1919&lt;/Location&gt;
1920
1921&lt;Location /classes/name&gt;
1922...
1923&lt;/Location&gt;
1924
1925&lt;Location /jobs&gt;
1926...
1927&lt;/Location&gt;
1928
1929&lt;Location /printers&gt;
1930...
1931&lt;/Location&gt;
1932
1933&lt;Location /printers/name&gt;
1934...
1935&lt;/Location&gt;
1936
1937</PRE>
1938
480ef0fe 1939<H3>Description</H3>
ef416fc2 1940
1941<P>The <CODE>Location</CODE> directive specifies access control
1942and authentication options for the specified HTTP resource or
1943path. The <A HREF="#Allow"><CODE>Allow</CODE></A>, <A
1944HREF="#AuthType"><CODE>AuthType</CODE></A>, <A
1945HREF="#Deny"><CODE>Deny</CODE></A>, <A
1946HREF="#Encryption"><CODE>Encryption</CODE></A>, <A
1947HREF="#Limit"><CODE>Limit</CODE></A>, <A
1948HREF="#LimitExcept"><CODE>LimitExcept</CODE></A>, <A
1949HREF="#Order"><CODE>Order</CODE></A>, <A
1950HREF="#Require"><CODE>Require</CODE></A>, and <A
1951HREF="#Satisfy"><CODE>Satisfy</CODE></A> directives may all
1952appear inside a location.</P>
1953
1954<P>Note that more specific resources override the less specific
1955ones. So the directives inside the <CODE>/printers/name</CODE>
1956location will override ones from <CODE>/printers</CODE>.
1957Directives inside <CODE>/printers</CODE> will override ones from
1958<CODE>/</CODE>. None of the directives are inherited.</P>
1959
9aff70cc 1960<DIV CLASS="table"><TABLE SUMMARY="Common Locations on the Server">
480ef0fe 1961<CAPTION>Table 3: <A NAME="TABLE3">Common Locations on the Server</A></CAPTION>
1962<THEAD>
ef416fc2 1963<TR><TH>Location</TH><TH>Description</TH></TR>
480ef0fe 1964</THEAD>
1965<TBODY>
ef416fc2 1966<TR><TD><CODE>/</CODE></TD><TD>The path for all get operations (get-printers, get-jobs, etc.)</TD></TR>
1967<TR><TD><CODE>/admin</CODE></TD><TD>The path for all administration operations (add-printer, delete-printer, start-printer, etc.)</TD></TR>
1968<TR><TD><CODE>/admin/conf</CODE></TD><TD>The path for access to the CUPS configuration files (cupsd.conf, client.conf, etc.)</TD></TR>
1969<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>
1970<TR><TD><CODE>/classes</CODE></TD><TD>The path for all classes</TD></TR>
1971<TR><TD><CODE>/classes/name</CODE></TD><TD>The resource for class <CODE>name</CODE></TD></TR>
1972<TR><TD><CODE>/jobs</CODE></TD><TD>The path for all jobs (hold-job, release-job, etc.)</TD></TR>
1973<TR><TD><CODE>/jobs/id</CODE></TD><TD>The resource for job <CODE>id</CODE></TD></TR>
1974<TR><TD><CODE>/printers</CODE></TD><TD>The path for all printers</TD></TR>
1975<TR><TD><CODE>/printers/name</CODE></TD><TD>The path for printer <CODE>name</CODE></TD></TR>
1976<TR><TD><CODE>/printers/name.ppd</CODE></TD><TD>The PPD file path for printer <CODE>name</CODE></TD></TR>
480ef0fe 1977</TBODY>
ef416fc2 1978</TABLE></DIV>
1979
1980
480ef0fe 1981<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.15</SPAN><A NAME="LogFilePerm">LogFilePerm</A></H2>
ef416fc2 1982
480ef0fe 1983<H3>Examples</H3>
ef416fc2 1984
1985<PRE CLASS="command">
1986LogFilePerm 0644
1987LogFilePerm 0600
1988</PRE>
1989
480ef0fe 1990<H3>Description</H3>
ef416fc2 1991
1992<P>The <CODE>LogFilePerm</CODE> directive specifies the
1993permissions to use when writing configuration files. The default
b94498cf 1994is @CUPS_LOG_FILE_PERM@.</P>
ef416fc2 1995
1996
480ef0fe 1997<H2 CLASS="title"><A NAME="LogLevel">LogLevel</A></H2>
ef416fc2 1998
480ef0fe 1999<H3>Examples</H3>
ef416fc2 2000
2001<PRE CLASS="command">
2002LogLevel none
2003LogLevel emerg
2004LogLevel alert
2005LogLevel crit
2006LogLevel error
2007LogLevel warn
2008LogLevel notice
2009LogLevel info
2010LogLevel debug
2011LogLevel debug2
2012</PRE>
2013
480ef0fe 2014<H3>Description</H3>
ef416fc2 2015
2016<P>The <CODE>LogLevel</CODE> directive specifies the level of
2017logging for the <A HREF="#ErrorLog"><CODE>ErrorLog</CODE></A>
2018file. The following values are recognized (each level logs
2019everything under the preceding levels):</P>
2020
2021<UL>
2022
2023 <LI><CODE>none</CODE> - Log nothing</LI>
2024
2025 <LI><CODE>emerg</CODE> - Log emergency conditions that
2026 prevent the server from running</LI>
2027
2028 <LI><CODE>alert</CODE> - Log alerts that must be handled
2029 immediately</LI>
2030
2031 <LI><CODE>crit</CODE> - Log critical errors that don't
2032 prevent the server from running</LI>
2033
2034 <LI><CODE>error</CODE> - Log general errors</LI>
2035
2036 <LI><CODE>warn</CODE> - Log errors and warnings</LI>
2037
2038 <LI><CODE>notice</CODE> - Log temporary error conditions</LI>
2039
2040 <LI><CODE>info</CODE> - Log all requests and state
1f0275e3 2041 changes</LI>
ef416fc2 2042
2043 <LI><CODE>debug</CODE> - Log basic debugging
2044 information</LI>
2045
2046 <LI><CODE>debug2</CODE> - Log all debugging
2047 information</LI>
2048
2049</UL>
2050
1f0275e3
MS
2051<p>The default <code>LogLevel</code> is <code>@CUPS_LOG_LEVEL@</code>.</p>
2052
ef416fc2 2053
dfd5680b
MS
2054<H2 CLASS="title"><A NAME="LogTimeFormat">LogTimeFormat</A></H2>
2055
2056<H3>Examples</H3>
2057
2058<PRE CLASS="command">
2059LogTimeFormat standard
2060LogTimeFormat usecs
2061</PRE>
2062
2063<H3>Description</H3>
2064
2065<P>The <CODE>LogTimeFormat</CODE> directive specifies the format used for the
2066date and time in the log files. <CODE>Standard</CODE> uses the standard Apache
2067Common Log Format date and time while <CODE>usecs</CODE> adds microseconds.
2068The default is <CODE>standard</CODE>.</P>
2069
2070
480ef0fe 2071<H2 CLASS="title"><A NAME="MaxClients">MaxClients</A></H2>
ef416fc2 2072
480ef0fe 2073<H3>Examples</H3>
ef416fc2 2074
2075<PRE CLASS="command">
2076MaxClients 100
2077MaxClients 1024
2078</PRE>
2079
480ef0fe 2080<H3>Description</H3>
ef416fc2 2081
2082<P>The <CODE>MaxClients</CODE> directive controls the maximum
2083number of simultaneous clients that will be allowed by the
2084server. The default is 100 clients.</P>
2085
2086<BLOCKQUOTE><B>Note:</B>
2087
2088<P>Since each print job requires a file descriptor for the status
2089pipe, the scheduler internally limits the <CODE>MaxClients</CODE>
2090value to 1/3 of the available file descriptors to avoid possible
2091problems when printing large numbers of jobs.</P>
2092
2093</BLOCKQUOTE>
2094
2095
480ef0fe 2096<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.18</SPAN><A NAME="MaxClientsPerHost">MaxClientsPerHost</A></H2>
ef416fc2 2097
480ef0fe 2098<H3>Examples</H3>
ef416fc2 2099
2100<PRE CLASS="command">
2101MaxClientsPerHost 10
2102</PRE>
2103
480ef0fe 2104<H3>Description</H3>
ef416fc2 2105
2106<P>The <CODE>MaxClientsPerHost</CODE> directive controls the
2107maximum number of simultaneous clients that will be allowed from
2108a single host by the server. The default is the
2109<CODE>MaxClients</CODE> value.</P>
2110
2111<P>This directive provides a small measure of protection against
2112Denial of Service attacks from a single host.</P>
2113
2114
480ef0fe 2115<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="MaxCopies">MaxCopies</A></H2>
ef416fc2 2116
480ef0fe 2117<H3>Examples</H3>
ef416fc2 2118
2119<PRE CLASS="command">
2120MaxCopies 100
2121MaxCopies 65535
2122</PRE>
2123
480ef0fe 2124<H3>Description</H3>
ef416fc2 2125
2126<P>The <CODE>MaxCopies</CODE> directive controls the maximum
2127number of copies that a user can print of a job. The default is
b94498cf 2128@CUPS_MAX_COPIES@ copies.</P>
ef416fc2 2129
2130<BLOCKQUOTE><B>Note:</B>
2131
2132<P>Most HP PCL laser printers internally limit the number of
2133copies to 100.</P>
2134
2135</BLOCKQUOTE>
2136
2137
2138
480ef0fe 2139<H2 CLASS="title"><A NAME="MaxJobs">MaxJobs</A></H2>
ef416fc2 2140
480ef0fe 2141<H3>Examples</H3>
ef416fc2 2142
2143<PRE CLASS="command">
2144MaxJobs 100
2145MaxJobs 9999
2146MaxJobs 0
2147</PRE>
2148
480ef0fe 2149<H3>Description</H3>
ef416fc2 2150
2151<P>The <CODE>MaxJobs</CODE> directive controls the maximum number
2152of jobs that are kept in memory. Once the number of jobs reaches
2153the limit, the oldest completed job is automatically purged from
2154the system to make room for the new one. If all of the known jobs
2155are still pending or active then the new job will be
2156rejected.</P>
2157
2158<P>Setting the maximum size to 0 disables this functionality. The
80ca4592 2159default setting is 500.</P>
ef416fc2 2160
2161
480ef0fe 2162<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="MaxJobsPerPrinter">MaxJobsPerPrinter</A></H2>
ef416fc2 2163
480ef0fe 2164<H3>Examples</H3>
ef416fc2 2165
2166<PRE CLASS="command">
2167MaxJobsPerPrinter 100
2168MaxJobsPerPrinter 9999
2169MaxJobsPerPrinter 0
2170</PRE>
2171
480ef0fe 2172<H3>Description</H3>
ef416fc2 2173
2174<P>The <CODE>MaxJobsPerPrinter</CODE> directive controls the
2175maximum number of active jobs that are allowed for each printer
2176or class. Once a printer or class reaches the limit, new jobs
2177will be rejected until one of the active jobs is completed,
2178stopped, aborted, or canceled.</P>
2179
2180<P>Setting the maximum to 0 disables this functionality. The
2181default setting is 0.</P>
2182
2183
480ef0fe 2184<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="MaxJobsPerUser">MaxJobsPerUser</A></H2>
ef416fc2 2185
480ef0fe 2186<H3>Examples</H3>
ef416fc2 2187
2188<PRE CLASS="command">
2189MaxJobsPerUser 100
2190MaxJobsPerUser 9999
2191MaxJobsPerUser 0
2192</PRE>
2193
480ef0fe 2194<H3>Description</H3>
ef416fc2 2195
2196<P>The <CODE>MaxJobsPerUser</CODE> directive controls the maximum
2197number of active jobs that are allowed for each user. Once a user
2198reaches the limit, new jobs will be rejected until one of the
2199active jobs is completed, stopped, aborted, or canceled.</P>
2200
2201<P>Setting the maximum to 0 disables this functionality. The
2202default setting is 0.</P>
2203
2204
480ef0fe 2205<H2 CLASS="title"><A NAME="MaxLogSize">MaxLogSize</A></H2>
ef416fc2 2206
480ef0fe 2207<H3>Examples</H3>
ef416fc2 2208
2209<PRE CLASS="command">
2210MaxLogSize 1048576
2211MaxLogSize 1m
2212MaxLogSize 0
2213</PRE>
2214
480ef0fe 2215<H3>Description</H3>
ef416fc2 2216
2217<P>The <CODE>MaxLogSize</CODE> directive controls the maximum
2218size of each log file. Once a log file reaches or exceeds the
2219maximum size it is closed and renamed to <VAR>filename.O</VAR>.
2220This allows you to rotate the logs automatically. The default
2221size is 1048576 bytes (1MB).</P>
2222
2223<P>Setting the maximum size to 0 disables log rotation.</P>
2224
2225
480ef0fe 2226<H2 CLASS="title"><SPAN CLASS="info">Deprecated</SPAN><A NAME="MaxRequestSize">MaxRequestSize</A></H2>
ef416fc2 2227
480ef0fe 2228<H3>Examples</H3>
ef416fc2 2229
2230<PRE CLASS="command">
2231MaxRequestSize 10485760
2232MaxRequestSize 10m
2233MaxRequestSize 0
2234</PRE>
2235
480ef0fe 2236<H3>Description</H3>
ef416fc2 2237
2238<P>The <CODE>MaxRequestSize</CODE> directive controls the maximum
2239size of print files, IPP requests, and HTML form data in HTTP
2240POST requests. The default limit is 0 which disables the limit
2241check.</P>
2242
480ef0fe 2243<P><B>This directive is deprecated and will be removed in a
ef416fc2 2244future CUPS release.</B> Use the <A
2245HREF="#LimitRequestBody"><CODE>LimitRequestBody</CODE></A>
2246directive instead.</P>
2247
2248
dfd5680b
MS
2249<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4</SPAN><A NAME="MultipleOperationTimeout">MultipleOperationTimeout</A></H2>
2250
2251<H3>Examples</H3>
2252
2253<PRE CLASS="command">
2254MultipleOperationTimeout 60
2255MultipleOperationTimeout 300
2256MultipleOperationTimeout 86400
2257</PRE>
2258
2259<H3>Description</H3>
2260
2261<P>The <CODE>MultipleOperationTimeout</CODE> directive sets the maximum amount
2262of time between files in a multi-file print job. The default is 300 seconds.</P>
2263
2264
480ef0fe 2265<H2 CLASS="title"><A NAME="Order">Order</A></H2>
ef416fc2 2266
480ef0fe 2267<H3>Examples</H3>
ef416fc2 2268
2269<PRE CLASS="command">
480ef0fe 2270&lt;Location /path&gt;
2271 ...
2272 Order Allow,Deny
2273 Order Deny,Allow
2274&lt;/Location&gt;
ef416fc2 2275</PRE>
2276
480ef0fe 2277<H3>Description</H3>
ef416fc2 2278
2279<P>The <CODE>Order</CODE> directive defines the default access
2280control. The following values are supported:</P>
2281
2282<UL>
2283
2284 <LI><CODE>allow,deny</CODE> - Deny requests by default,
2285 then check the <A HREF="#Allow"><CODE>Allow</CODE></A>
2286 lines followed by the <A
2287 HREF="#Deny"><CODE>Deny</CODE></A> lines</LI>
2288
2289 <LI><CODE>deny,allow</CODE> - Allow requests by default,
2290 then check the <A HREF="#Deny"><CODE>Deny</CODE></A>
2291 lines followed by the <A
2292 HREF="#Allow"><CODE>Allow</CODE></A> lines</LI>
2293
2294</UL>
2295
2296<P>The <CODE>Order</CODE> directive must appear inside a <A
480ef0fe 2297HREF="#Location"><CODE>Location</CODE></A> or <A
2298HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2299
2300
480ef0fe 2301<H2 CLASS="title"><A NAME="PageLog">PageLog</A></H2>
ef416fc2 2302
480ef0fe 2303<H3>Examples</H3>
ef416fc2 2304
2305<PRE CLASS="command">
2306PageLog /var/log/cups/page_log
2307PageLog /var/log/cups/page_log-%s
2308PageLog syslog
2309</PRE>
2310
480ef0fe 2311<H3>Description</H3>
ef416fc2 2312
2313<P>The <CODE>PageLog</CODE> directive sets the name of the page
2314log file. If the filename is not absolute then it is assumed to
2315be relative to the <A
2316HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 2317default page log file is <VAR>@CUPS_LOGDIR@/page_log</VAR>.</P>
ef416fc2 2318
2319<P>The server name can be included in the filename by using
2320<CODE>%s</CODE> in the name.</P>
2321
2322<P>The special name "syslog" can be used to send the page
2323information to the system log instead of a plain file.</P>
2324
2325
01ce6322
MS
2326<H2 CLASS="title"><A NAME="PageLogFormat">PageLogFormat</A></H2>
2327
2328<H3>Examples</H3>
2329
2330<PRE CLASS="command">
2331PageLogFormat %p %j %u %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}
2332PageLogFormat PAGE %p %j %u %P %C %{job-billing} %{job-originating-host-name}
2333</PRE>
2334
2335<H3>Description</H3>
2336
2337<P>The <CODE>PageLogFormat</CODE> directive sets the format of lines
2338that are logged to the page log file. Sequences beginning with percent (%)
2339characters are replaced with the corresponding information, while all other
2340characters are copied literally. The following percent sequences are
2341recognized:</P>
2342
2343<UL>
2344
2345 <LI><CODE>%%</CODE>: Inserts a single percent character.</LI>
2346
2347 <LI><CODE>%{name}</CODE>: Inserts the value of the specified IPP
2348 attribute.</LI>
2349
2350 <LI><CODE>%C</CODE>: Inserts the number of copies for the current page.</LI>
2351
2352 <LI><CODE>%P</CODE>: Inserts the current page number.</LI>
2353
2354 <LI><CODE>%T</CODE>: Inserts the current date and time in common log
2355 format.</LI>
2356
2357 <LI><CODE>%j</CODE>: Inserts the job ID.</LI>
2358
2359 <LI><CODE>%p</CODE>: Inserts the printer name.</LI>
2360
2361 <LI><CODE>%u</CODE>: Inserts the username.</LI>
2362
2363</UL>
2364
2365<P>The default is "%p %j %u %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".</P>
2366
2367
480ef0fe 2368<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="PassEnv">PassEnv</A></H2>
2369
2370<H3>Examples</H3>
2371
2372<PRE CLASS="command">
2373PassEnv MY_ENV_VARIABLE
2374</PRE>
2375
2376<H3>Description</H3>
2377
2378<P>The <CODE>PassEnv</CODE> directive specifies an environment
2379variable that should be passed to child processes. Normally, the
2380scheduler only passes the <CODE>DYLD_LIBRARY_PATH</CODE>,
2381<CODE>LD_ASSUME_KERNEL</CODE>, <CODE>LD_LIBRARY_PATH</CODE>,
2382<CODE>LD_PRELOAD</CODE>, <CODE>NLSPATH</CODE>,
2383<CODE>SHLIB_PATH</CODE>, <CODE>TZ</CODE>, and <CODE>VGARGS</CODE>
2384environment variables to child processes.</P>
2385
2386
2387<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="Policy">Policy</A></H2>
ef416fc2 2388
480ef0fe 2389<H3>Examples</H3>
2390
2391<PRE CLASS="command">
2392&lt;Policy name&gt;
2393 &lt;Limit operation ... operation&gt;
2394 ...
2395 &lt;/Limit&gt;
2396 &lt;Limit operation ... operation&gt;
2397 ...
2398 &lt;/Limit&gt;
2399 &lt;Limit All&gt;
2400 ...
2401 &lt;/Limit&gt;
2402&lt;/Policy&gt;
2403</PRE>
2404
2405<H3>Description</H3>
2406
2407<P>The <CODE>Policy</CODE> directive specifies IPP operation
2408access control limits. Each policy contains 1 or more <A
2409HREF="#LimitIPP"><CODE>Limit</CODE></A> sections to set the
2410access control limits for specific operations - user limits,
2411authentication, encryption, and allowed/denied addresses,
2412domains, or hosts. The <CODE>&lt;Limit All&gt;</CODE> section
2413specifies the default access control limits for operations that
2414are not listed.</P>
2415
2416<P>Policies are named and associated with printers via the
2417printer's operation policy setting
2418(<CODE>printer-op-policy</CODE>). The default policy for the
2419scheduler is specified using the <A
2420HREF="#DefaultPolicy"><CODE>DefaultPolicy</CODE></A>
2421directive.</P>
2422
2423
2424<H2 CLASS="title"><A NAME="Port">Port</A></H2>
2425
2426<H3>Examples</H3>
ef416fc2 2427
2428<PRE CLASS="command">
2429Port 631
2430Port 80
2431</PRE>
2432
480ef0fe 2433<H3>Description</H3>
ef416fc2 2434
2435<P>The <CODE>Port</CODE> directive specifies a port to listen on.
2436Multiple <CODE>Port</CODE> lines can be specified to listen on
2437multiple ports. The <CODE>Port</CODE> directive is equivalent to
2438"<CODE>Listen *:nnn</CODE>". The default port is 631.</P>
2439
2440<BLOCKQUOTE><B>Note:</B>
2441
2442<P>On systems that support IPv6, this directive will bind to both
2443the IPv4 and IPv6 wildcard address.</P>
2444
2445</BLOCKQUOTE>
2446
2447
480ef0fe 2448<H2 CLASS="title"><A NAME="PreserveJobHistory">PreserveJobHistory</A></H2>
ef416fc2 2449
480ef0fe 2450<H3>Examples</H3>
ef416fc2 2451
2452<PRE CLASS="command">
2453PreserveJobHistory On
2454PreserveJobHistory Off
2455</PRE>
2456
480ef0fe 2457<H3>Description</H3>
ef416fc2 2458
2459<P>The <CODE>PreserveJobHistory</CODE> directive controls whether
2460the history of completed, canceled, or aborted print jobs is
2461stored on disk.</P>
2462
2463<P>A value of <CODE>On</CODE> (the default) preserves job
2464information until the administrator purges it with the
2465<CODE>cancel</CODE> command.</P>
2466
2467<P>A value of <CODE>Off</CODE> removes the job information as
2468soon as each job is completed, canceled, or aborted.</P>
2469
2470
480ef0fe 2471<H2 CLASS="title"><A NAME="PreserveJobFiles">PreserveJobFiles</A></H2>
ef416fc2 2472
480ef0fe 2473<H3>Examples</H3>
ef416fc2 2474
2475<PRE CLASS="command">
2476PreserveJobFiles On
2477PreserveJobFiles Off
2478</PRE>
2479
480ef0fe 2480<H3>Description</H3>
ef416fc2 2481
2482<P>The <CODE>PreserveJobFiles</CODE> directive controls whether
2483the document files of completed, canceled, or aborted print jobs
2484are stored on disk.</P>
2485
2486<P>A value of <CODE>On</CODE> preserves job files until the
2487administrator purges them with the <CODE>cancel</CODE> command.
2488Jobs can be restarted (and reprinted) as desired until they are
2489purged.</P>
2490
2491<P>A value of <CODE>Off</CODE> (the default) removes the job
2492files as soon as each job is completed, canceled, or aborted.</P>
2493
2494
480ef0fe 2495<H2 CLASS="title"><A NAME="Printcap">Printcap</A></H2>
ef416fc2 2496
480ef0fe 2497<H3>Examples</H3>
ef416fc2 2498
2499<PRE CLASS="command">
2500Printcap
2501Printcap /etc/printcap
2502Printcap /etc/printers.conf
0af14961 2503Printcap /Library/Preferences/org.cups.printers.plist
ef416fc2 2504</PRE>
2505
480ef0fe 2506<H3>Description</H3>
ef416fc2 2507
2508<P>The <CODE>Printcap</CODE> directive controls whether or not a
2509printcap file is automatically generated and updated with a list
2510of available printers. If specified with no value, then no
2511printcap file will be generated. The default is to generate a
0af14961 2512file named <VAR>@CUPS_DEFAUL_PRINTCAP@</VAR>.</P>
ef416fc2 2513
0af14961 2514<P>When a filename is specified (e.g. <VAR>@CUPS_DEFAULT_PRINTCAP@</VAR>),
ef416fc2 2515the printcap file is written whenever a printer is added or
2516removed. The printcap file can then be used by applications that
2517are hardcoded to look at the printcap file for the available
2518printers.</P>
2519
2520
480ef0fe 2521<H2 CLASS="title"><A NAME="PrintcapFormat">PrintcapFormat</A></H2>
ef416fc2 2522
480ef0fe 2523<H3>Examples</H3>
ef416fc2 2524
2525<PRE CLASS="command">
2526PrintcapFormat BSD
2527PrintcapFormat Solaris
0af14961 2528PrintcapFormat plist
ef416fc2 2529</PRE>
2530
480ef0fe 2531<H3>Description</H3>
ef416fc2 2532
0af14961
MS
2533<P>The <CODE>PrintcapFormat</CODE> directive controls the output format of the
2534printcap file. The default is to generate the plist format on Mac OS X, the
2535Solaris format on Solaris, and the BSD format on other operating systems.</P>
ef416fc2 2536
2537
480ef0fe 2538<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.13</SPAN><A NAME="PrintcapGUI">PrintcapGUI</A></H2>
2539
2540<H3>Examples</H3>
2541
2542<PRE CLASS="command">
2543PrintGUI /usr/bin/glpoptions
2544</PRE>
2545
2546<H3>Description</H3>
2547
2548<P>The <CODE>PrintcapGUI</CODE> directive sets the program to
2549associate with the IRIX printer GUI interface script which is
2550used by IRIX applications to display printer-specific options.
2551There is no default program.</P>
2552
2553
2554<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.21</SPAN><A NAME="ReloadTimeout">ReloadTimeout</A></H2>
2555
2556<H3>Examples</H3>
2557
2558<PRE CLASS="command">
2559ReloadTimeout 0
49d87452 2560ReloadTimeout 30
480ef0fe 2561</PRE>
2562
2563<H3>Description</H3>
2564
2565<P>The <CODE>ReloadTimeout</CODE> directive specifies the number
2566of seconds the scheduler will wait for active jobs to complete
49d87452 2567before doing a restart. The default is 30 seconds.</P>
ef416fc2 2568
480ef0fe 2569
2570<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="RemoteRoot">RemoteRoot</A></H2>
2571
2572<H3>Examples</H3>
ef416fc2 2573
2574<PRE CLASS="command">
2575RemoteRoot remroot
2576RemoteRoot root
2577</PRE>
2578
480ef0fe 2579<H3>Description</H3>
ef416fc2 2580
2581<P>The <CODE>RemoteRoot</CODE> directive sets the username for
2582unauthenticated root requests from remote hosts. The default
2583username is <VAR>remroot</VAR>. Setting <CODE>RemoteRoot</CODE>
2584to <VAR>root</VAR> effectively disables this security
2585mechanism.</P>
2586
2587
480ef0fe 2588<H2 CLASS="title"><A NAME="RequestRoot">RequestRoot</A></H2>
ef416fc2 2589
480ef0fe 2590<H3>Examples</H3>
ef416fc2 2591
2592<PRE CLASS="command">
2593RequestRoot /var/spool/cups
2594RequestRoot /foo/bar/spool/cups
2595</PRE>
2596
480ef0fe 2597<H3>Description</H3>
ef416fc2 2598
2599<P>The <CODE>RequestRoot</CODE> directive sets the directory for
2600incoming IPP requests and HTML forms. If an absolute path is not
2601provided then it is assumed to be relative to the <A
2602HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 2603default request directory is <VAR>@CUPS_REQUESTS@</VAR>.</P>
ef416fc2 2604
2605
480ef0fe 2606<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Require">Require</A></H2>
ef416fc2 2607
480ef0fe 2608<H3>Examples</H3>
ef416fc2 2609
2610<PRE CLASS="command">
480ef0fe 2611&lt;Location /path&gt;
2612 ...
2613 Require group foo bar
2614 Require user john mary
2615 Require valid-user
2616 Require user @groupname
2617 Require user @SYSTEM
2618 Require user @OWNER
2619&lt;/Location&gt;
ef416fc2 2620</PRE>
2621
480ef0fe 2622<H3>Description</H3>
ef416fc2 2623
2624<P>The <CODE>Require</CODE> directive specifies that
2625authentication is required for the resource. The
2626<CODE>group</CODE> keyword specifies that the authenticated user
2627must be a member of one or more of the named groups that
2628follow.</P>
2629
4b3f67ff 2630<P>The <CODE>user</CODE> keyword specifies that the
ef416fc2 2631authenticated user must be one of the named users or groups that
2632follow. Group names are specified using the "@" prefix.</P>
2633
2634<P>The <CODE>valid-user</CODE> keyword specifies that any
2635authenticated user may access the resource.</P>
2636
2637<P>The default is to do no authentication. This directive must
480ef0fe 2638appear inside a <A HREF="#Location"><CODE>Location</CODE></A> or
2639<A HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2640
2641
480ef0fe 2642<H2 CLASS="title"><A NAME="RIPCache">RIPCache</A></H2>
ef416fc2 2643
480ef0fe 2644<H3>Examples</H3>
ef416fc2 2645
2646<PRE CLASS="command">
2647RIPCache 8m
2648RIPCache 1g
2649RIPCache 2048k
2650</PRE>
2651
480ef0fe 2652<H3>Description</H3>
ef416fc2 2653
2654<P>The <CODE>RIPCache</CODE> directive sets the size of the
2655memory cache used by Raster Image Processor ("RIP") filters such
2656as <CODE>imagetoraster</CODE> and <CODE>pstoraster</CODE>. The
2657size can be suffixed with a "k" for kilobytes, "m" for megabytes,
2658or "g" for gigabytes. The default cache size is "8m", or 8
2659megabytes.</P>
2660
2661
480ef0fe 2662<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="RootCertDuration">RootCertDuration</A></H2>
2663
2664<H3>Examples</H3>
2665
2666<PRE CLASS="command">
2667RootCertDuration 0
2668RootCertDuration 300
2669</PRE>
2670
2671<H3>Description</H3>
2672
2673<P>The <CODE>RootCertDuration</CODE> directive specifies the
2674number of seconds the <EM>root certificate</EM> remains valid.
2675The scheduler will generate a new certificate as needed when the
2676number of seconds has expired. If set to 0, the root certificate
2677is generated only once on startup or on a restart. The default is
2678300 seconds.</P>
2679
2680
2681<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Satisfy">Satisfy</A></H2>
ef416fc2 2682
480ef0fe 2683<H3>Examples</H3>
ef416fc2 2684
2685<PRE CLASS="command">
480ef0fe 2686&lt;Location /path&gt;
2687 ...
2688 Satisfy all
2689 Satisfy any
2690&lt;/Location&gt;
ef416fc2 2691</PRE>
2692
480ef0fe 2693<H3>Description</H3>
ef416fc2 2694
2695<P>The <CODE>Satisfy</CODE> directive specifies whether all
2696conditions must be satisfied to allow access to the resource. If
2697set to <CODE>all</CODE>, then all authentication and access
2698control conditions must be satified to allow access.</P>
2699
2700<P>Setting <CODE>Satisfy</CODE> to <CODE>any</CODE> allows a user
2701to gain access if the authentication or access control
2702requirements are satisfied. For example, you might require
2703authentication for remote access, but allow local access without
2704authentication.</P>
2705
2706<P>The default is <CODE>all</CODE>. This directive must appear
480ef0fe 2707inside a <A HREF="#Location"><CODE>Location</CODE></A> or <A
2708HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2709
2710
480ef0fe 2711<H2 CLASS="title"><A NAME="ServerAdmin">ServerAdmin</A></H2>
ef416fc2 2712
480ef0fe 2713<H3>Examples</H3>
ef416fc2 2714
2715<PRE CLASS="command">
2716ServerAdmin user@host
2717ServerAdmin root@foo.bar.com
2718</PRE>
2719
480ef0fe 2720<H3>Description</H3>
ef416fc2 2721
2722<P>The <CODE>ServerAdmin</CODE> directive identifies the email
2723address for the administrator on the system. By default the
2724administrator email address is <CODE>root@server</CODE>, where
480ef0fe 2725<CODE>server</CODE> is the <A
2726HREF="#ServerName"><CODE>ServerName</CODE></A>.</P>
ef416fc2 2727
2728
480ef0fe 2729<H2 CLASS="title"><A NAME="ServerBin">ServerBin</A></H2>
ef416fc2 2730
480ef0fe 2731<H3>Examples</H3>
ef416fc2 2732
2733<PRE CLASS="command">
2734ServerBin /usr/lib/cups
2735ServerBin /foo/bar/lib/cups
2736</PRE>
2737
480ef0fe 2738<H3>Description</H3>
ef416fc2 2739
2740<P>The <CODE>ServerBin</CODE> directive sets the directory for
2741server-run executables. If an absolute path is not provided then
2742it is assumed to be relative to the <A
2743HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
480ef0fe 2744default executable directory is <VAR>/usr/lib/cups</VAR>,
2745<VAR>/usr/lib32/cups</VAR>, or <VAR>/usr/libexec/cups</VAR>
2746depending on the operating system.</P>
ef416fc2 2747
2748
480ef0fe 2749<H2 CLASS="title"><A NAME="ServerCertificate">ServerCertificate</A></H2>
ef416fc2 2750
480ef0fe 2751<H3>Examples</H3>
ef416fc2 2752
2753<PRE CLASS="command">
2754ServerCertificate /etc/cups/ssl/server.crt
2755</PRE>
2756
480ef0fe 2757<H3>Description</H3>
ef416fc2 2758
2759<P>The <CODE>ServerCertificate</CODE> directive specifies the
2760location of the SSL certificate file used by the server when
2761negotiating encrypted connections. The certificate must not be
2762encrypted (password protected) since the scheduler normally runs
2763in the background and will be unable to ask for a password.</P>
2764
2765<P>The default certificate file is
2766<VAR>/etc/cups/ssl/server.crt</VAR>.</P>
2767
2768
480ef0fe 2769<H2 CLASS="title"><A NAME="ServerKey">ServerKey</A></H2>
ef416fc2 2770
480ef0fe 2771<H3>Examples</H3>
ef416fc2 2772
2773<PRE CLASS="command">
2774ServerKey /etc/cups/ssl/server.key
2775</PRE>
2776
480ef0fe 2777<H3>Description</H3>
ef416fc2 2778
2779<P>The <CODE>ServerKey</CODE> directive specifies the location of
2780the SSL private key file used by the server when negotiating
2781encrypted connections.</P>
2782
2783<P>The default key file is
2784<VAR>/etc/cups/ssl/server.crt</VAR>.</P>
2785
2786
b86bc4cf 2787<H2 CLASS="title"><A NAME="ServerName">ServerName</A></H2>
ef416fc2 2788
480ef0fe 2789<H3>Examples</H3>
ef416fc2 2790
2791<PRE CLASS="command">
2792ServerName foo.domain.com
2793ServerName myserver.domain.com
2794</PRE>
2795
480ef0fe 2796<H3>Description</H3>
ef416fc2 2797
2798<P>The <CODE>ServerName</CODE> directive specifies the hostname
2799that is reported to clients. By default the server name is the
2800hostname.</P>
2801
2802
480ef0fe 2803<H2 CLASS="title"><A NAME="ServerRoot">ServerRoot</A></H2>
ef416fc2 2804
480ef0fe 2805<H3>Examples</H3>
ef416fc2 2806
2807<PRE CLASS="command">
2808ServerRoot /etc/cups
2809ServerRoot /foo/bar/cups
2810</PRE>
2811
480ef0fe 2812<H3>Description</H3>
ef416fc2 2813
2814<P>The <CODE>ServerRoot</CODE> directive specifies the absolute
2815path to the server configuration and state files. It is also used
2816to resolve relative paths in the <VAR>cupsd.conf</VAR> file. The
2817default server directory is <VAR>/etc/cups</VAR>.</P>
2818
2819
480ef0fe 2820<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.21</SPAN><A NAME="ServerTokens">ServerTokens</A></H2>
2821
2822<H3>Examples</H3>
2823
2824<PRE CLASS="command">
2825ServerTokens None
2826ServerTokens ProductOnly
2827ServerTokens Major
2828ServerTokens Minor
2829ServerTokens Minimal
2830ServerTokens OS
2831ServerTokens Full
2832</PRE>
2833
2834<H3>Description</H3>
2835
2836<P>The <CODE>ServerTokens</CODE> directive specifies the
2837information that is included in the <CODE>Server:</CODE> header
2838of all HTTP responses. Table 4 lists the token name along with
2839the text that is returned. The default is
2840<CODE>Minimal</CODE>.</P>
2841
2842<DIV CLASS="table"><TABLE SUMMARY="ServerToken Names and Values">
2843<CAPTION>Table 4: <A NAME="TABLE4">ServerToken Names and Values</A></CAPTION>
2844<THEAD>
2845<TR>
2846 <TH>Name</TH>
2847 <TH>Value</TH>
2848</TR>
2849</THEAD>
2850<TBODY>
2851<TR>
2852 <TD>None</TD>
2853 <TD>No <CODE>Server:</CODE> header is returned</TD>
2854</TR>
2855<TR>
2856 <TD>ProductOnly</TD>
2857 <TD>"CUPS"</TD>
2858</TR>
2859<TR>
2860 <TD>Major</TD>
2861 <TD>"CUPS 1"</TD>
2862</TR>
2863<TR>
2864 <TD>Minor</TD>
2865 <TD>"CUPS 1.2"</TD>
2866</TR>
2867<TR>
2868 <TD>Minimal</TD>
2869 <TD>"CUPS 1.2.N" where N is the patch release</TD>
2870</TR>
2871<TR>
2872 <TD>OS</TD>
2873 <TD>"CUPS 1.2.N (UNAME)" where N is the patch release and
2874 UNAME is the output of the <B>uname(1)</B> command</TD>
2875</TR>
2876<TR>
2877 <TD>Full</TD>
2878 <TD>"CUPS 1.2.N (UNAME) IPP/1.1" where N is the patch
2879 release and UNAME is the output of the <B>uname(1)</B>
2880 command</TD>
2881</TR>
2882</TBODY>
2883</TABLE></DIV>
2884
2885
2886<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="SetEnv">SetEnv</A></H2>
2887
2888<H3>Examples</H3>
2889
2890<PRE CLASS="command">
2891SetEnv PATH /usr/lib/cups/filter:/bin:/usr/bin:/usr/local/bin
2892SetEnv MY_ENV_VAR foo
2893</PRE>
2894
2895<H3>Description</H3>
2896
2897<P>The <CODE>SetEnv</CODE> directive specifies an environment
2898variable that should be passed to child processes.</P>
2899
2900
b19ccc9e 2901<H2 CLASS="title"><A NAME="SSLOptions">SSLOptions</A></H2>
ef416fc2 2902
480ef0fe 2903<H3>Examples</H3>
ef416fc2 2904
2905<PRE CLASS="command">
b19ccc9e
MS
2906SSLOptions 127.0.0.1:443
2907SSLOptions 192.0.2.1:443
ef416fc2 2908</PRE>
2909
480ef0fe 2910<H3>Description</H3>
ef416fc2 2911
b19ccc9e 2912<P>The <CODE>SSLOptions</CODE> directive specifies a network
ef416fc2 2913address and port to listen for secure connections. Multiple
b19ccc9e 2914<CODE>SSLOptions</CODE> directives can be provided to listen on
ef416fc2 2915multiple addresses.</P>
2916
b19ccc9e 2917<P>The <CODE>SSLOptions</CODE> directive is similar to the <A
ef416fc2 2918HREF="#SSLPort"><CODE>SSLPort</CODE></A> directive but allows you
2919to restrict access to specific interfaces or networks.</P>
2920
2921
b19ccc9e
MS
2922<H2 CLASS="title"><A NAME="SSLOptions">SSLOptions</A></H2>
2923
2924<H3>Examples</H3>
2925
2926<PRE CLASS="command">
2927SSLOptions None
2928SSLOptions NoEmptyFragments
2929</PRE>
2930
2931<H3>Description</H3>
2932
2933<P>The <CODE>SSLOptions</CODE> directive specifies additional SSL/TLS
2934protocol options to use for encrypted connected. Currently only two
2935options are supported - <code>None</code> (the default) for the most
2936secure mode and <code>NoEmptyFragments</code> to allow CUPS to work with
2937Microsoft Windows with the FIPS conformance mode enabled.</p>
2938
2939
480ef0fe 2940<H2 CLASS="title"><A NAME="SSLPort">SSLPort</A></H2>
ef416fc2 2941
480ef0fe 2942<H3>Examples</H3>
ef416fc2 2943
2944<PRE CLASS="command">
2945SSLPort 443
2946</PRE>
2947
480ef0fe 2948<H3>Description</H3>
ef416fc2 2949
2950<P>The <CODE>SSLPort</CODE> directive specifies a port to listen
2951on for secure connections. Multiple <CODE>SSLPort</CODE> lines
2952can be specified to listen on multiple ports.</P>
2953
2954
480ef0fe 2955<H2 CLASS="title"><A NAME="SystemGroup">SystemGroup</A></H2>
ef416fc2 2956
480ef0fe 2957<H3>Examples</H3>
ef416fc2 2958
2959<PRE CLASS="command">
2960SystemGroup lpadmin
2961SystemGroup sys
2962SystemGroup system
2963SystemGroup root
480ef0fe 2964SystemGroup root lpadmin
ef416fc2 2965</PRE>
2966
480ef0fe 2967<H3>Description</H3>
ef416fc2 2968
2969<P>The <CODE>SystemGroup</CODE> directive specifies the system
480ef0fe 2970administration group for <CODE>System</CODE> authentication.
2971Multiple groups can be listed, separated with spaces. The default
b94498cf 2972group list is <CODE>@CUPS_SYSTEM_GROUPS@</CODE>.</P>
ef416fc2 2973
2974
480ef0fe 2975<H2 CLASS="title"><A NAME="TempDir">TempDir</A></H2>
ef416fc2 2976
480ef0fe 2977<H3>Examples</H3>
ef416fc2 2978
2979<PRE CLASS="command">
2980TempDir /var/tmp
2981TempDir /foo/bar/tmp
2982</PRE>
2983
480ef0fe 2984<H3>Description</H3>
ef416fc2 2985
2986<P>The <CODE>TempDir</CODE> directive specifies an absolute path
2987for the directory to use for temporary files. The default
b94498cf 2988directory is <VAR>@CUPS_REQUESTS@/tmp</VAR>.</P>
ef416fc2 2989
2990<P>Temporary directories must be world-writable and should have
2991the "sticky" permission bit enabled so that other users cannot
2992delete filter temporary files. The following commands will create
2993an appropriate temporary directory called
2994<VAR>/foo/bar/tmp</VAR>:</P>
2995
2996<PRE CLASS="command">
2997<KBD>mkdir /foo/bar/tmp</KBD>
2998<KBD>chmod a+rwxt /foo/bar/tmp</KBD>
2999</PRE>
3000
3001
480ef0fe 3002<H2 CLASS="title"><A NAME="Timeout">Timeout</A></H2>
ef416fc2 3003
480ef0fe 3004<H3>Examples</H3>
ef416fc2 3005
3006<PRE CLASS="command">
3007Timeout 300
3008Timeout 90
3009</PRE>
3010
480ef0fe 3011<H3>Description</H3>
ef416fc2 3012
3013<P>The <CODE>Timeout</CODE> directive controls the amount of time
3014to wait before an active HTTP or IPP request times out. The
3015default timeout is 300 seconds.</P>
3016
3017
a74454a7 3018<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="UseNetworkDefault">UseNetworkDefault</A></H2>
3019
3020<H3>Examples</H3>
3021
3022<PRE CLASS="command">
3023UseNetworkDefault yes
3024UseNetworkDefault no
3025</PRE>
3026
3027<H3>Description</H3>
3028
3029<P>The <CODE>UseNetworkDefault</CODE> directive controls whether
3030the client will use a network/remote printer as a default
3031printer. If enabled, the default printer of a server is used as
3032the default printer on a client. When multiple servers are
3033advertising a default printer, the client's default printer is
3034set to the first discovered printer, or to the implicit class for
3035the same printer available from multiple servers.</P>
3036
b94498cf 3037<P>The default is <CODE>@CUPS_USE_NETWORK_DEFAULT@</CODE>.</P>
a74454a7 3038
3039
480ef0fe 3040<H2 CLASS="title"><A NAME="User">User</A></H2>
ef416fc2 3041
480ef0fe 3042<H3>Examples</H3>
ef416fc2 3043
3044<PRE CLASS="command">
3045User lp
3046User guest
3047</PRE>
3048
480ef0fe 3049<H3>Description</H3>
ef416fc2 3050
3051<P>The <CODE>User</CODE> directive specifies the UNIX user that
3052filter and CGI programs run as. The default user is
b94498cf 3053<CODE>@CUPS_USER@</CODE>.</P>
ef416fc2 3054
3055<BLOCKQUOTE><B>Note:</B>
3056
3057<P>You may not use user <CODE>root</CODE>, as that would expose
3058the system to unacceptable security risks. The scheduler will
3059automatically choose user <CODE>nobody</CODE> if you specify a
3060user whose ID is 0.</P>
3061
3062</BLOCKQUOTE>
3063
3064
3065</BODY>
3066</HTML>