]> git.ipfire.org Git - thirdparty/cups.git/blame - scheduler/conf.h
Merge launchd branch into trunk.
[thirdparty/cups.git] / scheduler / conf.h
CommitLineData
a129ddbd 1/*
c9d3f842 2 * "$Id$"
a129ddbd 3 *
fd8b1cf8 4 * Configuration file definitions for the Common UNIX Printing System (CUPS)
5 * scheduler.
a129ddbd 6 *
c9d3f842 7 * Copyright 1997-2005 by Easy Software Products, all rights reserved.
a129ddbd 8 *
9 * These coded instructions, statements, and computer programs are the
10 * property of Easy Software Products and are protected by Federal
11 * copyright law. Distribution and use rights are outlined in the file
12 * "LICENSE.txt" which should have been included with this file. If this
13 * file is missing or damaged please contact Easy Software Products
14 * at:
15 *
16 * Attn: CUPS Licensing Information
17 * Easy Software Products
8784b6a6 18 * 44141 Airport View Drive, Suite 204
bcd9e019 19 * Hollywood, Maryland 20636 USA
a129ddbd 20 *
9639c4de 21 * Voice: (301) 373-9600
a129ddbd 22 * EMail: cups-info@cups.org
23 * WWW: http://www.cups.org
a129ddbd 24 */
25
dcfcaeac 26
a129ddbd 27/*
fd8b1cf8 28 * Log levels...
29 */
30
f3e786fc 31typedef enum
32{
33 CUPSD_LOG_ATTR = -3, /* Used internally for attributes */
34 CUPSD_LOG_STATE, /* Used internally for state-reasons */
35 CUPSD_LOG_PAGE, /* Used internally for page logging */
36 CUPSD_LOG_NONE,
37 CUPSD_LOG_EMERG, /* Emergency issues */
38 CUPSD_LOG_ALERT, /* Something bad happened that needs attention */
39 CUPSD_LOG_CRIT, /* Critical error but server continues */
40 CUPSD_LOG_ERROR, /* Error condition */
41 CUPSD_LOG_WARN, /* Warning */
42 CUPSD_LOG_NOTICE, /* Normal condition that needs logging */
43 CUPSD_LOG_INFO, /* General information */
44 CUPSD_LOG_DEBUG, /* General debugging */
45 CUPSD_LOG_DEBUG2 /* Detailed debugging */
46} cupsd_loglevel_t;
fd8b1cf8 47
48
7efb04c8 49/*
50 * Printcap formats...
51 */
52
53#define PRINTCAP_BSD 0 /* Berkeley LPD format */
54#define PRINTCAP_SOLARIS 1 /* Solaris lpsched format */
55
56
fd8b1cf8 57/*
58 * Globals...
59 */
60
36992080 61VAR char *ConfigurationFile VALUE(NULL),
fd8b1cf8 62 /* Configuration file to use */
36992080 63 *ServerName VALUE(NULL),
fd8b1cf8 64 /* FQDN for server */
36992080 65 *ServerAdmin VALUE(NULL),
fd8b1cf8 66 /* Administrator's email */
36992080 67 *ServerRoot VALUE(NULL),
fd8b1cf8 68 /* Root directory for scheduler */
36992080 69 *ServerBin VALUE(NULL),
bd84e0d1 70 /* Root directory for binaries */
d4102150 71 *StateDir VALUE(NULL),
72 /* Root directory for state data */
36992080 73 *RequestRoot VALUE(NULL),
bd84e0d1 74 /* Directory for request files */
36992080 75 *DocumentRoot VALUE(NULL);
fd8b1cf8 76 /* Root directory for documents */
753453e4 77VAR int NumSystemGroups VALUE(0);
78 /* Number of system group names */
e9a798a1 79VAR char *SystemGroups[MAX_SYSTEM_GROUPS];
753453e4 80 /* System group names */
e9a798a1 81VAR int SystemGroupIDs[MAX_SYSTEM_GROUPS];
82 /* System group IDs */
83VAR char *AccessLog VALUE(NULL),
fd8b1cf8 84 /* Access log filename */
36992080 85 *ErrorLog VALUE(NULL),
fd8b1cf8 86 /* Error log filename */
36992080 87 *PageLog VALUE(NULL),
c7fa9d06 88 /* Page log filename */
9d0c9f28 89 *CacheDir VALUE(NULL),
90 /* Cache file directory */
36992080 91 *DataDir VALUE(NULL),
df3f73ff 92 /* Data file directory */
36992080 93 *DefaultLanguage VALUE(NULL),
fd8b1cf8 94 /* Default language encoding */
36992080 95 *DefaultCharset VALUE(NULL),
a9de544f 96 /* Default charset */
08c0ff15 97 *DefaultLocale VALUE(NULL),
98 /* Default locale */
36992080 99 *RIPCache VALUE(NULL),
7f0679f5 100 /* Amount of memory for RIPs */
36992080 101 *TempDir VALUE(NULL),
7f0679f5 102 /* Temporary directory */
36992080 103 *Printcap VALUE(NULL),
03081fd2 104 /* Printcap file */
36992080 105 *PrintcapGUI VALUE(NULL),
9ae34eb7 106 /* GUI program to use for IRIX */
36992080 107 *FontPath VALUE(NULL),
7517e57e 108 /* Font search path */
36992080 109 *RemoteRoot VALUE(NULL),
d74efa25 110 /* Remote root user */
36992080 111 *Classification VALUE(NULL);
d11458ff 112 /* Classification of system */
4342fddc 113VAR uid_t User VALUE(1);
114 /* User ID for server */
115VAR gid_t Group VALUE(0);
116 /* Group ID for server */
753453e4 117VAR int ClassifyOverride VALUE(0),
118 /* Allow overrides? */
e9a798a1 119 ConfigFilePerm VALUE(0640),
415199da 120 /* Permissions for config files */
121 LogFilePerm VALUE(0644),
122 /* Permissions for log files */
f3e786fc 123 LogLevel VALUE(CUPSD_LOG_ERROR),
fd8b1cf8 124 /* Log level */
997edb40 125 MaxClients VALUE(0),
126 /* Maximum number of clients */
1060c9b6 127 MaxClientsPerHost VALUE(0),
128 /* Maximum number of clients per host */
da956953 129 MaxCopies VALUE(100),
130 /* Maximum number of copies per job */
bd176c9c 131 MaxLogSize VALUE(1024 * 1024),
132 /* Maximum size of log files */
62bcac22 133 MaxPrinterHistory VALUE(10),
134 /* Maximum printer state history */
bd176c9c 135 MaxRequestSize VALUE(0),
136 /* Maximum size of IPP requests */
5ff9dbae 137 HostNameLookups VALUE(FALSE),
fd8b1cf8 138 /* Do we do reverse lookups? */
5ff9dbae 139 Timeout VALUE(DEFAULT_TIMEOUT),
fd8b1cf8 140 /* Timeout during requests */
5ff9dbae 141 KeepAlive VALUE(TRUE),
fd8b1cf8 142 /* Support the Keep-Alive option? */
5ff9dbae 143 KeepAliveTimeout VALUE(DEFAULT_KEEPALIVE),
fd8b1cf8 144 /* Timeout between requests */
8239f206 145 ImplicitClasses VALUE(TRUE),
fd8b1cf8 146 /* Are classes implicitly created? */
753453e4 147 ImplicitAnyClasses VALUE(FALSE),
148 /* Create AnyPrinter classes? */
149 HideImplicitMembers VALUE(TRUE),
150 /* Hide implicit class members? */
f63a430f 151 FileDevice VALUE(FALSE),
152 /* Allow file: devices? */
8239f206 153 FilterLimit VALUE(0),
154 /* Max filter cost at any time */
89db771d 155 FilterLevel VALUE(0),
8239f206 156 /* Current filter level */
42ede8a2 157 FilterNice VALUE(0),
158 /* Nice value for filters */
bcd9e019 159 ReloadTimeout VALUE(0),
160 /* Timeout before reload from SIGHUP */
d9e72533 161 RootCertDuration VALUE(300),
162 /* Root certificate update interval */
7efb04c8 163 RunAsUser VALUE(FALSE),
89db771d 164 /* Run as unpriviledged user? */
48033118 165 RunUser, /* User to run as, used for files */
d8c5c16f 166 PrintcapFormat VALUE(PRINTCAP_BSD),
7efb04c8 167 /* Format of printcap file? */
d8c5c16f 168 DefaultShared VALUE(TRUE);
169 /* Share printers by default? */
7b0fde61 170VAR cups_file_t *AccessFile VALUE(NULL),
fd8b1cf8 171 /* Access log file */
c7fa9d06 172 *ErrorFile VALUE(NULL),
fd8b1cf8 173 /* Error log file */
c7fa9d06 174 *PageFile VALUE(NULL);
175 /* Page log file */
5ff9dbae 176VAR mime_t *MimeDatabase VALUE(NULL);
c7fa9d06 177 /* MIME type database */
753453e4 178VAR int NumMimeTypes VALUE(0);
179 /* Number of MIME types */
180VAR const char **MimeTypes VALUE(NULL);
181 /* Array of MIME types */
fd8b1cf8 182
bcf61448 183#ifdef HAVE_SSL
1a525eea 184VAR char *ServerCertificate VALUE(NULL);
a75c006a 185 /* Server certificate file */
1a525eea 186# if defined(HAVE_LIBSSL) || defined(HAVE_GNUTLS)
187VAR char *ServerKey VALUE(NULL);
a75c006a 188 /* Server key file */
1a525eea 189# else
dcfcaeac 190VAR CFArrayRef ServerCertificatesArray VALUE(NULL);
191 /* Array containing certificates */
1a525eea 192# endif /* HAVE_LIBSSL || HAVE_GNUTLS */
193#endif /* HAVE_SSL */
a75c006a 194
5db6985b 195#ifdef HAVE_LAUNCHD
196VAR int LaunchdTimeout VALUE(DEFAULT_TIMEOUT);
197 /* Time after which an idle cupsd will exit */
198VAR char *LaunchdConf VALUE(NULL);
199 /* launchd(8) configuration file */
200#endif /* HAVE_LAUNCHD */
fd8b1cf8 201
202/*
203 * Prototypes...
a129ddbd 204 */
205
589eb420 206extern char *cupsdGetDateTime(time_t t);
207extern int cupsdReadConfiguration(void);
208extern int cupsdLogRequest(cupsd_client_t *con, http_status_t code);
209extern int cupsdLogMessage(int level, const char *message, ...)
aa7e125a 210#ifdef __GNUC__
211__attribute__ ((__format__ (__printf__, 2, 3)))
212#endif /* __GNUC__ */
213;
589eb420 214extern int cupsdLogPage(cupsd_job_t *job, const char *page);
a129ddbd 215
216
217/*
c9d3f842 218 * End of "$Id$".
a129ddbd 219 */