X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/c988f1f4faa9f679f79beddf3c14676c5dcb8e28..e51c7be22dfccad376659a1a46cee93c9979bbf7:/src/src/transports/smtp.h diff --git a/src/src/transports/smtp.h b/src/src/transports/smtp.h index 756da659c..a481943bb 100644 --- a/src/src/transports/smtp.h +++ b/src/src/transports/smtp.h @@ -1,10 +1,8 @@ -/* $Cambridge: exim/src/src/transports/smtp.h,v 1.2 2005/01/04 10:00:45 ph10 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2005 */ +/* Copyright (c) University of Cambridge 1995 - 2014 */ /* See the file NOTICE for conditions of use and distribution. */ /* Private structure for the private options and other private data. */ @@ -19,11 +17,21 @@ typedef struct { uschar *interface; uschar *port; uschar *protocol; + uschar *dscp; uschar *serialize_hosts; uschar *hosts_try_auth; uschar *hosts_require_auth; +#ifndef DISABLE_PRDR + uschar *hosts_try_prdr; +#endif +#ifdef EXPERIMENTAL_OCSP + uschar *hosts_request_ocsp; + uschar *hosts_require_ocsp; +#endif uschar *hosts_require_tls; uschar *hosts_avoid_tls; + uschar *hosts_verify_avoid_tls; + uschar *hosts_avoid_pipelining; uschar *hosts_avoid_esmtp; uschar *hosts_nopass_tls; int command_timeout; @@ -32,23 +40,50 @@ typedef struct { int final_timeout; int size_addition; int hosts_max_try; + int hosts_max_try_hardlimit; + BOOL address_retry_include_sender; BOOL allow_localhost; + BOOL authenticated_sender_force; BOOL gethostbyname; BOOL dns_qualify_single; BOOL dns_search_parents; + uschar *dnssec_request_domains; + uschar *dnssec_require_domains; BOOL delay_after_cutoff; BOOL hosts_override; BOOL hosts_randomize; BOOL keepalive; + BOOL lmtp_ignore_quota; BOOL retry_include_ip_address; - #ifdef SUPPORT_TLS +#ifdef SUPPORT_TLS uschar *tls_certificate; uschar *tls_crl; uschar *tls_privatekey; uschar *tls_require_ciphers; + uschar *gnutls_require_kx; + uschar *gnutls_require_mac; + uschar *gnutls_require_proto; + uschar *tls_sni; uschar *tls_verify_certificates; + int tls_dh_min_bits; BOOL tls_tempfail_tryclear; - #endif + uschar *tls_verify_hosts; + uschar *tls_try_verify_hosts; +# ifdef EXPERIMENTAL_CERTNAMES + uschar *tls_verify_cert_hostnames; +# endif +#endif +#ifndef DISABLE_DKIM + uschar *dkim_domain; + uschar *dkim_private_key; + uschar *dkim_selector; + uschar *dkim_canon; + uschar *dkim_sign_headers; + uschar *dkim_strict; +#endif +#ifdef EXPERIMENTAL_TPDA + uschar *tpda_host_defer_action; +#endif } smtp_transport_options_block; /* Data for reading the private options. */ @@ -66,4 +101,12 @@ extern BOOL smtp_transport_entry(transport_instance *, address_item *); extern void smtp_transport_init(transport_instance *); extern void smtp_transport_closedown(transport_instance *); + + +extern int smtp_auth(uschar *, unsigned, address_item *, host_item *, + smtp_transport_options_block *, BOOL, + smtp_inblock *, smtp_outblock *); +extern BOOL smtp_mail_auth_str(uschar *, unsigned, + address_item *, smtp_transport_options_block *); + /* End of transports/smtp.h */