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

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: exim-cvs
Subject: [exim-cvs] cvs commit: exim/exim-doc/doc-txt ChangeLog NewStuff OptionLists.txt exim/exim-src ACKNOWLEDGMENTS exim/exim-src/src filter.c macros.h exim/exim-src/src/routers redirect.c exim/exim-test/
ph10 2006/06/27 15:34:27 BST

  Modified files:
    exim-doc/doc-txt     ChangeLog NewStuff OptionLists.txt 
    exim-src             ACKNOWLEDGMENTS 
    exim-src/src         filter.c macros.h 
    exim-src/src/routers redirect.c 
    exim-test/confs      0037 
    exim-test/scripts/0000-Basic 0037 
    exim-test/stderr     0037 
    exim-test/stdout     0037 
  Added files:
    exim-test/aux-fixed  0037.f-7 
  Log:
  Implement filter_prepend_home option.


  Revision  Changes    Path
  1.359     +2 -0      exim/exim-doc/doc-txt/ChangeLog
  1.103     +10 -0     exim/exim-doc/doc-txt/NewStuff
  1.21      +2 -1      exim/exim-doc/doc-txt/OptionLists.txt
  1.47      +2 -1      exim/exim-src/ACKNOWLEDGMENTS
  1.10      +3 -2      exim/exim-src/src/filter.c
  1.25      +2 -1      exim/exim-src/src/macros.h
  1.16      +3 -1      exim/exim-src/src/routers/redirect.c
  1.1       +3 -0      exim/exim-test/aux-fixed/0037.f-7 (new)
  1.2       +12 -0     exim/exim-test/confs/0037
  1.2       +6 -0      exim/exim-test/scripts/0000-Basic/0037
  1.2       +8 -0      exim/exim-test/stderr/0037
  1.2       +4 -0      exim/exim-test/stdout/0037


  Index: ChangeLog
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
  retrieving revision 1.358
  retrieving revision 1.359
  diff -u -r1.358 -r1.359
  --- ChangeLog    27 Jun 2006 14:04:29 -0000    1.358
  +++ ChangeLog    27 Jun 2006 14:34:26 -0000    1.359
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.358 2006/06/27 14:04:29 ph10 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.359 2006/06/27 14:34:26 ph10 Exp $


   Change log file for Exim from version 4.21
   -------------------------------------------
  @@ -40,6 +40,8 @@
         without this. I don't know how relevant this is to other LDAP libraries.


PH/02 Add the verb name to the "unknown ACL verb" error.
+
+PH/03 Magnus Holmgren's patch for filter_prepend_home.


Exim version 4.62

  Index: NewStuff
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/NewStuff,v
  retrieving revision 1.102
  retrieving revision 1.103
  diff -u -r1.102 -r1.103
  --- NewStuff    27 Apr 2006 08:53:24 -0000    1.102
  +++ NewStuff    27 Jun 2006 14:34:26 -0000    1.103
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/NewStuff,v 1.102 2006/04/27 08:53:24 ph10 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/NewStuff,v 1.103 2006/06/27 14:34:26 ph10 Exp $


New Features in Exim
--------------------
@@ -7,6 +7,16 @@
but have not yet made it into the main manual (which is most conveniently
updated when there is a relatively large batch of changes). The doc/ChangeLog
file contains a listing of all changes, including bug fixes.
+
+Version 4.63
+------------
+
+1. There is a new Boolean option called filter_prepend_home for the redirect
+ router. It defaults true, for backward compatibility. If a "save" command in
+ an Exim filter has a relative path for its argument, and $home is defined,
+ it is automatically prepended to the relative path. This action can now be
+ prevented by setting filter_prepend_home false.
+

Version 4.62
------------

  Index: OptionLists.txt
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/OptionLists.txt,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- OptionLists.txt    27 Apr 2006 08:53:24 -0000    1.20
  +++ OptionLists.txt    27 Jun 2006 14:34:26 -0000    1.21
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/OptionLists.txt,v 1.20 2006/04/27 08:53:24 ph10 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/OptionLists.txt,v 1.21 2006/06/27 14:34:26 ph10 Exp $


   LISTS OF EXIM OPTIONS
   ---------------------
  @@ -11,7 +11,7 @@
     4. Those that can appear in the build time configuration for the Exim monitor
        (Local/eximon.conf).


