2 * "$Id: conf.h,v 1.36.2.22 2004/04/20 13:40:30 mike Exp $"
4 * Configuration file definitions for the Common UNIX Printing System (CUPS)
7 * Copyright 1997-2003 by Easy Software Products, all rights reserved.
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
16 * Attn: CUPS Licensing Information
17 * Easy Software Products
18 * 44141 Airport View Drive, Suite 204
19 * Hollywood, Maryland 20636-3111 USA
21 * Voice: (301) 373-9603
22 * EMail: cups-info@cups.org
23 * WWW: http://www.cups.org
31 #define L_STATE -2 /* Used internally for state-reasons */
32 #define L_PAGE -1 /* Used internally for page logging */
34 #define L_EMERG 1 /* Emergency issues */
35 #define L_ALERT 2 /* Something bad happened that needs attention */
36 #define L_CRIT 3 /* Critical error but server continues */
37 #define L_ERROR 4 /* Error condition */
38 #define L_WARN 5 /* Warning */
39 #define L_NOTICE 6 /* Normal condition that needs logging */
40 #define L_INFO 7 /* General information */
41 #define L_DEBUG 8 /* General debugging */
42 #define L_DEBUG2 9 /* Detailed debugging */
49 #define PRINTCAP_BSD 0 /* Berkeley LPD format */
50 #define PRINTCAP_SOLARIS 1 /* Solaris lpsched format */
57 VAR
char *ConfigurationFile
VALUE(NULL
),
58 /* Configuration file to use */
59 *ServerName
VALUE(NULL
),
61 *ServerAdmin
VALUE(NULL
),
62 /* Administrator's email */
63 *ServerRoot
VALUE(NULL
),
64 /* Root directory for scheduler */
65 *ServerBin
VALUE(NULL
),
66 /* Root directory for binaries */
67 *RequestRoot
VALUE(NULL
),
68 /* Directory for request files */
69 *DocumentRoot
VALUE(NULL
);
70 /* Root directory for documents */
71 VAR
int NumSystemGroups
VALUE(0);
72 /* Number of system group names */
73 VAR
char *SystemGroups
[MAX_SYSTEM_GROUPS
],
74 /* System group names */
75 *AccessLog
VALUE(NULL
),
76 /* Access log filename */
77 *ErrorLog
VALUE(NULL
),
78 /* Error log filename */
80 /* Page log filename */
82 /* Data file directory */
83 *DefaultLanguage
VALUE(NULL
),
84 /* Default language encoding */
85 *DefaultCharset
VALUE(NULL
),
87 *DefaultLocale
VALUE(NULL
),
89 *RIPCache
VALUE(NULL
),
90 /* Amount of memory for RIPs */
92 /* Temporary directory */
93 *Printcap
VALUE(NULL
),
95 *PrintcapGUI
VALUE(NULL
),
96 /* GUI program to use for IRIX */
97 *FontPath
VALUE(NULL
),
98 /* Font search path */
99 *RemoteRoot
VALUE(NULL
),
100 /* Remote root user */
101 *Classification
VALUE(NULL
);
102 /* Classification of system */
103 VAR uid_t User
VALUE(1);
104 /* User ID for server */
105 VAR gid_t Group
VALUE(0);
106 /* Group ID for server */
107 VAR
int ClassifyOverride
VALUE(0),
108 /* Allow overrides? */
109 ConfigFilePerm
VALUE(0600),
110 /* Permissions for config files */
111 LogFilePerm
VALUE(0644),
112 /* Permissions for log files */
113 LogLevel
VALUE(L_ERROR
),
116 /* Maximum number of clients */
117 MaxClientsPerHost
VALUE(0),
118 /* Maximum number of clients per host */
119 MaxCopies
VALUE(100),
120 /* Maximum number of copies per job */
121 MaxLogSize
VALUE(1024 * 1024),
122 /* Maximum size of log files */
123 MaxPrinterHistory
VALUE(10),
124 /* Maximum printer state history */
125 MaxRequestSize
VALUE(0),
126 /* Maximum size of IPP requests */
127 HostNameLookups
VALUE(FALSE
),
128 /* Do we do reverse lookups? */
129 Timeout
VALUE(DEFAULT_TIMEOUT
),
130 /* Timeout during requests */
131 KeepAlive
VALUE(TRUE
),
132 /* Support the Keep-Alive option? */
133 KeepAliveTimeout
VALUE(DEFAULT_KEEPALIVE
),
134 /* Timeout between requests */
135 ImplicitClasses
VALUE(TRUE
),
136 /* Are classes implicitly created? */
137 ImplicitAnyClasses
VALUE(FALSE
),
138 /* Create AnyPrinter classes? */
139 HideImplicitMembers
VALUE(TRUE
),
140 /* Hide implicit class members? */
141 FileDevice
VALUE(FALSE
),
142 /* Allow file: devices? */
143 FilterLimit
VALUE(0),
144 /* Max filter cost at any time */
145 FilterLevel
VALUE(0),
146 /* Current filter level */
148 /* Nice value for filters */
149 RootCertDuration
VALUE(300),
150 /* Root certificate update interval */
151 RunAsUser
VALUE(FALSE
),
152 /* Run as unpriviledged user? */
153 RunUser
, /* User to run as, used for files */
154 PrintcapFormat
VALUE(PRINTCAP_BSD
);
155 /* Format of printcap file? */
156 VAR cups_file_t
*AccessFile
VALUE(NULL
),
157 /* Access log file */
158 *ErrorFile
VALUE(NULL
),
160 *PageFile
VALUE(NULL
);
162 VAR mime_t
*MimeDatabase
VALUE(NULL
);
163 /* MIME type database */
164 VAR
int NumMimeTypes
VALUE(0);
165 /* Number of MIME types */
166 VAR
const char **MimeTypes
VALUE(NULL
);
167 /* Array of MIME types */
170 VAR
char *ServerCertificate
VALUE(NULL
);
171 /* Server certificate file */
172 # if defined(HAVE_LIBSSL) || defined(HAVE_GNUTLS)
173 VAR
char *ServerKey
VALUE(NULL
);
174 /* Server key file */
176 VAR CFArrayRef ServerCertificatesArray
VALUE(NULL
);
177 /* Array containing certificates */
178 # endif /* HAVE_LIBSSL || HAVE_GNUTLS */
179 #endif /* HAVE_SSL */
186 extern char *GetDateTime(time_t t
);
187 extern int ReadConfiguration(void);
188 extern int LogRequest(client_t
*con
, http_status_t code
);
189 extern int LogMessage(int level
, const char *message
, ...)
191 __attribute__ ((__format__ (__printf__
, 2, 3)))
192 #endif /* __GNUC__ */
194 extern int LogPage(job_t
*job
, const char *page
);
198 * End of "$Id: conf.h,v 1.36.2.22 2004/04/20 13:40:30 mike Exp $".