]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - man/cupsd.conf.man.in
Document cupsd.conf's IdleExitTimeout
[thirdparty/cups.git] / man / cupsd.conf.man.in
index d1d27cca4e78a84aef156fc69b0315fac8c21735..ddd38fc2d14aa9530e8b271fa8d0f9341ee6929b 100644 (file)
 .\"
-.\" "$Id: cupsd.conf.man.in 7935 2008-09-11 01:54:11Z mike $"
+.\" cupsd.conf man page for CUPS.
 .\"
-.\"   cupsd.conf man page for CUPS.
+.\" Copyright 2007-2016 by Apple Inc.
+.\" Copyright 1997-2006 by Easy Software Products.
 .\"
-.\"   Copyright 2007-2012 by Apple Inc.
-.\"   Copyright 1997-2006 by Easy Software Products.
+.\" These coded instructions, statements, and computer programs are the
+.\" property of Apple Inc. and are protected by Federal copyright
+.\" law.  Distribution and use rights are outlined in the file "LICENSE.txt"
+.\" which should have been included with this file.  If this file is
+.\" file is missing or damaged, see the license at "http://www.cups.org/".
 .\"
-.\"   These coded instructions, statements, and computer programs are the
-.\"   property of Apple Inc. and are protected by Federal copyright
-.\"   law.  Distribution and use rights are outlined in the file "LICENSE.txt"
-.\"   which should have been included with this file.  If this file is
-.\"   file is missing or damaged, see the license at "http://www.cups.org/".
-.\"
-.TH cupsd.conf 5 "CUPS" "6 January 2012" "Apple Inc."
+.TH cupsd.conf 5 "CUPS" "29 March 2016" "Apple Inc."
 .SH NAME
 cupsd.conf \- server configuration file for cups
 .SH DESCRIPTION
-The \fIcupsd.conf\fR file configures the CUPS scheduler, \fIcupsd(8)\fR.  It
-is normally located in the \fI@CUPS_SERVERROOT@\fR directory.
+The
+.I cupsd.conf
+file configures the CUPS scheduler,
+.BR cupsd (8).
+It is normally located in the
+.I /etc/cups
+directory.
+\fBNote:\fR File, directory, and user configuration directives that used to be allowed in the \fBcupsd.conf\fR file are now stored in the
+.BR cups-files.conf (5)
+file instead in order to prevent certain types of privilege escalation attacks.
 .LP
-Each line in the file can be a configuration directive, a blank line,
-or a comment. Comment lines start with the # character. The
-configuration directives are intentionally similar to those used by the
-popular Apache web server software and are described below.
-.SH DIRECTIVES
-The following directives are understood by \fIcupsd(8)\fR. Consult the
-on-line help for detailed descriptions:
-.TP 5
-AccessLog filename
+Each line in the file can be a configuration directive, a blank line, or a comment.
+Configuration directives typically consist of a name and zero or more values separated by whitespace.
+The configuration directive name and values are case-insensitive.
+Comment lines start with the # character.
+.SS TOP-LEVEL DIRECTIVES
+The following top-level directives are understood by
+.BR cupsd (8):
+.\"#AccessLogLevel
 .TP 5
-AccessLog syslog
-.br
-Defines the access log filename.
+\fBAccessLogLevel config\fR
 .TP 5
-AccessLogLevel config
+\fBAccessLogLevel actions\fR
 .TP 5
-AccessLogLevel actions
-.TP 5
-AccessLogLevel all
-.br
+\fBAccessLogLevel all\fR
 Specifies the logging level for the AccessLog file.
+The "config" level logs when printers and classes are added, deleted, or modified and when configuration files are accessed or updated.
+The "actions" level logs when print jobs are submitted, held, released, modified, or canceled, and any of the conditions for "config".
+The "all" level logs all requests.
+The default access log level is "actions".
+.\"#AutoPurgeJobs
 .TP 5
-Allow all
+\fBAutoPurgeJobs Yes\fR
 .TP 5
-Allow none
+\fBAutoPurgeJobs No\fR
+.br
+Specifies whether to purge job history data automatically when it is no longer required for quotas.
+The default is "No".
+.\"#BrowseLocalProtocols
 .TP 5
-Allow host.domain.com
+\fBBrowseLocalProtocols all\fR
 .TP 5
-Allow *.domain.com
+\fBBrowseLocalProtocols dnssd\fR
 .TP 5
-Allow ip-address
+\fBBrowseLocalProtocols none\fR
+Specifies which protocols to use for local printer sharing.
+The default is "dnssd" on systems that support Bonjour and "none" otherwise.
+.\"#BrowseWebIF
 .TP 5
-Allow ip-address/netmask
+\fBBrowseWebIF Yes\fR
 .TP 5
-Allow ip-address/mm
+\fBBrowseWebIF No\fR
+.br
+Specifies whether the CUPS web interface is advertised.
+The default is "No".
+.\"#Browsing
 .TP 5
-Allow @IF(name)
+\fBBrowsing Yes\fR
 .TP 5
-Allow @LOCAL
+\fBBrowsing No\fR
 .br
-Allows access from the named hosts or addresses.
+Specifies whether shared printers are advertised.
+The default is "No".
+.\"#Classification
 .TP 5
-AuthClass User
+\fBClassification \fIbanner\fR
+.br
+Specifies the security classification of the server.
+Any valid banner name can be used, including "classified", "confidential", "secret", "topsecret", and "unclassified", or the banner can be omitted to disable secure printing functions.
+The default is no classification banner.
+.\"#ClassifyOverride
 .TP 5
-AuthClass Group
+\fBClassifyOverride Yes\fR
 .TP 5
-AuthClass System
+\fBClassifyOverride No\fR
 .br
-Specifies the authentication class (User, Group, System) -
-\fBthis directive is deprecated\fR.
+Specifies whether users may override the classification (cover page) of individual print jobs using the "job-sheets" option.
+The default is "No".
+.\"#DefaultAuthType
+.TP 5
+\fBDefaultAuthType Basic\fR
 .TP 5
