]> git.ipfire.org Git - thirdparty/cups.git/blob - scheduler/conf.h
Import cups.org releases
[thirdparty/cups.git] / scheduler / conf.h
1 /*
2 * "$Id$"
3 *
4 * Configuration file definitions for the Common UNIX Printing System (CUPS)
5 * scheduler.
6 *
7 * Copyright 1997-2002 by Easy Software Products, all rights reserved.
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
18 * 44141 Airport View Drive, Suite 204
19 * Hollywood, Maryland 20636-3111 USA
20 *
21 * Voice: (301) 373-9603
22 * EMail: cups-info@cups.org
23 * WWW: http://www.cups.org
24 */
25
26 /*
27 * Log levels...
28 */
29
30 #define L_PAGE -1 /* Used internally for page logging */
31 #define L_NONE 0
32 #define L_EMERG 1 /* Emergency issues */
33 #define L_ALERT 2 /* Something bad happened that needs attention */
34 #define L_CRIT 3 /* Critical error but server continues */
35 #define L_ERROR 4 /* Error condition */
36 #define L_WARN 5 /* Warning */
37 #define L_NOTICE 6 /* Normal condition that needs logging */
38 #define L_INFO 7 /* General information */
39 #define L_DEBUG 8 /* General debugging */
40 #define L_DEBUG2 9 /* Detailed debugging */
41
42
43 /*
44 * Printcap formats...
45 */
46
47 #define PRINTCAP_BSD 0 /* Berkeley LPD format */
48 #define PRINTCAP_SOLARIS 1 /* Solaris lpsched format */
49
50
51 /*
52 * Globals...
53 */
54
55 VAR char ConfigurationFile[256] VALUE(CUPS_SERVERROOT "/cupsd.conf"),
56 /* Configuration file to use */
57 ServerName[256] VALUE(""),
58 /* FQDN for server */
59 ServerAdmin[256] VALUE(""),
60 /* Administrator's email */
61 ServerRoot[1024] VALUE(CUPS_SERVERROOT),
62 /* Root directory for scheduler */
63 ServerBin[1024] VALUE(CUPS_SERVERBIN),
64 /* Root directory for binaries */
65 RequestRoot[1024] VALUE(CUPS_REQUESTS),
66 /* Directory for request files */
67 DocumentRoot[1024] VALUE(CUPS_DOCROOT);
68 /* Root directory for documents */
69 VAR int NumSystemGroups VALUE(0);
70 /* Number of system group names */
71 VAR char SystemGroups[MAX_SYSTEM_GROUPS][32],
72 /* System group names */
73 AccessLog[1024] VALUE(CUPS_LOGDIR "/access_log"),
74 /* Access log filename */
75 ErrorLog[1024] VALUE(CUPS_LOGDIR "/error_log"),
76 /* Error log filename */
77 PageLog[1024] VALUE(CUPS_LOGDIR "/page_log"),
78 /* Page log filename */
79 DataDir[1024] VALUE(CUPS_DATADIR),
80 /* Data file directory */
81 DefaultLanguage[32] VALUE("C"),
82 /* Default language encoding */
83 DefaultCharset[32] VALUE(DEFAULT_CHARSET),
84 /* Default charset */
85 RIPCache[32] VALUE("8m"),
86 /* Amount of memory for RIPs */
87 TempDir[1024] VALUE(CUPS_REQUESTS "/tmp"),
88 /* Temporary directory */
89 Printcap[1024] VALUE(""),
90 /* Printcap file */
91 PrintcapGUI[1024] VALUE("/usr/bin/glpoptions"),
92 /* GUI program to use for IRIX */
93 FontPath[1024] VALUE(CUPS_FONTPATH),
94 /* Font search path */
95 RemoteRoot[32] VALUE("remroot"),
96 /* Remote root user */
97 Classification[IPP_MAX_NAME] VALUE("");
98 /* Classification of system */
99 VAR int ClassifyOverride VALUE(0),
100 /* Allow overrides? */
101 ConfigFilePerm VALUE(0600),
102 /* Permissions for config files */
103 LogFilePerm VALUE(0644),
104 /* Permissions for log files */
105 User VALUE(1),
106 /* User ID for server */
107 Group VALUE(0),
108 /* Group ID for server */
109 LogLevel VALUE(L_ERROR),
110 /* Log level */
111 MaxClients VALUE(0),
112 /* Maximum number of clients */
113 MaxCopies VALUE(100),
114 /* Maximum number of copies per job */
115 MaxLogSize VALUE(1024 * 1024),
116 /* Maximum size of log files */
117 MaxRequestSize VALUE(0),
118 /* Maximum size of IPP requests */
119 HostNameLookups VALUE(FALSE),
120 /* Do we do reverse lookups? */
121 Timeout VALUE(DEFAULT_TIMEOUT),
122 /* Timeout during requests */
123 KeepAlive VALUE(TRUE),
124 /* Support the Keep-Alive option? */
125 KeepAliveTimeout VALUE(DEFAULT_KEEPALIVE),
126 /* Timeout between requests */
127 ImplicitClasses VALUE(TRUE),
128 /* Are classes implicitly created? */
129 ImplicitAnyClasses VALUE(FALSE),
130 /* Create AnyPrinter classes? */
131 HideImplicitMembers VALUE(TRUE),
132 /* Hide implicit class members? */
133 FilterLimit VALUE(0),
134 /* Max filter cost at any time */
135 FilterLevel VALUE(0),
136 /* Current filter level */
137 FilterNice VALUE(0),
138 /* Nice value for filters */
139 RootCertDuration VALUE(300),
140 /* Root certificate update interval */
141 RunAsUser VALUE(FALSE),
142 /* Run as unpriviledged user? */
143 PrintcapFormat VALUE(PRINTCAP_BSD);
144 /* Format of printcap file? */
145 VAR FILE *AccessFile VALUE(NULL),
146 /* Access log file */
147 *ErrorFile VALUE(NULL),
148 /* Error log file */
149 *PageFile VALUE(NULL);
150 /* Page log file */
151 VAR mime_t *MimeDatabase VALUE(NULL);
152 /* MIME type database */
153 VAR int NumMimeTypes VALUE(0);
154 /* Number of MIME types */
155 VAR const char **MimeTypes VALUE(NULL);
156 /* Array of MIME types */
157
158 #ifdef HAVE_LIBSSL
159 VAR char ServerCertificate[1024] VALUE("ssl/server.crt"),
160 /* Server certificate file */
161 ServerKey[1024] VALUE("ssl/server.key");
162 /* Server key file */
163 #endif /* HAVE_LIBSSL */
164
165
166 /*
167 * Prototypes...
168 */
169
170 extern char *GetDateTime(time_t t);
171 extern int ReadConfiguration(void);
172 extern int LogRequest(client_t *con, http_status_t code);
173 extern int LogMessage(int level, const char *message, ...)
174 #ifdef __GNUC__
175 __attribute__ ((__format__ (__printf__, 2, 3)))
176 #endif /* __GNUC__ */
177 ;
178 extern int LogPage(job_t *job, const char *page);
179
180
181 /*
182 * End of "$Id$".
183 */