X-Git-Url: https://vcs.fsf.org/?p=exim.git;a=blobdiff_plain;f=src%2Fsrc%2Ftransports%2Fsmtp.h;h=8583ab46835f5beb2ea42d10fe00777c8bbb5e26;hp=55ede7c7f0d5a79ee59a325780af8824719a8a1e;hb=20b9a2dc027844f7288508d0f81df815110e4e69;hpb=80a47a2c9633437d4ceebd214cd44abfbd4f4543 diff --git a/src/src/transports/smtp.h b/src/src/transports/smtp.h index 55ede7c7f..8583ab468 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.15 2009/06/10 07:34:05 tom Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2007 */ +/* Copyright (c) University of Cambridge 1995 - 2015 */ /* See the file NOTICE for conditions of use and distribution. */ /* Private structure for the private options and other private data. */ @@ -19,11 +17,24 @@ typedef struct { uschar *interface; uschar *port; uschar *protocol; + uschar *dscp; uschar *serialize_hosts; uschar *hosts_try_auth; uschar *hosts_require_auth; +#ifdef EXPERIMENTAL_DANE + uschar *hosts_try_dane; + uschar *hosts_require_dane; +#endif +#ifndef DISABLE_PRDR + uschar *hosts_try_prdr; +#endif +#ifndef DISABLE_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; @@ -40,31 +51,38 @@ typedef struct { BOOL gethostbyname; BOOL dns_qualify_single; BOOL dns_search_parents; + dnssec_domains dnssec; BOOL delay_after_cutoff; BOOL hosts_override; BOOL hosts_randomize; BOOL keepalive; BOOL lmtp_ignore_quota; + uschar *expand_retry_include_ip_address; BOOL retry_include_ip_address; - #ifdef SUPPORT_TLS +#ifdef SUPPORT_SOCKS + uschar *socks_proxy; +#endif +#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 - #ifndef DISABLE_DKIM + uschar *tls_verify_hosts; + uschar *tls_try_verify_hosts; + uschar *tls_verify_cert_hostnames; +#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 +#endif } smtp_transport_options_block; /* Data for reading the private options. */ @@ -82,4 +100,17 @@ 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 *); + +#ifdef SUPPORT_SOCKS +extern int socks_sock_connect(host_item *, int, int, uschar *, + transport_instance *, int); +#endif + /* End of transports/smtp.h */