TLS: Session resumption, under the EXPERIMENTAL_TLS_RESUME build option.
[exim.git] / src / src / tls.c
index f816620659963e9ccfa831164e78f3ea0ae917d7..7b8d7a2a3aae1504bb19942280ce544aad198250 100644 (file)
@@ -19,6 +19,17 @@ functions from the OpenSSL or GNU TLS libraries. */
 #include "exim.h"
 #include "transports/smtp.h"
 
+#if defined(MACRO_PREDEF) && defined(SUPPORT_TLS)
+# include "macro_predef.h"
+# ifdef USE_GNUTLS
+#  include "tls-gnu.c"
+# else
+#  include "tls-openssl.c"
+# endif
+#endif
+
+#ifndef MACRO_PREDEF
+
 /* This module is compiled only when it is specifically requested in the
 build-time configuration. However, some compilers don't like compiling empty
 modules, so keep them happy with a dummy when skipping the rest. Make it
@@ -69,7 +80,7 @@ expand_check(const uschar *s, const uschar *name, uschar **result, uschar ** err
 if (!s)
   *result = NULL;
 else if (  !(*result = expand_string(US s)) /* need to clean up const more */
-       && !expand_string_forcedfail
+       && !f.expand_string_forcedfail
        )
   {
   *errstr = US"Internal error";
@@ -235,8 +246,7 @@ inplace.
 static void
 dn_to_list(uschar * dn)
 {
-uschar * cp;
-for (cp = dn; *cp; cp++)
+for (uschar * cp = dn; *cp; cp++)
   if (cp[0] == '\\' && cp[1] == ',')
     *cp++ = ',';
 }
@@ -355,6 +365,7 @@ else if ((subjdn = tls_cert_subject(cert, NULL)))
 return FALSE;
 }
 #endif /*SUPPORT_TLS*/
+#endif /*!MACRO_PREDEF*/
 
 /* vi: aw ai sw=2
 */