-AuthGroupName group-name
+\fBDefaultAuthType Negotiate\fR
 .br
-Specifies the authentication group - \fBthis directive is
-deprecated\fR.
+Specifies the default type of authentication to use.
+The default is "Basic".
+.\"#DefaultEncryption
 .TP 5
-AuthType None
+\fBDefaultEncryption Never\fR
 .TP 5
-AuthType Basic
+\fBDefaultEncryption IfRequested\fR
 .TP 5
-AuthType BasicDigest
+\fBDefaultEncryption Required\fR
+Specifies whether encryption will be used for authenticated requests.
+The default is "Required".
+.\"#DefaultLanguage
 .TP 5
-AuthType Digest
+\fBDefaultLanguage \fIlocale\fR
+Specifies the default language to use for text and web content.
+The default is "en".
+.\"#DefaultPaperSize
 .TP 5
-AuthType Negotiate
-.br
-Specifies the authentication type (None, Basic, BasicDigest, Digest, Negotiate)
+\fBDefaultPaperSize Auto\fR
 .TP 5
-AutoPurgeJobs Yes
+\fBDefaultPaperSize None\fR
 .TP 5
-AutoPurgeJobs No
-.br
-Specifies whether to purge job history data automatically when
-it is no longer required for quotas.
+\fBDefaultPaperSize \fIsizename\fR
+Specifies the default paper size for new print queues. "Auto" uses a locale-specific default, while "None" specifies there is no default paper size.
+Specific size names are typically "Letter" or "A4".
+The default is "Auto".
+.\"#DefaultPolicy
 .TP 5
-BrowseLocalProtocols [All] [DNSSD]
-.br
-Specifies the protocols to use for local printer sharing.
+\fBDefaultPolicy \fIpolicy-name\fR
+Specifies the default access policy to use.
+The default access policy is "default".
+.\"#DefaultShared
 .TP 5
-BrowseWebIF Yes
+\fBDefaultShared Yes\fR
 .TP 5
-BrowseWebIF No
-.br
-Specifies whether the CUPS web interface is advertised via DNS-SD.
+\fBDefaultShared No\fR
+Specifies whether local printers are shared by default.
+The default is "Yes".
+.\"#DirtyCleanInterval
+.TP 5
+\fBDirtyCleanInterval \fIseconds\fR
+Specifies the delay for updating of configuration and state files.
+A value of 0 causes the update to happen as soon as possible, typically within a few milliseconds.
+The default value is "30".
+.\"#ErrorPolicy
+.TP 5
+\fBErrorPolicy abort-job\fR
+Specifies that a failed print job should be aborted (discarded) unless otherwise specified for the printer.
+.TP 5
+\fBErrorPolicy retry-job\fR
+Specifies that a failed print job should be retried at a later time unless otherwise specified for the printer.
+.TP 5
+\fBErrorPolicy retry-this-job\fR
+Specifies that a failed print job should be retried immediately unless otherwise specified for the printer.
+.TP 5
+\fBErrorPolicy stop-printer\fR
+Specifies that a failed print job should stop the printer unless otherwise specified for the printer. The 'stop-printer' error policy is the default.
+.\"#FilterLimit
+.TP 5
+\fBFilterLimit \fIlimit\fR
+Specifies the maximum cost of filters that are run concurrently, which can be used to minimize disk, memory, and CPU resource problems.
+A limit of 0 disables filter limiting.
+An average print to a non-PostScript printer needs a filter limit of about 200.
+A PostScript printer needs about half that (100).
+Setting the limit below these thresholds will effectively limit the scheduler to printing a single job at any time.
+The default limit is "0".
+.\"#FilterNice
+.TP 5
+\fBFilterNice \fInice-value\fR
+Specifies the scheduling priority (
+.BR nice (8)
+value) of filters that are run to print a job.
+The nice value ranges from 0, the highest priority, to 19, the lowest priority.
+The default is 0.
+.\"#GSSServiceName
+.TP 5
+\fBGSSServiceName \fIname\fR
+Specifies the service name when using Kerberos authentication.
+The default service name is "http."
+.TP 5
+.\"#HostNameLookups
+\fBHostNameLookups On\fR
+.TP 5
+\fBHostNameLookups Off\fR
+.TP 5
+\fBHostNameLookups Double\fR
+Specifies whether to do reverse lookups on connecting clients.
+The "Double" setting causes
+.BR cupsd (8)
+to verify that the hostname resolved from the address matches one of the addresses returned for that hostname.
+Double lookups also prevent clients with unregistered addresses from connecting to your server.
+The default is "Off" to avoid the potential server performance problems with hostname lookups.
+Only set this option to "On" or "Double" if absolutely required.
+.\"#IdleExitTimeout
+.TP 5
+\fBIdleExitTimeout \fIseconds\fR
+Only applicable when
+.BR cupsd (8)
+is run on-demand (e.g., with \fB-l\fR).
+Specifies the length of time to wait before shutting down due to inactivity.
+The default is "60".
+.\"#JobKillDelay
+.TP 5
+\fBJobKillDelay \fIseconds\fR
+Specifies the number of seconds to wait before killing the filters and backend associated with a canceled or held job.
+The default is "30".
+.\"#JobRetryInterval
+.TP 5
+\fBJobRetryInterval \fIseconds\fR
+Specifies the interval between retries of jobs in seconds.
+This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job".
+The default is "30".
+.\"#JobRetryLimit
 .TP 5
-Browsing Yes
+\fBJobRetryLimit \fIcount\fR
+Specifies the number of retries that are done for jobs.
+This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job".
+The default is "5".
+.\"#KeepAlive
 .TP 5
-Browsing No
-.br
-Specifies whether or not remote printer browsing should be enabled.
+\fBKeepAlive Yes\fR
 .TP 5
-Classification banner
-.br
-Specifies the security classification of the server.
+\fBKeepAlive No\fR
+Specifies whether to support HTTP keep-alive connections.
+The default is "Yes".
+.\"#KeepAliveTimeout
 .TP 5
-ClassifyOverride Yes
+\fBKeepAliveTimeout \fIseconds\fR
+Specifies how long an idle client connection remains open.
+The default is "30".
+.\"#LimitIPP
 .TP 5
