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