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