-ClassifyOverride No
-.br
-Specifies whether to allow users to override the classification
-of individual print jobs.
+\fB<Limit \fIoperation \fR...\fB> \fR... \fB</Limit>\fR
+Specifies the IPP operations that are being limited inside a Policy section. IPP operation names are listed below in the section "IPP OPERATIONS".
+.\"#Limit
 .TP 5
-ConfigFilePerm mode
-.br
-Specifies the permissions for all configuration files that the scheduler
-writes.
+\fB<Limit \fImethod \fR...\fB> \fR... \fB</Limit>\fR
+.\"#LimitExcept
 .TP 5
-DataDir path
-.br
-Specified the directory where data files can be found.
+\fB<LimitExcept \fImethod \fR...\fB> \fR... \fB</LimitExcept>\fR
+Specifies the HTTP methods that are being limited inside a Location section. HTTP method names are listed below in the section "HTTP METHODS".
+.\"#LimitRequestBody
 .TP 5
-DefaultAuthType Basic
+\fBLimitRequestBody \fIsize\fR
+Specifies the maximum size of print files, IPP requests, and HTML form data.
+The default is "0" which disables the limit check.
+.\"#Listen
 .TP 5
-DefaultAuthType BasicDigest
+\fBListen \fIipv4-address\fB:\fIport\fR
 .TP 5
-DefaultAuthType Digest
+\fBListen [\fIipv6-address\fB]:\fIport\fR
 .TP 5
-DefaultAuthType Negotiate
-.br
-Specifies the default type of authentication to use.
+\fBListen *:\fIport\fR
 .TP 5
-DefaultEncryption Never
+\fBListen \fI/path/to/domain/socket\fR
+Listens to the specified address and port or domain socket path for connections.
+Multiple Listen directives can be provided to listen on multiple addresses.
+The Listen directive is similar to the Port directive but allows you to restrict access to specific interfaces or networks.
+.\"#ListenBackLog
 .TP 5
-DefaultEncryption IfRequested
+\fBListenBackLog \fInumber\fR
+Specifies the number of pending connections that will be allowed.
+This normally only affects very busy servers that have reached the MaxClients limit, but can also be triggered by large numbers of simultaneous connections.
+When the limit is reached, the operating system will refuse additional connections until the scheduler can accept the pending ones.
+The default is the OS-defined default limit, typically either "5" for older operating systems or "128" for newer operating systems.
+.\"#Location
 .TP 5
-DefaultEncryption Required
-.br
-Specifies the type of encryption to use for authenticated requests.
+\fB<Location \fI/path\fB> \fR... \fB</Location>\fR
+Specifies access control for the named location.
+Paths are documented below in the section "LOCATION PATHS".
+.\"#LogDebugHistory
 .TP 5
-DefaultLanguage locale
-.br
-Specifies the default language to use for text and web content.
+\fBLogDebugHistory \fInumber\fR
+Specifies the number of debugging messages that are retained for logging if an error occurs in a print job. Debug messages are logged regardless of the LogLevel setting.
+.\"#LogLevel
 .TP 5
-DefaultPaperSize Auto
+\fBLogLevel \fRnone
 .TP 5
-DefaultPaperSize None
+\fBLogLevel \fRemerg
 .TP 5
-DefaultPaperSize sizename
-.br
-Specifies the default paper size for new print queues. "Auto" uses a locale-
-specific default, while "None" specifies there is no default paper size.
+\fBLogLevel \fRalert
 .TP 5
-DefaultPolicy policy-name
-.br
-Specifies the default access policy to use.
+\fBLogLevel \fRcrit
 .TP 5
-DefaultShared Yes
+\fBLogLevel \fRerror
 .TP 5
-DefaultShared No
-.br
-Specifies whether local printers are shared by default.
+\fBLogLevel \fRwarn
 .TP 5
-Deny all
+\fBLogLevel \fRnotice
 .TP 5
-Deny none
+\fBLogLevel \fRinfo
 .TP 5
-Deny host.domain.com
+\fBLogLevel \fRdebug
 .TP 5
-Deny *.domain.com
+\fBLogLevel \fRdebug2
+Specifies the level of logging for the ErrorLog file.
+The value "none" stops all logging while "debug2" logs everything.
+The default is "warn".
+.\"#LogTimeFormat
 .TP 5
-Deny ip-address
+\fBLogTimeFormat \fRstandard
 .TP 5
-Deny ip-address/netmask
+\fBLogTimeFormat \fRusecs
+Specifies the format of the date and time in the log files.
+The value "standard" is the default and logs whole seconds while "usecs" logs microseconds.
+.\"#MaxClients
 .TP 5
-Deny ip-address/mm
+\fBMaxClients \fInumber\fR
+Specifies the maximum number of simultaneous clients that are allowed by the scheduler.
+The default is "100".
+.\"#MaxClientPerHost
 .TP 5
-Deny @IF(name)
+\fBMaxClientsPerHost \fInumber\fR
+Specifies the maximum number of simultaneous clients that are allowed from a
+single address.
+The default is the MaxClients value.
+.\"#MaxCopies
 .TP 5
