[exim-cvs] cvs commit: exim/exim-doc/doc-txt ChangeLog exim…

Góra strony
Delete this message
Reply to this message
Autor: Philip Hazel
Data:  
Dla: exim-cvs
Temat: [exim-cvs] cvs commit: exim/exim-doc/doc-txt ChangeLog exim/exim-src/src/routers rf_get_errors_address.c
ph10 2005/09/13 11:35:52 BST

  Modified files:
    exim-doc/doc-txt     ChangeLog 
    exim-src/src/routers rf_get_errors_address.c 
  Log:
  Added comment about verifying errors_to as a recipient, not a sender.


  Revision  Changes    Path
  1.226     +3 -0      exim/exim-doc/doc-txt/ChangeLog
  1.5       +15 -2     exim/exim-src/src/routers/rf_get_errors_address.c


  Index: ChangeLog
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
  retrieving revision 1.225
  retrieving revision 1.226
  diff -u -r1.225 -r1.226
  --- ChangeLog    13 Sep 2005 09:54:14 -0000    1.225
  +++ ChangeLog    13 Sep 2005 10:35:52 -0000    1.226
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.225 2005/09/13 09:54:14 fanf2 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.226 2005/09/13 10:35:52 ph10 Exp $


Change log file for Exim from version 4.21
-------------------------------------------
@@ -172,6 +172,9 @@

   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.
  +
  +PH/44 Wrote a long comment about why errors_to addresses are verified as
  +      recipients, not senders.


   TF/01 Add missing LIBS=-lm to OS/Makefile-OpenBSD which was overlooked when
         the ratelimit ACL was added.


  Index: rf_get_errors_address.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/routers/rf_get_errors_address.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- rf_get_errors_address.c    12 Sep 2005 15:09:55 -0000    1.4
  +++ rf_get_errors_address.c    13 Sep 2005 10:35:52 -0000    1.5
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/routers/rf_get_errors_address.c,v 1.4 2005/09/12 15:09:55 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/routers/rf_get_errors_address.c,v 1.5 2005/09/13 10:35:52 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -100,10 +100,23 @@
       address_expansions_save[i++] = **p++;
     address_test_mode = FALSE;


  +  /* NOTE: the address is verified as a recipient, not a sender. This is
  +  perhaps confusing. It isn't immediately obvious what to do: we want to have
  +  some confidence that we can deliver to the address, in which case it will be
  +  a recipient, but on the other hand, it will be passed on in SMTP deliveries
  +  as a sender. However, I think on balance recipient is right because sender
  +  verification is really about the *incoming* sender of the message.
  +
  +  If this code is changed, note that you must set vopt_fake_sender instead of
  +  vopt_is_recipient, as otherwise sender_address may be altered because
  +  verify_address() thinks it is dealing with *the* sender of the message. */
  +
     DEBUG(D_route|D_verify)
       debug_printf("------ Verifying errors address %s ------\n", s);
  -  if (verify_address(snew, NULL, vopt_is_recipient | vopt_qualify, -1, -1, -1,
  -    NULL, NULL, NULL) == OK) *errors_to = snew->address;
  +  if (verify_address(snew, NULL,
  +      vopt_is_recipient /* vopt_fake_sender is the alternative */
  +      | vopt_qualify, -1, -1, -1, NULL, NULL, NULL) == OK)
  +    *errors_to = snew->address;
     DEBUG(D_route|D_verify)
       debug_printf("------ End verifying errors address %s ------\n", s);