Gitweb:
http://git.exim.org/exim.git/commitdiff/d43cbe256c751f2f2e8c9b55dd8a718967571c21
Commit: d43cbe256c751f2f2e8c9b55dd8a718967571c21
Parent: f358d5e0ef3cb10a0a6d107f70e9e0442087f6f2
Author: Jeremy Harris <jgh146exb@???>
AuthorDate: Sat Apr 11 15:33:17 2015 +0100
Committer: Jeremy Harris <jgh146exb@???>
CommitDate: Sun Apr 12 23:36:42 2015 +0100
Rename substructure for ease of debugging
---
src/src/acl.c | 12 ++---
src/src/deliver.c | 80 +++++++++++++++---------------
src/src/filter.c | 2 +-
src/src/rda.c | 4 +-
src/src/route.c | 14 +++---
src/src/routers/accept.c | 6 +-
src/src/routers/dnslookup.c | 6 +-
src/src/routers/ipliteral.c | 6 +-
src/src/routers/iplookup.c | 8 ++--
src/src/routers/manualroute.c | 6 +-
src/src/routers/queryprogram.c | 10 ++--
src/src/routers/redirect.c | 18 ++++----
src/src/routers/rf_change_domain.c | 2 +-
src/src/routers/rf_get_errors_address.c | 2 +-
src/src/routers/rf_get_munge_headers.c | 4 +-
src/src/routers/rf_queue_add.c | 10 ++--
src/src/sieve.c | 2 +-
src/src/structs.h | 2 +-
src/src/transport.c | 10 ++--
src/src/transports/smtp.c | 8 ++--
src/src/verify.c | 18 ++++----
21 files changed, 113 insertions(+), 117 deletions(-)
diff --git a/src/src/acl.c b/src/src/acl.c
index 5c0de55..3f513c3 100644
--- a/src/src/acl.c
+++ b/src/src/acl.c
@@ -2080,7 +2080,7 @@ else if (verify_sender_address != NULL)
sender_vaddr = deliver_make_addr(verify_sender_address, TRUE);
#ifdef EXPERIMENTAL_INTERNATIONAL
- sender_vaddr->p.utf8 = message_smtputf8;
+ sender_vaddr->prop.utf8 = message_smtputf8;
#endif
if (no_details) setflag(sender_vaddr, af_sverify_told);
if (verify_sender_address[0] != 0)
@@ -2138,7 +2138,7 @@ else if (verify_sender_address != NULL)
/* Put the sender address_data value into $sender_address_data */
- sender_address_data = sender_vaddr->p.address_data;
+ sender_address_data = sender_vaddr->prop.address_data;
}
/* A recipient address just gets a straightforward verify; again we must handle
@@ -2168,7 +2168,7 @@ else
if (testflag((&addr2), af_pass_message)) acl_temp_details = TRUE;
/* Make $address_data visible */
- deliver_address_data = addr2.p.address_data;
+ deliver_address_data = addr2.prop.address_data;
}
/* We have a result from the relevant test. Handle defer overrides first. */
@@ -2187,13 +2187,9 @@ sender_verified_failed to the address item that actually failed. */
if (rc != OK && verify_sender_address != NULL)
{
if (rc != DEFER)
- {
*log_msgptr = *user_msgptr = US"Sender verify failed";
- }
else if (*basic_errno != ERRNO_CALLOUTDEFER)
- {
*log_msgptr = *user_msgptr = US"Could not complete sender verify";
- }
else
{
*log_msgptr = US"Could not complete sender verify callout";
@@ -4386,7 +4382,7 @@ if (where == ACL_WHERE_RCPT)
return DEFER;
}
#ifdef EXPERIMENTAL_INTERNATIONAL
- addr->p.utf8 = message_smtputf8;
+ addr->prop.utf8 = message_smtputf8;
#endif
deliver_domain = addr->domain;
deliver_localpart = addr->local_part;
diff --git a/src/src/deliver.c b/src/src/deliver.c
index 17edb65..e25de7e 100644
--- a/src/src/deliver.c
+++ b/src/src/deliver.c
@@ -149,9 +149,9 @@ else
}
deliver_recipients = addr;
-deliver_address_data = addr->p.address_data;
-deliver_domain_data = addr->p.domain_data;
-deliver_localpart_data = addr->p.localpart_data;
+deliver_address_data = addr->prop.address_data;
+deliver_domain_data = addr->prop.domain_data;
+deliver_localpart_data = addr->prop.localpart_data;
/* These may be unset for multiple addresses */
@@ -825,8 +825,8 @@ if ((log_extra_selector & LX_sender_on_delivery) != 0 || msg)
s = string_append(s, &size, &ptr, 3, US" F=<", sender_address, US">");
#ifdef EXPERIMENTAL_SRS
-if(addr->p.srs_sender)
- s = string_append(s, &size, &ptr, 3, US" SRS=<", addr->p.srs_sender, US">");
+if(addr->prop.srs_sender)
+ s = string_append(s, &size, &ptr, 3, US" SRS=<", addr->prop.srs_sender, US">");
#endif
/* You might think that the return path must always be set for a successful
@@ -1093,7 +1093,7 @@ if (addr->return_file >= 0 && addr->return_filename != NULL)
/* Handle returning options, but only if there is an address to return
the text to. */
- if (sender_address[0] != 0 || addr->p.errors_address != NULL)
+ if (sender_address[0] != 0 || addr->prop.errors_address != NULL)
{
if (tb->return_output)
{
@@ -1310,7 +1310,7 @@ else
if (!testflag(addr, af_ignore_error) &&
(addr->special_action == SPECIAL_FREEZE ||
- (sender_address[0] == 0 && addr->p.errors_address == NULL)
+ (sender_address[0] == 0 && addr->prop.errors_address == NULL)
))
{
frozen_info = (addr->special_action == SPECIAL_FREEZE)? US"" :
@@ -1810,11 +1810,11 @@ transport_instance *tp = addr->transport;
/* Set up the return path from the errors or sender address. If the transport
has its own return path setting, expand it and replace the existing value. */
-if(addr->p.errors_address != NULL)
- return_path = addr->p.errors_address;
+if(addr->prop.errors_address != NULL)
+ return_path = addr->prop.errors_address;
#ifdef EXPERIMENTAL_SRS
-else if(addr->p.srs_sender != NULL)
- return_path = addr->p.srs_sender;
+else if(addr->prop.srs_sender != NULL)
+ return_path = addr->prop.srs_sender;
#endif
else
return_path = sender_address;
@@ -2426,9 +2426,9 @@ while (addr_local != NULL)
(addr->flags & (af_pfr|af_file)) == (next->flags & (af_pfr|af_file)) &&
(!uses_lp || Ustrcmp(next->local_part, addr->local_part) == 0) &&
(!uses_dom || Ustrcmp(next->domain, addr->domain) == 0) &&
- same_strings(next->p.errors_address, addr->p.errors_address) &&
- same_headers(next->p.extra_headers, addr->p.extra_headers) &&
- same_strings(next->p.remove_headers, addr->p.remove_headers) &&
+ same_strings(next->prop.errors_address, addr->prop.errors_address) &&
+ same_headers(next->prop.extra_headers, addr->prop.extra_headers) &&
+ same_strings(next->prop.remove_headers, addr->prop.remove_headers) &&
same_ugid(tp, addr, next) &&
((addr->host_list == NULL && next->host_list == NULL) ||
(addr->host_list != NULL && next->host_list != NULL &&
@@ -3950,13 +3950,13 @@ for (delivery_count = 0; addr_remote != NULL; delivery_count++)
if ( (multi_domain || Ustrcmp(next->domain, addr->domain) == 0)
&& tp == next->transport
&& same_hosts(next->host_list, addr->host_list)
- && same_strings(next->p.errors_address, addr->p.errors_address)
- && same_headers(next->p.extra_headers, addr->p.extra_headers)
+ && same_strings(next->prop.errors_address, addr->prop.errors_address)
+ && same_headers(next->prop.extra_headers, addr->prop.extra_headers)
&& same_ugid(tp, next, addr)
- && ( next->p.remove_headers == addr->p.remove_headers
- || ( next->p.remove_headers != NULL
- && addr->p.remove_headers != NULL
- && Ustrcmp(next->p.remove_headers, addr->p.remove_headers) == 0
+ && ( next->prop.remove_headers == addr->prop.remove_headers
+ || ( next->prop.remove_headers
+ && addr->prop.remove_headers
+ && Ustrcmp(next->prop.remove_headers, addr->prop.remove_headers) == 0
) )
&& ( !multi_domain
|| ( (
@@ -4000,11 +4000,11 @@ for (delivery_count = 0; addr_remote != NULL; delivery_count++)
/* Compute the return path, expanding a new one if required. The old one
must be set first, as it might be referred to in the expansion. */
- if(addr->p.errors_address != NULL)
- return_path = addr->p.errors_address;
+ if(addr->prop.errors_address != NULL)
+ return_path = addr->prop.errors_address;
#ifdef EXPERIMENTAL_SRS
- else if(addr->p.srs_sender != NULL)
- return_path = addr->p.srs_sender;
+ else if(addr->prop.srs_sender != NULL)
+ return_path = addr->prop.srs_sender;
#endif
else
return_path = sender_address;
@@ -5593,9 +5593,9 @@ if (process_recipients != RECIP_IGNORE)
{
recipient_item *r = recipients_list + i;
address_item *new = deliver_make_addr(r->address, FALSE);
- new->p.errors_address = r->errors_to;
+ new->prop.errors_address = r->errors_to;
#ifdef EXPERIMENTAL_INTERNATIONAL
- new->p.utf8 = message_smtputf8;
+ new->prop.utf8 = message_smtputf8;
DEBUG(D_deliver) debug_printf("utf8: %c\n", message_smtputf8 ? 'T':'F');
#endif
@@ -6193,8 +6193,8 @@ while (addr_new != NULL) /* Loop until all addresses dealt with */
/* Just in case some router parameter refers to it. */
- return_path = (addr->p.errors_address != NULL)?
- addr->p.errors_address : sender_address;
+ return_path = (addr->prop.errors_address != NULL)?
+ addr->prop.errors_address : sender_address;
/* If a router defers an address, add a retry item. Whether or not to
use the local part in the key is a property of the router. */
@@ -6264,8 +6264,8 @@ while (addr_new != NULL) /* Loop until all addresses dealt with */
if (addr_remote == addr &&
addr->router->same_domain_copy_routing &&
- addr->p.extra_headers == NULL &&
- addr->p.remove_headers == NULL &&
+ addr->prop.extra_headers == NULL &&
+ addr->prop.remove_headers == NULL &&
old_domain == addr->domain)
{
address_item **chain = &addr_route;
@@ -6292,7 +6292,7 @@ while (addr_new != NULL) /* Loop until all addresses dealt with */
addr2->transport = addr->transport;
addr2->host_list = addr->host_list;
addr2->fallback_hosts = addr->fallback_hosts;
- addr2->p.errors_address = addr->p.errors_address;
+ addr2->prop.errors_address = addr->prop.errors_address;
copyflag(addr2, addr, af_hide_child | af_local_host_removed);
DEBUG(D_deliver|D_route)
@@ -6863,7 +6863,7 @@ while (addr_failed != NULL)
If neither of these cases obtains, something has gone wrong. Log the
incident, but then ignore the error. */
- if (sender_address[0] == 0 && addr_failed->p.errors_address == NULL)
+ if (sender_address[0] == 0 && addr_failed->prop.errors_address == NULL)
{
if ( !testflag(addr_failed, af_retry_timedout)
&& !testflag(addr_failed, af_ignore_error))
@@ -6907,8 +6907,8 @@ while (addr_failed != NULL)
else
{
- bounce_recipient = addr_failed->p.errors_address
- ? addr_failed->p.errors_address : sender_address;
+ bounce_recipient = addr_failed->prop.errors_address
+ ? addr_failed->prop.errors_address : sender_address;
/* Make a subprocess to send a message */
@@ -6943,8 +6943,8 @@ while (addr_failed != NULL)
paddr = &addr_failed;
for (addr = addr_failed; addr != NULL; addr = *paddr)
- if (Ustrcmp(bounce_recipient, addr->p.errors_address
- ? addr->p.errors_address : sender_address) == 0)
+ if (Ustrcmp(bounce_recipient, addr->prop.errors_address
+ ? addr->prop.errors_address : sender_address) == 0)
{ /* The same - dechain */
*paddr = addr->next;
*pmsgchain = addr;
@@ -7455,7 +7455,7 @@ else if (addr_defer != (address_item *)(+1))
DEBUG(D_deliver) debug_printf("one_time: adding %s in place of %s\n",
otaddr->address, otaddr->parent->address);
receive_add_recipient(otaddr->address, t);
- recipients_list[recipients_count-1].errors_to = otaddr->p.errors_address;
+ recipients_list[recipients_count-1].errors_to = otaddr->prop.errors_address;
tree_add_nonrecipient(otaddr->parent->address);
update_spool = TRUE;
}
@@ -7467,7 +7467,7 @@ else if (addr_defer != (address_item *)(+1))
if (sender_address[0] != 0)
{
- if (addr->p.errors_address == NULL)
+ if (addr->prop.errors_address == NULL)
{
if (Ustrstr(recipients, sender_address) == NULL)
recipients = string_sprintf("%s%s%s", recipients,
@@ -7475,9 +7475,9 @@ else if (addr_defer != (address_item *)(+1))
}
else
{
- if (Ustrstr(recipients, addr->p.errors_address) == NULL)
+ if (Ustrstr(recipients, addr->prop.errors_address) == NULL)
recipients = string_sprintf("%s%s%s", recipients,
- (recipients[0] == 0)? "" : ",", addr->p.errors_address);
+ (recipients[0] == 0)? "" : ",", addr->prop.errors_address);
}
}
}
diff --git a/src/src/filter.c b/src/src/filter.c
index 9ee7acb..a28e5f9 100644
--- a/src/src/filter.c
+++ b/src/src/filter.c
@@ -1821,7 +1821,7 @@ while (commands != NULL)
set in a system filter and to the local address in user filters. */
addr = deliver_make_addr(expargs[0], TRUE); /* TRUE => copy s */
- addr->p.errors_address = (s == NULL)?
+ addr->prop.errors_address = (s == NULL)?
s : string_copy(s); /* Default is NULL */
if (commands->noerror) setflag(addr, af_ignore_error);
addr->next = *generated;
diff --git a/src/src/rda.c b/src/src/rda.c
index 99c5513..3359275 100644
--- a/src/src/rda.c
+++ b/src/src/rda.c
@@ -723,7 +723,7 @@ if ((pid = fork()) == 0)
!= sizeof(addr->mode)
|| write(fd, &(addr->flags), sizeof(addr->flags))
!= sizeof(addr->flags)
- || rda_write_string(fd, addr->p.errors_address) != 0
+ || rda_write_string(fd, addr->prop.errors_address) != 0
)
goto bad;
@@ -892,7 +892,7 @@ if (yield == FF_DELIVERED || yield == FF_NOTDELIVERED ||
if (read(fd, &(addr->mode), sizeof(addr->mode)) != sizeof(addr->mode) ||
read(fd, &(addr->flags), sizeof(addr->flags)) != sizeof(addr->flags) ||
- !rda_read_string(fd, &(addr->p.errors_address))) goto DISASTER;
+ !rda_read_string(fd, &(addr->prop.errors_address))) goto DISASTER;
/* Next comes a possible setting for $thisaddress and any numerical
variables for pipe expansion, terminated by a NULL string. The maximum
diff --git a/src/src/route.c b/src/src/route.c
index 764f0a1..ec18880 100644
--- a/src/src/route.c
+++ b/src/src/route.c
@@ -1342,8 +1342,8 @@ from the original address' parent, if present, otherwise unset. */
*parent = *addr;
parent->child_count = 2;
-parent->p.errors_address =
- (addr->parent == NULL)? NULL : addr->parent->p.errors_address;
+parent->prop.errors_address =
+ (addr->parent == NULL)? NULL : addr->parent->prop.errors_address;
/* The routed address gets a new parent. */
@@ -1354,12 +1354,12 @@ was set from the original parent (or to NULL) - see above. We do NOT want to
take the errors address from the unseen router. */
new->parent = parent;
-new->p.errors_address = parent->p.errors_address;
+new->prop.errors_address = parent->prop.errors_address;
/* Copy the propagated flags and address_data from the original. */
copyflag(new, addr, af_propagate);
-new->p.address_data = addr->p.address_data;
+new->prop.address_data = addr->prop.address_data;
new->dsn_flags = addr->dsn_flags;
new->dsn_orcpt = addr->dsn_orcpt;
@@ -1645,7 +1645,7 @@ for (r = (addr->start_router == NULL)? routers : addr->start_router;
goto ROUTE_EXIT;
}
}
- addr->p.address_data = deliver_address_data;
+ addr->prop.address_data = deliver_address_data;
}
/* We are finally cleared for take-off with this router. Clear the the flag
@@ -1891,8 +1891,8 @@ DEBUG(D_route)
debug_printf(" transport: %s\n", (addr->transport == NULL)?
US"<none>" : addr->transport->name);
- if (addr->p.errors_address != NULL)
- debug_printf(" errors to %s\n", addr->p.errors_address);
+ if (addr->prop.errors_address != NULL)
+ debug_printf(" errors to %s\n", addr->prop.errors_address);
for (h = addr->host_list; h != NULL; h = h->next)
{
diff --git a/src/src/routers/accept.c b/src/src/routers/accept.c
index 8049eaf..ef2a285 100644
--- a/src/src/routers/accept.c
+++ b/src/src/routers/accept.c
@@ -118,9 +118,9 @@ if (!rf_get_transport(rblock->transport_name, &(rblock->transport),
addr, rblock->name, NULL)) return DEFER;
addr->transport = rblock->transport;
-addr->p.errors_address = errors_to;
-addr->p.extra_headers = extra_headers;
-addr->p.remove_headers = remove_headers;
+addr->prop.errors_address = errors_to;
+addr->prop.extra_headers = extra_headers;
+addr->prop.remove_headers = remove_headers;
return rf_queue_add(addr, addr_local, addr_remote, rblock, pw)? OK : DEFER;
}
diff --git a/src/src/routers/dnslookup.c b/src/src/routers/dnslookup.c
index 8ef4e0d..650e56d 100644
--- a/src/src/routers/dnslookup.c
+++ b/src/src/routers/dnslookup.c
@@ -421,13 +421,13 @@ else if (ob->check_secondary_mx && !testflag(addr, af_local_host_removed))
/* Set up the errors address, if any. */
-rc = rf_get_errors_address(addr, rblock, verify, &(addr->p.errors_address));
+rc = rf_get_errors_address(addr, rblock, verify, &addr->prop.errors_address);
if (rc != OK) return rc;
/* Set up the additional and removeable headers for this address. */
-rc = rf_get_munge_headers(addr, rblock, &(addr->p.extra_headers),
- &(addr->p.remove_headers));
+rc = rf_get_munge_headers(addr, rblock, &addr->prop.extra_headers,
+ &addr->prop.remove_headers);
if (rc != OK) return rc;
/* Get store in which to preserve the original host item, chained on
diff --git a/src/src/routers/ipliteral.c b/src/src/routers/ipliteral.c
index e9c1865..f9a8c0c 100644
--- a/src/src/routers/ipliteral.c
+++ b/src/src/routers/ipliteral.c
@@ -165,13 +165,13 @@ addr->host_list = h;
/* Set up the errors address, if any. */
-rc = rf_get_errors_address(addr, rblock, verify, &(addr->p.errors_address));
+rc = rf_get_errors_address(addr, rblock, verify, &addr->prop.errors_address);
if (rc != OK) return rc;
/* Set up the additional and removeable headers for this address. */
-rc = rf_get_munge_headers(addr, rblock, &(addr->p.extra_headers),
- &(addr->p.remove_headers));
+rc = rf_get_munge_headers(addr, rblock, &addr->prop.extra_headers,
+ &addr->prop.remove_headers);
if (rc != OK) return rc;
/* Fill in the transport, queue the address for local or remote delivery, and
diff --git a/src/src/routers/iplookup.c b/src/src/routers/iplookup.c
index d48cfb9..33329f8 100644
--- a/src/src/routers/iplookup.c
+++ b/src/src/routers/iplookup.c
@@ -377,7 +377,7 @@ new_addr = deliver_make_addr(reroute, TRUE);
new_addr->parent = addr;
copyflag(new_addr, addr, af_propagate);
-new_addr->p = addr->p;
+new_addr->prop = addr->prop;
if (addr->child_count == SHRT_MAX)
log_write(0, LOG_MAIN|LOG_PANIC_DIE, "%s router generated more than %d "
@@ -389,11 +389,11 @@ new_addr->next = *addr_new;
/* Set up the errors address, if any, and the additional and removeable headers
for this new address. */
-rc = rf_get_errors_address(addr, rblock, verify, &(new_addr->p.errors_address));
+rc = rf_get_errors_address(addr, rblock, verify, &new_addr->prop.errors_address);
if (rc != OK) return rc;
-rc = rf_get_munge_headers(addr, rblock, &(new_addr->p.extra_headers),
- &(new_addr->p.remove_headers));
+rc = rf_get_munge_headers(addr, rblock, &new_addr->prop.extra_headers,
+ &new_addr->prop.remove_headers);
if (rc != OK) return rc;
return OK;
diff --git a/src/src/routers/manualroute.c b/src/src/routers/manualroute.c
index 7cbe5db..add55de 100644
--- a/src/src/routers/manualroute.c
+++ b/src/src/routers/manualroute.c
@@ -358,13 +358,13 @@ while (*options != 0)
/* Set up the errors address, if any. */
-rc = rf_get_errors_address(addr, rblock, verify, &(addr->p.errors_address));
+rc = rf_get_errors_address(addr, rblock, verify, &addr->prop.errors_address);
if (rc != OK) return rc;
/* Set up the additional and removeable headers for this address. */
-rc = rf_get_munge_headers(addr, rblock, &(addr->p.extra_headers),
- &(addr->p.remove_headers));
+rc = rf_get_munge_headers(addr, rblock, &addr->prop.extra_headers,
+ &addr->prop.remove_headers);
if (rc != OK) return rc;
/* If an individual transport is not set, get the transport for this router, if
diff --git a/src/src/routers/queryprogram.c b/src/src/routers/queryprogram.c
index bf0f4c4..71f4915 100644
--- a/src/src/routers/queryprogram.c
+++ b/src/src/routers/queryprogram.c
@@ -114,7 +114,7 @@ while (generated != NULL)
next->parent = addr;
orflag(next, addr, af_propagate);
- next->p = *addr_prop;
+ next->prop = *addr_prop;
next->start_router = rblock->redirect_router;
next->next = *addr_new;
@@ -216,11 +216,11 @@ errors address and extra header stuff. */
addr_prop.address_data = deliver_address_data;
-rc = rf_get_errors_address(addr, rblock, verify, &(addr_prop.errors_address));
+rc = rf_get_errors_address(addr, rblock, verify, &addr_prop.errors_address);
if (rc != OK) return rc;
-rc = rf_get_munge_headers(addr, rblock, &(addr_prop.extra_headers),
- &(addr_prop.remove_headers));
+rc = rf_get_munge_headers(addr, rblock, &addr_prop.extra_headers,
+ &addr_prop.remove_headers);
if (rc != OK) return rc;
/* Get the fixed or expanded uid under which the command is to run
@@ -526,7 +526,7 @@ lookup_value = NULL;
/* Put the errors address, extra headers, and address_data into this address */
-addr->p = addr_prop;
+addr->prop = addr_prop;
/* Queue the address for local or remote delivery. */
diff --git a/src/src/routers/redirect.c b/src/src/routers/redirect.c
index 0189d23..0d8c43d 100644
--- a/src/src/routers/redirect.c
+++ b/src/src/routers/redirect.c
@@ -277,11 +277,11 @@ sort_errors_and_headers(router_instance *rblock, address_item *addr,
int verify, address_item_propagated *addr_prop)
{
int frc = rf_get_errors_address(addr, rblock, verify,
- &(addr_prop->errors_address));
+ &addr_prop->errors_address);
if (frc != OK) return frc;
-addr->p.errors_address = addr_prop->errors_address;
-return rf_get_munge_headers(addr, rblock, &(addr_prop->extra_headers),
- &(addr_prop->remove_headers));
+addr->prop.errors_address = addr_prop->errors_address;
+return rf_get_munge_headers(addr, rblock, &addr_prop->extra_headers,
+ &addr_prop->remove_headers);
}
@@ -329,7 +329,7 @@ while (generated != NULL)
{
address_item *parent;
address_item *next = generated;
- uschar *errors_address = next->p.errors_address;
+ uschar *errors_address = next->prop.errors_address;
generated = next->next;
next->parent = addr;
@@ -378,8 +378,8 @@ while (generated != NULL)
If so, we must take care to re-instate it when we copy in the propagated
data so that it overrides any errors_to setting on the router. */
- next->p = *addr_prop;
- if (errors_address != NULL) next->p.errors_address = errors_address;
+ next->prop = *addr_prop;
+ if (errors_address != NULL) next->prop.errors_address = errors_address;
/* For pipes, files, and autoreplies, record this router as handling them,
because they don't go through the routing process again. Then set up uid,
@@ -457,7 +457,7 @@ while (generated != NULL)
rblock->name,
next->address,
testflag(next, af_pfr)? "pipe, file, or autoreply\n " : "",
- next->p.errors_address,
+ next->prop.errors_address,
(next->transport == NULL)? US"NULL" : next->transport->name);
if (testflag(next, af_uid_set))
@@ -891,7 +891,7 @@ else
data that propagates. */
copyflag(next, addr, af_propagate);
- next->p = addr_prop;
+ next->prop = addr_prop;
DEBUG(D_route) debug_printf("%s router autogenerated %s\n%s%s%s",
rblock->name,
diff --git a/src/src/routers/rf_change_domain.c b/src/src/routers/rf_change_domain.c
index e891b84..049e6ab 100644
--- a/src/src/routers/rf_change_domain.c
+++ b/src/src/routers/rf_change_domain.c
@@ -52,7 +52,7 @@ domain cache. Then copy over the propagating fields from the parent. Then set
up the new fields. */
*addr = address_defaults;
-addr->p = parent->p;
+addr->prop = parent->prop;
addr->address = address;
addr->unique = string_copy(address);
diff --git a/src/src/routers/rf_get_errors_address.c b/src/src/routers/rf_get_errors_address.c
index a0ea9f2..f520594 100644
--- a/src/src/routers/rf_get_errors_address.c
+++ b/src/src/routers/rf_get_errors_address.c
@@ -38,7 +38,7 @@ rf_get_errors_address(address_item *addr, router_instance *rblock,
{
uschar *s;
-*errors_to = addr->p.errors_address;
+*errors_to = addr->prop.errors_address;
if (rblock->errors_to == NULL) return OK;
s = expand_string(rblock->errors_to);
diff --git a/src/src/routers/rf_get_munge_headers.c b/src/src/routers/rf_get_munge_headers.c
index a6c039e..d4af84f 100644
--- a/src/src/routers/rf_get_munge_headers.c
+++ b/src/src/routers/rf_get_munge_headers.c
@@ -32,7 +32,7 @@ rf_get_munge_headers(address_item *addr, router_instance *rblock,
header_line **extra_headers, uschar **remove_headers)
{
/* Default is to retain existing headers */
-*extra_headers = addr->p.extra_headers;
+*extra_headers = addr->prop.extra_headers;
if (rblock->extra_headers)
{
@@ -82,7 +82,7 @@ if (rblock->extra_headers)
}
/* Default is to retain existing removes */
-*remove_headers = addr->p.remove_headers;
+*remove_headers = addr->prop.remove_headers;
/* Expand items from colon-sep list separately, then build new list */
if (rblock->remove_headers)
diff --git a/src/src/routers/rf_queue_add.c b/src/src/routers/rf_queue_add.c
index 06cdb6c..273780f 100644
--- a/src/src/routers/rf_queue_add.c
+++ b/src/src/routers/rf_queue_add.c
@@ -36,8 +36,8 @@ BOOL
rf_queue_add(address_item *addr, address_item **paddr_local,
address_item **paddr_remote, router_instance *rblock, struct passwd *pw)
{
-addr->p.domain_data = deliver_domain_data; /* Save these values for */
-addr->p.localpart_data = deliver_localpart_data; /* use in the transport */
+addr->prop.domain_data = deliver_domain_data; /* Save these values for */
+addr->prop.localpart_data = deliver_localpart_data; /* use in the transport */
/* Handle a local transport */
@@ -95,9 +95,9 @@ DEBUG(D_route)
debug_printf("queued for %s transport: local_part = %s\ndomain = %s\n"
" errors_to=%s\n",
(addr->transport == NULL)? US"<unset>" : addr->transport->name,
- addr->local_part, addr->domain, addr->p.errors_address);
- debug_printf(" domain_data=%s localpart_data=%s\n", addr->p.domain_data,
- addr->p.localpart_data);
+ addr->local_part, addr->domain, addr->prop.errors_address);
+ debug_printf(" domain_data=%s localpart_data=%s\n", addr->prop.domain_data,
+ addr->prop.localpart_data);
}
return TRUE;
diff --git a/src/src/sieve.c b/src/src/sieve.c
index 262367e..7653993 100644
--- a/src/src/sieve.c
+++ b/src/src/sieve.c
@@ -1072,7 +1072,7 @@ if (file)
setflag(new_addr, af_pfr|af_file);
new_addr->mode = 0;
}
-new_addr->p.errors_address = NULL;
+new_addr->prop.errors_address = NULL;
new_addr->next = *generated;
*generated = new_addr;
}
diff --git a/src/src/structs.h b/src/src/structs.h
index df19cfa..99d65cf 100644
--- a/src/src/structs.h
+++ b/src/src/structs.h
@@ -584,7 +584,7 @@ typedef struct address_item {
/* ( also */
/* ( contains verify rc in sender verify cache */
short int transport_return; /* result of delivery attempt */
- address_item_propagated p; /* fields that are propagated to children */
+ address_item_propagated prop; /* fields that are propagated to children */
} address_item;
/* The table of header names consists of items of this type */
diff --git a/src/src/transport.c b/src/src/transport.c
index c768736..78d9d51 100644
--- a/src/src/transport.c
+++ b/src/src/transport.c
@@ -628,7 +628,7 @@ that means they were rewritten, or are a record of envelope rewriting, or
were removed (e.g. Bcc). If remove_headers is not null, skip any headers that
match any entries therein. It is a colon-sep list; expand the items
separately and squash any empty ones.
-Then check addr->p.remove_headers too, provided that addr is not NULL. */
+Then check addr->prop.remove_headers too, provided that addr is not NULL. */
for (h = header_list; h != NULL; h = h->next) if (h->type != htype_old)
{
@@ -637,7 +637,7 @@ for (h = header_list; h != NULL; h = h->next) if (h->type != htype_old)
BOOL include_header = TRUE;
- for (i = 0; i < 2; i++) /* For remove_headers && addr->p.remove_headers */
+ for (i = 0; i < 2; i++) /* For remove_headers && addr->prop.remove_headers */
{
if (list)
{
@@ -661,7 +661,7 @@ for (h = header_list; h != NULL; h = h->next) if (h->type != htype_old)
}
if (s != NULL) { include_header = FALSE; break; }
}
- if (addr != NULL) list = addr->p.remove_headers;
+ if (addr != NULL) list = addr->prop.remove_headers;
}
/* If this header is to be output, try to rewrite it if there are rewriting
@@ -709,7 +709,7 @@ Headers added to an address by a router are guaranteed to end with a newline.
if (addr)
{
int i;
- header_line *hprev = addr->p.extra_headers;
+ header_line *hprev = addr->prop.extra_headers;
header_line *hnext;
for (i = 0; i < 2; i++)
{
@@ -914,7 +914,7 @@ if ((options & topt_no_headers) == 0)
/* Then the message's headers. Don't write any that are flagged as "old";
that means they were rewritten, or are a record of envelope rewriting, or
were removed (e.g. Bcc). If remove_headers is not null, skip any headers that
- match any entries therein. Then check addr->p.remove_headers too, provided that
+ match any entries therein. Then check addr->prop.remove_headers too, provided that
addr is not NULL. */
if (!transport_headers_send(addr, fd, add_headers, remove_headers, &write_chunk,
use_crlf, rewrite_rules, rewrite_existflags))
diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c
index 92df8fa..0ca6b4e 100644
--- a/src/src/transports/smtp.c
+++ b/src/src/transports/smtp.c
@@ -1630,7 +1630,7 @@ goto SEND_QUIT;
#ifdef EXPERIMENTAL_INTERNATIONAL
utf8_offered = esmtp
- && addrlist->p.utf8
+ && addrlist->prop.utf8
&& pcre_exec(regex_UTF8, NULL, CS buffer, Ustrlen(buffer), 0,
PCRE_EOPT, NULL, 0) >= 0;
#endif
@@ -1850,7 +1850,7 @@ if (continue_hostname == NULL
#ifdef EXPERIMENTAL_INTERNATIONAL
utf8_offered = esmtp
- && addrlist->p.utf8
+ && addrlist->prop.utf8
&& pcre_exec(regex_UTF8, NULL, CS buffer, Ustrlen(buffer), 0,
PCRE_EOPT, NULL, 0) >= 0;
#endif
@@ -1883,7 +1883,7 @@ setting_up = FALSE;
#ifdef EXPERIMENTAL_INTERNATIONAL
/* If this is an international message we need the host to speak SMTPUTF8 */
-if (addrlist->p.utf8 && !utf8_offered)
+if (addrlist->prop.utf8 && !utf8_offered)
{
errno = ERRNO_UTF8_FWD;
goto RESPONSE_FAILED;
@@ -1967,7 +1967,7 @@ if (prdr_offered)
#endif
#ifdef EXPERIMENTAL_INTERNATIONAL
-if (addrlist->p.utf8)
+if (addrlist->prop.utf8)
sprintf(CS p, " SMTPUTF8"), p += 9;
#endif
diff --git a/src/src/verify.c b/src/src/verify.c
index e39b55d..4e9b563 100644
--- a/src/src/verify.c
+++ b/src/src/verify.c
@@ -921,7 +921,7 @@ can do it there for the non-rcpt-verify case. For this we keep an addresscount.
}
#ifdef EXPERIMENTAL_INTERNATIONAL
- else if ( addr->p.utf8
+ else if ( addr->prop.utf8
&& !( esmtp
&& ( regex_UTF8
|| ( (regex_UTF8 = regex_must_compile(
@@ -958,7 +958,7 @@ can do it there for the non-rcpt-verify case. For this we keep an addresscount.
/* Send the MAIL command */
(smtp_write_command(&outblock, FALSE,
#ifdef EXPERIMENTAL_INTERNATIONAL
- addr->p.utf8
+ addr->prop.utf8
? "MAIL FROM:<%s>%s SMTPUTF8\r\n"
:
#endif
@@ -1049,7 +1049,7 @@ can do it there for the non-rcpt-verify case. For this we keep an addresscount.
smtp_write_command(&outblock, FALSE,
#ifdef EXPERIMENTAL_INTERNATIONAL
- addr->p.utf8
+ addr->prop.utf8
? "MAIL FROM:<%s> SMTPUTF8\r\n"
:
#endif
@@ -1662,7 +1662,7 @@ if (addr != vaddr)
vaddr->user_message = addr->user_message;
vaddr->basic_errno = addr->basic_errno;
vaddr->more_errno = addr->more_errno;
- vaddr->p.address_data = addr->p.address_data;
+ vaddr->prop.address_data = addr->prop.address_data;
copyflag(vaddr, addr, af_pass_message);
}
return yield;
@@ -1923,8 +1923,8 @@ while (addr_new != NULL)
/* Just in case some router parameter refers to it. */
- return_path = (addr->p.errors_address != NULL)?
- addr->p.errors_address : sender_address;
+ return_path = (addr->prop.errors_address != NULL)?
+ addr->prop.errors_address : sender_address;
/* Split the address into domain and local part, handling the %-hack if
necessary, and then route it. While routing a sender address, set
@@ -2217,7 +2217,7 @@ while (addr_new != NULL)
/* If we have carried on to verify a child address, we want the value
of $address_data to be that of the child */
- vaddr->p.address_data = addr->p.address_data;
+ vaddr->prop.address_data = addr->prop.address_data;
yield = OK;
goto out;
}
@@ -2249,8 +2249,8 @@ for (addr_list = addr_local, i = 0; i < 2; addr_list = addr_remote, i++)
fprintf(f, "%s", CS addr->address);
#ifdef EXPERIMENTAL_SRS
- if(addr->p.srs_sender)
- fprintf(f, " [srs = %s]", addr->p.srs_sender);
+ if(addr->prop.srs_sender)
+ fprintf(f, " [srs = %s]", addr->prop.srs_sender);
#endif
/* If the address is a duplicate, show something about it. */