-Deny @LOCAL
-.br
-Denies access to the named host or address.
+\fBMaxCopies \fInumber\fR
+Specifies the maximum number of copies that a user can print of each job.
+The default is "9999".
+.\"#MaxHoldTime
+.TP 5
+\fBMaxHoldTime \fIseconds\fR
+Specifies the maximum time a job may remain in the "indefinite" hold state before it is canceled.
+The default is "0" which disables cancellation of held jobs.
+.\"#MaxJobs
+.TP 5
+\fBMaxJobs \fInumber\fR
+Specifies the maximum number of simultaneous jobs that are allowed.
+Set to "0" to allow an unlimited number of jobs.
+The default is "500".
+.\"#MaxJobsPerPrinter
+.TP 5
+\fBMaxJobsPerPrinter \fInumber\fR
+Specifies the maximum number of simultaneous jobs that are allowed per printer.
+The default is "0" which allows up to MaxJobs jobs per printer.
+.\"#MaxJobsPerUser
+.TP 5
+\fBMaxJobsPerUser \fInumber\fR
+Specifies the maximum number of simultaneous jobs that are allowed per user.
+The default is "0" which allows up to MaxJobs jobs per user.
+.\"#MaxJobTime
+.TP 5
+\fBMaxJobTime \fIseconds\fR
+Specifies the maximum time a job may take to print before it is canceled.
+Set to "0" to disable cancellation of "stuck" jobs.
+The default is "10800" (3 hours).
+.\"#MaxLogSize
+.TP 5
+\fBMaxLogSize \fIsize\fR
+Specifies the maximum size of the log files before they are rotated.
+The value "0" disables log rotation.
+The default is "1048576" (1MB).
+.\"#MultipleOperationTimeout
+.TP 5
+\fBMultipleOperationTimeout \fIseconds\fR
+Specifies the maximum amount of time to allow between files in a multiple file print job.
+The default is "300" (5 minutes).
+.\"#PageLogFormat
+.TP 5
+\fBPageLogFormat \fIformat-string\fR
+Specifies the format of PageLog lines.
+Sequences beginning with percent (%) characters are replaced with the corresponding information, while all other characters are copied literally.
+The following percent sequences are recognized:
+.nf
+
+    "%%" inserts a single percent character.
+    "%{name}" inserts the value of the specified IPP attribute.
+    "%C" inserts the number of copies for the current page.
+    "%P" inserts the current page number.
+    "%T" inserts the current date and time in common log format.
+    "%j" inserts the job ID.
+    "%p" inserts the printer name.
+    "%u" inserts the username.
+
+.fi
+The default is the empty string, which disables page logging.
+The string "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}" creates a page log with the standard items.
+.\"#PassEnv
+.TP 5
+\fBPassEnv \fIvariable \fR[ ... \fIvariable \fR]
+Passes the specified environment variable(s) to child processes.
+.\"#Policy
 .TP 5
-DirtyCleanInterval seconds
-.br
-Specifies the delay for updating of configuration and state files. A value of 0
-causes the update to happen as soon as possible, typically within a few
-milliseconds.
+\fB<Policy \fIname\fB> \fR... \fB</Policy>\fR
+Specifies access control for the named policy.
+.\"#Port
 .TP 5
-DocumentRoot directory
-.br
-Specifies the root directory for the internal web server documents.
+\fBPort \fInumber\fR
+Listens to the specified port number for connections.
+.\"#PreserveJobFiles
 .TP 5
-Encryption IfRequested
+\fBPreserveJobFiles Yes\fR
 .TP 5
-Encryption Never
+\fBPreserveJobFiles No\fR
 .TP 5
-Encryption Required
-.br
-Specifies the level of encryption that is required for a particular
-location.
+\fBPreserveJobFiles \fIseconds\fR
+Specifies whether job files (documents) are preserved after a job is printed.
+If a numeric value is specified, job files are preserved for the indicated number of seconds after printing.
+The default is "86400" (preserve 1 day).
+.\"#PreserveJobHistory
 .TP 5
-ErrorLog filename
+\fBPreserveJobHistory Yes\fR
 .TP 5
-ErrorLog syslog
-.br
-Specifies the error log filename.
+\fBPreserveJobHistory No\fR
 .TP 5
-FatalErrors none
+\fBPreserveJobHistory \fIseconds\fR
+Specifies whether the job history is preserved after a job is printed.
+If a numeric value is specified, the job history is preserved for the indicated number of seconds after printing.
+If "Yes", the job history is preserved until the MaxJobs limit is reached.
+The default is "Yes".
+.\"#ReloadTimeout
 .TP 5
-FatalErrors all -kind [... -kind]
+\fBReloadTimeout \fIseconds\fR
+Specifies the amount of time to wait for job completion before restarting the scheduler.
+The default is "30".
+.\"#RIPCache
 .TP 5
-FatalErrors kind [... kind]
-.br
-Specifies which errors are fatal, causing the scheduler to exit. "Kind" is
-"browse", "config", "listen", "log", or "permissions".
+\fBRIPCache \fIsize\fR
+Specifies the maximum amount of memory to use when converting documents into bitmaps for a printer.
+The default is "128m".
+.\"#ServerAdmin
 .TP 5
-FileDevice Yes
+\fBServerAdmin \fIemail-address\fR
+Specifies the email address of the server administrator.
+The default value is "root@ServerName".
+.\"#ServerAlias
 .TP 5
-FileDevice No
-.br
-Specifies whether the file pseudo-device can be used for new
-printer queues.
+\fBServerAlias \fIhostname \fR[ ... \fIhostname \fR]
 .TP 5
-FilterLimit limit
-.br
-Specifies the maximum cost of filters that are run concurrently.
+\fBServerAlias *\fR
+The ServerAlias directive is used for HTTP Host header validation when clients connect to the scheduler from external interfaces.
+Using the special name "*" can expose your system to known browser-based DNS rebinding attacks, even when accessing sites through a firewall.
+If the auto-discovery of alternate names does not work, we recommend listing each alternate name with a ServerAlias directive instead of using "*".
+.\"#ServerName
 .TP 5
-FilterNice nice-value
-.br
-Specifies the scheduling priority ("nice" value) of filters that
-are run to print a job.
+\fBServerName \fIhostname\fR
+Specifies the fully-qualified hostname of the server.
+The default is the value reported by the
+.BR hostname (1)
+command.
+.\"#ServerTokens
 .TP 5
-FontPath directory[:directory:...]
-.br
-Specifies the search path for fonts.
+\fBServerTokens None\fR
 .TP 5
-Group group-name-or-number
-.br
-Specifies the group name or ID that will be used when executing
-external programs.
+\fBServerTokens ProductOnly\fR
 .TP 5
-GSSServiceName name
-.br
-Specifies the service name when using Kerberos authentication. The default
-service name is "@CUPS_DEFAULT_GSSSERVICENAME@".
+\fBServerTokens Major\fR
 .TP 5
