/* config.h.in. Generated from configure.ac by autoheader. */
/*
* Copyright (c) 1994-2015 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 legal
* details, please contact
* Carnegie Mellon University
* Center for Technology Transfer and Enterprise Creation
* 4615 Forbes Avenue
* Suite 302
* Pittsburgh, PA 15213
* (412) 268-7393, fax: (412) 268-7395
* innovation@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 building universal (internal helper macro) */
#undef AC_APPLE_UNIVERSAL_BUILD
/* Should the AFS PTS plugin use krb5? */
#undef AFSPTS_USE_KRB5
/* The normal alignment of `uint32_t', in bytes. */
#undef ALIGNOF_UINT32_T
/* What user will we run as? */
#undef CYRUS_USER
/* Alternative to /dev/urandom? */
#undef EGD_SOCKET
/* Build with backup support */
#undef ENABLE_BACKUP
/* Build with Object Store support */
#undef ENABLE_OBJECTSTORE
/* Do we have a regex library? */
#undef ENABLE_REGEX
/* Extra version information for imap/version.h */
#undef EXTRA_IDENT
/* Do we have strerror()? */
#undef HAS_STRERROR
/* Should we build afskrb pts module? */
#undef HAVE_AFSKRB
/* Does SASL support APOP? */
#undef HAVE_APOP
/* Build Brotli compression support into httpd? */
#undef HAVE_BROTLI
/* Do we have ClamAV? */
#undef HAVE_CLAMAV
/* Build with cld2 library support */
#undef HAVE_CLD2
/* Do we have CU_SetUpFunc? */
#undef HAVE_CU_SETUPFUNC
/* define if the compiler supports basic C++11 syntax */
#undef HAVE_CXX11
/* Define to 1 if you have the `daemon' function. */
#undef HAVE_DAEMON
/* Do we have support for optimize __attribute__? */
#undef HAVE_DECLARE_OPTIMIZE
/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't.
*/
#undef HAVE_DECL_TZNAME
/* Do we have deflatePending()? */
#undef HAVE_DEFLATE_PENDING
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
*/
#undef HAVE_DIRENT_H
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the `dns_lookup' function. */
#undef HAVE_DNS_LOOKUP
/* Define to 1 if you have the `dn_expand' function. */
#undef HAVE_DN_EXPAND
/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
#undef HAVE_DOPRNT
/* We need et/com_err.h */
#undef HAVE_ET_COM_ERR_H
/* Do we have fdatasync()? */
#undef HAVE_FDATASYNC
/* Define to 1 if you have the `fmemopen' function. */
#undef HAVE_FMEMOPEN
/* Define to 1 if you have the `ftruncate' function. */
#undef HAVE_FTRUNCATE
/* Do we have function nesting support? */
#undef HAVE_FUNCTION_NESTING
/* Define to 1 if you have the `futimens' function. */
#undef HAVE_FUTIMENS
/* Define to 1 if you have the `futimes' function. */
#undef HAVE_FUTIMES
/* Do we have a getaddrinfo? */
#undef HAVE_GETADDRINFO
/* Define to 1 if you have the `getdtablesize' function. */
#undef HAVE_GETDTABLESIZE
/* Define to 1 if you have the `getgrouplist' function. */
#undef HAVE_GETGROUPLIST
/* Define to 1 if you have the `getline' function. */
#undef HAVE_GETLINE
/* Do we have a getnameinfo? */
#undef HAVE_GETNAMEINFO
/* Define to 1 if you have the `getpassphrase' function. */
#undef HAVE_GETPASSPHRASE
/* Define to 1 if you have the `getrlimit' function. */
#undef HAVE_GETRLIMIT
/* Do we have support for fetching X- component names? */
#undef HAVE_GET_COMPONENT_NAME
/* Define to 1 if you have the <gssapi/gssapi_ext.h> header file. */
#undef HAVE_GSSAPI_GSSAPI_EXT_H
/* Define if you have the gssapi.h header file */
#undef HAVE_GSSAPI_H
/* Define to 1 if you have the `gsskrb5_register_acceptor_identity' function.
*/
#undef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY
/* Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE */
#undef HAVE_GSS_C_NT_HOSTBASED_SERVICE
/* Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME */
#undef HAVE_GSS_C_NT_USER_NAME
/* Define to 1 if you have the `gss_decapsulate_token' function. */
#undef HAVE_GSS_DECAPSULATE_TOKEN
/* Define to 1 if you have the `gss_encapsulate_token' function. */
#undef HAVE_GSS_ENCAPSULATE_TOKEN
/* Define to 1 if you have the `gss_get_name_attribute' function. */
#undef HAVE_GSS_GET_NAME_ATTRIBUTE
/* Define to 1 if you have the `gss_oid_equal' function. */
#undef HAVE_GSS_OID_EQUAL
/* Define if your GSSAPI implementation supports SPNEGO */
#undef HAVE_GSS_SPNEGO
/* Build with guesstz library support */
#undef HAVE_GUESSTZ
/* Build CalDAV support into httpd? */
#undef HAVE_ICAL
/* Build with ICU support */
#undef HAVE_ICU
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Do we have support for controlling invalid RRULE handline? */
#undef HAVE_INVALID_RRULE_HANDLING
/* Do we have Jansson? */
#undef HAVE_JANSSON
/* Support for Kerberos? */
#undef HAVE_KRB
/* Should we build the LDAP pts module? */
#undef HAVE_LDAP
/* Do we have libcap system capabilities handling (Linux systems only)? */
#undef HAVE_LIBCAP
/* Build with chardet library support */
#undef HAVE_LIBCHARDET
/* Define to 1 if you have the `curl' library (-lcurl). */
#undef HAVE_LIBCURL
/* Define to 1 if you have the `json-c' library (-ljson-c). */
#undef HAVE_LIBJSON_C
/* Define to 1 if you have the `oiocore' library (-loiocore). */
#undef HAVE_LIBOIOCORE
/* Define to 1 if you have the `oiosds' library (-loiosds). */
#undef HAVE_LIBOIOSDS
/* Define to 1 if you have the `resolv' library (-lresolv). */
#undef HAVE_LIBRESOLV
/* Define to 1 if you have the `srs2' library (-lsrs2). */
#undef HAVE_LIBSRS2
/* Do we have the uuid library */
#undef HAVE_LIBUUID
/* Do we have TCP wrappers? */
#undef HAVE_LIBWRAP
/* Define to 1 if you support file names longer than 14 characters. */
#undef HAVE_LONG_FILE_NAMES
/* Define to 1 if you have the `memmem' function. */
#undef HAVE_MEMMEM
/* Define to 1 if you have the `memmove' function. */
#undef HAVE_MEMMOVE
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `memrchr' function. */
#undef HAVE_MEMRCHR
/* Build in MySQL support? */
#undef HAVE_MYSQL
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#undef HAVE_NDIR_H
/* Do we have support for new clone API? */
#undef HAVE_NEW_CLONE_API
/* Build HTTP/2 support into httpd? */
#undef HAVE_NGHTTP2
/* Do we have usable pcre library? */
#undef HAVE_PCREPOSIX_H
/* Build in PgSQL support? */
#undef HAVE_PGSQL
/* Define to 1 if you have the `posix_fadvise' function. */
#undef HAVE_POSIX_FADVISE
/* Define to 1 if you have the `pselect' function. */
#undef HAVE_PSELECT
/* Do we have built-in support for RFC7986 color prop? */
#undef HAVE_RFC7986_COLOR
/* Do we have an rlim_t? */
#undef HAVE_RLIM_T
/* Build RSCALE support into httpd? */
#undef HAVE_RSCALE
/* Define to 1 if you have the <rxposix.h> header file. */
#undef HAVE_RXPOSIX_H
/* Define to 1 if you have the `setrlimit' function. */
#undef HAVE_SETRLIMIT
/* Define to 1 if you have the `setsid' function. */
#undef HAVE_SETSID
/* Build geographic support into tzdist? */
#undef HAVE_SHAPELIB
/* Define to 1 if you have the `shutdown' function. */
#undef HAVE_SHUTDOWN
/* Does sockaddr have an sa_len? */
#undef HAVE_SOCKADDR_SA_LEN
/* Do we have a socklen_t? */
#undef HAVE_SOCKLEN_T
/* Build in SQLite support? */
#undef HAVE_SQLITE
/* Build with SSL support? */
#undef HAVE_SSL
/* Is there an ss_family in sockaddr_storage? */
#undef HAVE_SS_FAMILY
/* Define to 1 if you have the <stdarg.h> header file. */
#undef HAVE_STDARG_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `strcasecmp' function. */
#undef HAVE_STRCASECMP
/* Define to 1 if you have the `strerror' function. */
#undef HAVE_STRERROR
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strlcat' function. */
#undef HAVE_STRLCAT
/* Define to 1 if you have the `strlcpy' function. */
#undef HAVE_STRLCPY
/* Define to 1 if you have the `strnchr' function. */
#undef HAVE_STRNCHR
/* Define to 1 if you have the `strsep' function. */
#undef HAVE_STRSEP
/* Do we have a sockaddr_storage? */
#undef HAVE_STRUCT_SOCKADDR_STORAGE
/* Define to 1 if `tm_zone' is a member of `struct tm'. */
#undef HAVE_STRUCT_TM_TM_ZONE
/* Define to 1 if you have the <sys/capability.h> header file. */
#undef HAVE_SYS_CAPABILITY_H
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_DIR_H
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_NDIR_H
/* Define to 1 if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
/* Define to 1 if you have the <sys/prctl.h> header file. */
#undef HAVE_SYS_PRCTL_H
/* Define to 1 if you have the <sys/resource.h> header file. */
#undef HAVE_SYS_RESOURCE_H
/* Define to 1 if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define to 1 if you have the <sys/sockio.h> header file. */
#undef HAVE_SYS_SOCKIO_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the `timegm' function. */
#undef HAVE_TIMEGM
/* Do we have support for TLS ALPN extension? */
#undef HAVE_TLS_ALPN
/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
`HAVE_STRUCT_TM_TM_ZONE' instead. */
#undef HAVE_TM_ZONE
/* Define to 1 if you don't have `tm_zone' but do have the external array
`tzname'. */
#undef HAVE_TZNAME
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
#undef HAVE_VALGRIND_VALGRIND_H
/* Define to 1 or 0, depending whether the compiler supports simple visibility
declarations. */
#undef HAVE_VISIBILITY
/* Define to 1 if you have the `vprintf' function. */
#undef HAVE_VPRINTF
/* Build WebSockets support into httpd? */
#undef HAVE_WSLAY
/* Build with libxml support */
#undef HAVE_XML2
/* Do we have support for xmlBufferDetach()? */
#undef HAVE_XML_BUFFERDETACH
/* Do we have support for xmlFirstElementChild()? */
#undef HAVE_XML_FIRSTCHILD
/* Build with Zephyr support? */
#undef HAVE_ZEPHYR
/* Do we have Zeroskip? */
#undef HAVE_ZEROSKIP
/* Do we have zlib? */
#undef HAVE_ZLIB
/* Build Zstandard compression support into httpd? */
#undef HAVE_ZSTD
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Name of the pidfile for master */
#undef MASTER_PIDFILE
/* Do we have a sys_errlist? */
#undef NEED_SYS_ERRLIST
/* printf formatter for off_t */
#undef OFF_T_FMT
/* Use "imap" as sieve service name? */
#undef OLD_SIEVE_SERVICE_NAME
/* Configure OpenSSL to provide krb4-compatible legacy des apis */
#undef OPENSSL_DES_LIBDES_COMPATIBILITY
/* Configure OpenSSL to provide legacy des apis */
#undef OPENSSL_ENABLE_OLD_DES_SUPPORT
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* printf formatter for rlim_t */
#undef RLIM_T_FMT
/* Path to 'rsync' binary */
#undef RSYNC_BIN
/* ShapeLib Version */
#undef SHAPELIB_VERSION
/* The size of `int', as computed by sizeof. */
#undef SIZEOF_INT
/* The size of `long', as computed by sizeof. */
#undef SIZEOF_LONG
/* The size of `long long int', as computed by sizeof. */
#undef SIZEOF_LONG_LONG_INT
/* The size of `off_t', as computed by sizeof. */
#undef SIZEOF_OFF_T
/* The size of `size_t', as computed by sizeof. */
#undef SIZEOF_SIZE_T
/* The size of `time_t', as computed by sizeof. */
#undef SIZEOF_TIME_T
/* The size of `unsigned long long int', as computed by sizeof. */
#undef SIZEOF_UNSIGNED_LONG_LONG_INT
/* printf formatter for size_t */
#undef SIZE_T_FMT
/* Do we already have setproctitle? */
#undef SPT_TYPE
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Syslog facility to use. */
#undef SYSLOG_FACILITY
/* printf formatter for time_t */
#undef TIME_T_FMT
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
#undef TM_IN_SYS_TIME
/* Build with autocreate functionality */
#undef USE_AUTOCREATE
/* Build with calendar alarm functionality */
#undef USE_CALALARMD
/* Build in cyrusdb_sql support? */
#undef USE_CYRUSDB_SQL
/* Build with HTTP functionality */
#undef USE_HTTPD
/* Build with idled functionality */
#undef USE_IDLED
/* Build with Murder functionality */
#undef USE_MURDER
/* Build with nntpd functionality */
#undef USE_NNTPD
/* Build with replication functionality */
#undef USE_REPLICATION
/* Build in Sieve support? */
#undef USE_SIEVE
/* Build in Squat support? */
#undef USE_SQUAT
/* Build with srs functionality */
#undef USE_SRS
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
/* Enable threading extensions on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
/* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
/* Build in Xapian support? */
#undef USE_XAPIAN
/* Use Xapian CJK word tokenizer, rather than n-grams? */
#undef USE_XAPIAN_CJK_WORDS
/* Version number of package */
#undef VERSION
/* Build *DAV support into httpd? */
#undef WITH_DAV
/* Build with JMAP support */
#undef WITH_JMAP
/* Enable support for OpenIO object storage. */
#undef WITH_OPENIO
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
#if defined AC_APPLE_UNIVERSAL_BUILD
# if defined __BIG_ENDIAN__
# define WORDS_BIGENDIAN 1
# endif
#else
# ifndef WORDS_BIGENDIAN
# undef WORDS_BIGENDIAN
# endif
#endif
/* Which Xapian CJK tokenzation are we using? */
#undef XAPIAN_CJK_TOKENS
/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
`char[]'. */
#undef YYTEXT_POINTER
/* Define to 1 if on MINIX. */
#undef _MINIX
/* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */
#undef _POSIX_1_SOURCE
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
#undef inline
#endif
/* strtol-like parse function for off_t */
#undef strtoofft
/* strtol-like parse function for rlim_t */
#undef strtorlimt
/* strtol-like parse function for size_t */
#undef strtosizet
/* strtol-like parse function for time_t */
#undef strtotimet
#if HAVE_VISIBILITY
#define EXPORTED __attribute__((__visibility__("default")))
#define HIDDEN __attribute__((__visibility__("hidden")))
#else
#define EXPORTED
#define HIDDEN
#endif
#if defined __GNUC__ && __GNUC__ > 6
#define GCC_FALLTHROUGH __attribute__((fallthrough));
#else
#define GCC_FALLTHROUGH /* fall through */
#endif
/* time.h */
#if TIME_WITH_SYS_TIME
# include <sys/time.h>
# include <time.h>
#else
# if HAVE_SYS_TIME_H
# include <sys/time.h>
# else
# include <time.h>
# endif
#endif
/* com_err.h, as needed */
#ifndef IN_COM_ERR
#ifdef HAVE_ET_COM_ERR_H
#include <et/com_err.h>
#else
#include <com_err.h>
#endif /* HAVE_ET_COM_ERR_H */
#endif /* IN_COM_ERR */
/* 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 <fcntl.h>
#ifndef O_DSYNC
# ifdef O_SYNC
# define O_DSYNC O_SYNC /* POSIX */
# else
# define O_DSYNC O_FSYNC /* BSD */
# endif
#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 */
/* save the cmdlines for the ID command */
#undef ID_SAVE_CMDLINE
/* IPv6 things */
#include <netdb.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#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 AF_INET6
/* Define it to something that should never appear */
#define AF_INET6 AF_MAX
#endif
#if !defined(HAVE_GETADDRINFO) || !defined(HAVE_GETNAMEINFO)
#include "lib/gai.h"
#endif
/* End IPv6 things */
#ifdef OLD_SIEVE_SERVICE_NAME
#define SIEVE_SERVICE_NAME "imap"
#else
#define SIEVE_SERVICE_NAME "sieve"
#endif
/* filenames */
#define FNAME_DBDIR "/db"
#define FNAME_USERDIR "/user/"
#define FNAME_DOMAINDIR "/domain/"
#define FNAME_LOGDIR "/log/"
#define FNAME_PTSDB "/ptclient/ptscache.db"
#define CONFIG_FILENAME (SYSCONF_DIR "/imapd.conf")
#define DEFAULT_MASTER_CONFIG_FILENAME (SYSCONF_DIR "/cyrus.conf")
#ifndef HAVE_SHUTDOWN
#define shutdown(fd, mode) 0
#endif
#ifndef HAVE_POSIX_FADVISE
#define POSIX_FADV_WILLNEED 0
extern int posix_fadvise(int fd, off_t offset, off_t len, int advice);
#endif
#ifndef HAVE_STRSEP
extern char *strsep(char **, const char *);
#endif
#ifndef HAVE_MEMMEM
extern void *memmem(const void *, size_t, const void *, size_t);
#endif
#ifndef HAVE_MEMRCHR
extern void *memrchr(const void *, int, size_t);
#endif
/* compile time options; think carefully before modifying */
enum {
/* should we send an UNAVAILABLE message to master when
* a service is exiting (master is already going to be
* informed of the exit by the SIGCHLD signal anyway) ? */
MESSAGE_MASTER_ON_EXIT = 0,
/* 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 have long LMTP error messages? */
LMTP_LONG_ERROR_MSGS = 1
};
#endif /* _CYRUS_IMAPD_CONFIG_H_ */