-This file was last updated for Exim release 4.62.
+This file was last updated for Exim release 4.63.


   1. RUN TIME OPTIONS
  @@ -204,6 +204,7 @@
   file_must_exist                      boolean         false         appendfile
   file_optional                        boolean         false         autoreply
   file_transport                       string*         unset         redirect          4.00
  +filter_prepend_home                  boolean         true          redirect          4.63
   final_timeout                        time            10m           smtp
   finduser_retries                     integer         0             main
   forbid_blackhole                     boolean         false         redirect          4.00


  Index: ACKNOWLEDGMENTS
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/ACKNOWLEDGMENTS,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- ACKNOWLEDGMENTS    7 Jun 2006 15:06:26 -0000    1.46
  +++ ACKNOWLEDGMENTS    27 Jun 2006 14:34:26 -0000    1.47
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.46 2006/06/07 15:06:26 fanf2 Exp $
  +$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.47 2006/06/27 14:34:26 ph10 Exp $


EXIM ACKNOWLEDGEMENTS

@@ -20,7 +20,7 @@
Philip Hazel

Lists created: 20 November 2002
-Last updated: 04 April 2006
+Last updated: 27 June 2006


   THE OLD LIST
  @@ -157,6 +157,7 @@
   Sheldon Hearn             Suggested patch for smtp_accept_max_nonmail_hosts
   Bryan Henderson           Patch to use RM_COMMAND everywhere during building
   Jakob Hirsch              Patch for % operator
  +Magnus Holmgren           Patch for filter_prepend_home
   Kjetil Torgrim Homme      Patch for require_files problem on NFS file systems
   Tom Hughes                Suggested patch for $n bug in pipe command from filter
   Pierre Humblet            Continued Cygwin support


  Index: filter.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/filter.c,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- filter.c    7 Feb 2006 11:19:00 -0000    1.9
  +++ filter.c    27 Jun 2006 14:34:26 -0000    1.10
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/filter.c,v 1.9 2006/02/07 11:19:00 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/filter.c,v 1.10 2006/06/27 14:34:26 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -1834,11 +1834,12 @@


       else
         {
  +      if (s[0] != '/' && (filter_options & RDO_PREPEND_HOME) != 0 &&
  +          deliver_home != NULL && deliver_home[0] != 0)
  +        s = string_sprintf("%s/%s", deliver_home, s);
         DEBUG(D_filter) debug_printf("Filter: %ssave message to: %s%s\n",
           (commands->seen)? "" : "unseen ", s,
           commands->noerror? " (noerror)" : "");
  -      if (s[0] != '/' && deliver_home != NULL && deliver_home[0] != 0)
  -        s = string_sprintf("%s/%s", deliver_home, s);


         /* Create the new address and add it to the chain, setting the
         af_pfr and af_file flags, the af_ignore_error flag if necessary, and the


  Index: macros.h
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/macros.h,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- macros.h    9 Mar 2006 15:10:16 -0000    1.24
  +++ macros.h    27 Jun 2006 14:34:26 -0000    1.25
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/macros.h,v 1.24 2006/03/09 15:10:16 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/macros.h,v 1.25 2006/06/27 14:34:26 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -508,6 +508,7 @@
   #define RDO_REWRITE      0x00020000  /* Rewrite generated addresses */
   #define RDO_EXIM_FILTER  0x00040000  /* Forbid Exim filters */
   #define RDO_SIEVE_FILTER 0x00080000  /* Forbid Sieve filters */
  +#define RDO_PREPEND_HOME 0x00100000  /* Prepend $home to relative paths in Exim filter save commands */


/* This is the set that apply to expansions in filters */

  @@ -521,7 +522,7 @@
   enum { RDON_BLACKHOLE, RDON_DEFER, RDON_EACCES, RDON_ENOTDIR, RDON_EXISTS,
     RDON_FAIL, RDON_FILTER, RDON_FREEZE, RDON_INCLUDE, RDON_LOG, RDON_LOOKUP,
     RDON_PERL, RDON_READFILE, RDON_READSOCK, RDON_RUN, RDON_DLFUNC, RDON_REALLOG,
  -  RDON_REWRITE, RDON_EXIM_FILTER, RDON_SIEVE_FILTER };
  +  RDON_REWRITE, RDON_EXIM_FILTER, RDON_SIEVE_FILTER, RDON_PREPEND_HOME };