-HostNameLookups On
+\fBServerTokens Minor\fR
 .TP 5
-HostNameLookups Off
+\fBServerTokens Minimal\fR
 .TP 5
-HostNameLookups Double
-.br
-Specifies whether or not to do reverse lookups on client addresses.
+\fBServerTokens OS\fR
 .TP 5
-Include filename
-.br
-Includes the named file.
+\fBServerTokens Full\fR
+Specifies what information is included in the Server header of HTTP responses.
+"None" disables the Server header.
+"ProductOnly" reports "CUPS".
+"Major" reports "CUPS 2".
+"Minor" reports "CUPS 2.0".
+"Minimal" reports "CUPS 2.0.0".
+"OS" reports "CUPS 2.0.0 (UNAME)" where UNAME is the output of the
+.BR uname (1)
+command.
+"Full" reports "CUPS 2.0.0 (UNAME) IPP/2.0".
+The default is "Minimal".
+.\"#SetEnv
 .TP 5
-JobKillDelay seconds
-.br
-Specifies the number of seconds to wait before killing the filters and backend
-associated with a canceled or held job.
+\fBSetEnv \fIvariable value\fR
+Set the specified environment variable to be passed to child processes.
+.\"#SSLListen
 .TP 5
-JobPrivateAccess all
+\fBSSLListen \fIipv4-address\fB:\fIport\fR
 .TP 5
-JobPrivateAccess default
+\fBSSLListen [\fIipv6-address\fB]:\fIport\fR
 .TP 5
-JobPrivateAccess {user|@group|@ACL|@OWNER|@SYSTEM}+
-.br
-Specifies an access list for a job's private values. The "default" access list
-is "@OWNER @SYSTEM". "@ACL" maps to the printer's requesting-user-name-allowed
-or requesting-user-name-denied values.
+\fBSSLListen *:\fIport\fR
+Listens on the specified address and port for encrypted connections.
+.\"#SSLOptions
 .TP 5
-JobPrivateValues all
+\fBSSLOptions \fR[\fIAllowRC4\fR] [\fIAllowSSL3\fR]
 .TP 5
-JobPrivateValues default
+\fBSSLOptions None\fR
+Sets encryption options.
+By default, CUPS only supports encryption using TLS v1.0 or higher using known secure cipher suites.
+The \fIAllowRC4\fR option enables the 128-bit RC4 cipher suites, which are required for some older clients that do not implement newer ones.
+The \fIAllowSSL3\fR option enables SSL v3.0, which is required for some older clients that do not support TLS v1.0.
+.\"#SSLPort
 .TP 5
-JobPrivateValues none
+\fBSSLPort \fIport\fR
+Listens on the specified port for encrypted connections.
+.\"#StrictConformance
 .TP 5
-JobPrivateValues attribute-name-1 [ ... attribute-name-N ]
-Specifies the list of job values to make private. The "default" values are
-"job-name", "job-originating-host-name", and "job-originating-user-name".
+\fBStrictConformance Yes\fR
 .TP 5
-JobRetryInterval seconds
-.br
-Specifies the interval between retries of jobs in seconds.
+\fBStrictConformance No\fR
+Specifies whether the scheduler requires clients to strictly adhere to the IPP specifications.
+The default is "No".
+.\"#Timeout
 .TP 5
-JobRetryLimit count
-.br
-Specifies the number of retries that are done for jobs.
+\fBTimeout \fIseconds\fR
+Specifies the HTTP request timeout.
+The default is "300" (5 minutes).
+.\"#WebInterface
 .TP 5
-KeepAlive Yes
+\fBWebInterface yes\fR
 .TP 5
-KeepAlive No
-.br
-Specifies whether to support HTTP keep-alive connections.
+\fBWebInterface no\fR
+Specifies whether the web interface is enabled.
+The default is "No".
+.SS HTTP METHOD NAMES
+The following HTTP methods are supported by
+.BR cupsd (8):
 .TP 5
-KeepAliveTimeout seconds
-.br
-Specifies the amount of time that connections are kept alive.
+GET
+Used by a client to download icons and other printer resources and to access the CUPS web interface.
 .TP 5
-<Limit operations> ... </Limit>
-.br
-Specifies the IPP operations that are being limited inside a policy.
+HEAD
+Used by a client to get the type, size, and modification date of resources.
 .TP 5
-<Limit methods> ... </Limit>
+OPTIONS
+Used by a client to establish a secure (SSL/TLS) connection.
 .TP 5
-<LimitExcept methods> ... </LimitExcept>
-.br
-Specifies the HTTP methods that are being limited inside a location.
+POST
+Used by a client to submit IPP requests and HTML forms from the CUPS web interface.
 .TP 5
-LimitRequestBody
-.br
-Specifies the maximum size of any print job request.
+PUT
+Used by a client to upload configuration files.
+.SS IPP OPERATION NAMES
+The following IPP operations are supported by
+.BR cupsd (8):
 .TP 5
-Listen ip-address:port
+CUPS\-Accept\-Jobs
+Allows a printer to accept new jobs.
 .TP 5
-Listen *:port
+CUPS\-Add\-Modify\-Class
+Adds or modifies a printer class.
 .TP 5
-Listen /path/to/domain/socket
-.br
-Listens to the specified address and port or domain socket path.
+CUPS\-Add\-Modify\-Printer
+Adds or modifies a printer.
 .TP 5
-<Location /path> ... </Location>
-.br
-Specifies access control for the named location.
+CUPS\-Authenticate\-Job
+Releases a job that is held for authentication.
 .TP 5
-LogDebugHistory #-messages
-.br
-Specifies the number of debugging messages that are logged when an error
-occurs in a print job.
+CUPS\-Delete\-Class
+Deletes a printer class.
 .TP 5
-LogFilePerm mode
-.br
-Specifies the permissions for all log files that the scheduler writes.
+CUPS\-Delete\-Printer
+Deletes a printer.
 .TP 5
-LogLevel alert
+CUPS\-Get\-Classes
+Gets a list of printer classes.
 .TP 5
