X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/6a9cf7f890226aa085842cd3d94b13e78ea31637..a1108b5118d32e969c5fe91b2110944f7483a7cb:/src/src/transports/smtp.h diff --git a/src/src/transports/smtp.h b/src/src/transports/smtp.h index 7feb8110b..aff3f5452 100644 --- a/src/src/transports/smtp.h +++ b/src/src/transports/smtp.h @@ -13,7 +13,7 @@ #define PENDING_OK (PENDING + OK) -#if !defined(DISABLE_TLS) && defined(EXIM_HAVE_INOTIFY) +#ifndef DISABLE_TLS /* Flags structure for validity of TLS configuration */ typedef struct { @@ -125,7 +125,7 @@ typedef struct { #ifdef EXPERIMENTAL_ARC uschar *arc_sign; #endif -#if !defined(DISABLE_TLS) && defined(EXIM_HAVE_INOTIFY) +#ifndef DISABLE_TLS exim_tlslib_state tls_preload; #endif } smtp_transport_options_block; @@ -171,14 +171,25 @@ typedef struct { BOOL pending_BDAT:1; BOOL RCPT_452:1; BOOL good_RCPT:1; +#ifdef EXPERIMENTAL_ESMTP_LIMITS + BOOL single_rcpt_domain:1; +#endif BOOL completed_addr:1; BOOL send_rset:1; BOOL send_quit:1; + BOOL send_tlsclose:1; + unsigned peer_offered; +#ifdef EXPERIMENTAL_ESMTP_LIMITS + unsigned peer_limit_mail; + unsigned peer_limit_rcpt; + unsigned peer_limit_rcptdom; +#endif + + unsigned max_mail; int max_rcpt; int cmd_count; - unsigned peer_offered; unsigned avoid_option; uschar * igquotstr; uschar * helo_data; @@ -187,6 +198,11 @@ typedef struct { uschar * helo_response; #endif #ifndef DISABLE_PIPE_CONNECT + /* Info about the EHLO response stored to / retrieved from cache. When + operating early-pipe, we use the cached values. For each of plaintext and + crypted we store bitmaps for ESMTP features and AUTH methods. If the LIMITS + extension is built and usable them at least one of the limits values cached + is nonzero, and we use the values to constrain the connection. */ ehlo_resp_precis ehlo_resp; #endif