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