-LogLevel crit
+CUPS\-Get\-Default
+Gets the server default printer or printer class.
 .TP 5
-LogLevel debug2
+CUPS\-Get\-Devices
+Gets a list of devices that are currently available.
 .TP 5
-LogLevel debug
+CUPS\-Get\-Document
+Gets a document file for a job.
 .TP 5
-LogLevel emerg
+CUPS\-Get\-PPD
+Gets a PPD file.
 .TP 5
-LogLevel error
+CUPS\-Get\-PPDs
+Gets a list of installed PPD files.
 .TP 5
-LogLevel info
+CUPS\-Get\-Printers
+Gets a list of printers.
 .TP 5
-LogLevel none
+CUPS\-Move\-Job
+Moves a job.
 .TP 5
-LogLevel notice
+CUPS\-Reject\-Jobs
+Prevents a printer from accepting new jobs.
 .TP 5
-LogLevel warn
-.br
-Specifies the logging level for the ErrorLog file.
+CUPS\-Set\-Default
+Sets the server default printer or printer class.
 .TP 5
-LogTimeFormat standard
+Cancel\-Job
+Cancels a job.
 .TP 5
-LogTimeFormat usecs
-.br
-Specifies the format of the date and time in the log files.
+Cancel\-Jobs
+Cancels one or more jobs.
 .TP 5
-MaxClients number
-.br
-Specifies the maximum number of simultaneous clients to support.
+Cancel\-My\-Jobs
+Cancels one or more jobs creates by a user.
 .TP 5
-MaxClientsPerHost number
-.br
-Specifies the maximum number of simultaneous clients to support from a
-single address.
+Cancel\-Subscription
+Cancels a subscription.
 .TP 5
-MaxCopies number
-.br
-Specifies the maximum number of copies that a user can print of each job.
+Close\-Job
+Closes a job that is waiting for more documents.
 .TP 5
-MaxJobs number
-.br
-Specifies the maximum number of simultaneous jobs to support.
+Create\-Job
+Creates a new job with no documents.
 .TP 5
-MaxJobsPerPrinter number
-.br
-Specifies the maximum number of simultaneous jobs per printer to support.
+Create\-Job\-Subscriptions
+Creates a subscription for job events.
 .TP 5
-MaxJobsPerUser number
-.br
-Specifies the maximum number of simultaneous jobs per user to support.
+Create\-Printer\-Subscriptions
+Creates a subscription for printer events.
 .TP 5
-MaxJobTime seconds
-.br
-Specifies the maximum time a job may take to print before it is canceled. The
-default is 10800 seconds (3 hours). Set to 0 to disable cancellation of "stuck"
-jobs.
+Get\-Job\-Attributes
+Gets information about a job.
 .TP 5
-MaxLogSize number-bytes
-.br
-Specifies the maximum size of the log files before they are
-rotated (0 to disable rotation)
+Get\-Jobs
+Gets a list of jobs.
 .TP 5
-MaxRequestSize number-bytes
-.br
-Specifies the maximum request/file size in bytes (0 for no limit)
+Get\-Notifications
+Gets a list of event notifications for a subscription.
 .TP 5
-MultipleOperationTimeout seconds
-.br
-Specifies the maximum amount of time to allow between files in a multiple file
-print job.
+Get\-Printer\-Attributes
+Gets information about a printer or printer class.
 .TP 5
-Order allow,deny
+Get\-Subscription\-Attributes
+Gets information about a subscription.
 .TP 5
-Order deny,allow
-.br
-Specifies the order of HTTP access control (allow,deny or deny,allow)
+Get\-Subscriptions
+Gets a list of subscriptions.
 .TP 5
-PageLog filename
+Hold\-Job
+Holds a job from printing.
 .TP 5
-PageLog syslog
-.br
-Specifies the page log filename.
+Hold\-New\-Jobs
+Holds all new jobs from printing.
 .TP 5
-PageLogFormat format string
-.br
-Specifies the format of page log lines.
+Pause\-Printer
+Stops processing of jobs by a printer or printer class.
 .TP 5
-PassEnv variable [... variable]
-.br
-Passes the specified environment variable(s) to child processes.
+Pause\-Printer\-After\-Current\-Job
+Stops processing of jobs by a printer or printer class after the current job is finished.
 .TP 5
-<Policy name> ... </Policy>
-.br
-Specifies access control for the named policy.
+Print\-Job
+Creates a new job with a single document.
 .TP 5
-Port number
-.br
-Specifies a port number to listen to for HTTP requests.
+Purge\-Jobs
+Cancels one or more jobs and deletes the job history.
 .TP 5
-PreserveJobFiles Yes
+Release\-Held\-New\-Jobs
+Allows previously held jobs to print.
 .TP 5
-PreserveJobFiles No
-.br
-Specifies whether or not to preserve job files after they are printed.
+Release\-Job
+Allows a job to print.
 .TP 5
-PreserveJobHistory Yes
+Renew\-Subscription
+Renews a subscription.
 .TP 5
-PreserveJobHistory No
-.br
-Specifies whether or not to preserve the job history after they are
-printed.
+Restart\-Job
+Reprints a job, if possible.
 .TP 5
-Printcap
+Send\-Document
+Adds a document to a job.
 .TP 5
-Printcap filename
-.br
-Specifies the filename for a printcap file that is updated
-automatically with a list of available printers (needed for
-legacy applications); specifying Printcap with no filename
-disables printcap generation.
+Set\-Job\-Attributes
+Changes job information.
 .TP 5
-PrintcapFormat bsd
+Set\-Printer\-Attributes
+Changes printer or printer class information.
 .TP 5
-PrintcapFormat plist
+Validate\-Job
+Validates options for a new job.
+.SS LOCATION PATHS
+The following paths are commonly used when configuring
+.BR cupsd (8):
 .TP 5
-PrintcapFormat solaris
-.br
-Specifies the format of the printcap file.
+/
+The path for all get operations (get-printers, get-jobs, etc.)
 .TP 5
-PrintcapGUI
+/admin
+The path for all administration operations (add-printer, delete-printer, start-printer, etc.)
 .TP 5
