]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/ref-cupsd-conf.html.in
Merge changes from CUPS 1.7svn-r10643
[thirdparty/cups.git] / doc / help / ref-cupsd-conf.html.in
CommitLineData
ef416fc2 1<HTML>
2<!-- SECTION: References -->
3<HEAD>
4 <TITLE>cupsd.conf</TITLE>
178cb736 5 <LINK REL="STYLESHEET" TYPE="text/css" HREF="../cups-printable.css">
ef416fc2 6</HEAD>
7<BODY>
8
178cb736 9<H1 CLASS="title">cupsd.conf</H1>
bd7854cb 10
ef416fc2 11<P>The <VAR>/etc/cups/cupsd.conf</VAR> file contains
12configuration <I>directives</I> that control how the server
13functions. Each directive is listed on a line by itself followed
14by its value. Comments are introduced using the number sign ("#")
15character at the beginning of a line.</P>
16
17<P>Since the server configuration file consists of plain text,
18you can use your favorite text editor to make changes to it.
19After making any changes, restart the <CODE>cupsd(8)</CODE>
20process using the startup script for your operating system:</P>
21
22<UL>
23
3dd9c340 24 <LI>AIX, Linux, Solaris:
ef416fc2 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
ef416fc2 34 <LI>MacOS X:
35 <PRE CLASS="command">
568fa3fa
MS
36sudo launchctl unload /System/Library/LaunchDaemons/org.cups.cupsd.plist
37sudo launchctl load /System/Library/LaunchDaemons/org.cups.cupsd.plist
ef416fc2 38 </PRE></LI>
39
ef416fc2 40</UL>
41
42<P>You can also edit this file from the CUPS web interface, which
43automatically handles restarting the scheduler.</P>
44
82cc1f9a
MS
45<BLOCKQUOTE><B>Note:</B>
46
f3c17241 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>
82cc1f9a
MS
48
49</BLOCKQUOTE>
50
ef416fc2 51
480ef0fe 52<H2 CLASS="title"><A NAME="AccessLog">AccessLog</A></H2>
ef416fc2 53
480ef0fe 54<H3>Examples</H3>
ef416fc2 55
56<PRE CLASS="command">
57AccessLog /var/log/cups/access_log
58AccessLog /var/log/cups/access_log-%s
59AccessLog syslog
60</PRE>
61
480ef0fe 62<H3>Description</H3>
ef416fc2 63
64<P>The <CODE>AccessLog</CODE> directive sets the name of the
65access log file. If the filename is not absolute then it is
66assumed to be relative to the <A
67HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
68access log file is stored in "common log format" and can be used
69by any web access reporting tool to generate a report on CUPS
70server 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
76information to the system log instead of a plain file.</P>
77
78<P>The default access log file is
b94498cf 79<VAR>@CUPS_LOGDIR@/access_log</VAR>.</P>
ef416fc2 80
81
1f0275e3
MS
82<H2 CLASS="title"><A NAME="AccessLogLevel">AccessLogLevel</A></H2>
83
84<H3>Examples</H3>
85
86<PRE CLASS="command">
87AccessLogLevel config
88AccessLogLevel actions
89AccessLogLevel all
90</PRE>
91
92<H3>Description</H3>
93
94<P>The <CODE>AccessLogLevel</CODE> directive controls which requests are logged
95to 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
480ef0fe 114<H2 CLASS="title"><A NAME="Allow">Allow</A></H2>
ef416fc2 115
480ef0fe 116<H3>Examples</H3>
ef416fc2 117
118<PRE CLASS="command">
480ef0fe 119&lt;Location /path&gt;
120 ...
121 Allow from All
122 Allow from None
eac3a0a0
MS
123 Allow from *.example.com
124 Allow from .example.com
125 Allow from host.example.com
480ef0fe 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
5a662dc0
MS
132 Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]
133 Allow from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]/mmm
480ef0fe 134 Allow from @LOCAL
135 Allow from @IF(name)
136&lt;/Location&gt;
ef416fc2 137</PRE>
138
480ef0fe 139<H3>Description</H3>
ef416fc2 140
480ef0fe 141<P>The <CODE>Allow</CODE> directive specifies a hostname, IP
eac3a0a0
MS
142address, or network that is allowed access to the server.
143<CODE>Allow</CODE> directives are cumulative, so multiple
480ef0fe 144<CODE>Allow</CODE> directives can be used to allow access for
f701418f
MS
145multiple hosts or networks.</P>
146
147<P>Host and domain name matching require that you enable the <A
148HREF="#HostNameLookups"><CODE>HostNameLookups</CODE></A>
149directive.</P>
150
151<P>The <CODE>/mm</CODE> notation specifies a CIDR netmask, as shown in
152<A HREF="#TABLE1">Table 1</A>.</P>
ef416fc2 153
480ef0fe 154<DIV CLASS="table"><TABLE SUMMARY="CIDR Netmasks">
155<CAPTION>Table 1: <A NAME="TABLE1">CIDR Netmasks</A></CAPTION>
ef416fc2 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
189interfaces. The <CODE>@IF(name)</CODE> name will allow access
2abf387c 190from the named interface. In both cases, CUPS only allows access
191from the network that the interface(s) are configured for -
192requests arriving on the interface from a foreign network will
193<em>not</em> be accepted.</P>
ef416fc2 194
195<P>The <CODE>Allow</CODE> directive must appear inside a <A
480ef0fe 196HREF="#Location"><CODE>Location</CODE></A> or <A
197HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 198
199
480ef0fe 200<H2 CLASS="title"><SPAN CLASS="info">Deprecated</SPAN><A NAME="AuthClass">AuthClass</A></H2>
ef416fc2 201
480ef0fe 202<H3>Examples</H3>
ef416fc2 203
204<PRE CLASS="command">
480ef0fe 205&lt;Location /path&gt;
206 ...
207 AuthClass Anonymous
208 AuthClass User
209 AuthClass System
210 AuthClass Group
211&lt;/Location&gt;
ef416fc2 212</PRE>
213
480ef0fe 214<H3>Description</H3>
ef416fc2 215
216<P>The <CODE>AuthClass</CODE> directive defines what level of
217authentication 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
480ef0fe 242HREF="#Location"><CODE>Location</CODE></A> or <A
243HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 244
245<P><B>This directive is deprecated and will be removed from a
246future release of CUPS.</B> Consider using the more flexible <A
247HREF="#Require"><CODE>Require</CODE></A> directive instead.</P>
248
249
480ef0fe 250<H2 CLASS="title"><SPAN CLASS="info">Deprecated</SPAN><A NAME="AuthGroupName">AuthGroupName</A></H2>
ef416fc2 251
480ef0fe 252<H3>Examples</H3>
ef416fc2 253
254<PRE CLASS="command">
480ef0fe 255&lt;Location /path&gt;
256 ...
257 AuthGroupName mygroup
258 AuthGroupName lp
259&lt;/Location&gt;
ef416fc2 260</PRE>
261
480ef0fe 262<H3>Description</H3>
ef416fc2 263
264<P>The <CODE>AuthGroupName</CODE> directive sets the group to use
265for <CODE>Group</CODE> authentication.</P>
266
267<P>The <CODE>AuthGroupName</CODE> directive must appear inside a
480ef0fe 268<A HREF="#Location"><CODE>Location</CODE></A> or <A
269HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 270
271<P><B>This directive is deprecated and will be removed from a
272future release of CUPS.</B> Consider using the more flexible <A
273HREF="#Require"><CODE>Require</CODE></A> directive instead.</P>
274
275
480ef0fe 276<H2 CLASS="title"><A NAME="AuthType">AuthType</A></H2>
ef416fc2 277
480ef0fe 278<H3>Examples</H3>
ef416fc2 279
280<PRE CLASS="command">
480ef0fe 281&lt;Location /path&gt;
282 ...
283 AuthType None
284 AuthType Basic
285 AuthType Digest
286 AuthType BasicDigest
f7deaa1a 287 AuthType Negotiate
480ef0fe 288&lt;/Location&gt;
ef416fc2 289</PRE>
290
480ef0fe 291<H3>Description</H3>
ef416fc2 292
293<P>The <CODE>AuthType</CODE> directive defines the type of
294authentication 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
f7deaa1a 312 <LI><CODE>Negotiate</CODE> - Kerberos authentication
313 should be performed</LI>
314
ef416fc2 315</UL>
316
f7deaa1a 317<P>When using <CODE>Basic</CODE>, <CODE>Digest</CODE>,
318<CODE>BasicDigest</CODE>, or <CODE>Negotiate</CODE> authentication,
319clients connecting through the <CODE>localhost</CODE> interface can
320also authenticate using certificates.</P>
ef416fc2 321
322<P>The <CODE>AuthType</CODE> directive must appear inside a <A
480ef0fe 323HREF="#Location"><CODE>Location</CODE></A> or <A
324HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 325
326
480ef0fe 327<H2 CLASS="title"><A NAME="AutoPurgeJobs">AutoPurgeJobs</A></H2>
ef416fc2 328
480ef0fe 329<H3>Examples</H3>
ef416fc2 330
331<PRE CLASS="command">
332AutoPurgeJobs Yes
333AutoPurgeJobs No
334</PRE>
335
480ef0fe 336<H3>Description</H3>
ef416fc2 337
338<P>The <CODE>AutoPurgeJobs</CODE> directive specifies whether or
339not to purge completed jobs once they are no longer required for
340quotas. This option has no effect if quotas are not enabled. The
341default setting is <CODE>No</CODE>.</P>
342
343
f3c17241 344<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="BrowseLocalProtocols">BrowseLocalProtocols</A></H2>
480ef0fe 345
346<H3>Examples</H3>
347
348<PRE CLASS="command">
349BrowseLocalProtocols all
350BrowseLocalProtocols none
a41f09e2 351BrowseLocalProtocols dnssd
480ef0fe 352</PRE>
353
354<H3>Description</H3>
355
356<P>The <CODE>BrowseLocalProtocols</CODE> directive specifies the
357protocols to use when advertising local shared printers on the
358network. Multiple protocols can be specified by separating them
d2354e63 359with spaces. The default is "<CODE>@CUPS_BROWSE_LOCAL_PROTOCOLS@</CODE>".</P>
480ef0fe 360
361
b19ccc9e
MS
362<H2 CLASS="title"><A NAME="BrowseWebIF">BrowseWebIF</A></H2>
363
364<H3>Examples</H3>
365
366<PRE CLASS="command">
367BrowseWebIF On
368BrowseWebIF Off
369</PRE>
370
371<H3>Description</H3>
372
373<P>The <CODE>BrowseWebIF</CODE> directive controls whether the CUPS web
374interface is advertised via DNS-SD. The default setting is
375<CODE>Off</CODE>.</P>
376
377
480ef0fe 378<H2 CLASS="title"><A NAME="Browsing">Browsing</A></H2>
ef416fc2 379
480ef0fe 380<H3>Examples</H3>
ef416fc2 381
382<PRE CLASS="command">
383Browsing On
384Browsing Off
385</PRE>
386
480ef0fe 387<H3>Description</H3>
ef416fc2 388
389<P>The <CODE>Browsing</CODE> directive controls whether or not
a2326b5b 390printer sharing is enabled. The default setting is
b94498cf 391<CODE>@CUPS_BROWSING@</CODE>.</P>
ef416fc2 392
ef416fc2 393
480ef0fe 394<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Classification">Classification</A></H2>
ef416fc2 395
480ef0fe 396<H3>Examples</H3>
ef416fc2 397
398<PRE CLASS="command">
399Classification
400Classification classified
401Classification confidential
402Classification secret
403Classification topsecret
404Classification unclassified
405</PRE>
406
480ef0fe 407<H3>Description</H3>
ef416fc2 408
409<P>The <CODE>Classification</CODE> directive sets the
410classification level on the server. When this option is set, at
411least one of the banner pages is forced to the classification
412level, and the classification is placed on each page of output.
413The default is no classification level.</P>
414
415
480ef0fe 416<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.10</SPAN><A NAME="ClassifyOverride">ClassifyOverride</A></H2>
ef416fc2 417
480ef0fe 418<H3>Examples</H3>
ef416fc2 419
420<PRE CLASS="command">
421ClassifyOverride Yes
422ClassifyOverride No
423</PRE>
424
480ef0fe 425<H3>Description</H3>
ef416fc2 426
427<P>The <CODE>ClassifyOverride</CODE> directive specifies whether
428users can override the default classification level on the
429server. When the server classification is set, users can change
430the classification using the <CODE>job-sheets</CODE> option and
431can choose to only print one security banner before or after the
432job. If the <CODE>job-sheets</CODE> option is set to
433<CODE>none</CODE> then the server default classification is
434used.</P>
435
436<P>The default is to not allow classification overrides.</P>
437
438
480ef0fe 439<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.15</SPAN><A NAME="ConfigFilePerm">ConfigFilePerm</A></H2>
ef416fc2 440
480ef0fe 441<H3>Examples</H3>
ef416fc2 442
443<PRE CLASS="command">
444ConfigFilePerm 0644
480ef0fe 445ConfigFilePerm 0640
ef416fc2 446</PRE>
447
480ef0fe 448<H3>Description</H3>
ef416fc2 449
12f89d24
MS
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>
ef416fc2 457
458
480ef0fe 459<H2 CLASS="title"><A NAME="DataDir">DataDir</A></H2>
ef416fc2 460
480ef0fe 461<H3>Examples</H3>
ef416fc2 462
463<PRE CLASS="command">
464DataDir /usr/share/cups
465</PRE>
466
480ef0fe 467<H3>Description</H3>
ef416fc2 468
469<P>The <CODE>DataDir</CODE> directive sets the directory to use
470for data files.</P>
471
472
f3c17241 473<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultAuthType">DefaultAuthType</A></H2>
480ef0fe 474
475<H3>Examples</H3>
476
477<PRE CLASS="command">
478DefaultAuthType Basic
479DefaultAuthType BasicDigest
480DefaultAuthType Digest
f7deaa1a 481DefaultAuthType Negotiate
480ef0fe 482</PRE>
483
484<H3>Description</H3>
485
486<P>The <CODE>DefaultAuthType</CODE> directive specifies the type
487of authentication to use for IPP operations that require a
488username. The default is <CODE>Basic</CODE>.</P>
ef416fc2 489
480ef0fe 490
f3c17241 491<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultEncryption">DefaultEncryption</A></H2>
480ef0fe 492
493<H3>Examples</H3>
494
495<PRE CLASS="command">
496DefaultEncryption Never
497DefaultEncryption IfRequested
498DefaultEncryption Required
499</PRE>
500
501<H3>Description</H3>
502
503<P>The <CODE>DefaultEncryption</CODE> directive specifies the
504type of encryption to use when performing authentication. The
505default is <CODE>Required</CODE>.</P>
506
ef416fc2 507
480ef0fe 508<H2 CLASS="title"><A NAME="DefaultLanguage">DefaultLanguage</A></H2>
509
510<H3>Examples</H3>
ef416fc2 511
512<PRE CLASS="command">
513DefaultLanguage de
514DefaultLanguage en
515DefaultLanguage es
516DefaultLanguage fr
517DefaultLanguage it
518</PRE>
519
480ef0fe 520<H3>Description</H3>
ef416fc2 521
522<P>The <CODE>DefaultLanguage</CODE> directive specifies the
523default language to use for client connections. Setting the
524default language also sets the default character set if a
525language localization file exists for it. The default language
526is "en" for English.</P>
527
528
f3c17241 529<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="DefaultPaperSize">DefaultPaperSize</A></H2>
49d87452
MS
530
531<H3>Examples</H3>
532
533<PRE CLASS="command">
534DefaultPaperSize Letter
535DefaultPaperSize A4
536DefaultPaperSize Auto
537DefaultPaperSize None
538</PRE>
539
540<H3>Description</H3>
541
542<P>The <CODE>DefaultPaperSize</CODE> directive specifies the default paper
543size to use when creating new printers. The default is <CODE>Auto</CODE>
544which uses a paper size appropriate for the system default locale. A value
545of <CODE>None</CODE> tells the scheduler to not set the default paper
546size.</P>
547
548
f3c17241 549<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultPolicy">DefaultPolicy</A></H2>
480ef0fe 550
551<H3>Examples</H3>
552
553<PRE CLASS="command">
554DefaultPolicy default
0268488e 555DefaultPolicy authenticated
480ef0fe 556DefaultPolicy foo
557</PRE>
558
559<H3>Description</H3>
560
561<P>The <CODE>DefaultPolicy</CODE> directive specifies the default
562policy to use for IPP operation. The default is
0268488e
MS
563<CODE>default</CODE>. CUPS also includes a policy called
564<CODE>authenticated</CODE> that requires a username and password for printing
565and other job operations.</P>
480ef0fe 566
567
f3c17241 568<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="DefaultShared">DefaultShared</A></H2>
a74454a7 569
570<H3>Examples</H3>
571
572<PRE CLASS="command">
573DefaultShared yes
574DefaultShared no
575</PRE>
576
577<H3>Description</H3>
578
579<P>The <CODE>DefaultShared</CODE> directive specifies whether
580printers are shared (published) by default. The default is
b94498cf 581<CODE>@CUPS_DEFAULT_SHARED@</CODE>.</P>
a74454a7 582
583
480ef0fe 584<H2 CLASS="title"><A NAME="Deny">Deny</A></H2>
ef416fc2 585
480ef0fe 586<H3>Examples</H3>
ef416fc2 587
588<PRE CLASS="command">
480ef0fe 589&lt;Location /path&gt;
590 ..
591 Deny from All
592 Deny from None
eac3a0a0
MS
593 Deny from *.example.com
594 Deny from .example.com
595 Deny from host.example.com
480ef0fe 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
5a662dc0
MS
602 Deny from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]
603 Deny from [xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx]/mmm
480ef0fe 604 Deny from @LOCAL
605 Deny from @IF(name)
606&lt;/Location&gt;
ef416fc2 607</PRE>
608
480ef0fe 609<H3>Description</H3>
ef416fc2 610
611<P>The <CODE>Deny</CODE> directive specifies a hostname, IP
dd1abb6b 612address, or network that is denied access to the server.
eac3a0a0 613<CODE>Deny</CODE> directives are cumulative, so multiple
0268488e 614<CODE>Deny</CODE> directives can be used to deny access for
f701418f
MS
615multiple hosts or networks.</P>
616
617<P>Host and domain name matching require that you enable the <A
618HREF="#HostNameLookups"><CODE>HostNameLookups</CODE></A>
619directive.</P>
620
621<P>The <CODE>/mm</CODE> notation specifies a CIDR netmask, a shown in
622<A HREF="TABLE1">Table 1</A>.</P>
ef416fc2 623
624<P>The <CODE>@LOCAL</CODE> name will deny access from all local
625interfaces. The <CODE>@IF(name)</CODE> name will deny access from
2abf387c 626the named interface. In both cases, CUPS only denies access from
627the network that the interface(s) are configured for - requests
628arriving on the interface from a foreign network will
629<em>not</em> be denied.</P>
ef416fc2 630
631<P>The <CODE>Deny</CODE> directive must appear inside a <A
480ef0fe 632HREF="#Location"><CODE>Location</CODE></A> or <A
633HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 634
635
f3c17241 636<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="DirtyCleanInterval">DirtyCleanInterval</A></H2>
3dfe78b3
MS
637
638<H3>Examples</H3>
639
640<PRE CLASS="command">
82cc1f9a
MS
641DirtyCleanInterval 1w
642DirtyCleanInterval 1d
643DirtyCleanInterval 1h
644DirtyCleanInterval 1m
49d87452 645DirtyCleanInterval 30
3dfe78b3
MS
646DirtyCleanInterval 0
647</PRE>
648
649<H3>Description</H3>
650
82cc1f9a
MS
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>
3dfe78b3
MS
654
655
480ef0fe 656<H2 CLASS="title"><A NAME="DocumentRoot">DocumentRoot</A></H2>
ef416fc2 657
480ef0fe 658<H3>Examples</H3>
ef416fc2 659
660<PRE CLASS="command">
661DocumentRoot /usr/share/doc/cups
662DocumentRoot /foo/bar/doc/cups
663</PRE>
664
480ef0fe 665<H3>Description</H3>
ef416fc2 666
667<P>The <CODE>DocumentRoot</CODE> directive specifies the location
668of web content for the HTTP server in CUPS. If an absolute path
669is not specified then it is assumed to be relative to the <A
670HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 671default directory is <VAR>@CUPS_DOCROOT@</VAR>.</P>
ef416fc2 672
673<P>Documents are first looked up in a sub-directory for the
674primary language requested by the client (e.g.
b94498cf 675<VAR>@CUPS_DOCROOT@/fr/...</VAR>) and then directly under
ef416fc2 676the <CODE>DocumentRoot</CODE> directory (e.g.
b94498cf 677<VAR>@CUPS_DOCROOT@/...</VAR>), so it is possible to
ef416fc2 678localize the web content by providing subdirectories for each
679language needed.</P>
680
681
480ef0fe 682<H2 CLASS="title"><A NAME="Encryption">Encryption</A></H2>
ef416fc2 683
480ef0fe 684<H3>Examples</H3>
ef416fc2 685
686<PRE CLASS="command">
480ef0fe 687&lt;Location /path&gt;
688 ...
689 Encryption Never
690 Encryption IfRequested
691 Encryption Required
692&lt;/Location&gt;
ef416fc2 693</PRE>
694
480ef0fe 695<H3>Description</H3>
ef416fc2 696
697<P>The <CODE>Encryption</CODE> directive must appear instead a <A
480ef0fe 698HREF="#Location"><CODE>Location</CODE></A> or <A
699HREF="#Limit"><CODE>Limit</CODE></A> section and specifies the
700encryption settings for that location. The default setting is
ef416fc2 701<CODE>IfRequested</CODE> for all locations.</P>
702
703
480ef0fe 704<H2 CLASS="title"><A NAME="ErrorLog">ErrorLog</A></H2>
ef416fc2 705
480ef0fe 706<H3>Examples</H3>
ef416fc2 707
708<PRE CLASS="command">
709ErrorLog /var/log/cups/error_log
710ErrorLog /var/log/cups/error_log-%s
711ErrorLog syslog
712</PRE>
713
480ef0fe 714<H3>Description</H3>
ef416fc2 715
716<P>The <CODE>ErrorLog</CODE> directive sets the name of the error
717log file. If the filename is not absolute then it is assumed to
718be relative to the <A
719HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 720default error log file is <VAR>@CUPS_LOGDIR@/error_log</VAR>.</P>
ef416fc2 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
726information to the system log instead of a plain file.</P>
727
728
f3c17241 729<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.3/OS X 10.5</SPAN><A NAME="ErrorPolicy">ErrorPolicy</A></H2>
323c5de1 730
731<H3>Examples</H3>
732
733<PRE CLASS="command">
734ErrorPolicy abort-job
735ErrorPolicy retry-job
736ErrorPolicy stop-printer
737</PRE>
738
739<H3>Description</H3>
740
741<P>The <CODE>ErrorPolicy</CODE> directive defines the default policy that
742is used when a backend is unable to send a print job to the
743printer.</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
238c3832
MS
757 <LI><CODE>retry-this-job</CODE> - Retry the current job immediately
758 and indefinitely.</LI>
759
323c5de1 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
49d87452 767
f3c17241 768<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="FatalErrors">FatalErrors</A></H2>
49d87452
MS
769
770<H3>Examples</H3>
771
772<PRE CLASS="command">
773FatalErrors none
774FatalErrors all
775FatalErrors browse
776FatalErrors config
777FatalErrors listen
778FatalErrors log
779FatalErrors permissions
780FatalErrors all -permissions
781FatalErrors config permissions log
782</PRE>
783
784<H3>Description</H3>
785
786<P>The <CODE>FatalErrors</CODE> directive determines whether certain kinds of
787errors 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
480ef0fe 818<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.18</SPAN><A NAME="FileDevice">FileDevice</A></H2>
ef416fc2 819
480ef0fe 820<H3>Examples</H3>
ef416fc2 821
822<PRE CLASS="command">
823FileDevice Yes
824FileDevice No
825</PRE>
826
480ef0fe 827<H3>Description</H3>
ef416fc2 828
829<P>The <CODE>FileDevice</CODE> directive determines whether the
830scheduler allows new printers to be added using device URIs of
831the form <CODE>file:/filename</CODE>. File devices are most often
832used to test new printer drivers and do not support raw file
833printing.</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
840scheduler normally runs as the root user, file devices
841can be used to overwrite system files and potentially
842gain unauthorized access to the system. If you must
843create printers using file devices, we recommend that
844you set the <CODE>FileDevice</CODE> directive to
845<CODE>Yes</CODE> for only as long as you need to add the
846printers to the system, and then reset the directive to
847<CODE>No</CODE>.</P>
848
849</BLOCKQUOTE>
850
851
480ef0fe 852<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="FilterLimit">FilterLimit</A></H2>
ef416fc2 853
480ef0fe 854<H3>Examples</H3>
ef416fc2 855
856<PRE CLASS="command">
857FilterLimit 0
858FilterLimit 200
859FilterLimit 1000
860</PRE>
861
480ef0fe 862<H3>Description</H3>
ef416fc2 863
864<P>The <CODE>FilterLimit</CODE> directive sets the maximum cost
865of all running job filters. It can be used to limit the number of
866filter programs that are run on a server to minimize disk,
867memory, and CPU resource problems. A limit of 0 disables filter
868limiting.</P>
869
870<P>An average print to a non-PostScript printer needs a filter
871limit of about 200. A PostScript printer needs about half that
872(100). Setting the limit below these thresholds will effectively
873limit the scheduler to printing a single job at any time.</P>
874
875<P>The default limit is 0.</P>
876
877
480ef0fe 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">
883FilterNice 0
884FilterNice 10
885FilterNice 19
886</PRE>
887
888<H3>Description</H3>
889
890<P>The <CODE>FilterNice</CODE> directive sets the <B>nice(1)</B>
891value to assign to filter processes. The nice value ranges from
8920, the highest priority, to 19, the lowest priority. The default
893is 0.</P>
894
895
896<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="FontPath">FontPath</A></H2>
ef416fc2 897
480ef0fe 898<H3>Examples</H3>
ef416fc2 899
900<PRE CLASS="command">
901FontPath /foo/bar/fonts
902FontPath /usr/share/cups/fonts:/foo/bar/fonts
903</PRE>
904
480ef0fe 905<H3>Description</H3>
ef416fc2 906
907<P>The <CODE>FontPath</CODE> directive specifies the font path to
908use when searching for fonts. The default font path is
909<CODE>/usr/share/cups/fonts</CODE>.</P>
910
911
480ef0fe 912<H2 CLASS="title"><A NAME="Group">Group</A></H2>
ef416fc2 913
480ef0fe 914<H3>Examples</H3>
ef416fc2 915
916<PRE CLASS="command">
480ef0fe 917Group lp
ef416fc2 918Group nobody
919</PRE>
920
480ef0fe 921<H3>Description</H3>
ef416fc2 922
923<P>The <CODE>Group</CODE> directive specifies the UNIX group that
924filter and CGI programs run as. The default group is
480ef0fe 925system-specific but is usually <CODE>lp</CODE> or
ef416fc2 926<CODE>nobody</CODE>.</P>
927
928
f3c17241 929<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="GSSServiceName">GSSServiceName</A></H2>
dcb445bc
MS
930
931<H3>Examples</H3>
932
933<PRE CLASS="command">
934GSSServiceName http
935GSSServiceName 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
480ef0fe 943<H2 CLASS="title"><A NAME="HostNameLookups">HostNameLookups</A></H2>
ef416fc2 944
480ef0fe 945<H3>Examples</H3>
ef416fc2 946
947<PRE CLASS="command">
948HostNameLookups On
949HostNameLookups Off
950HostNameLookups Double
951</PRE>
952
480ef0fe 953<H3>Description</H3>
ef416fc2 954
955<P>The <CODE>HostNameLookups</CODE> directive controls whether or
956not CUPS looks up the hostname for connecting clients. The
957<CODE>Double</CODE> setting causes CUPS to verify that the
958hostname resolved from the address matches one of the addresses
959returned for that hostname. <CODE>Double</CODE> lookups also
960prevent clients with unregistered addresses from connecting to
961your server.</P>
962
963<P>The default is <CODE>Off</CODE> to avoid the potential server
964performance problems with hostname lookups. Set this option to
965<CODE>On</CODE> or <CODE>Double</CODE> only if absolutely
966required.</P>
967
968
480ef0fe 969<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.9</SPAN><A NAME="Include">Include</A></H2>
ef416fc2 970
480ef0fe 971<H3>Examples</H3>
ef416fc2 972
973<PRE CLASS="command">
974Include filename
975Include /foo/bar/filename
976</PRE>
977
480ef0fe 978<H3>Description</H3>
ef416fc2 979
980<P>The <CODE>Include</CODE> directive includes the named file in
981the <CODE>cupsd.conf</CODE> file. If no leading path is provided,
982the file is assumed to be relative to the <A
983HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory.</P>
984
985
10d09e33
MS
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">
991JobPrivateAccess all
992JobPrivateAccess default
993JobPrivateAccess {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
999job's private values. The "default" access list is "@OWNER @SYSTEM". "@ACL" maps
1000to the printer's requesting-user-name-allowed or requesting-user-name-denied
1001values.</P>
1002
1003<P>The <CODE>JobPrivateAccess</CODE> directive must appear inside a <A
1004HREF="#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">
1012JobPrivateValues all
1013JobPrivateValues default
1014JobPrivateValues none
1015JobPrivateValues 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
1021to make private. The "default" values are "job-name",
82cc1f9a 1022"job-originating-host-name", "job-originating-user-name", and "phone".</P>
10d09e33
MS
1023
1024<P>The <CODE>JobPrivateValues</CODE> directive must appear inside a <A
1025HREF="#Policy"><CODE>Policy</CODE></A> section.</P>
1026
1027
f3c17241 1028<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="JobRetryInterval">JobRetryInterval</A></H2>
480ef0fe 1029
1030<H3>Examples</H3>
1031
1032<PRE CLASS="command">
82cc1f9a
MS
1033JobRetryInterval 1w
1034JobRetryInterval 1d
1035JobRetryInterval 1h
1036JobRetryInterval 1m
480ef0fe 1037JobRetryInterval 30
480ef0fe 1038</PRE>
1039
1040<H3>Description</H3>
1041
82cc1f9a
MS
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>
ef416fc2 1045
480ef0fe 1046
f3c17241 1047<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="JobKillDelay">JobKillDelay</A></H2>
238c3832
MS
1048
1049<H3>Examples</H3>
1050
1051<PRE CLASS="command">
82cc1f9a
MS
1052JobKillDelay 1w
1053JobKillDelay 1d
1054JobKillDelay 1h
1055JobKillDelay 1m
238c3832 1056JobKillDelay 30
238c3832
MS
1057</PRE>
1058
1059<H3>Description</H3>
1060
82cc1f9a
MS
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>
238c3832
MS
1064
1065
f3c17241 1066<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="JobRetryLimit">JobRetryLimit</A></H2>
480ef0fe 1067
1068<H3>Examples</H3>
1069
1070<PRE CLASS="command">
1071JobRetryLimit 5
1072JobRetryLimit 50
1073</PRE>
1074
1075<H3>Description</H3>
1076
1077<P>The <CODE>JobRetryLimit</CODE> directive specifies the maximum
1078number of times the scheduler will try to print a job. This is
1079typically used for fax queues but can also be used with normal
1080print queues whose error policy is <CODE>retry-job</CODE>. The
1081default is 5 times.</P>
1082
1083
1084<H2 CLASS="title"><A NAME="KeepAlive">KeepAlive</A></H2>
1085
1086<H3>Examples</H3>
ef416fc2 1087
1088<PRE CLASS="command">
1089KeepAlive On
1090KeepAlive Off
1091</PRE>
1092
480ef0fe 1093<H3>Description</H3>
ef416fc2 1094
1095<P>The <CODE>KeepAlive</CODE> directive controls whether or not
1096to support persistent HTTP connections. The default is
1097<CODE>On</CODE>.</P>
1098
1099<P>HTTP/1.1 clients automatically support persistent connections,
1100while HTTP/1.0 clients must specifically request them using the
1101<CODE>Keep-Alive</CODE> attribute in the <CODE>Connection:</CODE>
1102field of each request.</P>
1103
1104
480ef0fe 1105<H2 CLASS="title"><A NAME="KeepAliveTimeout">KeepAliveTimeout</A></H2>
ef416fc2 1106
480ef0fe 1107<H3>Examples</H3>
ef416fc2 1108
1109<PRE CLASS="command">
82cc1f9a
MS
1110KeepAliveTimeout 1w
1111KeepAliveTimeout 1d
1112KeepAliveTimeout 1h
1113KeepAliveTimeout 1m
ef416fc2 1114KeepAliveTimeout 30
1115</PRE>
1116
480ef0fe 1117<H3>Description</H3>
ef416fc2 1118
82cc1f9a
MS
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>
ef416fc2 1122
1123
480ef0fe 1124<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Limit">Limit (Location)</A></H2>
ef416fc2 1125
480ef0fe 1126<H3>Examples</H3>
ef416fc2 1127
1128<PRE CLASS="command">
480ef0fe 1129&lt;Location /path&gt;
1130 &lt;Limit GET POST&gt;
1131 ...
1132 &lt;/Limit&gt;
ef416fc2 1133
480ef0fe 1134 &lt;Limit ALL&gt;
1135 ...
1136 &lt;/Limit&gt;
1137&lt;/Location&gt;
ef416fc2 1138</PRE>
1139
480ef0fe 1140<H3>Description</H3>
ef416fc2 1141
1142<P>The <CODE>Limit</CODE> directive groups access control
1143directives for specific types of HTTP requests and must appear
1144inside a <A HREF="#Location"><CODE>Location</CODE></A> section.
1145Access 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>).
1149The request type names are case-sensitive for compatibility with
1150Apache.</P>
1151
1152
f3c17241 1153<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="LimitIPP">Limit (Policy)</A></H2>
ef416fc2 1154
480ef0fe 1155<H3>Examples</H3>
ef416fc2 1156
1157<PRE CLASS="command">
480ef0fe 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>
1172sections, the <CODE>Limit</CODE> directive groups access control
1173directives for specific IPP operations. Multiple operations can
1174be listed, separated by spaces. Table 2 lists the supported
1175operations.</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>
eac3a0a0 1289 <TD>Gets information about a printer or class</TD>
480ef0fe 1290</TR>
1291<TR>
1292 <TD>Get-Subscription-Attributes</TD>
eac3a0a0 1293 <TD>Gets information about a notification subscription</TD>
480ef0fe 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>
eac3a0a0 1329 <TD>Sets the printer-state value for a printer to idle/processing</TD>
480ef0fe 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;
ef416fc2 1357</PRE>
1358
480ef0fe 1359<H3>Description</H3>
ef416fc2 1360
1361<P>The <CODE>LimitExcept</CODE> directive groups access control
1362directives for specific types of HTTP requests and must appear
1363inside a <A HREF="#Location"><CODE>Location</CODE></A> section.
1364Unlike 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>
1367line.</P>
1368
1369
480ef0fe 1370<H2 CLASS="title"><A NAME="LimitRequestBody">LimitRequestBody</A></H2>
ef416fc2 1371
480ef0fe 1372<H3>Examples</H3>
ef416fc2 1373
1374<PRE CLASS="command">
1375LimitRequestBody 10485760
1376LimitRequestBody 10m
1377LimitRequestBody 0
1378</PRE>
1379
480ef0fe 1380<H3>Description</H3>
ef416fc2 1381
1382<P>The <CODE>LimitRequestBody</CODE> directive controls the
1383maximum size of print files, IPP requests, and HTML form data in
1384HTTP POST requests. The default limit is 0 which disables the
1385limit check.</P>
1386
1387
480ef0fe 1388<H2 CLASS="title"><A NAME="Listen">Listen</A></H2>
ef416fc2 1389
480ef0fe 1390<H3>Examples</H3>
ef416fc2 1391
1392<PRE CLASS="command">
1393Listen 127.0.0.1:631
1394Listen 192.0.2.1:631
1395Listen [::1]:631
1396Listen *:631
1397</PRE>
1398
480ef0fe 1399<H3>Description</H3>
ef416fc2 1400
1401<P>The <CODE>Listen</CODE> directive specifies a network address
1402and port to listen for connections. Multiple <CODE>Listen</CODE>
1403directives can be provided to listen on multiple addresses.</P>
1404
1405<P>The <CODE>Listen</CODE> directive is similar to the <A
1406HREF="#Port"><CODE>Port</CODE></A> directive but allows you to
1407restrict access to specific interfaces or networks.</P>
1408
1409
480ef0fe 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">
1415ListenBackLog 5
1416ListenBackLog 10
1417</PRE>
1418
1419<H3>Description</H3>
1420
1421<P>The <CODE>ListenBackLog</CODE> directive sets the maximum
1422number of pending connections the scheduler will allow. This
1423normally only affects very busy servers that have reached the <A
1424HREF="#MaxClients"><CODE>MaxClients</CODE></A> limit, but can
1425also be triggered by large numbers of simultaneous connections.
1426When the limit is reached, the operating system will refuse
1427additional connections until the scheduler can accept the pending
1428ones. The default is the OS-defined default limit, typically
1429either 5 for older operating systems or 128 for newer operating
1430systems.</P>
1431
1432
1433<H2 CLASS="title"><A NAME="Location">Location</A></H2>
ef416fc2 1434
480ef0fe 1435<H3>Examples</H3>
ef416fc2 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
480ef0fe 1476<H3>Description</H3>
ef416fc2 1477
1478<P>The <CODE>Location</CODE> directive specifies access control
1479and authentication options for the specified HTTP resource or
1480path. The <A HREF="#Allow"><CODE>Allow</CODE></A>, <A
1481HREF="#AuthType"><CODE>AuthType</CODE></A>, <A
1482HREF="#Deny"><CODE>Deny</CODE></A>, <A
1483HREF="#Encryption"><CODE>Encryption</CODE></A>, <A
1484HREF="#Limit"><CODE>Limit</CODE></A>, <A
1485HREF="#LimitExcept"><CODE>LimitExcept</CODE></A>, <A
1486HREF="#Order"><CODE>Order</CODE></A>, <A
1487HREF="#Require"><CODE>Require</CODE></A>, and <A
1488HREF="#Satisfy"><CODE>Satisfy</CODE></A> directives may all
1489appear inside a location.</P>
1490
1491<P>Note that more specific resources override the less specific
1492ones. So the directives inside the <CODE>/printers/name</CODE>
1493location will override ones from <CODE>/printers</CODE>.
1494Directives inside <CODE>/printers</CODE> will override ones from
1495<CODE>/</CODE>. None of the directives are inherited.</P>
1496
9aff70cc 1497<DIV CLASS="table"><TABLE SUMMARY="Common Locations on the Server">
480ef0fe 1498<CAPTION>Table 3: <A NAME="TABLE3">Common Locations on the Server</A></CAPTION>
1499<THEAD>
ef416fc2 1500<TR><TH>Location</TH><TH>Description</TH></TR>
480ef0fe 1501</THEAD>
1502<TBODY>
ef416fc2 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>
480ef0fe 1514</TBODY>
ef416fc2 1515</TABLE></DIV>
1516
1517
178cb736
MS
1518<H2 CLASS="title"><A NAME="LogDebugHistory">LogDebugHistory</A></H2>
1519
1520<H3>Examples</H3>
1521
1522<PRE CLASS="command">
1523LogDebugHistory 0
1524LogDebugHistory 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>
1531directive specifies the number of debugging messages that are logged when an
1532error occurs during printing. The default is 200 messages. A value of 0
1533disables debugging history entirely and is not recommended.</P>
1534
1535
480ef0fe 1536<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.15</SPAN><A NAME="LogFilePerm">LogFilePerm</A></H2>
ef416fc2 1537
480ef0fe 1538<H3>Examples</H3>
ef416fc2 1539
1540<PRE CLASS="command">
1541LogFilePerm 0644
1542LogFilePerm 0600
1543</PRE>
1544
480ef0fe 1545<H3>Description</H3>
ef416fc2 1546
1547<P>The <CODE>LogFilePerm</CODE> directive specifies the
771bd8cb 1548permissions to use when writing log files. The default
b94498cf 1549is @CUPS_LOG_FILE_PERM@.</P>
ef416fc2 1550
1551
480ef0fe 1552<H2 CLASS="title"><A NAME="LogLevel">LogLevel</A></H2>
ef416fc2 1553
480ef0fe 1554<H3>Examples</H3>
ef416fc2 1555
1556<PRE CLASS="command">
1557LogLevel none
1558LogLevel emerg
1559LogLevel alert
1560LogLevel crit
1561LogLevel error
1562LogLevel warn
1563LogLevel notice
1564LogLevel info
1565LogLevel debug
1566LogLevel debug2
1567</PRE>
1568
480ef0fe 1569<H3>Description</H3>
ef416fc2 1570
1571<P>The <CODE>LogLevel</CODE> directive specifies the level of
1572logging for the <A HREF="#ErrorLog"><CODE>ErrorLog</CODE></A>
1573file. The following values are recognized (each level logs
1574everything 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
1f0275e3 1596 changes</LI>
ef416fc2 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
1f0275e3
MS
1606<p>The default <code>LogLevel</code> is <code>@CUPS_LOG_LEVEL@</code>.</p>
1607
ef416fc2 1608
dfd5680b
MS
1609<H2 CLASS="title"><A NAME="LogTimeFormat">LogTimeFormat</A></H2>
1610
1611<H3>Examples</H3>
1612
1613<PRE CLASS="command">
1614LogTimeFormat standard
1615LogTimeFormat usecs
1616</PRE>
1617
1618<H3>Description</H3>
1619
1620<P>The <CODE>LogTimeFormat</CODE> directive specifies the format used for the
1621date and time in the log files. <CODE>Standard</CODE> uses the standard Apache
1622Common Log Format date and time while <CODE>usecs</CODE> adds microseconds.
1623The default is <CODE>standard</CODE>.</P>
1624
1625
480ef0fe 1626<H2 CLASS="title"><A NAME="MaxClients">MaxClients</A></H2>
ef416fc2 1627
480ef0fe 1628<H3>Examples</H3>
ef416fc2 1629
1630<PRE CLASS="command">
1631MaxClients 100
1632MaxClients 1024
1633</PRE>
1634
480ef0fe 1635<H3>Description</H3>
ef416fc2 1636
1637<P>The <CODE>MaxClients</CODE> directive controls the maximum
1638number of simultaneous clients that will be allowed by the
1639server. 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
1644pipe, the scheduler internally limits the <CODE>MaxClients</CODE>
1645value to 1/3 of the available file descriptors to avoid possible
1646problems when printing large numbers of jobs.</P>
1647
1648</BLOCKQUOTE>
1649
1650
480ef0fe 1651<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.18</SPAN><A NAME="MaxClientsPerHost">MaxClientsPerHost</A></H2>
ef416fc2 1652
480ef0fe 1653<H3>Examples</H3>
ef416fc2 1654
1655<PRE CLASS="command">
1656MaxClientsPerHost 10
1657</PRE>
1658
480ef0fe 1659<H3>Description</H3>
ef416fc2 1660
1661<P>The <CODE>MaxClientsPerHost</CODE> directive controls the
1662maximum number of simultaneous clients that will be allowed from
1663a 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
1667Denial of Service attacks from a single host.</P>
1668
1669
480ef0fe 1670<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="MaxCopies">MaxCopies</A></H2>
ef416fc2 1671
480ef0fe 1672<H3>Examples</H3>
ef416fc2 1673
1674<PRE CLASS="command">
1675MaxCopies 100
1676MaxCopies 65535
1677</PRE>
1678
480ef0fe 1679<H3>Description</H3>
ef416fc2 1680
1681<P>The <CODE>MaxCopies</CODE> directive controls the maximum
1682number of copies that a user can print of a job. The default is
b94498cf 1683@CUPS_MAX_COPIES@ copies.</P>
ef416fc2 1684
1685<BLOCKQUOTE><B>Note:</B>
1686
1687<P>Most HP PCL laser printers internally limit the number of
1688copies to 100.</P>
1689
1690</BLOCKQUOTE>
1691
1692
f3c17241 1693<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="MaxHoldTime">MaxHoldTime</A></H2>
3e7fe0ca
MS
1694
1695<H3>Examples</H3>
1696
1697<PRE CLASS="command">
1698MaxHoldTime 10800
82cc1f9a
MS
1699MaxHoldTime 3h
1700MaxHoldTime 180m
3e7fe0ca
MS
1701MaxHoldTime 0
1702</PRE>
1703
1704<H3>Description</H3>
1705
82cc1f9a 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>
3e7fe0ca 1707
82cc1f9a 1708<p>The default setting is <CODE>0</CODE> which disables this functionality.</P>
3e7fe0ca 1709
ef416fc2 1710
480ef0fe 1711<H2 CLASS="title"><A NAME="MaxJobs">MaxJobs</A></H2>
ef416fc2 1712
480ef0fe 1713<H3>Examples</H3>
ef416fc2 1714
1715<PRE CLASS="command">
1716MaxJobs 100
1717MaxJobs 9999
1718MaxJobs 0
1719</PRE>
1720
480ef0fe 1721<H3>Description</H3>
ef416fc2 1722
1723<P>The <CODE>MaxJobs</CODE> directive controls the maximum number
1724of jobs that are kept in memory. Once the number of jobs reaches
1725the limit, the oldest completed job is automatically purged from
1726the system to make room for the new one. If all of the known jobs
1727are still pending or active then the new job will be
1728rejected.</P>
1729
1730<P>Setting the maximum size to 0 disables this functionality. The
80ca4592 1731default setting is 500.</P>
ef416fc2 1732
1733
480ef0fe 1734<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="MaxJobsPerPrinter">MaxJobsPerPrinter</A></H2>
ef416fc2 1735
480ef0fe 1736<H3>Examples</H3>
ef416fc2 1737
1738<PRE CLASS="command">
1739MaxJobsPerPrinter 100
1740MaxJobsPerPrinter 9999
1741MaxJobsPerPrinter 0
1742</PRE>
1743
480ef0fe 1744<H3>Description</H3>
ef416fc2 1745
1746<P>The <CODE>MaxJobsPerPrinter</CODE> directive controls the
1747maximum number of active jobs that are allowed for each printer
1748or class. Once a printer or class reaches the limit, new jobs
1749will be rejected until one of the active jobs is completed,
1750stopped, aborted, or canceled.</P>
1751
1752<P>Setting the maximum to 0 disables this functionality. The
1753default setting is 0.</P>
1754
1755
480ef0fe 1756<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="MaxJobsPerUser">MaxJobsPerUser</A></H2>
ef416fc2 1757
480ef0fe 1758<H3>Examples</H3>
ef416fc2 1759
1760<PRE CLASS="command">
1761MaxJobsPerUser 100
1762MaxJobsPerUser 9999
1763MaxJobsPerUser 0
1764</PRE>
1765
480ef0fe 1766<H3>Description</H3>
ef416fc2 1767
1768<P>The <CODE>MaxJobsPerUser</CODE> directive controls the maximum
1769number of active jobs that are allowed for each user. Once a user
1770reaches the limit, new jobs will be rejected until one of the
1771active jobs is completed, stopped, aborted, or canceled.</P>
1772
1773<P>Setting the maximum to 0 disables this functionality. The
1774default setting is 0.</P>
1775
1776
f3c17241 1777<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6/OS X 10.8</SPAN><A NAME="MaxJobTime">MaxJobTime</A></H2>
dcb445bc
MS
1778
1779<H3>Examples</H3>
1780
1781<PRE CLASS="command">
1782MaxJobTime 10800
82cc1f9a
MS
1783MaxJobTime 3h
1784MaxJobTime 180m
dcb445bc
MS
1785MaxJobTime 0
1786</PRE>
1787
1788<H3>Description</H3>
1789
1790<P>The <CODE>MaxJobTime</CODE> directive controls the maximum number of
1791seconds allowed for a job to complete printing before it is considered "stuck".
82cc1f9a 1792The 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>
dcb445bc 1793
82cc1f9a 1794<p>Setting the maximum time to <CODE>0</CODE> disables this functionality. The default setting is <CODE>3h</CODE> (3 hours).</P>
dcb445bc
MS
1795
1796
480ef0fe 1797<H2 CLASS="title"><A NAME="MaxLogSize">MaxLogSize</A></H2>
ef416fc2 1798
480ef0fe 1799<H3>Examples</H3>
ef416fc2 1800
1801<PRE CLASS="command">
1802MaxLogSize 1048576
1803MaxLogSize 1m
1804MaxLogSize 0
1805</PRE>
1806
480ef0fe 1807<H3>Description</H3>
ef416fc2 1808
1809<P>The <CODE>MaxLogSize</CODE> directive controls the maximum
1810size of each log file. Once a log file reaches or exceeds the
1811maximum size it is closed and renamed to <VAR>filename.O</VAR>.
1812This allows you to rotate the logs automatically. The default
1813size is 1048576 bytes (1MB).</P>
1814
1815<P>Setting the maximum size to 0 disables log rotation.</P>
1816
1817
480ef0fe 1818<H2 CLASS="title"><SPAN CLASS="info">Deprecated</SPAN><A NAME="MaxRequestSize">MaxRequestSize</A></H2>
ef416fc2 1819
480ef0fe 1820<H3>Examples</H3>
ef416fc2 1821
1822<PRE CLASS="command">
1823MaxRequestSize 10485760
1824MaxRequestSize 10m
1825MaxRequestSize 0
1826</PRE>
1827
480ef0fe 1828<H3>Description</H3>
ef416fc2 1829
1830<P>The <CODE>MaxRequestSize</CODE> directive controls the maximum
1831size of print files, IPP requests, and HTML form data in HTTP
1832POST requests. The default limit is 0 which disables the limit
1833check.</P>
1834
480ef0fe 1835<P><B>This directive is deprecated and will be removed in a
ef416fc2 1836future CUPS release.</B> Use the <A
1837HREF="#LimitRequestBody"><CODE>LimitRequestBody</CODE></A>
1838directive instead.</P>
1839
1840
f3c17241 1841<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.4/OS X 10.6</SPAN><A NAME="MultipleOperationTimeout">MultipleOperationTimeout</A></H2>
dfd5680b
MS
1842
1843<H3>Examples</H3>
1844
1845<PRE CLASS="command">
82cc1f9a
MS
1846MultipleOperationTimeout 1w
1847MultipleOperationTimeout 1d
1848MultipleOperationTimeout 1h
1849MultipleOperationTimeout 5m
dfd5680b 1850MultipleOperationTimeout 300
dfd5680b
MS
1851</PRE>
1852
1853<H3>Description</H3>
1854
82cc1f9a
MS
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>
dfd5680b
MS
1858
1859
480ef0fe 1860<H2 CLASS="title"><A NAME="Order">Order</A></H2>
ef416fc2 1861
480ef0fe 1862<H3>Examples</H3>
ef416fc2 1863
1864<PRE CLASS="command">
480ef0fe 1865&lt;Location /path&gt;
1866 ...
1867 Order Allow,Deny
1868 Order Deny,Allow
1869&lt;/Location&gt;
ef416fc2 1870</PRE>
1871
480ef0fe 1872<H3>Description</H3>
ef416fc2 1873
1874<P>The <CODE>Order</CODE> directive defines the default access
1875control. 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
480ef0fe 1892HREF="#Location"><CODE>Location</CODE></A> or <A
1893HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 1894
1895
480ef0fe 1896<H2 CLASS="title"><A NAME="PageLog">PageLog</A></H2>
ef416fc2 1897
480ef0fe 1898<H3>Examples</H3>
ef416fc2 1899
1900<PRE CLASS="command">
1901PageLog /var/log/cups/page_log
1902PageLog /var/log/cups/page_log-%s
1903PageLog syslog
1904</PRE>
1905
480ef0fe 1906<H3>Description</H3>
ef416fc2 1907
1908<P>The <CODE>PageLog</CODE> directive sets the name of the page
1909log file. If the filename is not absolute then it is assumed to
1910be relative to the <A
1911HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 1912default page log file is <VAR>@CUPS_LOGDIR@/page_log</VAR>.</P>
ef416fc2 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
1918information to the system log instead of a plain file.</P>
1919
1920
01ce6322
MS
1921<H2 CLASS="title"><A NAME="PageLogFormat">PageLogFormat</A></H2>
1922
1923<H3>Examples</H3>
1924
1925<PRE CLASS="command">
0268488e
MS
1926PageLogFormat %p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}
1927PageLogFormat PAGE %p %u %j %P %C %{job-billing} %{job-originating-host-name}
01ce6322
MS
1928</PRE>
1929
1930<H3>Description</H3>
1931
1932<P>The <CODE>PageLogFormat</CODE> directive sets the format of lines
1933that are logged to the page log file. Sequences beginning with percent (%)
1934characters are replaced with the corresponding information, while all other
1935characters are copied literally. The following percent sequences are
1936recognized:</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
0268488e 1960<P>The default is "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}".</P>
01ce6322
MS
1961
1962
f3c17241 1963<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="PassEnv">PassEnv</A></H2>
480ef0fe 1964
1965<H3>Examples</H3>
1966
1967<PRE CLASS="command">
1968PassEnv MY_ENV_VARIABLE
1969</PRE>
1970
1971<H3>Description</H3>
1972
1973<P>The <CODE>PassEnv</CODE> directive specifies an environment
1974variable that should be passed to child processes. Normally, the
1975scheduler 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>
1979environment variables to child processes.</P>
1980
1981
f3c17241 1982<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="Policy">Policy</A></H2>
ef416fc2 1983
480ef0fe 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
2003access control limits. Each policy contains 1 or more <A
2004HREF="#LimitIPP"><CODE>Limit</CODE></A> sections to set the
2005access control limits for specific operations - user limits,
2006authentication, encryption, and allowed/denied addresses,
2007domains, or hosts. The <CODE>&lt;Limit All&gt;</CODE> section
2008specifies the default access control limits for operations that
2009are not listed.</P>
2010
2011<P>Policies are named and associated with printers via the
2012printer's operation policy setting
2013(<CODE>printer-op-policy</CODE>). The default policy for the
2014scheduler is specified using the <A
2015HREF="#DefaultPolicy"><CODE>DefaultPolicy</CODE></A>
2016directive.</P>
2017
2018
2019<H2 CLASS="title"><A NAME="Port">Port</A></H2>
2020
2021<H3>Examples</H3>
ef416fc2 2022
2023<PRE CLASS="command">
2024Port 631
2025Port 80
2026</PRE>
2027
480ef0fe 2028<H3>Description</H3>
ef416fc2 2029
2030<P>The <CODE>Port</CODE> directive specifies a port to listen on.
2031Multiple <CODE>Port</CODE> lines can be specified to listen on
2032multiple 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
2038the IPv4 and IPv6 wildcard address.</P>
2039
2040</BLOCKQUOTE>
2041
2042
480ef0fe 2043<H2 CLASS="title"><A NAME="PreserveJobHistory">PreserveJobHistory</A></H2>
ef416fc2 2044
480ef0fe 2045<H3>Examples</H3>
ef416fc2 2046
2047<PRE CLASS="command">
2048PreserveJobHistory On
2049PreserveJobHistory Off
82cc1f9a
MS
2050PreserveJobHistory 1w
2051PreserveJobHistory 7d
2052PreserveJobHistory 168h
2053PreserveJobHistory 10080m
2054PreserveJobHistory 604800
ef416fc2 2055</PRE>
2056
480ef0fe 2057<H3>Description</H3>
ef416fc2 2058
82cc1f9a 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>
ef416fc2 2060
82cc1f9a 2061<P>The default value is <CODE>On</CODE>.</P>
ef416fc2 2062
82cc1f9a
MS
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>
ef416fc2 2068
2069
480ef0fe 2070<H2 CLASS="title"><A NAME="PreserveJobFiles">PreserveJobFiles</A></H2>
ef416fc2 2071
480ef0fe 2072<H3>Examples</H3>
ef416fc2 2073
2074<PRE CLASS="command">
2075PreserveJobFiles On
2076PreserveJobFiles Off
82cc1f9a
MS
2077PreserveJobFiles 1w
2078PreserveJobFiles 7d
2079PreserveJobFiles 168h
2080PreserveJobFiles 10080m
2081PreserveJobFiles 604800
ef416fc2 2082</PRE>
2083
480ef0fe 2084<H3>Description</H3>
ef416fc2 2085
82cc1f9a
MS
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>
ef416fc2 2089
82cc1f9a 2090<P>The default value is <CODE>1d</CODE> (one day).</P>
ef416fc2 2091
82cc1f9a
MS
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>
ef416fc2 2097
2098
480ef0fe 2099<H2 CLASS="title"><A NAME="Printcap">Printcap</A></H2>
ef416fc2 2100
480ef0fe 2101<H3>Examples</H3>
ef416fc2 2102
2103<PRE CLASS="command">
2104Printcap
2105Printcap /etc/printcap
2106Printcap /etc/printers.conf
0af14961 2107Printcap /Library/Preferences/org.cups.printers.plist
ef416fc2 2108</PRE>
2109
480ef0fe 2110<H3>Description</H3>
ef416fc2 2111
2112<P>The <CODE>Printcap</CODE> directive controls whether or not a
2113printcap file is automatically generated and updated with a list
2114of available printers. If specified with no value, then no
2115printcap file will be generated. The default is to generate a
0af14961 2116file named <VAR>@CUPS_DEFAUL_PRINTCAP@</VAR>.</P>
ef416fc2 2117
0af14961 2118<P>When a filename is specified (e.g. <VAR>@CUPS_DEFAULT_PRINTCAP@</VAR>),
ef416fc2 2119the printcap file is written whenever a printer is added or
2120removed. The printcap file can then be used by applications that
2121are hardcoded to look at the printcap file for the available
2122printers.</P>
2123
2124
480ef0fe 2125<H2 CLASS="title"><A NAME="PrintcapFormat">PrintcapFormat</A></H2>
ef416fc2 2126
480ef0fe 2127<H3>Examples</H3>
ef416fc2 2128
2129<PRE CLASS="command">
2130PrintcapFormat BSD
2131PrintcapFormat Solaris
0af14961 2132PrintcapFormat plist
ef416fc2 2133</PRE>
2134
480ef0fe 2135<H3>Description</H3>
ef416fc2 2136
0af14961 2137<P>The <CODE>PrintcapFormat</CODE> directive controls the output format of the
f3c17241 2138printcap file. The default is to generate the plist format on OS X, the
0af14961 2139Solaris format on Solaris, and the BSD format on other operating systems.</P>
ef416fc2 2140
2141
480ef0fe 2142<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.21</SPAN><A NAME="ReloadTimeout">ReloadTimeout</A></H2>
2143
2144<H3>Examples</H3>
2145
2146<PRE CLASS="command">
2147ReloadTimeout 0
49d87452 2148ReloadTimeout 30
480ef0fe 2149</PRE>
2150
2151<H3>Description</H3>
2152
2153<P>The <CODE>ReloadTimeout</CODE> directive specifies the number
2154of seconds the scheduler will wait for active jobs to complete
49d87452 2155before doing a restart. The default is 30 seconds.</P>
ef416fc2 2156
480ef0fe 2157
2158<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.3</SPAN><A NAME="RemoteRoot">RemoteRoot</A></H2>
2159
2160<H3>Examples</H3>
ef416fc2 2161
2162<PRE CLASS="command">
2163RemoteRoot remroot
2164RemoteRoot root
2165</PRE>
2166
480ef0fe 2167<H3>Description</H3>
ef416fc2 2168
2169<P>The <CODE>RemoteRoot</CODE> directive sets the username for
2170unauthenticated root requests from remote hosts. The default
2171username is <VAR>remroot</VAR>. Setting <CODE>RemoteRoot</CODE>
2172to <VAR>root</VAR> effectively disables this security
2173mechanism.</P>
2174
2175
480ef0fe 2176<H2 CLASS="title"><A NAME="RequestRoot">RequestRoot</A></H2>
ef416fc2 2177
480ef0fe 2178<H3>Examples</H3>
ef416fc2 2179
2180<PRE CLASS="command">
2181RequestRoot /var/spool/cups
2182RequestRoot /foo/bar/spool/cups
2183</PRE>
2184
480ef0fe 2185<H3>Description</H3>
ef416fc2 2186
2187<P>The <CODE>RequestRoot</CODE> directive sets the directory for
2188incoming IPP requests and HTML forms. If an absolute path is not
2189provided then it is assumed to be relative to the <A
2190HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
b94498cf 2191default request directory is <VAR>@CUPS_REQUESTS@</VAR>.</P>
ef416fc2 2192
2193
480ef0fe 2194<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Require">Require</A></H2>
ef416fc2 2195
480ef0fe 2196<H3>Examples</H3>
ef416fc2 2197
2198<PRE CLASS="command">
480ef0fe 2199&lt;Location /path&gt;
2200 ...
2201 Require group foo bar
2202 Require user john mary
2203 Require valid-user
2204 Require user @groupname
2205 Require user @SYSTEM
2206 Require user @OWNER
2207&lt;/Location&gt;
ef416fc2 2208</PRE>
2209
480ef0fe 2210<H3>Description</H3>
ef416fc2 2211
2212<P>The <CODE>Require</CODE> directive specifies that
2213authentication is required for the resource. The
2214<CODE>group</CODE> keyword specifies that the authenticated user
2215must be a member of one or more of the named groups that
2216follow.</P>
2217
4b3f67ff 2218<P>The <CODE>user</CODE> keyword specifies that the
ef416fc2 2219authenticated user must be one of the named users or groups that
2220follow. Group names are specified using the "@" prefix.</P>
2221
2222<P>The <CODE>valid-user</CODE> keyword specifies that any
2223authenticated user may access the resource.</P>
2224
2225<P>The default is to do no authentication. This directive must
480ef0fe 2226appear inside a <A HREF="#Location"><CODE>Location</CODE></A> or
2227<A HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2228
2229
480ef0fe 2230<H2 CLASS="title"><A NAME="RIPCache">RIPCache</A></H2>
ef416fc2 2231
480ef0fe 2232<H3>Examples</H3>
ef416fc2 2233
2234<PRE CLASS="command">
eac3a0a0 2235RIPCache 128m
ef416fc2 2236RIPCache 1g
2237RIPCache 2048k
2238</PRE>
2239
480ef0fe 2240<H3>Description</H3>
ef416fc2 2241
2242<P>The <CODE>RIPCache</CODE> directive sets the size of the
2243memory cache used by Raster Image Processor ("RIP") filters such
2244as <CODE>imagetoraster</CODE> and <CODE>pstoraster</CODE>. The
2245size can be suffixed with a "k" for kilobytes, "m" for megabytes,
eac3a0a0 2246or "g" for gigabytes. The default cache size is "128m", or 128
ef416fc2 2247megabytes.</P>
2248
2249
480ef0fe 2250<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.16</SPAN><A NAME="RootCertDuration">RootCertDuration</A></H2>
2251
2252<H3>Examples</H3>
2253
2254<PRE CLASS="command">
2255RootCertDuration 0
82cc1f9a
MS
2256RootCertDuration 1w
2257RootCertDuration 1d
2258RootCertDuration 1h
2259RootCertDuration 5m
480ef0fe 2260RootCertDuration 300
2261</PRE>
2262
2263<H3>Description</H3>
2264
82cc1f9a
MS
2265<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>
2266
2267<P>The default is <CODE>5m</CODE> (five minutes).</P>
480ef0fe 2268
2269
2270<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.7</SPAN><A NAME="Satisfy">Satisfy</A></H2>
ef416fc2 2271
480ef0fe 2272<H3>Examples</H3>
ef416fc2 2273
2274<PRE CLASS="command">
480ef0fe 2275&lt;Location /path&gt;
2276 ...
2277 Satisfy all
2278 Satisfy any
2279&lt;/Location&gt;
ef416fc2 2280</PRE>
2281
480ef0fe 2282<H3>Description</H3>
ef416fc2 2283
2284<P>The <CODE>Satisfy</CODE> directive specifies whether all
2285conditions must be satisfied to allow access to the resource. If
2286set to <CODE>all</CODE>, then all authentication and access
eac3a0a0 2287control conditions must be satisfied to allow access.</P>
ef416fc2 2288
2289<P>Setting <CODE>Satisfy</CODE> to <CODE>any</CODE> allows a user
2290to gain access if the authentication or access control
2291requirements are satisfied. For example, you might require
2292authentication for remote access, but allow local access without
2293authentication.</P>
2294
2295<P>The default is <CODE>all</CODE>. This directive must appear
480ef0fe 2296inside a <A HREF="#Location"><CODE>Location</CODE></A> or <A
2297HREF="#Limit"><CODE>Limit</CODE></A> section.</P>
ef416fc2 2298
2299
480ef0fe 2300<H2 CLASS="title"><A NAME="ServerAdmin">ServerAdmin</A></H2>
ef416fc2 2301
480ef0fe 2302<H3>Examples</H3>
ef416fc2 2303
2304<PRE CLASS="command">
2305ServerAdmin user@host
2306ServerAdmin root@foo.bar.com
2307</PRE>
2308
480ef0fe 2309<H3>Description</H3>
ef416fc2 2310
2311<P>The <CODE>ServerAdmin</CODE> directive identifies the email
2312address for the administrator on the system. By default the
2313administrator email address is <CODE>root@server</CODE>, where
480ef0fe 2314<CODE>server</CODE> is the <A
2315HREF="#ServerName"><CODE>ServerName</CODE></A>.</P>
ef416fc2 2316
2317
178cb736
MS
2318<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.3.10</SPAN><A NAME="ServerAlias">ServerAlias</A></H2>
2319
2320<H3>Examples</H3>
2321
2322<PRE CLASS="command">
2323ServerAlias althost
eac3a0a0
MS
2324ServerAlias foo.example.com
2325ServerAlias bar.example.com
88f9aafc 2326ServerAlias one.example.com two.example.com
178cb736
MS
2327ServerAlias *
2328</PRE>
2329
2330<H3>Description</H3>
2331
eac3a0a0 2332<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>
178cb736
MS
2333
2334<BLOCKQUOTE><B>Note</B>
2335
2336<P>The <CODE>ServerAlias</CODE> directive is used for HTTP Host header
2337validation when clients connect to the scheduler from external interfaces.
2338Using the special name "*" can expose your system to known browser-based
2339DNS rebinding attacks, even when accessing sites through a firewall. If the
2340auto-discovery of alternate names does not work, we recommend listing each
2341alternate name with a ServerAlias directive instead of using "*".</P>
2342
2343</BLOCKQUOTE>
2344
2345
480ef0fe 2346<H2 CLASS="title"><A NAME="ServerBin">ServerBin</A></H2>
ef416fc2 2347
480ef0fe 2348<H3>Examples</H3>
ef416fc2 2349
2350<PRE CLASS="command">
2351ServerBin /usr/lib/cups
2352ServerBin /foo/bar/lib/cups
2353</PRE>
2354
480ef0fe 2355<H3>Description</H3>
ef416fc2 2356
2357<P>The <CODE>ServerBin</CODE> directive sets the directory for
2358server-run executables. If an absolute path is not provided then
2359it is assumed to be relative to the <A
2360HREF="#ServerRoot"><CODE>ServerRoot</CODE></A> directory. The
480ef0fe 2361default executable directory is <VAR>/usr/lib/cups</VAR>,
2362<VAR>/usr/lib32/cups</VAR>, or <VAR>/usr/libexec/cups</VAR>
2363depending on the operating system.</P>
ef416fc2 2364
2365
480ef0fe 2366<H2 CLASS="title"><A NAME="ServerCertificate">ServerCertificate</A></H2>
ef416fc2 2367
480ef0fe 2368<H3>Examples</H3>
ef416fc2 2369
2370<PRE CLASS="command">
2371ServerCertificate /etc/cups/ssl/server.crt
2372</PRE>
2373
480ef0fe 2374<H3>Description</H3>
ef416fc2 2375
2376<P>The <CODE>ServerCertificate</CODE> directive specifies the
2377location of the SSL certificate file used by the server when
2378negotiating encrypted connections. The certificate must not be
2379encrypted (password protected) since the scheduler normally runs
2380in the background and will be unable to ask for a password.</P>
2381
2382<P>The default certificate file is
2383<VAR>/etc/cups/ssl/server.crt</VAR>.</P>
2384
2385
480ef0fe 2386<H2 CLASS="title"><A NAME="ServerKey">ServerKey</A></H2>
ef416fc2 2387
480ef0fe 2388<H3>Examples</H3>
ef416fc2 2389
2390<PRE CLASS="command">
2391ServerKey /etc/cups/ssl/server.key
2392</PRE>
2393
480ef0fe 2394<H3>Description</H3>
ef416fc2 2395
2396<P>The <CODE>ServerKey</CODE> directive specifies the location of
2397the SSL private key file used by the server when negotiating
2398encrypted connections.</P>
2399
2400<P>The default key file is
2401<VAR>/etc/cups/ssl/server.crt</VAR>.</P>
2402
2403
b86bc4cf 2404<H2 CLASS="title"><A NAME="ServerName">ServerName</A></H2>
ef416fc2 2405
480ef0fe 2406<H3>Examples</H3>
ef416fc2 2407
2408<PRE CLASS="command">
eac3a0a0
MS
2409ServerName foo.example.com
2410ServerName myserver.example.com
ef416fc2 2411</PRE>
2412
480ef0fe 2413<H3>Description</H3>
ef416fc2 2414
2415<P>The <CODE>ServerName</CODE> directive specifies the hostname
2416that is reported to clients. By default the server name is the
2417hostname.</P>
2418
2419
480ef0fe 2420<H2 CLASS="title"><A NAME="ServerRoot">ServerRoot</A></H2>
ef416fc2 2421
480ef0fe 2422<H3>Examples</H3>
ef416fc2 2423
2424<PRE CLASS="command">
2425ServerRoot /etc/cups
2426ServerRoot /foo/bar/cups
2427</PRE>
2428
480ef0fe 2429<H3>Description</H3>
ef416fc2 2430
2431<P>The <CODE>ServerRoot</CODE> directive specifies the absolute
2432path to the server configuration and state files. It is also used
2433to resolve relative paths in the <VAR>cupsd.conf</VAR> file. The
2434default server directory is <VAR>/etc/cups</VAR>.</P>
2435
2436
480ef0fe 2437<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.1.21</SPAN><A NAME="ServerTokens">ServerTokens</A></H2>
2438
2439<H3>Examples</H3>
2440
2441<PRE CLASS="command">
2442ServerTokens None
2443ServerTokens ProductOnly
2444ServerTokens Major
2445ServerTokens Minor
2446ServerTokens Minimal
2447ServerTokens OS
2448ServerTokens Full
2449</PRE>
2450
2451<H3>Description</H3>
2452
2453<P>The <CODE>ServerTokens</CODE> directive specifies the
2454information that is included in the <CODE>Server:</CODE> header
2455of all HTTP responses. Table 4 lists the token name along with
2456the text that is returned. The default is
2457<CODE>Minimal</CODE>.</P>
2458
2459<DIV CLASS="table"><TABLE SUMMARY="ServerToken Names and Values">
2460<CAPTION>Table 4: <A NAME="TABLE4">ServerToken Names and Values</A></CAPTION>
2461<THEAD>
2462<TR>
2463 <TH>Name</TH>
2464 <TH>Value</TH>
2465</TR>
2466</THEAD>
2467<TBODY>
2468<TR>
2469 <TD>None</TD>
2470 <TD>No <CODE>Server:</CODE> header is returned</TD>
2471</TR>
2472<TR>
2473 <TD>ProductOnly</TD>
2474 <TD>"CUPS"</TD>
2475</TR>
2476<TR>
2477 <TD>Major</TD>
2478 <TD>"CUPS 1"</TD>
2479</TR>
2480<TR>
2481 <TD>Minor</TD>
2482 <TD>"CUPS 1.2"</TD>
2483</TR>
2484<TR>
2485 <TD>Minimal</TD>
2486 <TD>"CUPS 1.2.N" where N is the patch release</TD>
2487</TR>
2488<TR>
2489 <TD>OS</TD>
2490 <TD>"CUPS 1.2.N (UNAME)" where N is the patch release and
2491 UNAME is the output of the <B>uname(1)</B> command</TD>
2492</TR>
2493<TR>
2494 <TD>Full</TD>
2495 <TD>"CUPS 1.2.N (UNAME) IPP/1.1" where N is the patch
2496 release and UNAME is the output of the <B>uname(1)</B>
2497 command</TD>
2498</TR>
2499</TBODY>
2500</TABLE></DIV>
2501
2502
f3c17241 2503<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="SetEnv">SetEnv</A></H2>
480ef0fe 2504
2505<H3>Examples</H3>
2506
2507<PRE CLASS="command">
2508SetEnv PATH /usr/lib/cups/filter:/bin:/usr/bin:/usr/local/bin
2509SetEnv MY_ENV_VAR foo
2510</PRE>
2511
2512<H3>Description</H3>
2513
2514<P>The <CODE>SetEnv</CODE> directive specifies an environment
2515variable that should be passed to child processes.</P>
2516
2517
4220952d 2518<H2 CLASS="title"><A NAME="SSLListen">SSLListen</A></H2>
ef416fc2 2519
480ef0fe 2520<H3>Examples</H3>
ef416fc2 2521
2522<PRE CLASS="command">
4220952d
MS
2523SSLListen 127.0.0.1:443
2524SSLListen 192.0.2.1:443
ef416fc2 2525</PRE>
2526
480ef0fe 2527<H3>Description</H3>
ef416fc2 2528
4220952d 2529<P>The <CODE>SSLListen</CODE> directive specifies a network
ef416fc2 2530address and port to listen for secure connections. Multiple
4220952d 2531<CODE>SSLListen</CODE> directives can be provided to listen on
ef416fc2 2532multiple addresses.</P>
2533
4220952d 2534<P>The <CODE>SSLListen</CODE> directive is similar to the <A
ef416fc2 2535HREF="#SSLPort"><CODE>SSLPort</CODE></A> directive but allows you
2536to restrict access to specific interfaces or networks.</P>
2537
2538
b19ccc9e
MS
2539<H2 CLASS="title"><A NAME="SSLOptions">SSLOptions</A></H2>
2540
2541<H3>Examples</H3>
2542
2543<PRE CLASS="command">
2544SSLOptions None
2545SSLOptions NoEmptyFragments
2546</PRE>
2547
2548<H3>Description</H3>
2549
2550<P>The <CODE>SSLOptions</CODE> directive specifies additional SSL/TLS
2551protocol options to use for encrypted connected. Currently only two
2552options are supported - <code>None</code> (the default) for the most
2553secure mode and <code>NoEmptyFragments</code> to allow CUPS to work with
2554Microsoft Windows with the FIPS conformance mode enabled.</p>
2555
2556
480ef0fe 2557<H2 CLASS="title"><A NAME="SSLPort">SSLPort</A></H2>
ef416fc2 2558
480ef0fe 2559<H3>Examples</H3>
ef416fc2 2560
2561<PRE CLASS="command">
2562SSLPort 443
2563</PRE>
2564
480ef0fe 2565<H3>Description</H3>
ef416fc2 2566
2567<P>The <CODE>SSLPort</CODE> directive specifies a port to listen
2568on for secure connections. Multiple <CODE>SSLPort</CODE> lines
2569can be specified to listen on multiple ports.</P>
2570
2571
a29fd7dd
MS
2572<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.6</SPAN><A NAME="StrictConformance">StrictConformance</A></H2>
2573
2574<H3>Examples</H3>
2575
2576<PRE CLASS="command">
2577StrictConformance No
2578StrictConformance Yes
2579</PRE>
2580
2581<H3>Description</H3>
2582
2583<P>The <CODE>StrictConformance</CODE> directive specifies whether the scheduler
2584requires strict IPP conformance for client requests, for example to not allow
2585document attributes in a Create-Job request. The default is
2586<code>No</code>.</P>
2587
2588
10d09e33
MS
2589<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.5</SPAN><A NAME="SubscriptionPrivateAccess">SubscriptionPrivateAccess</A></H2>
2590
2591<H3>Examples</H3>
2592
2593<PRE CLASS="command">
2594SubscriptionPrivateAccess all
2595SubscriptionPrivateAccess default
2596SubscriptionPrivateAccess {user|@group|@ACL|@OWNER|@SYSTEM}+
2597</PRE>
2598
2599<H3>Description</H3>
2600
2601<P>The <CODE>SubscriptionPrivateAccess</CODE> directive specifies the access list for a
2602subscription's private values. The "default" access list is "@OWNER @SYSTEM".
2603"@ACL" maps to the printer's requesting-user-name-allowed or
2604requesting-user-name-denied values.</P>
2605
2606<P>The <CODE>SubscriptionPrivateAccess</CODE> directive must appear inside a <A
2607HREF="#Policy"><CODE>Policy</CODE></A> section.</P>
2608
2609
2610<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.5</SPAN><A NAME="SubscriptionPrivateValues">SubscriptionPrivateValues</A></H2>
2611
2612<H3>Examples</H3>
2613
2614<PRE CLASS="command">
2615SubscriptionPrivateValues all
2616SubscriptionPrivateValues default
2617SubscriptionPrivateValues none
2618SubscriptionPrivateValues attribute-name-1 [ ... attribute-name-N ]
2619</PRE>
2620
2621<H3>Description</H3>
2622
2623<P>The <CODE>SubscriptionPrivateValues</CODE> directive specifies the list of
2624subscription values to make private. The "default" values are "notify-events",
2625"notify-pull-method", "notify-recipient-uri", "notify-subscriber-user-name", and
2626"notify-user-data".</P>
2627
2628<P>The <CODE>SubscriptionPrivateValues</CODE> directive must appear inside a <A
2629HREF="#Policy"><CODE>Policy</CODE></A> section.</P>
2630
2631
480ef0fe 2632<H2 CLASS="title"><A NAME="SystemGroup">SystemGroup</A></H2>
ef416fc2 2633
480ef0fe 2634<H3>Examples</H3>
ef416fc2 2635
2636<PRE CLASS="command">
2637SystemGroup lpadmin
2638SystemGroup sys
2639SystemGroup system
2640SystemGroup root
480ef0fe 2641SystemGroup root lpadmin
ef416fc2 2642</PRE>
2643
480ef0fe 2644<H3>Description</H3>
ef416fc2 2645
2646<P>The <CODE>SystemGroup</CODE> directive specifies the system
480ef0fe 2647administration group for <CODE>System</CODE> authentication.
2648Multiple groups can be listed, separated with spaces. The default
b94498cf 2649group list is <CODE>@CUPS_SYSTEM_GROUPS@</CODE>.</P>
ef416fc2 2650
2651
480ef0fe 2652<H2 CLASS="title"><A NAME="TempDir">TempDir</A></H2>
ef416fc2 2653
480ef0fe 2654<H3>Examples</H3>
ef416fc2 2655
2656<PRE CLASS="command">
2657TempDir /var/tmp
2658TempDir /foo/bar/tmp
2659</PRE>
2660
480ef0fe 2661<H3>Description</H3>
ef416fc2 2662
2663<P>The <CODE>TempDir</CODE> directive specifies an absolute path
2664for the directory to use for temporary files. The default
b94498cf 2665directory is <VAR>@CUPS_REQUESTS@/tmp</VAR>.</P>
ef416fc2 2666
2667<P>Temporary directories must be world-writable and should have
2668the "sticky" permission bit enabled so that other users cannot
2669delete filter temporary files. The following commands will create
2670an appropriate temporary directory called
2671<VAR>/foo/bar/tmp</VAR>:</P>
2672
2673<PRE CLASS="command">
2674<KBD>mkdir /foo/bar/tmp</KBD>
2675<KBD>chmod a+rwxt /foo/bar/tmp</KBD>
2676</PRE>
2677
2678
480ef0fe 2679<H2 CLASS="title"><A NAME="Timeout">Timeout</A></H2>
ef416fc2 2680
480ef0fe 2681<H3>Examples</H3>
ef416fc2 2682
2683<PRE CLASS="command">
82cc1f9a
MS
2684Timeout 1w
2685Timeout 1d
2686Timeout 1h
2687Timeout 5m
ef416fc2 2688Timeout 300
ef416fc2 2689</PRE>
2690
480ef0fe 2691<H3>Description</H3>
ef416fc2 2692
2693<P>The <CODE>Timeout</CODE> directive controls the amount of time
82cc1f9a
MS
2694to 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>
2695
2696<P>The default timeout is <CODE>5m</CODE> (five minutes).</P>
ef416fc2 2697
2698
f3c17241 2699<H2 CLASS="title"><SPAN CLASS="info">CUPS 1.2/OS X 10.5</SPAN><A NAME="UseNetworkDefault">UseNetworkDefault</A></H2>
a74454a7 2700
2701<H3>Examples</H3>
2702
2703<PRE CLASS="command">
2704UseNetworkDefault yes
2705UseNetworkDefault no
2706</PRE>
2707
2708<H3>Description</H3>
2709
2710<P>The <CODE>UseNetworkDefault</CODE> directive controls whether
2711the client will use a network/remote printer as a default
2712printer. If enabled, the default printer of a server is used as
2713the default printer on a client. When multiple servers are
2714advertising a default printer, the client's default printer is
2715set to the first discovered printer, or to the implicit class for
2716the same printer available from multiple servers.</P>
2717
b94498cf 2718<P>The default is <CODE>@CUPS_USE_NETWORK_DEFAULT@</CODE>.</P>
a74454a7 2719
2720
480ef0fe 2721<H2 CLASS="title"><A NAME="User">User</A></H2>
ef416fc2 2722
480ef0fe 2723<H3>Examples</H3>
ef416fc2 2724
2725<PRE CLASS="command">
2726User lp
2727User guest
2728</PRE>
2729
480ef0fe 2730<H3>Description</H3>
ef416fc2 2731
2732<P>The <CODE>User</CODE> directive specifies the UNIX user that
2733filter and CGI programs run as. The default user is
b94498cf 2734<CODE>@CUPS_USER@</CODE>.</P>
ef416fc2 2735
2736<BLOCKQUOTE><B>Note:</B>
2737
2738<P>You may not use user <CODE>root</CODE>, as that would expose
2739the system to unacceptable security risks. The scheduler will
2740automatically choose user <CODE>nobody</CODE> if you specify a
2741user whose ID is 0.</P>
2742
2743</BLOCKQUOTE>
2744
2745
229681c1
MS
2746<H2 CLASS="title"><SPAN CLASS="INFO">CUPS 1.5</SPAN><A NAME="WebInterface">WebInterface</A></H2>
2747
2748<H3>Examples</H3>
2749
2750<PRE CLASS="command">
2751WebInterface yes
2752WebInterface no
2753</PRE>
2754
2755<H3>Description</H3>
2756
2757<P>The <CODE>WebInterface</CODE> directive specifies whether the web interface is enabled. The default value is <CODE>@CUPS_WEBIF@</CODE>.</P>
2758
ef416fc2 2759</BODY>
2760</HTML>