X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/1ddb1855402d48ad735e46abaf0d662e45600ecd..3d040d098384c48be39e47862d55cac1bc0c578c:/src/src/structs.h diff --git a/src/src/structs.h b/src/src/structs.h index a6ba95f95..9bf3aebe2 100644 --- a/src/src/structs.h +++ b/src/src/structs.h @@ -133,11 +133,15 @@ typedef struct driver_instance { uschar *name; /* Instance name */ struct driver_info *info; /* Points to info for this driver */ void *options_block; /* Pointer to private options */ + uschar *driver_name; /* All start with this generic option */ + const uschar *srcfile; /* and config source info for errors */ + int srcline; } driver_instance; typedef struct driver_info { uschar *driver_name; /* Name of driver */ + optionlist *options; /* Table of private options names */ int *options_count; /* -> Number of entries in table */ void *options_block; /* Points to default private block */ @@ -159,6 +163,9 @@ typedef struct transport_instance { struct transport_info *info; /* Info for this driver */ void *options_block; /* Pointer to private options */ uschar *driver_name; /* Must be first */ + const uschar *srcfile; + int srcline; + int (*setup)( /* Setup entry point */ struct transport_instance *, struct address_item *, @@ -283,6 +290,8 @@ typedef struct router_instance { struct router_info *info; void *options_block; /* Pointer to private options */ uschar *driver_name; /* Must be first */ + const uschar *srcfile; + int srcline; uschar *address_data; /* Arbitrary data */ #ifdef EXPERIMENTAL_BRIGHTMAIL @@ -400,6 +409,9 @@ typedef struct auth_instance { struct auth_info *info; /* Pointer to driver info block */ void *options_block; /* Pointer to private options */ uschar *driver_name; /* Must be first */ + const uschar *srcfile; + int srcline; + uschar *advertise_condition; /* Are we going to advertise this?*/ uschar *client_condition; /* Should the client try this? */ uschar *public_name; /* Advertised name */ @@ -518,9 +530,6 @@ typedef struct address_item_propagated { uschar *remove_headers; /* list of those to remove */ void *variables; /* router-vasriables */ -#ifdef EXPERIMENTAL_SRS_ALT - uschar *srs_sender; /* Change return path when delivering */ -#endif BOOL ignore_error:1; /* ignore delivery error */ #ifdef SUPPORT_I18N BOOL utf8_msg:1; /* requires SMTPUTF8 processing */ @@ -821,6 +830,8 @@ typedef struct { host_item * host; int host_af; uschar * interface; + uschar * sending_ip_address; /* used for TLS resumption */ + int sock; /* used for a bound but not connected socket */ #ifdef SUPPORT_DANE BOOL dane:1; /* connection must do dane */