ph10 2005/09/12 16:09:55 BST
Modified files:
exim-doc/doc-txt ChangeLog
exim-src/src route.c structs.h
exim-src/src/routers accept.c accept.h dnslookup.c dnslookup.h
ipliteral.c ipliteral.h iplookup.c
iplookup.h manualroute.c manualroute.h
queryprogram.c queryprogram.h redirect.c
redirect.h rf_get_errors_address.c
Log:
Disable widen_domains when verifying senders, unless rewrite_headers is
off.
Revision Changes Path
1.224 +3 -0 exim/exim-doc/doc-txt/ChangeLog
1.6 +2 -2 exim/exim-src/src/route.c
1.3 +1 -1 exim/exim-src/src/routers/accept.c
1.3 +1 -1 exim/exim-src/src/routers/accept.h
1.5 +13 -3 exim/exim-src/src/routers/dnslookup.c
1.3 +1 -1 exim/exim-src/src/routers/dnslookup.h
1.5 +1 -1 exim/exim-src/src/routers/ipliteral.c
1.3 +1 -1 exim/exim-src/src/routers/ipliteral.h
1.4 +1 -1 exim/exim-src/src/routers/iplookup.c
1.3 +1 -1 exim/exim-src/src/routers/iplookup.h
1.3 +3 -3 exim/exim-src/src/routers/manualroute.c
1.3 +1 -1 exim/exim-src/src/routers/manualroute.h
1.6 +1 -1 exim/exim-src/src/routers/queryprogram.c
1.3 +1 -1 exim/exim-src/src/routers/queryprogram.h
1.14 +13 -12 exim/exim-src/src/routers/redirect.c
1.6 +1 -1 exim/exim-src/src/routers/redirect.h
1.4 +3 -3 exim/exim-src/src/routers/rf_get_errors_address.c
1.7 +1 -1 exim/exim-src/src/structs.h
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.223
retrieving revision 1.224
diff -u -r1.223 -r1.224
--- ChangeLog 12 Sep 2005 14:03:42 -0000 1.223
+++ ChangeLog 12 Sep 2005 15:09:55 -0000 1.224
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.223 2005/09/12 14:03:42 ph10 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.224 2005/09/12 15:09:55 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -169,6 +169,9 @@
PH/42 (But a TF fix): In a domain list, Exim incorrectly matched @[] if the IP
address in a domain literal was a prefix of an interface address.
+
+PH/43 (Again a TF fix): In the dnslookup router, do not apply widen_domains
+ when verifying a sender address, unless rewrite_headers is false.
Exim version 4.52
Index: route.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/route.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- route.c 15 Mar 2005 11:37:21 -0000 1.5
+++ route.c 12 Sep 2005 15:09:55 -0000 1.6
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/route.c,v 1.5 2005/03/15 11:37:21 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/route.c,v 1.6 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -1697,8 +1697,8 @@
HDEBUG(D_route) debug_printf("calling %s router\n", r->name);
- yield = (r->info->code)(r, addr, pw, verify != v_none, paddr_local,
- paddr_remote, addr_new, addr_succeed);
+ yield = (r->info->code)(r, addr, pw, verify, paddr_local, paddr_remote,
+ addr_new, addr_succeed);
if (yield == FAIL)
{
Index: structs.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/structs.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- structs.h 24 May 2005 08:15:02 -0000 1.6
+++ structs.h 12 Sep 2005 15:09:55 -0000 1.7
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/structs.h,v 1.6 2005/05/24 08:15:02 tom Exp $ */
+/* $Cambridge: exim/exim-src/src/structs.h,v 1.7 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -307,7 +307,7 @@
router_instance *,
struct address_item *,
struct passwd *,
- BOOL,
+ int,
struct address_item **,
struct address_item **,
struct address_item **,
Index: accept.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/accept.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- accept.c 4 Jan 2005 10:00:44 -0000 1.2
+++ accept.c 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/accept.c,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/accept.c,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -81,7 +81,7 @@
router_instance *rblock, /* data for this instantiation */
address_item *addr, /* address we are working on */
struct passwd *pw, /* passwd entry after check_local_user */
- BOOL verify, /* TRUE when verifying */
+ int verify, /* v_none/v_recipient/v_sender/v_expn */
address_item **addr_local, /* add it to this if it's local */
address_item **addr_remote, /* add it to this if it's remote */
address_item **addr_new, /* put new addresses on here */
Index: accept.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/accept.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- accept.h 4 Jan 2005 10:00:44 -0000 1.2
+++ accept.h 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/accept.h,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/accept.h,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -25,7 +25,7 @@
/* The main and initialization entry points for the router */
extern int accept_router_entry(router_instance *, address_item *,
- struct passwd *, BOOL, address_item **, address_item **,
+ struct passwd *, int, address_item **, address_item **,
address_item **, address_item **);
extern void accept_router_init(router_instance *);
Index: dnslookup.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/dnslookup.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- dnslookup.c 17 Jun 2005 14:20:48 -0000 1.4
+++ dnslookup.c 12 Sep 2005 15:09:55 -0000 1.5
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/dnslookup.c,v 1.4 2005/06/17 14:20:48 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/dnslookup.c,v 1.5 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -128,7 +128,7 @@
router_instance *rblock, /* data for this instantiation */
address_item *addr, /* address we are working on */
struct passwd *pw, /* passwd entry after check_local_user */
- BOOL verify, /* TRUE when verifying */
+ int verify, /* v_none/v_recipient/v_sender/v_expn */
address_item **addr_local, /* add it to this if it's local */
address_item **addr_remote, /* add it to this if it's remote */
address_item **addr_new, /* put new addresses on here */
@@ -177,9 +177,19 @@
be something in the "ch" toplevel domain, but it also might be xxx.ch.xyz.com.
The choice of pre- or post-widening affects which takes precedence. If ever
somebody comes up with some kind of requirement for pre-widening, presumably
-with some conditions under which it is done, it can be selected here. */
+with some conditions under which it is done, it can be selected here.
-if (ob->widen_domains != NULL)
+The rewrite_headers option works only when routing an address at transport
+time, because the alterations to the headers are not persistent so must be
+worked out immediately before they are used. Sender addresses are routed for
+verification purposes, but never at transport time, so any header changes that
+you might expect as a result of sender domain widening do not occur. Therefore
+we do not perform widening when verifying sender addresses; however, widening
+sender addresses is OK if we do not have to rewrite the headers. The
+suppression of widening for sender addresses is silent because it is the normal
+desirable behaviour. */
+
+if (ob->widen_domains != NULL && (verify != v_sender || !ob->rewrite_headers))
{
listptr = ob->widen_domains;
widen = string_nextinlist(&listptr, &widen_sep, widen_buffer,
Index: dnslookup.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/dnslookup.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- dnslookup.h 4 Jan 2005 10:00:44 -0000 1.2
+++ dnslookup.h 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/dnslookup.h,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/dnslookup.h,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -33,7 +33,7 @@
/* The main and initialization entry points for the router */
extern int dnslookup_router_entry(router_instance *, address_item *,
- struct passwd *, BOOL, address_item **, address_item **,
+ struct passwd *, int, address_item **, address_item **,
address_item **, address_item **);
extern void dnslookup_router_init(router_instance *);
Index: ipliteral.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/ipliteral.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ipliteral.c 11 Jan 2005 15:51:03 -0000 1.4
+++ ipliteral.c 12 Sep 2005 15:09:55 -0000 1.5
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/ipliteral.c,v 1.4 2005/01/11 15:51:03 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/ipliteral.c,v 1.5 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -90,7 +90,7 @@
router_instance *rblock, /* data for this instantiation */
address_item *addr, /* address we are working on */
struct passwd *pw, /* passwd entry after check_local_user */
- BOOL verify, /* TRUE when verifying */
+ int verify, /* v_none/v_recipient/v_sender/v_expn */
address_item **addr_local, /* add it to this if it's local */
address_item **addr_remote, /* add it to this if it's remote */
address_item **addr_new, /* put new addresses on here */
Index: ipliteral.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/ipliteral.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ipliteral.h 4 Jan 2005 10:00:44 -0000 1.2
+++ ipliteral.h 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/ipliteral.h,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/ipliteral.h,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -28,7 +28,7 @@
/* The main and initialization entry points for the router */
extern int ipliteral_router_entry(router_instance *, address_item *,
- struct passwd *, BOOL, address_item **, address_item **,
+ struct passwd *, int, address_item **, address_item **,
address_item **, address_item **);
extern void ipliteral_router_init(router_instance *);
Index: iplookup.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/iplookup.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- iplookup.c 27 Jun 2005 14:29:44 -0000 1.3
+++ iplookup.c 12 Sep 2005 15:09:55 -0000 1.4
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/iplookup.c,v 1.3 2005/06/27 14:29:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/iplookup.c,v 1.4 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -137,7 +137,7 @@
router_instance *rblock, /* data for this instantiation */
address_item *addr, /* address we are working on */
struct passwd *pw, /* passwd entry after check_local_user */
- BOOL verify, /* TRUE when verifying */
+ int verify, /* v_none/v_recipient/v_sender/v_expn */
address_item **addr_local, /* add it to this if it's local */
address_item **addr_remote, /* add it to this if it's remote */
address_item **addr_new, /* put new addresses on here */
Index: iplookup.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/iplookup.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- iplookup.h 4 Jan 2005 10:00:44 -0000 1.2
+++ iplookup.h 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/iplookup.h,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/iplookup.h,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -35,7 +35,7 @@
/* The main and initialization entry points for the router */
extern int iplookup_router_entry(router_instance *, address_item *,
- struct passwd *, BOOL, address_item **, address_item **,
+ struct passwd *, int, address_item **, address_item **,
address_item **, address_item **);
extern void iplookup_router_init(router_instance *);
Index: manualroute.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/manualroute.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- manualroute.c 4 Jan 2005 10:00:44 -0000 1.2
+++ manualroute.c 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/manualroute.c,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/manualroute.c,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -191,7 +191,7 @@
router_instance *rblock, /* data for this instantiation */
address_item *addr, /* address we are working on */
struct passwd *pw, /* passwd entry after check_local_user */
- BOOL verify, /* TRUE when verifying */
+ int verify, /* v_none/v_recipient/v_sender/v_expn */
address_item **addr_local, /* add it to this if it's local */
address_item **addr_remote, /* add it to this if it's remote */
address_item **addr_new, /* put new addresses on here */
@@ -386,7 +386,7 @@
if (hostlist[0] == 0)
{
- if (verify) goto ROUTED;
+ if (verify != v_none) goto ROUTED;
addr->message = string_sprintf("error in %s router: no host(s) specified "
"for domain %s", rblock->name, domain);
log_write(0, LOG_MAIN, "%s", addr->message);
@@ -405,7 +405,7 @@
defined for these hosts. It will be a remote one, as a local transport is
dealt with above. However, we don't need one if verifying only. */
-if (transport == NULL && !verify)
+if (transport == NULL && verify == v_none)
{
log_write(0, LOG_MAIN, "Error in %s router: no transport defined",
rblock->name);
Index: manualroute.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/manualroute.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- manualroute.h 4 Jan 2005 10:00:44 -0000 1.2
+++ manualroute.h 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/manualroute.h,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/manualroute.h,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -31,7 +31,7 @@
/* The main and initialization entry points for the router */
extern int manualroute_router_entry(router_instance *, address_item *,
- struct passwd *, BOOL, address_item **, address_item **,
+ struct passwd *, int, address_item **, address_item **,
address_item **, address_item **);
extern void manualroute_router_init(router_instance *);
Index: queryprogram.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/queryprogram.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- queryprogram.c 27 Jun 2005 14:29:44 -0000 1.5
+++ queryprogram.c 12 Sep 2005 15:09:55 -0000 1.6
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/queryprogram.c,v 1.5 2005/06/27 14:29:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/queryprogram.c,v 1.6 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -181,7 +181,7 @@
router_instance *rblock, /* data for this instantiation */
address_item *addr, /* address we are working on */
struct passwd *pw, /* passwd entry after check_local_user */
- BOOL verify, /* TRUE when verifying */
+ int verify, /* v_none/v_recipient/v_sender/v_expn */
address_item **addr_local, /* add it to this if it's local */
address_item **addr_remote, /* add it to this if it's remote */
address_item **addr_new, /* put new addresses on here */
Index: queryprogram.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/queryprogram.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- queryprogram.h 4 Jan 2005 10:00:44 -0000 1.2
+++ queryprogram.h 12 Sep 2005 15:09:55 -0000 1.3
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/queryprogram.h,v 1.2 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/queryprogram.h,v 1.3 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -34,7 +34,7 @@
/* The main and initialization entry points for the router */
extern int queryprogram_router_entry(router_instance *, address_item *,
- struct passwd *, BOOL, address_item **, address_item **,
+ struct passwd *, int, address_item **, address_item **,
address_item **, address_item **);
extern void queryprogram_router_init(router_instance *);
Index: redirect.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/redirect.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- redirect.c 27 Jun 2005 15:11:04 -0000 1.13
+++ redirect.c 12 Sep 2005 15:09:55 -0000 1.14
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/redirect.c,v 1.13 2005/06/27 15:11:04 tom Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/redirect.c,v 1.14 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -258,7 +258,7 @@
Arguments:
rblock the router control block
addr the address being routed
- verify true if verifying
+ verify v_none/v_recipient/v_sender/v_expn
addr_prop point to the propagated block, which is where the
new values are to be placed
@@ -268,7 +268,7 @@
static int
sort_errors_and_headers(router_instance *rblock, address_item *addr,
- BOOL verify, address_item_propagated *addr_prop)
+ int verify, address_item_propagated *addr_prop)
{
int frc = rf_get_errors_address(addr, rblock, verify,
&(addr_prop->errors_address));
@@ -499,7 +499,7 @@
router_instance *rblock, /* data for this instantiation */
address_item *addr, /* address we are working on */
struct passwd *pw, /* passwd entry after check_local_user */
- BOOL verify, /* TRUE when verifying */
+ int verify, /* v_none/v_recipient/v_sender/v_expn */
address_item **addr_local, /* add it to this if it's local */
address_item **addr_remote, /* add it to this if it's remote */
address_item **addr_new, /* put new addresses on here */
@@ -539,7 +539,7 @@
/* When verifying and testing addresses, the "logwrite" command in filters
must be bypassed. */
-if (!verify && !address_test_mode) options |= RDO_REALLOG;
+if (verify == v_none && !address_test_mode) options |= RDO_REALLOG;
/* Sort out the fixed or dynamic uid/gid. This uid is used (a) for reading the
file (and interpreting a filter) and (b) for running the transports for
@@ -618,7 +618,8 @@
/* Forward SRS */
/* No point in actually performing SRS if we are just verifying a recipient */
- if((srs_action & 1) && !verify && (sender_address ? sender_address[0] != 0 : FALSE))
+ if((srs_action & 1) && verify == v_none &&
+ (sender_address ? sender_address[0] != 0 : FALSE))
{
srs_orig_sender = sender_address;
@@ -801,12 +802,12 @@
if (eblock != NULL)
{
if (!moan_skipped_syntax_errors(
- rblock->name, /* For message content */
- eblock, /* Ditto */
- (verify || address_test_mode)?
- NULL : ob->syntax_errors_to, /* Who to mail */
- generated != NULL, /* True if not all failed */
- ob->syntax_errors_text)) /* Custom message */
+ rblock->name, /* For message content */
+ eblock, /* Ditto */
+ (verify != v_none || address_test_mode)?
+ NULL : ob->syntax_errors_to, /* Who to mail */
+ generated != NULL, /* True if not all failed */
+ ob->syntax_errors_text)) /* Custom message */
return DEFER;
if (filtertype != FILTER_FORWARD || generated == NULL)
@@ -835,7 +836,7 @@
if (frc == FF_DELIVERED)
{
- if (generated == NULL && !verify && !address_test_mode)
+ if (generated == NULL && verify == v_none && !address_test_mode)
{
log_write(0, LOG_MAIN, "=> %s <%s> R=%s", discarded, addr->address,
rblock->name);
Index: redirect.h
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/redirect.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- redirect.h 24 May 2005 08:15:02 -0000 1.5
+++ redirect.h 12 Sep 2005 15:09:55 -0000 1.6
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/redirect.h,v 1.5 2005/05/24 08:15:02 tom Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/redirect.h,v 1.6 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -69,7 +69,7 @@
/* The main and initialization entry points for the router */
extern int redirect_router_entry(router_instance *, address_item *,
- struct passwd *, BOOL, address_item **, address_item **,
+ struct passwd *, int, address_item **, address_item **,
address_item **, address_item **);
extern void redirect_router_init(router_instance *);
Index: rf_get_errors_address.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/rf_get_errors_address.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- rf_get_errors_address.c 4 Jan 2005 10:00:44 -0000 1.3
+++ rf_get_errors_address.c 12 Sep 2005 15:09:55 -0000 1.4
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/rf_get_errors_address.c,v 1.3 2005/01/04 10:00:44 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/rf_get_errors_address.c,v 1.4 2005/09/12 15:09:55 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -26,7 +26,7 @@
Arguments:
addr the input address
rblock the router instance
- verify TRUE when verifying
+ verify v_none / v_recipient / v_sender / v_expn
errors_to point the errors address here
Returns: OK if no problem
@@ -36,7 +36,7 @@
int
rf_get_errors_address(address_item *addr, router_instance *rblock,
- BOOL verify, uschar **errors_to)
+ int verify, uschar **errors_to)
{
uschar *s;
@@ -75,7 +75,7 @@
not be a sender address. We also need to save and restore the expansion values
associated with an address. */
-if (verify)
+if (verify != v_none)
{
*errors_to = s;
DEBUG(D_route)