]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/ref-cupsd-conf.html.in
Merge changes from CUPS 1.4svn-r8290.
[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
1211 <LI><CODE>stop-printer</CODE> - Stop the printer and keep
1212 the job for future printing; this is the default
1213 value</LI>
1214
1215</UL>
1216
1217
49d87452
MS
1218
1219<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4</SPAN><A NAME="FatalErrors">FatalErrors</A></H2>
1220
1221<H3>Examples</H3>
1222
1223<PRE CLASS="command">
1224FatalErrors none
1225FatalErrors all
1226FatalErrors browse
1227FatalErrors config
1228FatalErrors listen
1229FatalErrors log
1230FatalErrors permissions
1231FatalErrors all -permissions
1232FatalErrors config permissions log
1233</PRE>
1234
1235<H3>Description</H3>
1236
1237<P>The <CODE>FatalErrors</CODE> directive determines whether certain kinds of
1238errors are fatal. The following kinds of errors are currently recognized:</P>
1239
1240<UL>
1241
1242 <LI><CODE>none</CODE> - No errors are fatal</LI>
1243
1244 <LI><CODE>all</CODE> - All of the errors below are fatal</LI>
1245
1246 <LI><CODE>browse</CODE> - Browsing initialization errors are fatal,
1247 for example failed binding to the CUPS browse port or failed connections
1248 to LDAP servers</LI>
1249
1250 <LI><CODE>config</CODE> - Configuration file syntax errors are
1251 fatal</LI>
1252
1253 <LI><CODE>listen</CODE> - Listen or Port errors are fatal, except for
1254 IPv6 failures on the loopback or "any" addresses</LI>
1255
1256 <LI><CODE>log</CODE> - Log file creation or write errors are fatal</LI>
1257
1258 <LI><CODE>permissions</CODE> - Bad startup file permissions are
1259 fatal, for example shared SSL certificate and key files with world-
1260 read permissions</LI>
1261
1262</UL>
1263
1264<P>Multiple errors can be listed, and the form "-kind" can be used with
1265<CODE>all</CODE> to remove specific kinds of errors. The default setting is
1266<CODE>@CUPS_FATAL_ERRORS@</CODE>.</P>
1267
1268
480ef0fe 1269<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.18</SPAN><A NAME="FileDevice">FileDevice</A></H2>
ef416fc2 1270
480ef0fe 1271<H3>Examples</H3>
ef416fc2 1272
1273<PRE CLASS="command">
1274FileDevice Yes
1275FileDevice No
1276</PRE>
1277
480ef0fe 1278<H3>Description</H3>
ef416fc2 1279
1280<P>The <CODE>FileDevice</CODE> directive determines whether the
1281scheduler allows new printers to be added using device URIs of
1282the form <CODE>file:/filename</CODE>. File devices are most often
1283used to test new printer drivers and do not support raw file
1284printing.</P>
1285
1286<P>The default setting is <CODE>No</CODE>.</P>
1287
1288<BLOCKQUOTE><B>Note:</B>
1289
1290<P>File devices are managed by the scheduler. Since the
1291scheduler normally runs as the root user, file devices
1292can be used to overwrite system files and potentially
1293gain unauthorized access to the system. If you must
1294create printers using file devices, we recommend that
1295you set the <CODE>FileDevice</CODE> directive to
1296<CODE>Yes</CODE> for only as long as you need to add the
1297printers to the system, and then reset the directive to
1298<CODE>No</CODE>.</P>
1299
1300</BLOCKQUOTE>
1301
1302
480ef0fe 1303<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="FilterLimit">FilterLimit</A></H2>
ef416fc2 1304
480ef0fe 1305<H3>Examples</H3>
ef416fc2 1306
1307<PRE CLASS="command">
1308FilterLimit 0
1309FilterLimit 200
1310FilterLimit 1000
1311</PRE>
1312
480ef0fe 1313<H3>Description</H3>
ef416fc2 1314
1315<P>The <CODE>FilterLimit</CODE> directive sets the maximum cost
1316of all running job filters. It can be used to limit the number of
1317filter programs that are run on a server to minimize disk,
1318memory, and CPU resource problems. A limit of 0 disables filter
1319limiting.</P>
1320
1321<P>An average print to a non-PostScript printer needs a filter
1322limit of about 200. A PostScript printer needs about half that
1323(100). Setting the limit below these thresholds will effectively
1324limit the scheduler to printing a single job at any time.</P>
1325
1326<P>The default limit is 0.</P>
1327
1328
480ef0fe 1329<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="FilterNice">FilterNice</A></H2>
1330
1331<H3>Examples</H3>
1332
1333<PRE CLASS="command">
1334FilterNice 0
1335FilterNice 10
1336FilterNice 19
1337</PRE>
1338
1339<H3>Description</H3>
1340
1341<P>The <CODE>FilterNice</CODE> directive sets the <B>nice(1)</B>
1342value to assign to filter processes. The nice value ranges from
13430, the highest priority, to 19, the lowest priority. The default
1344is 0.</P>
1345
1346
1347<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="FontPath">FontPath</A></H2>
ef416fc2 1348
480ef0fe 1349<H3>Examples</H3>
ef416fc2 1350
1351<PRE CLASS="command">
1352FontPath /foo/bar/fonts
1353FontPath /usr/share/cups/fonts:/foo/bar/fonts
1354</PRE>
1355
480ef0fe 1356<H3>Description</H3>
ef416fc2 1357
1358<P>The <CODE>FontPath</CODE> directive specifies the font path to
1359use when searching for fonts. The default font path is
1360<CODE>/usr/share/cups/fonts</CODE>.</P>
1361
1362
480ef0fe 1363<H2 CLASS="title"><A NAME="Group">Group</A></H2>
ef416fc2 1364
480ef0fe 1365<H3>Examples</H3>
ef416fc2 1366
1367<PRE CLASS="command">
480ef0fe 1368Group lp
ef416fc2 1369Group nobody
1370</PRE>
1371
480ef0fe 1372<H3>Description</H3>
ef416fc2 1373
1374<P>The <CODE>Group</CODE> directive specifies the UNIX group that
1375filter and CGI programs run as. The default group is
480ef0fe 1376system-specific but is usually <CODE>lp</CODE> or
ef416fc2 1377<CODE>nobody</CODE>.</P>
1378
1379
f7deaa1a 1380<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.3</SPAN><A NAME="GSSServiceName">GSSServiceName</A></H2>
1381
1382<H3>Examples</H3>
1383
1384<PRE CLASS="command">
1385GSSServiceName IPP
1386GSSServiceName HTTP
1387</PRE>
1388
1389<H3>Description</H3>
1390
1391<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>
1392
1393
480ef0fe 1394<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="HideImplicitMembers">HideImplicitMembers</A></H2>
ef416fc2 1395
480ef0fe 1396<H3>Examples</H3>
ef416fc2 1397
1398<PRE CLASS="command">
1399HideImplicitMembers Yes
1400HideImplicitMembers No
1401</PRE>
1402
480ef0fe 1403<H3>Description</H3>
ef416fc2 1404
1405<P>The <CODE>HideImplicitMembers</CODE> directive controls
1406whether the individual printers in an implicit class are hidden
1407from the user. The default is <CODE>Yes</CODE>.</P>
1408
1409<P><A HREF="#ImplicitClasses"><CODE>ImplicitClasses</CODE></A>
1410must be enabled for this directive to have any effect.</P>
1411
1412
480ef0fe 1413<H2 CLASS="title"><A NAME="HostNameLookups">HostNameLookups</A></H2>
ef416fc2 1414
480ef0fe 1415<H3>Examples</H3>
ef416fc2 1416
1417<PRE CLASS="command">
1418HostNameLookups On
1419HostNameLookups Off
1420HostNameLookups Double
1421</PRE>
1422
480ef0fe 1423<H3>Description</H3>
ef416fc2 1424
1425<P>The <CODE>HostNameLookups</CODE> directive controls whether or
1426not CUPS looks up the hostname for connecting clients. The
1427<CODE>Double</CODE> setting causes CUPS to verify that the
1428hostname resolved from the address matches one of the addresses
1429returned for that hostname. <CODE>Double</CODE> lookups also
1430prevent clients with unregistered addresses from connecting to
1431your server.</P>
1432
1433<P>The default is <CODE>Off</CODE> to avoid the potential server
1434performance problems with hostname lookups. Set this option to
1435<CODE>On</CODE> or <CODE>Double</CODE> only if absolutely
1436required.</P>
1437
1438
480ef0fe 1439<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="ImplicitAnyClasses">ImplicitAnyClasses</A></H2>
ef416fc2 1440
480ef0fe 1441<H3>Examples</H3>
ef416fc2 1442
1443<PRE CLASS="command">
1444ImplicitAnyClasses On
1445ImplicitAnyClasses Off
1446</PRE>
1447
480ef0fe 1448<H3>Description</H3>
ef416fc2 1449
1450<P>The <CODE>ImplicitAnyClasses</CODE> directive controls
1451whether implicit classes for local and remote printers are
1452created with the name <CODE>AnyPrinter</CODE>. The default
1453setting is <CODE>Off</CODE>.</P>
1454
1455<P><A HREF="#ImplicitClasses"><CODE>ImplicitClasses</CODE></A>
1456must be enabled for this directive to have any effect.</P>
1457
1458
b94498cf 1459<H2 CLASS="title"><A NAME="ImplicitClasses">ImplicitClasses</A></H2>
1460
1461<H3>Examples</H3>
1462
1463<PRE CLASS="command">
1464ImplicitClasses On
1465ImplicitClasses Off
1466</PRE>
1467
1468<H3>Description</H3>
1469
1470<P>The <CODE>ImplicitClasses</CODE> directive controls whether
1471implicit classes are created based upon the available network
1472printers and classes. The default setting is
1473<CODE>@CUPS_IMPLICIT_CLASSES@</CODE> but is automatically turned
1474<CODE>Off</CODE> if <A HREF="#Browsing"><CODE>Browsing</CODE></A> is turned
1475<CODE>Off</CODE>.</P>
1476
1477
480ef0fe 1478<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.9</SPAN><A NAME="Include">Include</A></H2>
ef416fc2 1479
480ef0fe 1480<H3>Examples</H3>
ef416fc2 1481
1482<PRE CLASS="command">
1483Include filename
1484Include /foo/bar/filename
1485</PRE>
1486
480ef0fe 1487<H3>Description</H3>
ef416fc2 1488
1489<P>The <CODE>Include</CODE> directive includes the named file in
1490the <CODE>cupsd.conf</CODE> file. If no leading path is provided,
1491the file is assumed to be relative to the <A
1492HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory.</P>
1493
1494
480ef0fe 1495<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="JobRetryInterval">JobRetryInterval</A></H2>
1496
1497<H3>Examples</H3>
1498
1499<PRE CLASS="command">
1500JobRetryInterval 30
1501JobRetryInterval 120
1502</PRE>
1503
1504<H3>Description</H3>
1505
1506<P>The <CODE>JobRetryInterval</CODE> directive specifies the
1507number of seconds to wait before retrying a job. This is
1508typically used for fax queues but can also be used with normal
1509print queues whose error policy is <CODE>retry-job</CODE>. The
1510default is 30 seconds.</P>
ef416fc2 1511
480ef0fe 1512
1513<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="JobRetryLimit">JobRetryLimit</A></H2>
1514
1515<H3>Examples</H3>
1516
1517<PRE CLASS="command">
1518JobRetryLimit 5
1519JobRetryLimit 50
1520</PRE>
1521
1522<H3>Description</H3>
1523
1524<P>The <CODE>JobRetryLimit</CODE> directive specifies the maximum
1525number of times the scheduler will try to print a job. This is
1526typically used for fax queues but can also be used with normal
1527print queues whose error policy is <CODE>retry-job</CODE>. The
1528default is 5 times.</P>
1529
1530
1531<H2 CLASS="title"><A NAME="KeepAlive">KeepAlive</A></H2>
1532
1533<H3>Examples</H3>
ef416fc2 1534
1535<PRE CLASS="command">
1536KeepAlive On
1537KeepAlive Off
1538</PRE>
1539
480ef0fe 1540<H3>Description</H3>
ef416fc2 1541
1542<P>The <CODE>KeepAlive</CODE> directive controls whether or not
1543to support persistent HTTP connections. The default is
1544<CODE>On</CODE>.</P>
1545
1546<P>HTTP/1.1 clients automatically support persistent connections,
1547while HTTP/1.0 clients must specifically request them using the
1548<CODE>Keep-Alive</CODE> attribute in the <CODE>Connection:</CODE>
1549field of each request.</P>
1550
1551
480ef0fe 1552<H2 CLASS="title"><A NAME="KeepAliveTimeout">KeepAliveTimeout</A></H2>
ef416fc2 1553
480ef0fe 1554<H3>Examples</H3>
ef416fc2 1555
1556<PRE CLASS="command">
1557KeepAliveTimeout 60
1558KeepAliveTimeout 30
1559</PRE>
1560
480ef0fe 1561<H3>Description</H3>
ef416fc2 1562
1563<P>The <CODE>KeepAliveTimeout</CODE> directive controls how long
1564a persistent HTTP connection will remain open after the last
49d87452 1565request. The default is 30 seconds.</P>
ef416fc2 1566
1567
480ef0fe 1568<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Limit">Limit (Location)</A></H2>
ef416fc2 1569
480ef0fe 1570<H3>Examples</H3>
ef416fc2 1571
1572<PRE CLASS="command">
480ef0fe 1573&lt;Location /path&gt;
1574 &lt;Limit GET POST&gt;
1575 ...
1576 &lt;/Limit&gt;
ef416fc2 1577
480ef0fe 1578 &lt;Limit ALL&gt;
1579 ...
1580 &lt;/Limit&gt;
1581&lt;/Location&gt;
ef416fc2 1582</PRE>
1583
480ef0fe 1584<H3>Description</H3>
ef416fc2 1585
1586<P>The <CODE>Limit</CODE> directive groups access control
1587directives for specific types of HTTP requests and must appear
1588inside a <A HREF="#Location"><CODE>Location</CODE></A> section.
1589Access can be limited for individual request types
1590(<CODE>DELETE</CODE>, <CODE>GET</CODE>, <CODE>HEAD</CODE>,
1591<CODE>OPTIONS</CODE>, <CODE>POST</CODE>, <CODE>PUT</CODE>, and
1592<CODE>TRACE</CODE>) or for all request types (<CODE>ALL</CODE>).
1593The request type names are case-sensitive for compatibility with
1594Apache.</P>
1595
1596
480ef0fe 1597<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="LimitIPP">Limit (Policy)</A></H2>
ef416fc2 1598
480ef0fe 1599<H3>Examples</H3>
ef416fc2 1600
1601<PRE CLASS="command">
480ef0fe 1602&lt;Policy name&gt;
1603 &lt;Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer&gt;
1604 ...
1605 &lt;/Limit&gt;
1606
1607 &lt;Limit All&gt;
1608 ...
1609 &lt;/Limit&gt;
1610&lt;/Policy&gt;
1611</PRE>
1612
1613<H3>Description</H3>
1614
1615<P>When included in <A HREF="#Policy"><CODE>Policy</CODE></A>
1616sections, the <CODE>Limit</CODE> directive groups access control
1617directives for specific IPP operations. Multiple operations can
1618be listed, separated by spaces. Table 2 lists the supported
1619operations.</P>
1620
1621<DIV CLASS="table"><TABLE SUMMARY="Supported IPP Operations">
1622<CAPTION>Table 2: <A NAME="TABLE2">Supported IPP Operations</A></CAPTION>
1623<THEAD>
1624<TR>
1625 <TH>Operation Name</TH>
1626 <TH>Description</TH>
1627</TR>
1628</THEAD>
1629<TBODY>
1630<TR>
1631 <TD>All</TD>
1632 <TD>All operations - used as the default limit for
1633 operations that are not listed</TD>
1634</TR>
1635<TR>
1636 <TD>Cancel-Job</TD>
1637 <TD>Cancel a job</TD>
1638</TR>
1639<TR>
1640 <TD>Cancel-Subscription</TD>
1641 <TD>Cancel a subscription</TD>
1642</TR>
1643<TR>
1644 <TD>Create-Job</TD>
1645 <TD>Create a new, empty job</TD>
1646</TR>
1647<TR>
1648 <TD>Create-Job-Subscription</TD>
1649 <TD>Creates a notification subscription on a job</TD>
1650</TR>
1651<TR>
1652 <TD>Create-Printer-Subscription</TD>
1653 <TD>Creates a notification subscription on a printer</TD>
1654</TR>
1655<TR>
1656 <TD>CUPS-Accept-Jobs</TD>
1657 <TD>Sets the printer-is-accepting-jobs value for a printer to true</TD>
1658</TR>
1659<TR>
1660 <TD>CUPS-Add-Modify-Class</TD>
1661 <TD>Adds or modifies a class</TD>
1662</TR>
1663<TR>
1664 <TD>CUPS-Add-Modify-Printer</TD>
1665 <TD>Adds or modifies a printer</TD>
1666</TR>
1667<TR>
1668 <TD>CUPS-Authenticate-Job</TD>
1669 <TD>Authenticates a job for printing</TD>
1670</TR>
1671<TR>
1672 <TD>CUPS-Delete-Class</TD>
1673 <TD>Deletes a class</TD>
1674</TR>
1675<TR>
1676 <TD>CUPS-Delete-Printer</TD>
1677 <TD>Deletes a printer</TD>
1678</TR>
1679<TR>
1680 <TD>CUPS-Get-Classes</TD>
1681 <TD>Gets a list of classes</TD>
1682</TR>
1683<TR>
1684 <TD>CUPS-Get-Default</TD>
1685 <TD>Gets the (network/server) default printer or class</TD>
1686</TR>
1687<TR>
1688 <TD>CUPS-Get-Devices</TD>
1689 <TD>Gets a list of available devices</TD>
1690</TR>
1691<TR>
1692 <TD>CUPS-Get-PPDs</TD>
1693 <TD>Gets a list of available manufacturers or drivers</TD>
1694</TR>
1695<TR>
1696 <TD>CUPS-Get-Printers</TD>
1697 <TD>Gets a list of printers and/or classes</TD>
1698</TR>
1699<TR>
1700 <TD>CUPS-Move-Job</TD>
1701 <TD>Moves a job to a new destination</TD>
1702</TR>
1703<TR>
1704 <TD>CUPS-Reject-Jobs</TD>
1705 <TD>Sets the printer-is-accepting-jobs value for a printer to false</TD>
1706</TR>
1707<TR>
1708 <TD>CUPS-Set-Default</TD>
1709 <TD>Sets the network/server default printer or class</TD>
1710</TR>
1711<TR>
1712 <TD>Disable-Printer</TD>
1713 <TD>Sets the printer-state value for a printer to stopped</TD>
1714</TR>
1715<TR>
1716 <TD>Enable-Printer</TD>
1717 <TD>Sets the printer-state value for a printer to idle/processing</TD>
1718</TR>
1719<TR>
1720 <TD>Get-Job-Attributes</TD>
1721 <TD>Gets information about a job</TD>
1722</TR>
1723<TR>
1724 <TD>Get-Jobs</TD>
1725 <TD>Gets a list of jobs</TD>
1726</TR>
1727<TR>
1728 <TD>Get-Notifications</TD>
1729 <TD>Gets a list of events</TD>
1730</TR>
1731<TR>
1732 <TD>Get-Printer-Attributes</TD>
1733 <TD>Gets informaion about a printer or class</TD>
1734</TR>
1735<TR>
1736 <TD>Get-Subscription-Attributes</TD>
1737 <TD>Gets informaion about a notification subscription</TD>
1738</TR>
1739<TR>
1740 <TD>Get-Subscriptions</TD>
1741 <TD>Gets a list of notification subscriptions</TD>
1742</TR>
1743<TR>
1744 <TD>Hold-Job</TD>
1745 <TD>Holds a job for printing</TD>
1746</TR>
1747<TR>
1748 <TD>Pause-Printer</TD>
1749 <TD>Sets the printer-state value for a printer to stopped</TD>
1750</TR>
1751<TR>
1752 <TD>Print-Job</TD>
1753 <TD>Creates a job with a single file for printing</TD>
1754</TR>
1755<TR>
1756 <TD>Purge-Jobs</TD>
1757 <TD>Removes all jobs from a printer</TD>
1758</TR>
1759<TR>
1760 <TD>Release-Job</TD>
1761 <TD>Releases a previously held job for printing</TD>
1762</TR>
1763<TR>
1764 <TD>Renew-Subscription</TD>
1765 <TD>Renews a notification subscription</TD>
1766</TR>
1767<TR>
1768 <TD>Restart-Job</TD>
1769 <TD>Reprints a job</TD>
1770</TR>
1771<TR>
1772 <TD>Resume-Printer</TD>
1773 <TD>Sets the printer-stae value for a printer to idle/processing</TD>
1774</TR>
1775<TR>
1776 <TD>Send-Document</TD>
1777 <TD>Adds a file to an job created with Create-Job</TD>
1778</TR>
1779<TR>
1780 <TD>Set-Job-Attributes</TD>
1781 <TD>Changes job options</TD>
1782</TR>
1783<TR>
1784 <TD>Validate-Job</TD>
1785 <TD>Validates job options prior to printing</TD>
1786</TR>
1787</TBODY>
1788</TABLE></DIV>
1789
1790
1791<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="LimitExcept">LimitExcept</A></H2>
1792
1793<H3>Examples</H3>
1794
1795<PRE CLASS="command">
1796&lt;Location /path&gt;
1797 &lt;LimitExcept GET POST&gt;
1798 ...
1799 &lt;/LimitExcept&gt;
1800&lt;/Location&gt;
ef416fc2 1801</PRE>
1802
480ef0fe 1803<H3>Description</H3>
ef416fc2 1804
1805<P>The <CODE>LimitExcept</CODE> directive groups access control
1806directives for specific types of HTTP requests and must appear
1807inside a <A HREF="#Location"><CODE>Location</CODE></A> section.
1808Unlike the <A HREF="#Limit"><CODE>Limit</CODE></A> directive,
1809<CODE>LimitExcept</CODE> restricts access for all requests
1810<I>except</I> those listed on the <CODE>LimitExcept</CODE>
1811line.</P>
1812
1813
480ef0fe 1814<H2 CLASS="title"><A NAME="LimitRequestBody">LimitRequestBody</A></H2>
ef416fc2 1815
480ef0fe 1816<H3>Examples</H3>
ef416fc2 1817
1818<PRE CLASS="command">
1819LimitRequestBody 10485760
1820LimitRequestBody 10m
1821LimitRequestBody 0
1822</PRE>
1823
480ef0fe 1824<H3>Description</H3>
ef416fc2 1825
1826<P>The <CODE>LimitRequestBody</CODE> directive controls the
1827maximum size of print files, IPP requests, and HTML form data in
1828HTTP POST requests. The default limit is 0 which disables the
1829limit check.</P>
1830
1831
480ef0fe 1832<H2 CLASS="title"><A NAME="Listen">Listen</A></H2>
ef416fc2 1833
480ef0fe 1834<H3>Examples</H3>
ef416fc2 1835
1836<PRE CLASS="command">
1837Listen 127.0.0.1:631
1838Listen 192.0.2.1:631
1839Listen [::1]:631
1840Listen *:631
1841</PRE>
1842
480ef0fe 1843<H3>Description</H3>
ef416fc2 1844
1845<P>The <CODE>Listen</CODE> directive specifies a network address
1846and port to listen for connections. Multiple <CODE>Listen</CODE>
1847directives can be provided to listen on multiple addresses.</P>
1848
1849<P>The <CODE>Listen</CODE> directive is similar to the <A
1850HREF="#Port"><CODE>Port</CODE></A> directive but allows you to
1851restrict access to specific interfaces or networks.</P>
1852
1853
480ef0fe 1854<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="ListenBackLog">ListenBackLog</A></H2>
1855
1856<H3>Examples</H3>
1857
1858<PRE CLASS="command">
1859ListenBackLog 5
1860ListenBackLog 10
1861</PRE>
1862
1863<H3>Description</H3>
1864
1865<P>The <CODE>ListenBackLog</CODE> directive sets the maximum
1866number of pending connections the scheduler will allow. This
1867normally only affects very busy servers that have reached the <A
1868HREF="#MaxClients"><CODE>MaxClients</CODE></A> limit, but can
1869also be triggered by large numbers of simultaneous connections.
1870When the limit is reached, the operating system will refuse
1871additional connections until the scheduler can accept the pending
1872ones. The default is the OS-defined default limit, typically
1873either 5 for older operating systems or 128 for newer operating
1874systems.</P>
1875
1876
1877<H2 CLASS="title"><A NAME="Location">Location</A></H2>
ef416fc2 1878
480ef0fe 1879<H3>Examples</H3>
ef416fc2 1880
1881<PRE CLASS="command">
1882&lt;Location /&gt;
1883...
1884&lt;/Location&gt;
1885
1886&lt;Location /admin&gt;
1887...
1888&lt;/Location&gt;
1889
1890&lt;Location /admin/conf&gt;
1891...
1892&lt;/Location&gt;
1893
1894&lt;Location /admin/log&gt;
1895...
1896&lt;/Location&gt;
1897
1898&lt;Location /classes&gt;
1899...
1900&lt;/Location&gt;
1901
1902&lt;Location /classes/name&gt;
1903...
1904&lt;/Location&gt;
1905
1906&lt;Location /jobs&gt;
1907...
1908&lt;/Location&gt;
1909
1910&lt;Location /printers&gt;
1911...
1912&lt;/Location&gt;
1913
1914&lt;Location /printers/name&gt;
1915...
1916&lt;/Location&gt;
1917
1918</PRE>
1919
480ef0fe 1920<H3>Description</H3>
ef416fc2 1921
1922<P>The <CODE>Location</CODE> directive specifies access control
1923and authentication options for the specified HTTP resource or
1924path. The <A HREF="#Allow"><CODE>Allow</CODE></A>, <A
1925HREF="#AuthType"><CODE>AuthType</CODE></A>, <A
1926HREF="#Deny"><CODE>Deny</CODE></A>, <A
1927HREF="#Encryption"><CODE>Encryption</CODE></A>, <A
1928HREF="#Limit"><CODE>Limit</CODE></A>, <A
1929HREF="#LimitExcept"><CODE>LimitExcept</CODE></A>, <A
1930HREF="#Order"><CODE>Order</CODE></A>, <A
1931HREF="#Require"><CODE>Require</CODE></A>, and <A
1932HREF="#Satisfy"><CODE>Satisfy</CODE></A> directives may all
1933appear inside a location.</P>
1934
1935<P>Note that more specific resources override the less specific
1936ones. So the directives inside the <CODE>/printers/name</CODE>
1937location will override ones from <CODE>/printers</CODE>.
1938Directives inside <CODE>/printers</CODE> will override ones from
1939<CODE>/</CODE>. None of the directives are inherited.</P>
1940
480ef0fe 1941<DIV CLASS="table"><TABLE SUMMARY="Common Locaions on the Server">
1942<CAPTION>Table 3: <A NAME="TABLE3">Common Locations on the Server</A></CAPTION>
1943<THEAD>
ef416fc2 1944<TR><TH>Location</TH><TH>Description</TH></TR>
480ef0fe 1945</THEAD>
1946<TBODY>
ef416fc2 1947<TR><TD><CODE>/</CODE></TD><TD>The path for all get operations (get-printers, get-jobs, etc.)</TD></TR>
1948<TR><TD><CODE>/admin</CODE></TD><TD>The path for all administration operations (add-printer, delete-printer, start-printer, etc.)</TD></TR>
1949<TR><TD><CODE>/admin/conf</CODE></TD><TD>The path for access to the CUPS configuration files (cupsd.conf, client.conf, etc.)</TD></TR>
1950<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>
1951<TR><TD><CODE>/classes</CODE></TD><TD>The path for all classes</TD></TR>
1952<TR><TD><CODE>/classes/name</CODE></TD><TD>The resource for class <CODE>name</CODE></TD></TR>
1953<TR><TD><CODE>/jobs</CODE></TD><TD>The path for all jobs (hold-job, release-job, etc.)</TD></TR>
1954<TR><TD><CODE>/jobs/id</CODE></TD><TD>The resource for job <CODE>id</CODE></TD></TR>
1955<TR><TD><CODE>/printers</CODE></TD><TD>The path for all printers</TD></TR>
1956<TR><TD><CODE>/printers/name</CODE></TD><TD>The path for printer <CODE>name</CODE></TD></TR>
1957<TR><TD><CODE>/printers/name.ppd</CODE></TD><TD>The PPD file path for printer <CODE>name</CODE></TD></TR>
480ef0fe 1958</TBODY>
ef416fc2 1959</TABLE></DIV>
1960
1961
480ef0fe 1962<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.15</SPAN><A NAME="LogFilePerm">LogFilePerm</A></H2>
ef416fc2 1963
480ef0fe 1964<H3>Examples</H3>
ef416fc2 1965
1966<PRE CLASS="command">
1967LogFilePerm 0644
1968LogFilePerm 0600
1969</PRE>
1970
480ef0fe 1971<H3>Description</H3>
ef416fc2 1972
1973<P>The <CODE>LogFilePerm</CODE> directive specifies the
1974permissions to use when writing configuration files. The default
b94498cf 1975is @CUPS_LOG_FILE_PERM@.</P>
ef416fc2 1976
1977
480ef0fe 1978<H2 CLASS="title"><A NAME="LogLevel">LogLevel</A></H2>
ef416fc2 1979
480ef0fe 1980<H3>Examples</H3>
ef416fc2 1981
1982<PRE CLASS="command">
1983LogLevel none
1984LogLevel emerg
1985LogLevel alert
1986LogLevel crit
1987LogLevel error
1988LogLevel warn
1989LogLevel notice
1990LogLevel info
1991LogLevel debug
1992LogLevel debug2
1993</PRE>
1994
480ef0fe 1995<H3>Description</H3>
ef416fc2 1996
1997<P>The <CODE>LogLevel</CODE> directive specifies the level of
1998logging for the <A HREF="#ErrorLog"><CODE>ErrorLog</CODE></A>
1999file. The following values are recognized (each level logs
2000everything under the preceding levels):</P>
2001
2002<UL>
2003
2004 <LI><CODE>none</CODE> - Log nothing</LI>
2005
2006 <LI><CODE>emerg</CODE> - Log emergency conditions that
2007 prevent the server from running</LI>
2008
2009 <LI><CODE>alert</CODE> - Log alerts that must be handled
2010 immediately</LI>
2011
2012 <LI><CODE>crit</CODE> - Log critical errors that don't
2013 prevent the server from running</LI>
2014
2015 <LI><CODE>error</CODE> - Log general errors</LI>
2016
2017 <LI><CODE>warn</CODE> - Log errors and warnings</LI>
2018
2019 <LI><CODE>notice</CODE> - Log temporary error conditions</LI>
2020
2021 <LI><CODE>info</CODE> - Log all requests and state
1f0275e3 2022 changes</LI>
ef416fc2 2023
2024 <LI><CODE>debug</CODE> - Log basic debugging
2025 information</LI>
2026
2027 <LI><CODE>debug2</CODE> - Log all debugging
2028 information</LI>
2029
2030</UL>
2031
1f0275e3
MS
2032<p>The default <code>LogLevel</code> is <code>@CUPS_LOG_LEVEL@</code>.</p>
2033
ef416fc2 2034
480ef0fe 2035<H2 CLASS="title"><A NAME="MaxClients">MaxClients</A></H2>
ef416fc2 2036
480ef0fe 2037<H3>Examples</H3>
ef416fc2 2038
2039<PRE CLASS="command">
2040MaxClients 100
2041MaxClients 1024
2042</PRE>
2043
480ef0fe 2044<H3>Description</H3>
ef416fc2 2045
2046<P>The <CODE>MaxClients</CODE> directive controls the maximum
2047number of simultaneous clients that will be allowed by the
2048server. The default is 100 clients.</P>
2049
2050<BLOCKQUOTE><B>Note:</B>
2051
2052<P>Since each print job requires a file descriptor for the status
2053pipe, the scheduler internally limits the <CODE>MaxClients</CODE>
2054value to 1/3 of the available file descriptors to avoid possible
2055problems when printing large numbers of jobs.</P>
2056
2057</BLOCKQUOTE>
2058
2059
480ef0fe 2060<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.18</SPAN><A NAME="MaxClientsPerHost">MaxClientsPerHost</A></H2>
ef416fc2 2061
480ef0fe 2062<H3>Examples</H3>
ef416fc2 2063
2064<PRE CLASS="command">
2065MaxClientsPerHost 10
2066</PRE>
2067
480ef0fe 2068<H3>Description</H3>
ef416fc2 2069
2070<P>The <CODE>MaxClientsPerHost</CODE> directive controls the
2071maximum number of simultaneous clients that will be allowed from
2072a single host by the server. The default is the
2073<CODE>MaxClients</CODE> value.</P>
2074
2075<P>This directive provides a small measure of protection against
2076Denial of Service attacks from a single host.</P>
2077
2078
480ef0fe 2079<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="MaxCopies">MaxCopies</A></H2>
ef416fc2 2080
480ef0fe 2081<H3>Examples</H3>
ef416fc2 2082
2083<PRE CLASS="command">
2084MaxCopies 100
2085MaxCopies 65535
2086</PRE>
2087
480ef0fe 2088<H3>Description</H3>
ef416fc2 2089
2090<P>The <CODE>MaxCopies</CODE> directive controls the maximum
2091number of copies that a user can print of a job. The default is
b94498cf 2092@CUPS_MAX_COPIES@ copies.</P>
ef416fc2 2093
2094<BLOCKQUOTE><B>Note:</B>
2095
2096<P>Most HP PCL laser printers internally limit the number of
2097copies to 100.</P>
2098
2099</BLOCKQUOTE>
2100
2101
2102
480ef0fe 2103<H2 CLASS="title"><A NAME="MaxJobs">MaxJobs</A></H2>
ef416fc2 2104
480ef0fe 2105<H3>Examples</H3>
ef416fc2 2106
2107<PRE CLASS="command">
2108MaxJobs 100
2109MaxJobs 9999
2110MaxJobs 0
2111</PRE>
2112
480ef0fe 2113<H3>Description</H3>
ef416fc2 2114
2115<P>The <CODE>MaxJobs</CODE> directive controls the maximum number
2116of jobs that are kept in memory. Once the number of jobs reaches
2117the limit, the oldest completed job is automatically purged from
2118the system to make room for the new one. If all of the known jobs
2119are still pending or active then the new job will be
2120rejected.</P>
2121
2122<P>Setting the maximum size to 0 disables this functionality. The
80ca4592 2123default setting is 500.</P>
ef416fc2 2124
2125
480ef0fe 2126<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="MaxJobsPerPrinter">MaxJobsPerPrinter</A></H2>
ef416fc2 2127
480ef0fe 2128<H3>Examples</H3>
ef416fc2 2129
2130<PRE CLASS="command">
2131MaxJobsPerPrinter 100
2132MaxJobsPerPrinter 9999
2133MaxJobsPerPrinter 0
2134</PRE>
2135
480ef0fe 2136<H3>Description</H3>
ef416fc2 2137
2138<P>The <CODE>MaxJobsPerPrinter</CODE> directive controls the
2139maximum number of active jobs that are allowed for each printer
2140or class. Once a printer or class reaches the limit, new jobs
2141will be rejected until one of the active jobs is completed,
2142stopped, aborted, or canceled.</P>
2143
2144<P>Setting the maximum to 0 disables this functionality. The
2145default setting is 0.</P>
2146
2147
480ef0fe 2148<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="MaxJobsPerUser">MaxJobsPerUser</A></H2>
ef416fc2 2149
480ef0fe 2150<H3>Examples</H3>
ef416fc2 2151
2152<PRE CLASS="command">
2153MaxJobsPerUser 100
2154MaxJobsPerUser 9999
2155MaxJobsPerUser 0
2156</PRE>
2157
480ef0fe 2158<H3>Description</H3>
ef416fc2 2159
2160<P>The <CODE>MaxJobsPerUser</CODE> directive controls the maximum
2161number of active jobs that are allowed for each user. Once a user
2162reaches the limit, new jobs will be rejected until one of the
2163active jobs is completed, stopped, aborted, or canceled.</P>
2164
2165<P>Setting the maximum to 0 disables this functionality. The
2166default setting is 0.</P>
2167
2168
480ef0fe 2169<H2 CLASS="title"><A NAME="MaxLogSize">MaxLogSize</A></H2>
ef416fc2 2170
480ef0fe 2171<H3>Examples</H3>
ef416fc2 2172
2173<PRE CLASS="command">
2174MaxLogSize 1048576
2175MaxLogSize 1m
2176MaxLogSize 0
2177</PRE>
2178
480ef0fe 2179<H3>Description</H3>
ef416fc2 2180
2181<P>The <CODE>MaxLogSize</CODE> directive controls the maximum
2182size of each log file. Once a log file reaches or exceeds the
2183maximum size it is closed and renamed to <VAR>filename.O</VAR>.
2184This allows you to rotate the logs automatically. The default
2185size is 1048576 bytes (1MB).</P>
2186
2187<P>Setting the maximum size to 0 disables log rotation.</P>
2188
2189
480ef0fe 2190<H2 CLASS="title"><SPAN CLASS="info">Deprecated</SPAN><A NAME="MaxRequestSize">MaxRequestSize</A></H2>
ef416fc2 2191
480ef0fe 2192<H3>Examples</H3>
ef416fc2 2193
2194<PRE CLASS="command">
2195MaxRequestSize 10485760
2196MaxRequestSize 10m
2197MaxRequestSize 0
2198</PRE>
2199
480ef0fe 2200<H3>Description</H3>
ef416fc2 2201
2202<P>The <CODE>MaxRequestSize</CODE> directive controls the maximum
2203size of print files, IPP requests, and HTML form data in HTTP
2204POST requests. The default limit is 0 which disables the limit
2205check.</P>
2206
480ef0fe 2207<P><B>This directive is deprecated and will be removed in a
ef416fc2 2208future CUPS release.</B> Use the <A
2209HREF="#LimitRequestBody"><CODE>LimitRequestBody</CODE></A>
2210directive instead.</P>
2211
2212
480ef0fe 2213<H2 CLASS="title"><A NAME="Order">Order</A></H2>
ef416fc2 2214
480ef0fe 2215<H3>Examples</H3>
ef416fc2 2216
2217<PRE CLASS="command">
480ef0fe 2218&lt;Location /path&gt;
2219 ...
2220 Order Allow,Deny
2221 Order Deny,Allow
2222&lt;/Location&gt;
ef416fc2 2223</PRE>
2224
480ef0fe 2225<H3>Description</H3>
ef416fc2 2226
2227<P>The <CODE>Order</CODE> directive defines the default access
2228control. The following values are supported:</P>
2229
2230<UL>
2231
2232 <LI><CODE>allow,deny</CODE> - Deny requests by default,
2233 then check the <A HREF="#Allow"><CODE>Allow</CODE></A>
2234 lines followed by the <A
2235 HREF="#Deny"><CODE>Deny</CODE></A> lines</LI>
2236
2237 <LI><CODE>deny,allow</CODE> - Allow requests by default,
2238 then check the <A HREF="#Deny"><CODE>Deny</CODE></A>
2239 lines followed by the <A
2240 HREF="#Allow"><CODE>Allow</CODE></A> lines</LI>
2241
2242</UL>
2243
2244<P>The <CODE>Order</CODE> directive must appear inside a <A
480ef0fe 2245HREF="#Location"><CODE>Location</CODE></A> or <A
2246HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2247
2248
480ef0fe 2249<H2 CLASS="title"><A NAME="PageLog">PageLog</A></H2>
ef416fc2 2250
480ef0fe 2251<H3>Examples</H3>
ef416fc2 2252
2253<PRE CLASS="command">
2254PageLog /var/log/cups/page_log
2255PageLog /var/log/cups/page_log-%s
2256PageLog syslog
2257</PRE>
2258
480ef0fe 2259<H3>Description</H3>
ef416fc2 2260
2261<P>The <CODE>PageLog</CODE> directive sets the name of the page
2262log file. If the filename is not absolute then it is assumed to
2263be relative to the <A
2264HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 2265default page log file is <VAR>@CUPS_LOGDIR@/page_log</VAR>.</P>
ef416fc2 2266
2267<P>The server name can be included in the filename by using
2268<CODE>%s</CODE> in the name.</P>
2269
2270<P>The special name "syslog" can be used to send the page
2271information to the system log instead of a plain file.</P>
2272
2273
01ce6322
MS
2274<H2 CLASS="title"><A NAME="PageLogFormat">PageLogFormat</A></H2>
2275
2276<H3>Examples</H3>
2277
2278<PRE CLASS="command">
2279PageLogFormat %p %j %u %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}
2280PageLogFormat PAGE %p %j %u %P %C %{job-billing} %{job-originating-host-name}
2281</PRE>
2282
2283<H3>Description</H3>
2284
2285<P>The <CODE>PageLogFormat</CODE> directive sets the format of lines
2286that are logged to the page log file. Sequences beginning with percent (%)
2287characters are replaced with the corresponding information, while all other
2288characters are copied literally. The following percent sequences are
2289recognized:</P>
2290
2291<UL>
2292
2293 <LI><CODE>%%</CODE>: Inserts a single percent character.</LI>
2294
2295 <LI><CODE>%{name}</CODE>: Inserts the value of the specified IPP
2296 attribute.</LI>
2297
2298 <LI><CODE>%C</CODE>: Inserts the number of copies for the current page.</LI>
2299
2300 <LI><CODE>%P</CODE>: Inserts the current page number.</LI>
2301
2302 <LI><CODE>%T</CODE>: Inserts the current date and time in common log
2303 format.</LI>
2304
2305 <LI><CODE>%j</CODE>: Inserts the job ID.</LI>
2306
2307 <LI><CODE>%p</CODE>: Inserts the printer name.</LI>
2308
2309 <LI><CODE>%u</CODE>: Inserts the username.</LI>
2310
2311</UL>
2312
2313<P>The default is "%p %j %u %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".</P>
2314
2315
480ef0fe 2316<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="PassEnv">PassEnv</A></H2>
2317
2318<H3>Examples</H3>
2319
2320<PRE CLASS="command">
2321PassEnv MY_ENV_VARIABLE
2322</PRE>
2323
2324<H3>Description</H3>
2325
2326<P>The <CODE>PassEnv</CODE> directive specifies an environment
2327variable that should be passed to child processes. Normally, the
2328scheduler only passes the <CODE>DYLD_LIBRARY_PATH</CODE>,
2329<CODE>LD_ASSUME_KERNEL</CODE>, <CODE>LD_LIBRARY_PATH</CODE>,
2330<CODE>LD_PRELOAD</CODE>, <CODE>NLSPATH</CODE>,
2331<CODE>SHLIB_PATH</CODE>, <CODE>TZ</CODE>, and <CODE>VGARGS</CODE>
2332environment variables to child processes.</P>
2333
2334
2335<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="Policy">Policy</A></H2>
ef416fc2 2336
480ef0fe 2337<H3>Examples</H3>
2338
2339<PRE CLASS="command">
2340&lt;Policy name&gt;
2341 &lt;Limit operation ... operation&gt;
2342 ...
2343 &lt;/Limit&gt;
2344 &lt;Limit operation ... operation&gt;
2345 ...
2346 &lt;/Limit&gt;
2347 &lt;Limit All&gt;
2348 ...
2349 &lt;/Limit&gt;
2350&lt;/Policy&gt;
2351</PRE>
2352
2353<H3>Description</H3>
2354
2355<P>The <CODE>Policy</CODE> directive specifies IPP operation
2356access control limits. Each policy contains 1 or more <A
2357HREF="#LimitIPP"><CODE>Limit</CODE></A> sections to set the
2358access control limits for specific operations - user limits,
2359authentication, encryption, and allowed/denied addresses,
2360domains, or hosts. The <CODE>&lt;Limit All&gt;</CODE> section
2361specifies the default access control limits for operations that
2362are not listed.</P>
2363
2364<P>Policies are named and associated with printers via the
2365printer's operation policy setting
2366(<CODE>printer-op-policy</CODE>). The default policy for the
2367scheduler is specified using the <A
2368HREF="#DefaultPolicy"><CODE>DefaultPolicy</CODE></A>
2369directive.</P>
2370
2371
2372<H2 CLASS="title"><A NAME="Port">Port</A></H2>
2373
2374<H3>Examples</H3>
ef416fc2 2375
2376<PRE CLASS="command">
2377Port 631
2378Port 80
2379</PRE>
2380
480ef0fe 2381<H3>Description</H3>
ef416fc2 2382
2383<P>The <CODE>Port</CODE> directive specifies a port to listen on.
2384Multiple <CODE>Port</CODE> lines can be specified to listen on
2385multiple ports. The <CODE>Port</CODE> directive is equivalent to
2386"<CODE>Listen *:nnn</CODE>". The default port is 631.</P>
2387
2388<BLOCKQUOTE><B>Note:</B>
2389
2390<P>On systems that support IPv6, this directive will bind to both
2391the IPv4 and IPv6 wildcard address.</P>
2392
2393</BLOCKQUOTE>
2394
2395
480ef0fe 2396<H2 CLASS="title"><A NAME="PreserveJobHistory">PreserveJobHistory</A></H2>
ef416fc2 2397
480ef0fe 2398<H3>Examples</H3>
ef416fc2 2399
2400<PRE CLASS="command">
2401PreserveJobHistory On
2402PreserveJobHistory Off
2403</PRE>
2404
480ef0fe 2405<H3>Description</H3>
ef416fc2 2406
2407<P>The <CODE>PreserveJobHistory</CODE> directive controls whether
2408the history of completed, canceled, or aborted print jobs is
2409stored on disk.</P>
2410
2411<P>A value of <CODE>On</CODE> (the default) preserves job
2412information until the administrator purges it with the
2413<CODE>cancel</CODE> command.</P>
2414
2415<P>A value of <CODE>Off</CODE> removes the job information as
2416soon as each job is completed, canceled, or aborted.</P>
2417
2418
480ef0fe 2419<H2 CLASS="title"><A NAME="PreserveJobFiles">PreserveJobFiles</A></H2>
ef416fc2 2420
480ef0fe 2421<H3>Examples</H3>
ef416fc2 2422
2423<PRE CLASS="command">
2424PreserveJobFiles On
2425PreserveJobFiles Off
2426</PRE>
2427
480ef0fe 2428<H3>Description</H3>
ef416fc2 2429
2430<P>The <CODE>PreserveJobFiles</CODE> directive controls whether
2431the document files of completed, canceled, or aborted print jobs
2432are stored on disk.</P>
2433
2434<P>A value of <CODE>On</CODE> preserves job files until the
2435administrator purges them with the <CODE>cancel</CODE> command.
2436Jobs can be restarted (and reprinted) as desired until they are
2437purged.</P>
2438
2439<P>A value of <CODE>Off</CODE> (the default) removes the job
2440files as soon as each job is completed, canceled, or aborted.</P>
2441
2442
480ef0fe 2443<H2 CLASS="title"><A NAME="Printcap">Printcap</A></H2>
ef416fc2 2444
480ef0fe 2445<H3>Examples</H3>
ef416fc2 2446
2447<PRE CLASS="command">
2448Printcap
2449Printcap /etc/printcap
2450Printcap /etc/printers.conf
0af14961 2451Printcap /Library/Preferences/org.cups.printers.plist
ef416fc2 2452</PRE>
2453
480ef0fe 2454<H3>Description</H3>
ef416fc2 2455
2456<P>The <CODE>Printcap</CODE> directive controls whether or not a
2457printcap file is automatically generated and updated with a list
2458of available printers. If specified with no value, then no
2459printcap file will be generated. The default is to generate a
0af14961 2460file named <VAR>@CUPS_DEFAUL_PRINTCAP@</VAR>.</P>
ef416fc2 2461
0af14961 2462<P>When a filename is specified (e.g. <VAR>@CUPS_DEFAULT_PRINTCAP@</VAR>),
ef416fc2 2463the printcap file is written whenever a printer is added or
2464removed. The printcap file can then be used by applications that
2465are hardcoded to look at the printcap file for the available
2466printers.</P>
2467
2468
480ef0fe 2469<H2 CLASS="title"><A NAME="PrintcapFormat">PrintcapFormat</A></H2>
ef416fc2 2470
480ef0fe 2471<H3>Examples</H3>
ef416fc2 2472
2473<PRE CLASS="command">
2474PrintcapFormat BSD
2475PrintcapFormat Solaris
0af14961 2476PrintcapFormat plist
ef416fc2 2477</PRE>
2478
480ef0fe 2479<H3>Description</H3>
ef416fc2 2480
0af14961
MS
2481<P>The <CODE>PrintcapFormat</CODE> directive controls the output format of the
2482printcap file. The default is to generate the plist format on Mac OS X, the
2483Solaris format on Solaris, and the BSD format on other operating systems.</P>
ef416fc2 2484
2485
480ef0fe 2486<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.13</SPAN><A NAME="PrintcapGUI">PrintcapGUI</A></H2>
2487
2488<H3>Examples</H3>
2489
2490<PRE CLASS="command">
2491PrintGUI /usr/bin/glpoptions
2492</PRE>
2493
2494<H3>Description</H3>
2495
2496<P>The <CODE>PrintcapGUI</CODE> directive sets the program to
2497associate with the IRIX printer GUI interface script which is
2498used by IRIX applications to display printer-specific options.
2499There is no default program.</P>
2500
2501
2502<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.21</SPAN><A NAME="ReloadTimeout">ReloadTimeout</A></H2>
2503
2504<H3>Examples</H3>
2505
2506<PRE CLASS="command">
2507ReloadTimeout 0
49d87452 2508ReloadTimeout 30
480ef0fe 2509</PRE>
2510
2511<H3>Description</H3>
2512
2513<P>The <CODE>ReloadTimeout</CODE> directive specifies the number
2514of seconds the scheduler will wait for active jobs to complete
49d87452 2515before doing a restart. The default is 30 seconds.</P>
ef416fc2 2516
480ef0fe 2517
2518<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="RemoteRoot">RemoteRoot</A></H2>
2519
2520<H3>Examples</H3>
ef416fc2 2521
2522<PRE CLASS="command">
2523RemoteRoot remroot
2524RemoteRoot root
2525</PRE>
2526
480ef0fe 2527<H3>Description</H3>
ef416fc2 2528
2529<P>The <CODE>RemoteRoot</CODE> directive sets the username for
2530unauthenticated root requests from remote hosts. The default
2531username is <VAR>remroot</VAR>. Setting <CODE>RemoteRoot</CODE>
2532to <VAR>root</VAR> effectively disables this security
2533mechanism.</P>
2534
2535
480ef0fe 2536<H2 CLASS="title"><A NAME="RequestRoot">RequestRoot</A></H2>
ef416fc2 2537
480ef0fe 2538<H3>Examples</H3>
ef416fc2 2539
2540<PRE CLASS="command">
2541RequestRoot /var/spool/cups
2542RequestRoot /foo/bar/spool/cups
2543</PRE>
2544
480ef0fe 2545<H3>Description</H3>
ef416fc2 2546
2547<P>The <CODE>RequestRoot</CODE> directive sets the directory for
2548incoming IPP requests and HTML forms. If an absolute path is not
2549provided then it is assumed to be relative to the <A
2550HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 2551default request directory is <VAR>@CUPS_REQUESTS@</VAR>.</P>
ef416fc2 2552
2553
480ef0fe 2554<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Require">Require</A></H2>
ef416fc2 2555
480ef0fe 2556<H3>Examples</H3>
ef416fc2 2557
2558<PRE CLASS="command">
480ef0fe 2559&lt;Location /path&gt;
2560 ...
2561 Require group foo bar
2562 Require user john mary
2563 Require valid-user
2564 Require user @groupname
2565 Require user @SYSTEM
2566 Require user @OWNER
2567&lt;/Location&gt;
ef416fc2 2568</PRE>
2569
480ef0fe 2570<H3>Description</H3>
ef416fc2 2571
2572<P>The <CODE>Require</CODE> directive specifies that
2573authentication is required for the resource. The
2574<CODE>group</CODE> keyword specifies that the authenticated user
2575must be a member of one or more of the named groups that
2576follow.</P>
2577
4b3f67ff 2578<P>The <CODE>user</CODE> keyword specifies that the
ef416fc2 2579authenticated user must be one of the named users or groups that
2580follow. Group names are specified using the "@" prefix.</P>
2581
2582<P>The <CODE>valid-user</CODE> keyword specifies that any
2583authenticated user may access the resource.</P>
2584
2585<P>The default is to do no authentication. This directive must
480ef0fe 2586appear inside a <A HREF="#Location"><CODE>Location</CODE></A> or
2587<A HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2588
2589
480ef0fe 2590<H2 CLASS="title"><A NAME="RIPCache">RIPCache</A></H2>
ef416fc2 2591
480ef0fe 2592<H3>Examples</H3>
ef416fc2 2593
2594<PRE CLASS="command">
2595RIPCache 8m
2596RIPCache 1g
2597RIPCache 2048k
2598</PRE>
2599
480ef0fe 2600<H3>Description</H3>
ef416fc2 2601
2602<P>The <CODE>RIPCache</CODE> directive sets the size of the
2603memory cache used by Raster Image Processor ("RIP") filters such
2604as <CODE>imagetoraster</CODE> and <CODE>pstoraster</CODE>. The
2605size can be suffixed with a "k" for kilobytes, "m" for megabytes,
2606or "g" for gigabytes. The default cache size is "8m", or 8
2607megabytes.</P>
2608
2609
480ef0fe 2610<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="RootCertDuration">RootCertDuration</A></H2>
2611
2612<H3>Examples</H3>
2613
2614<PRE CLASS="command">
2615RootCertDuration 0
2616RootCertDuration 300
2617</PRE>
2618
2619<H3>Description</H3>
2620
2621<P>The <CODE>RootCertDuration</CODE> directive specifies the
2622number of seconds the <EM>root certificate</EM> remains valid.
2623The scheduler will generate a new certificate as needed when the
2624number of seconds has expired. If set to 0, the root certificate
2625is generated only once on startup or on a restart. The default is
2626300 seconds.</P>
2627
2628
2629<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Satisfy">Satisfy</A></H2>
ef416fc2 2630
480ef0fe 2631<H3>Examples</H3>
ef416fc2 2632
2633<PRE CLASS="command">
480ef0fe 2634&lt;Location /path&gt;
2635 ...
2636 Satisfy all
2637 Satisfy any
2638&lt;/Location&gt;
ef416fc2 2639</PRE>
2640
480ef0fe 2641<H3>Description</H3>
ef416fc2 2642
2643<P>The <CODE>Satisfy</CODE> directive specifies whether all
2644conditions must be satisfied to allow access to the resource. If
2645set to <CODE>all</CODE>, then all authentication and access
2646control conditions must be satified to allow access.</P>
2647
2648<P>Setting <CODE>Satisfy</CODE> to <CODE>any</CODE> allows a user
2649to gain access if the authentication or access control
2650requirements are satisfied. For example, you might require
2651authentication for remote access, but allow local access without
2652authentication.</P>
2653
2654<P>The default is <CODE>all</CODE>. This directive must appear
480ef0fe 2655inside a <A HREF="#Location"><CODE>Location</CODE></A> or <A
2656HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2657
2658
480ef0fe 2659<H2 CLASS="title"><A NAME="ServerAdmin">ServerAdmin</A></H2>
ef416fc2 2660
480ef0fe 2661<H3>Examples</H3>
ef416fc2 2662
2663<PRE CLASS="command">
2664ServerAdmin user@host
2665ServerAdmin root@foo.bar.com
2666</PRE>
2667
480ef0fe 2668<H3>Description</H3>
ef416fc2 2669
2670<P>The <CODE>ServerAdmin</CODE> directive identifies the email
2671address for the administrator on the system. By default the
2672administrator email address is <CODE>root@server</CODE>, where
480ef0fe 2673<CODE>server</CODE> is the <A
2674HREF="#ServerName"><CODE>ServerName</CODE></A>.</P>
ef416fc2 2675
2676
480ef0fe 2677<H2 CLASS="title"><A NAME="ServerBin">ServerBin</A></H2>
ef416fc2 2678
480ef0fe 2679<H3>Examples</H3>
ef416fc2 2680
2681<PRE CLASS="command">
2682ServerBin /usr/lib/cups
2683ServerBin /foo/bar/lib/cups
2684</PRE>
2685
480ef0fe 2686<H3>Description</H3>
ef416fc2 2687
2688<P>The <CODE>ServerBin</CODE> directive sets the directory for
2689server-run executables. If an absolute path is not provided then
2690it is assumed to be relative to the <A
2691HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
480ef0fe 2692default executable directory is <VAR>/usr/lib/cups</VAR>,
2693<VAR>/usr/lib32/cups</VAR>, or <VAR>/usr/libexec/cups</VAR>
2694depending on the operating system.</P>
ef416fc2 2695
2696
480ef0fe 2697<H2 CLASS="title"><A NAME="ServerCertificate">ServerCertificate</A></H2>
ef416fc2 2698
480ef0fe 2699<H3>Examples</H3>
ef416fc2 2700
2701<PRE CLASS="command">
2702ServerCertificate /etc/cups/ssl/server.crt
2703</PRE>
2704
480ef0fe 2705<H3>Description</H3>
ef416fc2 2706
2707<P>The <CODE>ServerCertificate</CODE> directive specifies the
2708location of the SSL certificate file used by the server when
2709negotiating encrypted connections. The certificate must not be
2710encrypted (password protected) since the scheduler normally runs
2711in the background and will be unable to ask for a password.</P>
2712
2713<P>The default certificate file is
2714<VAR>/etc/cups/ssl/server.crt</VAR>.</P>
2715
2716
480ef0fe 2717<H2 CLASS="title"><A NAME="ServerKey">ServerKey</A></H2>
ef416fc2 2718
480ef0fe 2719<H3>Examples</H3>
ef416fc2 2720
2721<PRE CLASS="command">
2722ServerKey /etc/cups/ssl/server.key
2723</PRE>
2724
480ef0fe 2725<H3>Description</H3>
ef416fc2 2726
2727<P>The <CODE>ServerKey</CODE> directive specifies the location of
2728the SSL private key file used by the server when negotiating
2729encrypted connections.</P>
2730
2731<P>The default key file is
2732<VAR>/etc/cups/ssl/server.crt</VAR>.</P>
2733
2734
b86bc4cf 2735<H2 CLASS="title"><A NAME="ServerName">ServerName</A></H2>
ef416fc2 2736
480ef0fe 2737<H3>Examples</H3>
ef416fc2 2738
2739<PRE CLASS="command">
2740ServerName foo.domain.com
2741ServerName myserver.domain.com
2742</PRE>
2743
480ef0fe 2744<H3>Description</H3>
ef416fc2 2745
2746<P>The <CODE>ServerName</CODE> directive specifies the hostname
2747that is reported to clients. By default the server name is the
2748hostname.</P>
2749
2750
480ef0fe 2751<H2 CLASS="title"><A NAME="ServerRoot">ServerRoot</A></H2>
ef416fc2 2752
480ef0fe 2753<H3>Examples</H3>
ef416fc2 2754
2755<PRE CLASS="command">
2756ServerRoot /etc/cups
2757ServerRoot /foo/bar/cups
2758</PRE>
2759
480ef0fe 2760<H3>Description</H3>
ef416fc2 2761
2762<P>The <CODE>ServerRoot</CODE> directive specifies the absolute
2763path to the server configuration and state files. It is also used
2764to resolve relative paths in the <VAR>cupsd.conf</VAR> file. The
2765default server directory is <VAR>/etc/cups</VAR>.</P>
2766
2767
480ef0fe 2768<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.21</SPAN><A NAME="ServerTokens">ServerTokens</A></H2>
2769
2770<H3>Examples</H3>
2771
2772<PRE CLASS="command">
2773ServerTokens None
2774ServerTokens ProductOnly
2775ServerTokens Major
2776ServerTokens Minor
2777ServerTokens Minimal
2778ServerTokens OS
2779ServerTokens Full
2780</PRE>
2781
2782<H3>Description</H3>
2783
2784<P>The <CODE>ServerTokens</CODE> directive specifies the
2785information that is included in the <CODE>Server:</CODE> header
2786of all HTTP responses. Table 4 lists the token name along with
2787the text that is returned. The default is
2788<CODE>Minimal</CODE>.</P>
2789
2790<DIV CLASS="table"><TABLE SUMMARY="ServerToken Names and Values">
2791<CAPTION>Table 4: <A NAME="TABLE4">ServerToken Names and Values</A></CAPTION>
2792<THEAD>
2793<TR>
2794 <TH>Name</TH>
2795 <TH>Value</TH>
2796</TR>
2797</THEAD>
2798<TBODY>
2799<TR>
2800 <TD>None</TD>
2801 <TD>No <CODE>Server:</CODE> header is returned</TD>
2802</TR>
2803<TR>
2804 <TD>ProductOnly</TD>
2805 <TD>"CUPS"</TD>
2806</TR>
2807<TR>
2808 <TD>Major</TD>
2809 <TD>"CUPS 1"</TD>
2810</TR>
2811<TR>
2812 <TD>Minor</TD>
2813 <TD>"CUPS 1.2"</TD>
2814</TR>
2815<TR>
2816 <TD>Minimal</TD>
2817 <TD>"CUPS 1.2.N" where N is the patch release</TD>
2818</TR>
2819<TR>
2820 <TD>OS</TD>
2821 <TD>"CUPS 1.2.N (UNAME)" where N is the patch release and
2822 UNAME is the output of the <B>uname(1)</B> command</TD>
2823</TR>
2824<TR>
2825 <TD>Full</TD>
2826 <TD>"CUPS 1.2.N (UNAME) IPP/1.1" where N is the patch
2827 release and UNAME is the output of the <B>uname(1)</B>
2828 command</TD>
2829</TR>
2830</TBODY>
2831</TABLE></DIV>
2832
2833
2834<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="SetEnv">SetEnv</A></H2>
2835
2836<H3>Examples</H3>
2837
2838<PRE CLASS="command">
2839SetEnv PATH /usr/lib/cups/filter:/bin:/usr/bin:/usr/local/bin
2840SetEnv MY_ENV_VAR foo
2841</PRE>
2842
2843<H3>Description</H3>
2844
2845<P>The <CODE>SetEnv</CODE> directive specifies an environment
2846variable that should be passed to child processes.</P>
2847
2848
b19ccc9e 2849<H2 CLASS="title"><A NAME="SSLOptions">SSLOptions</A></H2>
ef416fc2 2850
480ef0fe 2851<H3>Examples</H3>
ef416fc2 2852
2853<PRE CLASS="command">
b19ccc9e
MS
2854SSLOptions 127.0.0.1:443
2855SSLOptions 192.0.2.1:443
ef416fc2 2856</PRE>
2857
480ef0fe 2858<H3>Description</H3>
ef416fc2 2859
b19ccc9e 2860<P>The <CODE>SSLOptions</CODE> directive specifies a network
ef416fc2 2861address and port to listen for secure connections. Multiple
b19ccc9e 2862<CODE>SSLOptions</CODE> directives can be provided to listen on
ef416fc2 2863multiple addresses.</P>
2864
b19ccc9e 2865<P>The <CODE>SSLOptions</CODE> directive is similar to the <A
ef416fc2 2866HREF="#SSLPort"><CODE>SSLPort</CODE></A> directive but allows you
2867to restrict access to specific interfaces or networks.</P>
2868
2869
b19ccc9e
MS
2870<H2 CLASS="title"><A NAME="SSLOptions">SSLOptions</A></H2>
2871
2872<H3>Examples</H3>
2873
2874<PRE CLASS="command">
2875SSLOptions None
2876SSLOptions NoEmptyFragments
2877</PRE>
2878
2879<H3>Description</H3>
2880
2881<P>The <CODE>SSLOptions</CODE> directive specifies additional SSL/TLS
2882protocol options to use for encrypted connected. Currently only two
2883options are supported - <code>None</code> (the default) for the most
2884secure mode and <code>NoEmptyFragments</code> to allow CUPS to work with
2885Microsoft Windows with the FIPS conformance mode enabled.</p>
2886
2887
480ef0fe 2888<H2 CLASS="title"><A NAME="SSLPort">SSLPort</A></H2>
ef416fc2 2889
480ef0fe 2890<H3>Examples</H3>
ef416fc2 2891
2892<PRE CLASS="command">
2893SSLPort 443
2894</PRE>
2895
480ef0fe 2896<H3>Description</H3>
ef416fc2 2897
2898<P>The <CODE>SSLPort</CODE> directive specifies a port to listen
2899on for secure connections. Multiple <CODE>SSLPort</CODE> lines
2900can be specified to listen on multiple ports.</P>
2901
2902
480ef0fe 2903<H2 CLASS="title"><A NAME="SystemGroup">SystemGroup</A></H2>
ef416fc2 2904
480ef0fe 2905<H3>Examples</H3>
ef416fc2 2906
2907<PRE CLASS="command">
2908SystemGroup lpadmin
2909SystemGroup sys
2910SystemGroup system
2911SystemGroup root
480ef0fe 2912SystemGroup root lpadmin
ef416fc2 2913</PRE>
2914
480ef0fe 2915<H3>Description</H3>
ef416fc2 2916
2917<P>The <CODE>SystemGroup</CODE> directive specifies the system
480ef0fe 2918administration group for <CODE>System</CODE> authentication.
2919Multiple groups can be listed, separated with spaces. The default
b94498cf 2920group list is <CODE>@CUPS_SYSTEM_GROUPS@</CODE>.</P>
ef416fc2 2921
2922
480ef0fe 2923<H2 CLASS="title"><A NAME="TempDir">TempDir</A></H2>
ef416fc2 2924
480ef0fe 2925<H3>Examples</H3>
ef416fc2 2926
2927<PRE CLASS="command">
2928TempDir /var/tmp
2929TempDir /foo/bar/tmp
2930</PRE>
2931
480ef0fe 2932<H3>Description</H3>
ef416fc2 2933
2934<P>The <CODE>TempDir</CODE> directive specifies an absolute path
2935for the directory to use for temporary files. The default
b94498cf 2936directory is <VAR>@CUPS_REQUESTS@/tmp</VAR>.</P>
ef416fc2 2937
2938<P>Temporary directories must be world-writable and should have
2939the "sticky" permission bit enabled so that other users cannot
2940delete filter temporary files. The following commands will create
2941an appropriate temporary directory called
2942<VAR>/foo/bar/tmp</VAR>:</P>
2943
2944<PRE CLASS="command">
2945<KBD>mkdir /foo/bar/tmp</KBD>
2946<KBD>chmod a+rwxt /foo/bar/tmp</KBD>
2947</PRE>
2948
2949
480ef0fe 2950<H2 CLASS="title"><A NAME="Timeout">Timeout</A></H2>
ef416fc2 2951
480ef0fe 2952<H3>Examples</H3>
ef416fc2 2953
2954<PRE CLASS="command">
2955Timeout 300
2956Timeout 90
2957</PRE>
2958
480ef0fe 2959<H3>Description</H3>
ef416fc2 2960
2961<P>The <CODE>Timeout</CODE> directive controls the amount of time
2962to wait before an active HTTP or IPP request times out. The
2963default timeout is 300 seconds.</P>
2964
2965
a74454a7 2966<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2</SPAN><A NAME="UseNetworkDefault">UseNetworkDefault</A></H2>
2967
2968<H3>Examples</H3>
2969
2970<PRE CLASS="command">
2971UseNetworkDefault yes
2972UseNetworkDefault no
2973</PRE>
2974
2975<H3>Description</H3>
2976
2977<P>The <CODE>UseNetworkDefault</CODE> directive controls whether
2978the client will use a network/remote printer as a default
2979printer. If enabled, the default printer of a server is used as
2980the default printer on a client. When multiple servers are
2981advertising a default printer, the client's default printer is
2982set to the first discovered printer, or to the implicit class for
2983the same printer available from multiple servers.</P>
2984
b94498cf 2985<P>The default is <CODE>@CUPS_USE_NETWORK_DEFAULT@</CODE>.</P>
a74454a7 2986
2987
480ef0fe 2988<H2 CLASS="title"><A NAME="User">User</A></H2>
ef416fc2 2989
480ef0fe 2990<H3>Examples</H3>
ef416fc2 2991
2992<PRE CLASS="command">
2993User lp
2994User guest
2995</PRE>
2996
480ef0fe 2997<H3>Description</H3>
ef416fc2 2998
2999<P>The <CODE>User</CODE> directive specifies the UNIX user that
3000filter and CGI programs run as. The default user is
b94498cf 3001<CODE>@CUPS_USER@</CODE>.</P>
ef416fc2 3002
3003<BLOCKQUOTE><B>Note:</B>
3004
3005<P>You may not use user <CODE>root</CODE>, as that would expose
3006the system to unacceptable security risks. The scheduler will
3007automatically choose user <CODE>nobody</CODE> if you specify a
3008user whose ID is 0.</P>
3009
3010</BLOCKQUOTE>
3011
3012
3013</BODY>
3014</HTML>