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