/* config.h.in. Generated automatically from configure.in by autoheader 2.13. */ /* $Id: acconfig.h,v 1.44 2003/08/12 15:22:53 rjs3 Exp $ */ /* * Copyright (c) 1998-2003 Carnegie Mellon University. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. The name "Carnegie Mellon University" must not be used to * endorse or promote products derived from this software without * prior written permission. For permission or any other legal * details, please contact * Office of Technology Transfer * Carnegie Mellon University * 5000 Forbes Avenue * Pittsburgh, PA 15213-3890 * (412) 268-4387, fax: (412) 268-7395 * tech-transfer@andrew.cmu.edu * * 4. Redistributions of any form whatsoever must retain the following * acknowledgment: * "This product includes software developed by Computing Services * at Carnegie Mellon University (http://www.cmu.edu/computing/)." * * CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY * AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE * FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ #ifndef _CYRUS_IMAPD_CONFIG_H_ #define _CYRUS_IMAPD_CONFIG_H_ /* Define if on AIX 3. System headers sometimes define this. We just want to avoid a redefinition error message. */ #ifndef _ALL_SOURCE #undef _ALL_SOURCE #endif /* Define to empty if the keyword does not work. */ #undef const /* Define if you don't have vprintf but do have _doprnt. */ #undef HAVE_DOPRNT /* Define if you support file names longer than 14 characters. */ #undef HAVE_LONG_FILE_NAMES /* Define if your struct tm has tm_zone. */ #undef HAVE_TM_ZONE /* Define if you don't have tm_zone but do have the external array tzname. */ #undef HAVE_TZNAME /* Define if you have the vprintf function. */ #undef HAVE_VPRINTF /* Define if your declares struct tm. */ #undef TM_IN_SYS_TIME /* where are we going to be installed? */ #define CYRUS_PATH "/usr/cyrus" /* what user are we going to run as? */ #define CYRUS_USER "cyrus" /* do we have strerror()? */ #undef HAS_STRERROR /* do we have kerberos? */ #undef HAVE_KRB /* do we already have sys_errlist? */ #undef NEED_SYS_ERRLIST /* how should we setproctitle? */ #undef SPT_TYPE /* do we have the AFS symbol pr_End? */ #undef HAVE_PR_END /* do we have an acceptable regex library? */ #undef ENABLE_REGEX /* do we support LISTEXT? */ #undef ENABLE_LISTEXT /* do we support ANNOTATEMORE? */ #undef ENABLE_ANNOTATEMORE /* do we support XNETSCAPE */ #undef ENABLE_X_NETSCAPE_HACK /* are we using the old sieve service name (imap) */ #undef OLD_SIEVE_SERVICE_NAME /* the AFS RX (RPC) package */ #undef HAVE_RX /* the TCP control package */ #undef HAVE_LIBWRAP /* do we have OpenSSL? */ #undef HAVE_SSL /* alternative to /dev/urandom? */ #undef EGD_SOCKET /* do we have zephyr? */ #undef HAVE_ZEPHYR /* where should we put state information? */ #undef STATEDIR /* is Sieve enabled? */ #undef USE_SIEVE /* use full directory hashing? */ #undef USE_DIR_FULL /* do we have the UCD SNMP libraries? */ #undef HAVE_UCDSNMP /* do we have socklen_t? */ #undef HAVE_SOCKLEN_T /* do we have rlim_t? */ #undef HAVE_RLIM_T /* path to pid lockfile for master */ #undef MASTER_PIDFILE /* do we have fdatasync */ #undef HAVE_FDATASYNC /* Database Backends that are configurable */ #undef CONFIG_DB_DUPLICATE #undef CONFIG_DB_MBOX #undef CONFIG_DB_SEEN #undef CONFIG_DB_SUBS #undef CONFIG_DB_TLS /* IPv6 */ #undef HAVE_GETADDRINFO #undef HAVE_GETNAMEINFO /* define if your system has struct sockaddr_storage */ #undef HAVE_STRUCT_SOCKADDR_STORAGE /* Define if you have ss_family in struct sockaddr_storage. */ #undef HAVE_SS_FAMILY /* Define if you have sa_len in struct sockaddr. */ #undef HAVE_SOCKADDR_SA_LEN /* Define if you have the daemon function. */ #undef HAVE_DAEMON /* Define if you have the dn_expand function. */ #undef HAVE_DN_EXPAND /* Define if you have the dns_lookup function. */ #undef HAVE_DNS_LOOKUP /* Define if you have the ftruncate function. */ #undef HAVE_FTRUNCATE /* Define if you have the getdtablesize function. */ #undef HAVE_GETDTABLESIZE /* Define if you have the getrlimit function. */ #undef HAVE_GETRLIMIT /* Define if you have the gsskrb5_register_acceptor_identity function. */ #undef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY /* Define if you have the memmove function. */ #undef HAVE_MEMMOVE /* Define if you have the setrlimit function. */ #undef HAVE_SETRLIMIT /* Define if you have the setsid function. */ #undef HAVE_SETSID /* Define if you have the shutdown function. */ #undef HAVE_SHUTDOWN /* Define if you have the strcasecmp function. */ #undef HAVE_STRCASECMP /* Define if you have the strerror function. */ #undef HAVE_STRERROR /* Define if you have the strlcat function. */ #undef HAVE_STRLCAT /* Define if you have the strlcpy function. */ #undef HAVE_STRLCPY /* Define if you have the header file. */ #undef HAVE_DIRENT_H /* Define if you have the header file. */ #undef HAVE_NDIR_H /* Define if you have the header file. */ #undef HAVE_STDARG_H /* Define if you have the header file. */ #undef HAVE_SYS_DIR_H /* Define if you have the header file. */ #undef HAVE_SYS_NDIR_H /* Define if you have the header file. */ #undef HAVE_SYS_PARAM_H /* Define if you have the header file. */ #undef HAVE_SYS_RESOURCE_H /* Define if you have the header file. */ #undef HAVE_SYS_SELECT_H /* Define if you have the header file. */ #undef HAVE_UNISTD_H /* Define if you have the db library (-ldb). */ #undef HAVE_LIBDB /* Define if you have the dl library (-ldl). */ #undef HAVE_LIBDL /* Define if you have the fl library (-lfl). */ #undef HAVE_LIBFL /* Define if you have the resolv library (-lresolv). */ #undef HAVE_LIBRESOLV /* Extra version information for imap/version.h */ #undef EXTRA_IDENT /* define if your compiler has __attribute__ */ #undef HAVE___ATTRIBUTE__ /* Define if you have the gssapi.h header file */ #undef HAVE_GSSAPI_H /* Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE */ #undef HAVE_GSS_C_NT_HOSTBASED_SERVICE /* Define if your GSSAPI implimentation defines GSS_C_NT_HOSTBASED_SERVICE */ #undef HAVE_GSS_C_NT_HOSTBASED_SERVICE /* Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME */ #undef HAVE_GSS_C_NT_USER_NAME /* Define if your GSSAPI implimentation defines GSS_C_NT_USER_NAME */ #undef HAVE_GSS_C_NT_USER_NAME /* Does our libsasl2 support APOP? */ #undef HAVE_APOP /* This allows us to work even when we don't have an fdatasync */ #ifndef HAVE_FDATASYNC #define fdatasync(fd) fsync(fd) #endif /* A similar setup for not having O_DSYNC */ #include #ifndef O_DSYNC # ifdef O_SYNC # define O_DSYNC O_SYNC /* POSIX */ # else # define O_DSYNC O_FSYNC /* BSD */ # endif #endif /* where are our binaries? */ #define SERVICE_PATH (CYRUS_PATH "/bin") #ifndef HAVE___ATTRIBUTE__ /* Can't use attributes... */ #define __attribute__(foo) #endif #ifndef HAVE_SOCKLEN_T typedef unsigned int socklen_t; #endif #ifndef HAVE_RLIM_T typedef int rlim_t; #endif /* some potentially memory saving tradeoffs, preconfigured in memory-saving mode */ /* call sasl_client_init() at the start of imapd */ #define DELAY_SASL_CLIENT_INIT /* save the cmdlines for the ID command */ #undef ID_SAVE_CMDLINE /* getaddrinfo things */ #include #include #include #include #ifndef HAVE_STRUCT_SOCKADDR_STORAGE #define _SS_MAXSIZE 128 /* Implementation specific max size */ #define _SS_PADSIZE (_SS_MAXSIZE - sizeof (struct sockaddr)) struct sockaddr_storage { struct sockaddr ss_sa; char __ss_pad2[_SS_PADSIZE]; }; # define ss_family ss_sa.sa_family # define HAVE_SS_FAMILY #endif /* !HAVE_STRUCT_SOCKADDR_STORAGE */ #ifndef HAVE_SS_FAMILY #define ss_family __ss_family #endif #ifndef AF_INET6 /* Define it to something that should never appear */ #define AF_INET6 AF_MAX #endif #if !defined(HAVE_GETADDRINFO) || !defined(HAVE_GETNAMEINFO) #include "gai.h" #endif #ifndef NI_WITHSCOPEID #define NI_WITHSCOPEID 0 #endif #ifdef OLD_SIEVE_SERVICE_NAME #define SIEVE_SERVICE_NAME "imap" #else #define SIEVE_SERVICE_NAME "sieve" #endif #ifndef HAVE_SHUTDOWN #define shutdown(fd, mode) 0 #endif /* sendmail configuration parameters */ #define DEFAULT_SENDMAIL ("/usr/sbin/sendmail") #define DEFAULT_POSTMASTER ("postmaster") #define SENDMAIL (config_getstring("sendmail", DEFAULT_SENDMAIL)) #define POSTMASTER (config_getstring("postmaster", DEFAULT_POSTMASTER)) /* compile time options; think carefully before modifying */ enum { /* should a hierarchical rename stop on error? */ RENAME_STOP_ON_ERROR = 1, /* should we call fsync() to maybe help with softupdates? (it should) */ APPEND_ULTRA_PARANOID = 1, /* should we log extra information at the DEBUG level for DB stuff? * 0 -> nothing; 1 -> some; higher -> even more */ CONFIG_DB_VERBOSE = 1, /* log timing information to LOG_DEBUG */ CONFIG_TIMING_VERBOSE = 0, /* should we be pedantic about namespace or sleezy? */ SLEEZY_NAMESPACE = 1, /* should we do a fast TLS session shutdown? */ TLS_FAST_SHUTDOWN = 1, /* should we use the SQUAT engine to accelerate SEARCH? */ SQUAT_ENGINE = 1, /* should we have long LMTP error messages? */ LMTP_LONG_ERROR_MSGS = 1 }; #endif /* _CYRUS_IMAPD_CONFIG_H_ */