X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/343b2385258a9093d305a6938d8ef34e36bfd8bb..415c8f3b2abccd8f04b0095551919adf142e6eee:/src/src/exim.h diff --git a/src/src/exim.h b/src/src/exim.h index fa7acf8ba..6721cb609 100644 --- a/src/src/exim.h +++ b/src/src/exim.h @@ -1,10 +1,10 @@ -/* $Cambridge: exim/src/src/exim.h,v 1.5 2004/12/21 09:40:01 ph10 Exp $ */ +/* $Cambridge: exim/src/src/exim.h,v 1.15 2005/05/24 10:57:10 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. */ @@ -49,6 +49,7 @@ making unique names. */ #include #include +#include #include #include #include @@ -60,7 +61,7 @@ making unique names. */ /* Unix includes */ #include -#if defined(__svr4__) && defined(__sparc) && ! defined(__EXTENSIONS__) +#if defined(__svr4__) && defined(__sparc) && ! defined(__EXTENSIONS__) #define __EXTENSIONS__ /* so that SunOS 5 gets NGROUPS_MAX */ #include #undef __EXTENSIONS__ @@ -92,6 +93,9 @@ making unique names. */ #include #include #include +#ifndef NO_POLL_H +#include +#endif #include #include #include @@ -107,11 +111,12 @@ in sys/file.h. */ #include #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 +211,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 #endif @@ -216,23 +221,19 @@ or a macro with entries f_frsize and f_bsize. */ #include /* There's a shambles in IRIX6 - it defines EX_OK in unistd.h which conflicts -with the definition in sysexits.h. Arrange to preserve it, even though at -present Exim doesn't actually use it. */ +with the definition in sysexits.h. Exim does not actually use this macro, so we +just undefine it. It would be nice to be able to re-instate the definition from +sysexits.h if there is no definition in unistd.h, but I do not think there is a +way to do this in C because macro definitions are not scanned for other macros +at definition time. [The code here used to assume they were, until I was +disabused of the notion. Luckily, since EX_OK is not used, it didn't matter.] */ #ifdef EX_OK -#define SAVE_EX_OK EX_OK #undef EX_OK #endif #include -#ifdef SAVE_EX_OK -#ifdef EX_OK -#undef EX_OK -#endif -#define EX_OK SAVE_EX_OK -#endif - #include #ifndef NO_NET_IF_H #include @@ -278,12 +279,19 @@ header files. I don't suppose they have T_SRV either. */ #define T_SRV 33 #endif -/* We use the private type T_ZNS for retrieving the nameservers for the -enclosing zone of a domain, and the private type T_MXH for retrieving -the MX hostnames only (without their priorities). */ +/* We define a few private types for special DNS lookups: + + . T_ZNS gets the nameservers of the enclosing zone of a domain + + . T_MXH gets the MX hostnames only (without their priorities) + + . T_CSA gets the domain's Client SMTP Authorization SRV record + +*/ #define T_ZNS (-1) #define T_MXH (-2) +#define T_CSA (-3) /* 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 @@ -384,13 +392,6 @@ mytypes.h and store.h, so we don't need to mention them explicitly. */ #include "config.h" -/* Before including the rest of the Exim headers, let's clear up some content -scanning dependencies. */ - -#ifdef WITH_OLD_DEMIME -#define WITH_CONTENT_SCAN -#endif - #include "local_scan.h" #include "macros.h" #include "dbstuff.h" @@ -409,6 +410,9 @@ scanning dependencies. */ #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. */ @@ -417,7 +421,7 @@ requires various things that are set therein. */ #include #endif -#ifdef USE_READLINE +#if defined(USE_READLINE) || defined(EXPAND_DLFUNC) #include #endif