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