X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/759502e5af0acfb310b8571f056d2dbf59adb1d3..989ab7c83d1a69fe6ce454cfe51572c62933a5a3:/src/src/structs.h diff --git a/src/src/structs.h b/src/src/structs.h index 7d700fb72..e1d989af2 100644 --- a/src/src/structs.h +++ b/src/src/structs.h @@ -3,6 +3,7 @@ *************************************************/ /* Copyright (c) University of Cambridge 1995 - 2018 */ +/* Copyright (c) The Exim Maintainers 2020 */ /* See the file NOTICE for conditions of use and distribution. */ @@ -514,7 +515,7 @@ typedef struct address_item_propagated { uschar *remove_headers; /* list of those to remove */ void *variables; /* router-vasriables */ -#ifdef EXPERIMENTAL_SRS +#ifdef EXPERIMENTAL_SRS_ALT uschar *srs_sender; /* Change return path when delivering */ #endif BOOL ignore_error:1; /* ignore delivery error */ @@ -727,14 +728,16 @@ typedef struct tree_node { /* Structure for holding time-limited data such as DNS returns. We use this rather than extending tree_node to avoid wasting space for most tree use (variables...) at the cost of complexity -for the lookups cache */ +for the lookups cache. +We also store any options used for the lookup. */ typedef struct expiring_data { - time_t expiry; /* if nonzero, data invalid after this time */ + time_t expiry; /* if nonzero, data invalid after this time */ + const uschar * opts; /* options, or NULL */ union { - void *ptr; /* pointer to data */ - int val; /* or integer data */ + void * ptr; /* pointer to data */ + int val; /* or integer data */ } data; } expiring_data;