-PrintcapGUI gui-program-filename
-.br
-Specifies whether to generate option panel definition files on
-some operating systems. When provided with no program filename,
-disables option panel definition files.
+/admin/conf
+The path for access to the CUPS configuration files (cupsd.conf, client.conf, etc.)
 .TP 5
-ReloadTimeout seconds
-.br
-Specifies the amount of time to wait for job completion before
-restarting the scheduler.
+/admin/log
+The path for access to the CUPS log files (access_log, error_log, page_log)
 .TP 5
-RemoteRoot user-name
-.br
-Specifies the username that is associated with unauthenticated root
-accesses.
+/classes
+The path for all printer classes
 .TP 5
-RequestRoot directory
-.br
-Specifies the directory to store print jobs and other HTTP request
-data.
+/classes/name
+The resource for the named printer class
 .TP 5
-Require group group-name-list
+/jobs
+The path for all jobs (hold-job, release-job, etc.)
 .TP 5
-Require user user-name-list
+/jobs/id
+The path for the specified job.
 .TP 5
-Require valid-user
-.br
-Specifies that user or group authentication is required.
+/printers
+The path for all printers
 .TP 5
-RIPCache bytes
-.br
-Specifies the maximum amount of memory to use when converting images
-and PostScript files to bitmaps for a printer.
+/printers/name
+The path for the named printer
 .TP 5
-Satisfy all
+/printers/name.png
+The icon file path for the named printer
 .TP 5
-Satisfy any
-.br
-Specifies whether all or any limits set for a Location must be
-satisfied to allow access.
+/printers/name.ppd
+The PPD file path for the named printer
+.SS DIRECTIVES VALID WITHIN LOCATION AND LIMIT SECTIONS
+The following directives may be placed inside Location and Limit sections in the \fBcupsd.conf\fR file:
 .TP 5
-ServerAdmin user@domain.com
-.br
-Specifies the email address of the server administrator.
+\fBAllow all\fR
 .TP 5
-ServerAlias hostname [... hostname]
+\fBAllow none\fR
 .TP 5
-ServerAlias *
-.br
-Specifies an alternate name that the server is known by. The special name "*"
-allows any name to be used.
+\fBAllow \fIhost.domain.com\fR
 .TP 5
-ServerBin directory
-.br
-Specifies the directory where backends, CGIs, daemons, and filters may
-be found.
+\fBAllow *.\fIdomain.com\fR
 .TP 5
-ServerCertificate filename
-.br
-Specifies the encryption certificate to use.
+\fBAllow \fIipv4-address\fR
 .TP 5
-ServerKey filename
-.br
-Specifies the encryption key to use.
+\fBAllow \fIipv4-address\fB/\fInetmask\fR
 .TP 5
-ServerName hostname-or-ip-address
-.br
-Specifies the fully-qualified hostname of the server.
+\fBAllow \fIipv4-address\fB/\fImm\fR
 .TP 5
-ServerRoot directory
-.br
-Specifies the directory where the server configuration files can be found.
+\fBAllow [\fIipv6-address\fB]\fR
 .TP 5
-ServerTokens Full
+\fBAllow [\fIipv6-address\fB]/\fImm\fR
 .TP 5
-ServerTokens Major
+\fBAllow @IF(\fIname\fB)\fR
 .TP 5
-ServerTokens Minimal
+\fBAllow @LOCAL\fR
+Allows access from the named hosts, domains, addresses, or interfaces.
+The Order directive controls whether Allow lines are evaluated before or after Deny lines.
 .TP 5
-ServerTokens Minor
+\fBAuthType None\fR
 .TP 5
-ServerTokens None
+\fBAuthType Basic\fR
 .TP 5
-ServerTokens OS
+\fBAuthType Default\fR
 .TP 5
-ServerTokens ProductOnly
-.br
-Specifies what information is included in the Server header of HTTP
-responses.
+\fBAuthType Negotiate\fR
+Specifies the type of authentication required.
+The value "Default" corresponds to the DefaultAuthType value.
 .TP 5
-SetEnv variable value
-.br
-Set the specified environment variable to be passed to child processes.
+\fBDeny all\fR
 .TP 5
-SSLListen
-.br
-Listens on the specified address and port for encrypted connections.
+\fBDeny none\fR
 .TP 5
-SSLOptions None
+\fBDeny \fIhost.domain.com\fR
 .TP 5
-SSLOptions NoEmptyFragments
-.br
-Sets SSL/TLS protocol options for encrypted connections.
+\fBDeny *.\fIdomain.com\fR
 .TP 5
-SSLPort
-.br
-Listens on the specified port for encrypted connections.
+\fBDeny \fIipv4-address\fR
 .TP 5
-SubscriptionPrivateAccess all
+\fBDeny \fIipv4-address\fB/\fInetmask\fR
 .TP 5
-SubscriptionPrivateAccess default
+\fBDeny \fIipv4-address\fB/\fImm\fR
 .TP 5
-SubscriptionPrivateAccess {user|@group|@ACL|@OWNER|@SYSTEM}+
-.br
-Specifies an access list for a subscription's private values. The "default"
-access list is "@OWNER @SYSTEM". "@ACL" maps to the printer's
-requesting-user-name-allowed or requesting-user-name-denied values.
+\fBDeny [\fIipv6-address\fB]\fR
 .TP 5
-SubscriptionPrivateValues all
+\fBDeny [\fIipv6-address\fB]/\fImm\fR
 .TP 5
-SubscriptionPrivateValues default
+\fBDeny @IF(\fIname\fB)\fR
 .TP 5
-SubscriptionPrivateValues none
+\fBDeny @LOCAL\fR
+Denies access from the named hosts, domains, addresses, or interfaces.
+The Order directive controls whether Deny lines are evaluated before or after Allow lines.
 .TP 5
-SubscriptionPrivateValues attribute-name-1 [ ... attribute-name-N ]
-Specifies the list of job values to make private. The "default" values are
-"notify-events", "notify-pull-method", "notify-recipient-uri",
-"notify-subscriber-user-name", and "notify-user-data".
+\fBEncryption IfRequested\fR
 .TP 5
