]> git.ipfire.org Git - thirdparty/cups.git/blame - vcnet/config.h
Merge changes from CUPS 1.5svn-r9098.
[thirdparty/cups.git] / vcnet / config.h
CommitLineData
ef416fc2 1/*
bc44d920 2 * "$Id: config.h 6649 2007-07-11 21:46:42Z mike $"
ef416fc2 3 *
5180a04c 4 * Configuration file for CUPS.
ef416fc2 5 *
5180a04c 6 * Copyright 2007-2010 by Apple Inc.
536bc2c6 7 * Copyright 1997-2007 by Easy Software Products.
ef416fc2 8 *
9 * These coded instructions, statements, and computer programs are the
bc44d920 10 * property of Apple Inc. and are protected by Federal copyright
11 * law. Distribution and use rights are outlined in the file "LICENSE.txt"
12 * which should have been included with this file. If this file is
13 * file is missing or damaged, see the license at "http://www.cups.org/".
ef416fc2 14 */
15
16#ifndef _CUPS_CONFIG_H_
17#define _CUPS_CONFIG_H_
18
536bc2c6
MS
19/*
20 * Include necessary headers...
21 */
22
23#include <stdio.h>
24#include <stdlib.h>
25#include <string.h>
26#include <stdarg.h>
27#include <ctype.h>
28#include <io.h>
29
30
31/*
7a0cbd5e 32 * Microsoft renames the POSIX functions to _name, and introduces
536bc2c6
MS
33 * a broken compatibility layer using the original names. As a result,
34 * random crashes can occur when, for example, strdup() allocates memory
35 * from a different heap than used by malloc() and free().
36 *
37 * To avoid moronic problems like this, we #define the POSIX function
38 * names to the corresponding non-standard Microsoft names.
39 */
40
41#define access _access
42#define close _close
43#define fileno _fileno
44#define lseek _lseek
45#define open _open
46#define read _read
47#define snprintf _snprintf
48#define strdup _strdup
49#define unlink _unlink
50#define vsnprintf _vsnprintf
51#define write _write
52
53
5180a04c
MS
54/*
55 * Map the POSIX sleep() and usleep() functions to the Win32 Sleep() function...
56 */
57
58#define sleep(X) Sleep(1000 * (X))
59#define usleep(X) Sleep((X)/1000)
60
61
ef416fc2 62/*
63 * Compiler stuff...
64 */
65
66#undef const
67#undef __CHAR_UNSIGNED__
68
69
70/*
71 * Version of software...
72 */
73
f8b3a85b
MS
74#define CUPS_SVERSION "CUPS v1.5svn"
75#define CUPS_MINIMAL "CUPS/1.5svn"
ef416fc2 76
77
78/*
536bc2c6 79 * Default user and groups...
ef416fc2 80 */
81
f7deaa1a 82#define CUPS_DEFAULT_USER "lp"
83#define CUPS_DEFAULT_GROUP "sys"
536bc2c6
MS
84#define CUPS_DEFAULT_SYSTEM_GROUPS "admin"
85#define CUPS_DEFAULT_PRINTOPERATOR_AUTH "@admin @lpadmin"
86
87
88/*
89 * Default file permissions...
90 */
91
92#define CUPS_DEFAULT_CONFIG_FILE_PERM 0644
93#define CUPS_DEFAULT_LOG_FILE_PERM 0644
94
95
96/*
97 * Default logging settings...
98 */
99
100#define CUPS_DEFAULT_LOG_LEVEL "warn"
101#define CUPS_DEFAULT_ACCESS_LOG_LEVEL "actions"
102
103
104/*
105 * Default fatal error settings...
106 */
107
108#define CUPS_DEFAULT_FATAL_ERRORS "config"
109
110
111/*
112 * Default browsing settings...
113 */
114
115#define CUPS_DEFAULT_BROWSING 1
116#define CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS "CUPS dnssd"
117#define CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS ""
118#define CUPS_DEFAULT_BROWSE_SHORT_NAMES 1
119#define CUPS_DEFAULT_DEFAULT_SHARED 1
120#define CUPS_DEFAULT_IMPLICIT_CLASSES 1
121#define CUPS_DEFAULT_USE_NETWORK_DEFAULT 0
ef416fc2 122
123
124/*
125 * Default IPP port...
126 */
127
536bc2c6
MS
128#define CUPS_DEFAULT_IPP_PORT 631
129
130
131/*
132 * Default printcap file...
133 */
134
135#define CUPS_DEFAULT_PRINTCAP ""
ef416fc2 136
137
138/*
536bc2c6 139 * Default Samba and LPD config files...
ef416fc2 140 */
141
536bc2c6
MS
142#define CUPS_DEFAULT_SMB_CONFIG_FILE ""
143#define CUPS_DEFAULT_LPD_CONFIG_FILE ""
144
145
146/*
147 * Default MaxCopies value...
148 */
149
150#define CUPS_DEFAULT_MAX_COPIES 9999
ef416fc2 151
152
153/*
154 * Do we have domain socket support?
155 */
156
157#undef CUPS_DEFAULT_DOMAINSOCKET
158
159
160/*
161 * Where are files stored?
162 *
163 * Note: These are defaults, which can be overridden by environment
164 * variables at run-time...
165 */
166
536bc2c6
MS
167#define CUPS_BINDIR "C:/CUPS/bin"
168#define CUPS_CACHEDIR "C:/CUPS/cache"
169#define CUPS_DATADIR "C:/CUPS/share"
170#define CUPS_DOCROOT "C:/CUPS/share/doc"
171#define CUPS_FONTPATH "C:/CUPS/share/fonts"
172#define CUPS_LOCALEDIR "C:/CUPS/locale"
173#define CUPS_LOGDIR "C:/CUPS/logs"
174#define CUPS_REQUESTS "C:/CUPS/spool"
175#define CUPS_SBINDIR "C:/CUPS/sbin"
176#define CUPS_SERVERBIN "C:/CUPS/lib"
177#define CUPS_SERVERROOT "C:/CUPS/etc"
178#define CUPS_STATEDIR "C:/CUPS/run"
ef416fc2 179
180
181/*
182 * Do we have various image libraries?
183 */
184
536bc2c6
MS
185/* #undef HAVE_LIBPNG */
186/* #undef HAVE_LIBZ */
187/* #undef HAVE_LIBJPEG */
188/* #undef HAVE_LIBTIFF */
ef416fc2 189
190
191/*
192 * Do we have PAM stuff?
193 */
194
195#ifndef HAVE_LIBPAM
196#define HAVE_LIBPAM 0
197#endif /* !HAVE_LIBPAM */
198
536bc2c6
MS
199/* #undef HAVE_PAM_PAM_APPL_H */
200/* #undef HAVE_PAM_SET_ITEM */
201/* #undef HAVE_PAM_SETCRED */
ef416fc2 202
203
204/*
205 * Do we have <shadow.h>?
206 */
207
536bc2c6 208/* #undef HAVE_SHADOW_H */
ef416fc2 209
210
211/*
212 * Do we have <crypt.h>?
213 */
214
536bc2c6 215/* #undef HAVE_CRYPT_H */
ef416fc2 216
217
f8b3a85b
MS
218/*
219 * Do we have <scsi/sg.h>?
220 */
221
222/* #undef HAVE_SCSI_SG_H */
223
224
ef416fc2 225/*
226 * Use <string.h>, <strings.h>, and/or <bstring.h>?
227 */
228
536bc2c6
MS
229#define HAVE_STRING_H 1
230/* #undef HAVE_STRINGS_H */
231/* #undef HAVE_BSTRING_H */
ef416fc2 232
233
234/*
235 * Do we have the long long type?
236 */
237
536bc2c6 238/* #undef HAVE_LONG_LONG */
ef416fc2 239
240#ifdef HAVE_LONG_LONG
241# define CUPS_LLFMT "%lld"
242# define CUPS_LLCAST (long long)
243#else
244# define CUPS_LLFMT "%ld"
245# define CUPS_LLCAST (long)
246#endif /* HAVE_LONG_LONG */
247
248
249/*
250 * Do we have the strtoll() function?
251 */
252
536bc2c6 253/* #undef HAVE_STRTOLL */
ef416fc2 254
255#ifndef HAVE_STRTOLL
256# define strtoll(nptr,endptr,base) strtol((nptr), (endptr), (base))
257#endif /* !HAVE_STRTOLL */
258
259
260/*
261 * Do we have the strXXX() functions?
262 */
263
264#define HAVE_STRDUP
265#define HAVE_STRCASECMP
266#define HAVE_STRNCASECMP
536bc2c6
MS
267/* #undef HAVE_STRLCAT */
268/* #undef HAVE_STRLCPY */
ef416fc2 269
270
271/*
272 * Do we have the geteuid() function?
273 */
274
536bc2c6 275/* #undef HAVE_GETEUID */
ef416fc2 276
277
278/*
279 * Do we have the vsyslog() function?
280 */
281
536bc2c6 282/* #undef HAVE_VSYSLOG */
ef416fc2 283
284
285/*
286 * Do we have the (v)snprintf() functions?
287 */
288
536bc2c6
MS
289#define HAVE_SNPRINTF 1
290#define HAVE_VSNPRINTF 1
ef416fc2 291
292
293/*
294 * What signal functions to use?
295 */
296
536bc2c6
MS
297/* #undef HAVE_SIGSET */
298/* #undef HAVE_SIGACTION */
ef416fc2 299
300
301/*
302 * What wait functions to use?
303 */
304
536bc2c6
MS
305/* #undef HAVE_WAITPID */
306/* #undef HAVE_WAIT3 */
ef416fc2 307
308
309/*
310 * Do we have the mallinfo function and malloc.h?
311 */
312
536bc2c6
MS
313/* #undef HAVE_MALLINFO */
314/* #undef HAVE_MALLOC_H */
315
316
317/*
318 * Do we have the POSIX ACL functions?
319 */
320
321/* #undef HAVE_ACL_INIT */
ef416fc2 322
323
324/*
325 * Do we have the langinfo.h header file?
326 */
327
536bc2c6 328/* #undef HAVE_LANGINFO_H */
ef416fc2 329
330
331/*
332 * Which encryption libraries do we have?
333 */
334
536bc2c6
MS
335/* #undef HAVE_CDSASSL */
336/* #undef HAVE_GNUTLS */
337/* #undef HAVE_LIBSSL */
338/* #undef HAVE_SSL */
339
340
341/*
342 * What Security framework headers do we have?
343 */
344
345/* #undef HAVE_AUTHORIZATION_H */
346/* #undef HAVE_SECPOLICY_H */
347/* #undef HAVE_SECPOLICYPRIV_H */
348/* #undef HAVE_SECBASEPRIV_H */
349/* #undef HAVE_SECIDENTITYSEARCHPRIV_H */
350
351
352/*
353 * Do we have the SecIdentitySearchCreateWithPolicy function?
354 */
355
356/* #undef HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY */
357
358
359/*
360 * Do we have the SLP library?
361 */
362
363/* #undef HAVE_LIBSLP */
ef416fc2 364
365
366/*
536bc2c6 367 * Do we have an LDAP library?
ef416fc2 368 */
369
536bc2c6
MS
370/* #undef HAVE_LDAP */
371/* #undef HAVE_OPENLDAP */
372/* #undef HAVE_MOZILLA_LDAP */
373/* #undef HAVE_LDAP_SSL_H */
374/* #undef HAVE_LDAP_SSL */
375/* #undef HAVE_LDAP_REBIND_PROC */
ef416fc2 376
377
378/*
379 * Do we have libpaper?
380 */
381
536bc2c6
MS
382/* #undef HAVE_LIBPAPER */
383
384
385/*
386 * Do we have DNS Service Discovery (aka Bonjour)?
387 */
388
389/* #undef HAVE_DNSSD */
390
391
ef416fc2 392/*
393 * Do we have <sys/ioctl.h>?
394 */
395
536bc2c6 396/* #undef HAVE_SYS_IOCTL_H */
ef416fc2 397
398
ef416fc2 399/*
400 * Does the "tm" structure contain the "tm_gmtoff" member?
401 */
402
536bc2c6 403/* #undef HAVE_TM_GMTOFF */
ef416fc2 404
405
406/*
407 * Do we have rresvport_af()?
408 */
409
536bc2c6 410/* #undef HAVE_RRESVPORT_AF */
ef416fc2 411
412
413/*
414 * Do we have getaddrinfo()?
415 */
416
536bc2c6 417#define HAVE_GETADDRINFO 1
ef416fc2 418
419
420/*
421 * Do we have getnameinfo()?
422 */
423
536bc2c6 424#define HAVE_GETNAMEINFO 1
ef416fc2 425
426
427/*
428 * Do we have getifaddrs()?
429 */
430
536bc2c6 431/* #undef HAVE_GETIFADDRS */
ef416fc2 432
433
434/*
435 * Do we have hstrerror()?
436 */
437
536bc2c6
MS
438/* #undef HAVE_HSTRERROR */
439
440
441/*
442 * Do we have res_init()?
443 */
444
445/* #undef HAVE_RES_INIT */
446
447
448/*
449 * Do we have <resolv.h>
450 */
451
452/* #undef HAVE_RESOLV_H */
ef416fc2 453
454
455/*
456 * Do we have the <sys/sockio.h> header file?
457 */
458
536bc2c6 459/* #undef HAVE_SYS_SOCKIO_H */
ef416fc2 460
461
462/*
463 * Does the sockaddr structure contain an sa_len parameter?
464 */
465
536bc2c6 466/* #undef HAVE_STRUCT_SOCKADDR_SA_LEN */
ef416fc2 467
468
469/*
470 * Do we have the AIX usersec.h header file?
471 */
472
536bc2c6
MS
473/* #undef HAVE_USERSEC_H */
474
ef416fc2 475
476/*
477 * Do we have pthread support?
478 */
479
536bc2c6
MS
480/* #undef HAVE_PTHREAD_H */
481
482
483/*
484 * Do we have launchd support?
485 */
486
487/* #undef HAVE_LAUNCH_H */
488/* #undef HAVE_LAUNCHD */
489#define CUPS_DEFAULT_LAUNCHD_CONF ""
ef416fc2 490
491
492/*
493 * Various scripting languages...
494 */
495
536bc2c6
MS
496/* #undef HAVE_JAVA */
497#define CUPS_JAVA ""
498/* #undef HAVE_PERL */
499#define CUPS_PERL ""
500/* #undef HAVE_PHP */
501#define CUPS_PHP ""
502/* #undef HAVE_PYTHON */
503#define CUPS_PYTHON ""
504
505
506/*
507 * Location of the poppler/Xpdf pdftops program...
508 */
509
510/* #undef HAVE_PDFTOPS */
511#define CUPS_PDFTOPS ""
512
513
514/*
515 * Location of the Ghostscript gs program...
516 */
517
518/* #undef HAVE_GHOSTSCRIPT */
519#define CUPS_GHOSTSCRIPT ""
520
521
522/*
523 * Do we have Darwin's CoreFoundation and SystemConfiguration frameworks?
524 */
525
526/* #undef HAVE_COREFOUNDATION */
527/* #undef HAVE_SYSTEMCONFIGURATION */
528
529
530/*
531 * Do we have CoreFoundation public and private headers?
532 */
533
534/* #undef HAVE_COREFOUNDATION_H */
535/* #undef HAVE_CFPRIV_H */
536/* #undef HAVE_CFBUNDLEPRIV_H */
537
538
539/*
540 * Do we have MacOSX 10.4's mbr_XXX functions()?
541 */
542
543/* #undef HAVE_MEMBERSHIP_H */
544/* #undef HAVE_MEMBERSHIPPRIV_H */
545/* #undef HAVE_MBR_UID_TO_UUID */
546
547
548/*
549 * Do we have Darwin's notify_post() header and function?
550 */
551
552/* #undef HAVE_NOTIFY_H */
553/* #undef HAVE_NOTIFY_POST */
554
555
556/*
557 * Do we have DBUS?
558 */
559
560/* #undef HAVE_DBUS */
561/* #undef HAVE_DBUS_MESSAGE_ITER_INIT_APPEND */
562
563
564/*
565 * Do we have the AppleTalk/at_proto.h header?
566 */
567
568/* #undef HAVE_APPLETALK_AT_PROTO_H */
569
570
571/*
572 * Do we have the GSSAPI support library (for Kerberos support)?
573 */
574
575/* #undef HAVE_GSSAPI */
576/* #undef HAVE_GSSAPI_H */
577/* #undef HAVE_GSSAPI_GSSAPI_H */
578/* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */
579/* #undef HAVE_GSSAPI_GSSAPI_KRB5_H */
580/* #undef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY */
581/* #undef HAVE_GSS_C_NT_HOSTBASED_SERVICE */
582/* #undef HAVE_KRB5_CC_NEW_UNIQUE */
583/* #undef HAVE_KRB5_IPC_CLIENT_SET_TARGET_UID */
584/* #undef HAVE_KRB5_H */
585/* #undef HAVE_HEIMDAL */
586
587
588/*
589 * Default GSS service name...
590 */
591
f8b3a85b 592#define CUPS_DEFAULT_GSSSERVICENAME "host"
536bc2c6
MS
593
594
595/*
596 * Select/poll interfaces...
597 */
598
599/* #undef HAVE_POLL */
600/* #undef HAVE_EPOLL */
601/* #undef HAVE_KQUEUE */
602
603
604/*
605 * Do we have the <dlfcn.h> header?
606 */
607
608/* #undef HAVE_DLFCN_H */
609
610
611/*
612 * Do we have <sys/param.h>?
613 */
614
615/* #undef HAVE_SYS_PARAM_H */
616
617
618/*
619 * Do we have <sys/ucred.h>?
620 */
621
622/* #undef HAVE_SYS_UCRED_H */
623
624
625/*
626 * Do we have removefile()?
627 */
628
629/* #undef HAVE_REMOVEFILE */
630
631
632/*
633 * Do we have <sandbox.h>?
634 */
635
636/* #undef HAVE_SANDBOX_H */
637
638
639/*
640 * Which random number generator function to use...
641 */
642
f8b3a85b 643/* #undef HAVE_ARC4RANDOM */
536bc2c6 644/* #undef HAVE_RANDOM */
536bc2c6
MS
645/* #undef HAVE_LRAND48 */
646
f8b3a85b
MS
647#ifdef HAVE_ARC4RANDOM
648# define CUPS_RAND() arc4random()
649# define CUPS_SRAND(v) arc4random_stir()
650#elif defined(HAVE_RANDOM)
651# define CUPS_RAND() random()
652# define CUPS_SRAND(v) srandom(v)
653#elif defined(HAVE_LRAND48)
654# define CUPS_RAND() lrand48()
655# define CUPS_SRAND(v) srand48(v)
656#else
657# define CUPS_RAND() rand()
658# define CUPS_SRAND(v) srand(v)
659#endif /* HAVE_ARC4RANDOM */
660
536bc2c6
MS
661
662/*
663 * Do we have vproc_transaction_begin/end?
664 */
665
666/* #undef HAVE_VPROC_TRANSACTION_BEGIN */
667
668
669/*
670 * Do we have libusb?
671 */
672
673/* #undef HAVE_USB_H */
674
675
676/*
677 * Do we have libwrap and tcpd.h?
678 */
679
680/* #undef HAVE_TCPD_H */
ef416fc2 681
682
683#endif /* !_CUPS_CONFIG_H_ */
684
685/*
bc44d920 686 * End of "$Id: config.h 6649 2007-07-11 21:46:42Z mike $".
ef416fc2 687 */