Add dnsdb lookup pseudo-type "a+". Addresses bug 1269.
[users/jgh/exim.git] / src / src / exim.h
index e6e72facc9574a3e0b40c981ad072d72e55e154d..2816fc98a6a1c16495c2813b50c77da35cdf6a2d 100644 (file)
@@ -2,7 +2,7 @@
 *     Exim - an Internet mail transport agent    *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2009 */
+/* Copyright (c) University of Cambridge 1995 - 2012 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 
@@ -20,6 +20,13 @@ This call dates back at least as far as SUSv2. */
 
 #define HAVE_SRANDOM
 
+/* This is primarily for the Gnu C library; we define it before os.h so that
+os.h has a chance to hurriedly undef it, Just In Case.  We need C99 for some
+64-bit math support, and defining _ISOC99_SOURCE breaks <resolv.h> and friends.
+*/
+
+#define _GNU_SOURCE 1
+
 /* First of all include the os-specific header, which might set things that
 are needed by any of the other headers, including system headers. */
 
@@ -48,7 +55,7 @@ making unique names. */
 #define LOCALHOST_MAX  10
 #endif
 
-/* If not overriden by os.h, dynamic libraries have filenames ending .so */
+/* If not overridden by os.h, dynamic libraries have filenames ending .so */
 #ifndef DYNLIB_FN_EXT
 # define DYNLIB_FN_EXT "so"
 #endif
@@ -77,6 +84,10 @@ making unique names. */
 #include <limits.h>
 #endif
 
+/* C99 integer types, figure out how to undo this if needed for older systems */
+
+#include <inttypes.h>
+
 /* Just in case some aged system doesn't define them... */
 
 #ifndef INT_MAX
@@ -295,6 +306,12 @@ header files. I don't suppose they have T_SRV either. */
 #define T_SRV 33
 #endif
 
+/* Many systems do not have T_SPF. */
+
+#ifndef T_SPF
+#define T_SPF 99
+#endif
+
 /* It seems that some versions of arpa/nameser.h don't define *any* of the
 T_xxx macros, which seem to be non-standard nowadays. Just to be on the safe
 side, put in definitions for all the ones that Exim uses. */
@@ -337,6 +354,7 @@ side, put in definitions for all the ones that Exim uses. */
 #define T_ZNS (-1)
 #define T_MXH (-2)
 #define T_CSA (-3)
+#define T_APL (-4)
 
 /* The resolv.h header defines __P(x) on some Solaris 2.5.1 systems (without
 checking that it is already defined, in fact). This conflicts with other