-/* $Cambridge: exim/src/src/exim.h,v 1.16 2005/06/27 10:52:20 ph10 Exp $ */
+/* $Cambridge: exim/src/src/exim.h,v 1.27 2009/11/16 19:50:36 nm4 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
*************************************************/
-/* Copyright (c) University of Cambridge 1995 - 2005 */
+/* Copyright (c) University of Cambridge 1995 - 2009 */
/* See the file NOTICE for conditions of use and distribution. */
#define HAVE_STATFS
+/* Similarly, assume most systems have srandom() unless os.h undefines it.
+This call dates back at least as far as SUSv2. */
+
+#define HAVE_SRANDOM
+
/* First of all include the os-specific header, which might set things that
are needed by any of the other headers, including system headers. */
#define INT_MAX 2147483647
#endif
+#ifndef INT_MIN
+#define INT_MIN (-INT_MAX - 1)
+#endif
+
+#ifndef SHRT_MAX
+#define SHRT_MAX 32767
+#endif
+
#ifndef UCHAR_MAX
#define UCHAR_MAX 255
#endif
#define T_CNAME 5
#endif
+#ifndef T_SOA
+#define T_SOA 6
+#endif
+
#ifndef T_MX
#define T_MX 15
#endif
/* The header from the PCRE regex package */
-#include "pcre/pcre.h"
+#include <pcre.h>
/* Exim includes are in several files. Note that local_scan.h #includes
-mytypes.h and store.h, so we don't need to mention them explicitly. */
-
-#include "config.h"
+config.h, mytypes.h, and store.h, so we don't need to mention them explicitly.
+*/
#include "local_scan.h"
#include "macros.h"
#ifdef EXPERIMENTAL_SRS
#include "srs.h"
#endif
-#ifdef EXPERIMENTAL_DOMAINKEYS
-#include "dk.h"
+#ifndef DISABLE_DKIM
+#include "dkim.h"
#endif
/* The following stuff must follow the inclusion of config.h because it
#include <iconv.h>
#endif
-#if defined(USE_READLINE) || defined(EXPAND_DLFUNC)
+#if defined(USE_READLINE) || defined(EXPAND_DLFUNC) || defined (LOOKUP_MODULE_DIR)
#include <dlfcn.h>
#endif
+#ifdef ENABLE_DISABLE_FSYNC
+#define EXIMfsync(f) (disable_fsync? 0 : fsync(f))
+#else
+#define EXIMfsync(f) fsync(f)
+#endif
+
/* Backward compatibility; LOOKUP_LSEARCH now includes all three */
#if (!defined LOOKUP_LSEARCH) && (defined LOOKUP_WILDLSEARCH || defined LOOKUP_NWILDLSEARCH)