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