(1) Don't ignore timeouts while writing to a pipe! (As opposed to
[exim.git] / src / src / exim.h
index 397a1368725aede25fd2fec6dd2a0f7dea06a140..e44cad788f2e671aaca289f0ea1aef5bd31b1eb6 100644 (file)
@@ -1,10 +1,10 @@
-/* $Cambridge: exim/src/src/exim.h,v 1.3 2004/11/24 15:43:36 ph10 Exp $ */
+/* $Cambridge: exim/src/src/exim.h,v 1.11 2005/04/27 10:00:18 ph10 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2004 */
+/* Copyright (c) University of Cambridge 1995 - 2005 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 
@@ -60,7 +60,7 @@ making unique names. */
 /* Unix includes */
 
 #include <errno.h>
-#if    defined(__svr4__) && defined(__sparc) && ! defined(__EXTENSIONS__)
+#if defined(__svr4__) && defined(__sparc) && ! defined(__EXTENSIONS__)
 #define __EXTENSIONS__  /* so that SunOS 5 gets NGROUPS_MAX */
 #include <limits.h>
 #undef  __EXTENSIONS__
@@ -92,6 +92,7 @@ making unique names. */
 #include <sys/file.h>
 #include <dirent.h>
 #include <netdb.h>
+#include <poll.h>
 #include <pwd.h>
 #include <grp.h>
 #include <syslog.h>
@@ -107,11 +108,12 @@ in sys/file.h. */
 #include <sysexits.h>
 #endif
 
-/* A few OS don't have socklen_t; their os.h files define SOCKLEN_T to
-be size_t or whatever. */
+/* A few OS don't have socklen_t; their os.h files define EXIM_SOCKLEN_T to
+be size_t or whatever. We used to use SOCKLEN_T, but then it was discovered
+that this is used by the AIX include files. */
 
-#ifndef SOCKLEN_T
-#define SOCKLEN_T socklen_t
+#ifndef EXIM_SOCKLEN_T
+#define EXIM_SOCKLEN_T socklen_t
 #endif
 
 /* Ensure that the sysexits we reference are defined */
@@ -206,7 +208,7 @@ or a macro with entries f_frsize and f_bsize. */
 #endif
 
 
-#ifndef  SIOCGIFCONF    /* HACK for SunOS 5 */
+#ifndef  SIOCGIFCONF   /* HACK for SunOS 5 */
 #include <sys/sockio.h>
 #endif
 
@@ -382,9 +384,10 @@ extern int ferror(FILE *);
 /* 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"
+
 #include "local_scan.h"
 #include "macros.h"
-#include "config.h"
 #include "dbstuff.h"
 #include "structs.h"
 #include "globals.h"
@@ -392,6 +395,19 @@ mytypes.h and store.h, so we don't need to mention them explicitly. */
 #include "dbfunctions.h"
 #include "osfunctions.h"
 
+#ifdef EXPERIMENTAL_BRIGHTMAIL
+#include "bmi_spam.h"
+#endif
+#ifdef EXPERIMENTAL_SPF
+#include "spf.h"
+#endif
+#ifdef EXPERIMENTAL_SRS
+#include "srs.h"
+#endif
+#ifdef EXPERIMENTAL_DOMAINKEYS
+#include "dk.h"
+#endif
+
 /* The following stuff must follow the inclusion of config.h because it
 requires various things that are set therein. */
 
@@ -399,7 +415,7 @@ requires various things that are set therein. */
 #include <iconv.h>
 #endif
 
-#ifdef USE_READLINE
+#if defined(USE_READLINE) || defined(EXPAND_DLFUNC)
 #include <dlfcn.h>
 #endif