/* Results of filter or forward file processing. Some are only from a filter;
some are only from a forward file. */

  Index: redirect.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/routers/redirect.c,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- redirect.c    7 Feb 2006 11:19:02 -0000    1.15
  +++ redirect.c    27 Jun 2006 14:34:26 -0000    1.16
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/routers/redirect.c,v 1.15 2006/02/07 11:19:02 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/routers/redirect.c,v 1.16 2006/06/27 14:34:26 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -39,6 +39,8 @@
         (void *)offsetof(redirect_router_options_block, file) },
     { "file_transport",     opt_stringptr,
         (void *)offsetof(redirect_router_options_block, file_transport_name) },
  +  { "filter_prepend_home",opt_bit | (RDON_PREPEND_HOME << 16),
  +      (void *)offsetof(redirect_router_options_block, bit_options) },
     { "forbid_blackhole",   opt_bit | (RDON_BLACKHOLE << 16),
         (void *)offsetof(redirect_router_options_block, bit_options) },
     { "forbid_exim_filter", opt_bit | (RDON_EXIM_FILTER << 16),
  @@ -160,7 +162,7 @@
     NULL,        /* srs_dbselect */
   #endif
     022,         /* modemask */
  -  RDO_REWRITE, /* bit_options */
  +  RDO_REWRITE | RDO_PREPEND_HOME, /* bit_options */
     FALSE,       /* check_ancestor */
     TRUE_UNSET,  /* check_owner */
     TRUE_UNSET,  /* check_group */


Index: 0037.f-7
====================================================================
#exim filter

save relative

  Index: 0037
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/confs/0037,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0037    7 Feb 2006 10:34:25 -0000    1.1
  +++ 0037    27 Jun 2006 14:34:27 -0000    1.2
  @@ -1,5 +1,7 @@
   # Exim test configuration 0037


  +FILTER_PREPEND_HOME=
  +
   exim_path = EXIM_PATH
   host_lookup_order = bydns
   rfc1413_query_timeout = 0s
  @@ -38,6 +40,16 @@
     allow_filter
     file = DIR/aux-var/TESTNUM.f-readfile
     user = CALLER
  +
  +prepend_filter:
  +  driver = redirect
  +  local_parts = prepend
  +  allow_filter
  +  router_home_directory = /usr
  +  file = DIR/aux-fixed/TESTNUM.f-7
  +  file_transport = appendfile
  +  user = CALLER
  +  FILTER_PREPEND_HOME


   userfilter:
     driver = redirect


  Index: 0037
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/scripts/0000-Basic/0037,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0037    7 Feb 2006 10:54:33 -0000    1.1
  +++ 0037    27 Jun 2006 14:34:27 -0000    1.2
  @@ -171,4 +171,10 @@
   exim -odi filter-stat
   Subject: should give filter error (7)
   ****
  +# Check prepend $home
  +exim -bt prepend@???
  +****
  +# Check not prepend $home
  +exim -DFILTER_PREPEND_HOME=no_filter_prepend_home -bt prepend@???
  +****
   no_msglog_check


  Index: 0037
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/stderr/0037,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0037    7 Feb 2006 10:47:31 -0000    1.1
  +++ 0037    27 Jun 2006 14:34:27 -0000    1.2
  @@ -29,6 +29,10 @@
   local_part=filter-userx domain=test.ex
   checking local_parts
   fail_read_filter router skipped: local_parts mismatch
  +--------> prepend_filter router <--------
  +local_part=filter-userx domain=test.ex
  +checking local_parts
  +prepend_filter router skipped: local_parts mismatch
   --------> userfilter router <--------
   local_part=filter-userx domain=test.ex
   checking local_parts
  @@ -62,6 +66,10 @@
   local_part=userx domain=test.ex
   checking local_parts
   fail_read_filter router skipped: local_parts mismatch
  +--------> prepend_filter router <--------
  +local_part=userx domain=test.ex
  +checking local_parts
  +prepend_filter router skipped: local_parts mismatch
   --------> userfilter router <--------
   local_part=userx domain=test.ex
   checking local_parts


  Index: 0037
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/stdout/0037,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0037    7 Feb 2006 10:47:37 -0000    1.1
  +++ 0037    27 Jun 2006 14:34:27 -0000    1.2
  @@ -257,3 +257,7 @@
   Unseen deliver message to: userz@??? errors_to abcd@???
   Filtering did not set up a significant delivery.
   Normal delivery will occur.
  +prepend@??? -> /usr/relative
  +  transport = appendfile
  +prepend@??? -> relative
  +  transport = appendfile