-SystemGroup group-name [group-name ...]
-.br
-Specifies the group(s) to use for System class authentication.
+\fBEncryption Never\fR
 .TP 5
-TempDir directory
-.br
-Specifies the directory where temporary files are stored.
+\fBEncryption Required\fR
+Specifies the level of encryption that is required for a particular location.
+The default value is "IfRequested".
 .TP 5
-Timeout seconds
-.br
-Specifies the HTTP request timeout in seconds.
+\fBOrder allow,deny\fR
+Specifies that access is denied by default. Allow lines are then processed followed by Deny lines to determine whether a client may access a particular resource.
 .TP 5
-User user-name
-.br
-Specifies the user name or ID that is used when running external programs.
+\fBOrder deny,allow\fR
+Specifies that access is allowed by default. Deny lines are then processed followed by Allow lines to determine whether a client may access a particular resource.
 .TP 5
-WebInterface yes
+\fBRequire group \fIgroup-name \fR[ \fIgroup-name \fR... ]
+Specifies that an authenticated user must be a member of one of the named groups.
 .TP 5
-WebInterface no
-Specifies whether the web interface is enabled.
+\fBRequire user {\fIuser-name\fR|\fB@\fIgroup-name\fR} ...
+Specifies that an authenticated user must match one of the named users or be a member of one of the named groups.
+The group name "@SYSTEM" corresponds to the list of groups defined by the SystemGroup directive in the
+.BR cups-files.conf (5)
+file.
+The group name "@OWNER" corresponds to the owner of the resource, for example the person that submitted a print job.
+Note: The 'root' user is not special and must be granted privileges like any other user account.
+.TP 5
+\fBRequire valid-user\fR
+Specifies that any authenticated user is acceptable.
+.TP 5
+\fBSatisfy all\fR
+Specifies that all Allow, AuthType, Deny, Order, and Require conditions must be satisfied to allow access.
+.TP 5
+\fBSatisfy any\fR
+Specifies that any a client may access a resource if either the authentication (AuthType/Require) or address (Allow/Deny/Order) conditions are satisfied.
+For example, this can be used to require authentication only for remote accesses.
+.SS DIRECTIVES VALID WITHIN POLICY SECTIONS
+The following directives may be placed inside Policy sections in the \fBcupsd.conf\fR file:
+.TP 5
+\fBJobPrivateAccess all\fR
+.TP 5
+\fBJobPrivateAccess default\fR
+.TP 5
+\fBJobPrivateAccess \fR{\fIuser\fR|\fB@\fIgroup\fR|\fB@ACL\fR|\fB@OWNER\fR|\fB@SYSTEM\fR} ...
+Specifies an access list for a job's private values.
+The "default" access list is "@OWNER @SYSTEM".
+"@ACL" maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values.
+"@OWNER" maps to the job's owner.
+"@SYSTEM" maps to the groups listed for the SystemGroup directive in the
+.BR cups-files.conf (5)
+file.
+.TP 5
+\fBJobPrivateValues all\fR
+.TP 5
+\fBJobPrivateValues default\fR
+.TP 5
+\fBJobPrivateValues none\fR
+.TP 5
+\fBJobPrivateValues \fIattribute-name \fR[ ... \fIattribute-name \fR]
+Specifies the list of job values to make private.
+The "default" values are "job-name", "job-originating-host-name", "job-originating-user-name", and "phone".
+.TP 5
+\fBSubscriptionPrivateAccess all\fR
+.TP 5
+\fBSubscriptionPrivateAccess default\fR
+.TP 5
+\fBSubscriptionPrivateAccess \fR{\fIuser\fR|\fB@\fIgroup\fR|\fB@ACL\fR|\fB@OWNER\fR|\fB@SYSTEM\fR} ...
+Specifies an access list for a subscription's private values.
+The "default" access list is "@OWNER @SYSTEM".
+"@ACL" maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values.
+"@OWNER" maps to the job's owner.
+"@SYSTEM" maps to the groups listed for the SystemGroup directive in the
+.BR cups-files.conf (5)
+file.
+.TP 5
+\fBSubscriptionPrivateValues all\fR
+.TP 5
+\fBSubscriptionPrivateValues default\fR
+.TP 5
+\fBSubscriptionPrivateValues none\fR
+.TP 5
+\fBSubscriptionPrivateValues \fIattribute-name \fR[ ... \fIattribute-name \fR]
+Specifies the list of subscription values to make private.
+The "default" values are "notify-events", "notify-pull-method", "notify-recipient-uri", "notify-subscriber-user-name", and "notify-user-data".
+.SH CONFORMING TO
+The \fBcupsd.conf\fR file format is based on the Apache HTTP Server configuration file format.
+.SH EXAMPLES
+Log everything with a maximum log file size of 32 megabytes:
+.nf
+
+    AccessLogLevel all
+    LogLevel debug2
+    MaxLogSize 32m
+
+.fi
+Require authentication for accesses from outside the 10. network:
+.nf
+
+    <Location />
+    Order allow,deny
+    Allow from 10./8
+    AuthType Basic
+    Require valid-user
+    Satisfy any
+    </Location>
+.fi
 .SH SEE ALSO
-\fIclasses.conf(5)\fR, \fIcupsd(8)\fR, \fImime.convs(5)\fR,
-\fImime.types(5)\fR, \fIprinters.conf(5)\fR,
-\fIsubscriptions.conf(5)\fR,
-.br
-http://localhost:631/help
+.BR classes.conf (5),
+.BR cups-files.conf (5),
+.BR cupsd (8),
+.BR mime.convs (5),
+.BR mime.types (5),
+.BR printers.conf (5),
+.BR subscriptions.conf (5),
+CUPS Online Help (http://localhost:631/help)
 .SH COPYRIGHT
-Copyright 2007-2011 by Apple Inc.
-.\"
-.\" End of "$Id: cupsd.conf.man.in 7935 2008-09-11 01:54:11Z mike $".
-.\"
+Copyright \[co] 2007-2016 by Apple Inc.