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

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Philip Hazel
Datum:  
To: exim-cvs
Betreff: [exim-cvs] cvs commit: exim/exim-doc/doc-txt ChangeLog NewStuff exim/exim-src ACKNOWLEDGMENTS exim/exim-src/src acl.c globals.c globals.h readconf.c smtp_in.c exim/exim-test/confs 0233 exim/exim-te
ph10 2006/02/13 12:03:00 GMT

  Modified files:
    exim-doc/doc-txt     ChangeLog NewStuff 
    exim-src             ACKNOWLEDGMENTS 
    exim-src/src         acl.c globals.c globals.h readconf.c 
                         smtp_in.c 
    exim-test/confs      0233 
    exim-test/log        0233 
    exim-test/mail       0233.me 
    exim-test/scripts/0000-Basic 0233 
    exim-test/stdout     0233 
  Added files:
    exim-test/msglog     0233.10HmbB-0005vi-00 
                         0233.10HmbD-0005vi-00 
  Log:
  Add control=freeze/no_tell feature.


  Revision  Changes    Path
  1.294     +2 -0      exim/exim-doc/doc-txt/ChangeLog
  1.83      +6 -0      exim/exim-doc/doc-txt/NewStuff
  1.40      +2 -1      exim/exim-src/ACKNOWLEDGMENTS
  1.55      +13 -2     exim/exim-src/src/acl.c
  1.48      +1 -0      exim/exim-src/src/globals.c
  1.35      +1 -0      exim/exim-src/src/globals.h
  1.19      +5 -0      exim/exim-src/src/readconf.c
  1.31      +1 -0      exim/exim-src/src/smtp_in.c
  1.2       +3 -1      exim/exim-test/confs/0233
  1.2       +10 -3     exim/exim-test/log/0233
  1.2       +17 -3     exim/exim-test/mail/0233.me
  1.1       +2 -0      exim/exim-test/msglog/0233.10HmbB-0005vi-00 (new)
  1.1       +2 -0      exim/exim-test/msglog/0233.10HmbD-0005vi-00 (new)
  1.2       +14 -1     exim/exim-test/scripts/0000-Basic/0233
  1.2       +9 -0      exim/exim-test/stdout/0233


  Index: ChangeLog
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
  retrieving revision 1.293
  retrieving revision 1.294
  diff -u -r1.293 -r1.294
  --- ChangeLog    13 Feb 2006 11:28:56 -0000    1.293
  +++ ChangeLog    13 Feb 2006 12:02:59 -0000    1.294
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.293 2006/02/13 11:28:56 ph10 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.294 2006/02/13 12:02:59 ph10 Exp $


   Change log file for Exim from version 4.21
   -------------------------------------------
  @@ -140,6 +140,8 @@
   PH/25 Do not write to syslog when running in the test harness. The only
         occasion when this arises is a failure to open the main or panic logs
         (for which there is an explicit test).
  +
  +PH/26 Added the /no_tell option to "control=freeze".





  Index: NewStuff
  ===================================================================
  RCS file: /home/cvs/exim/exim-doc/doc-txt/NewStuff,v
  retrieving revision 1.82
  retrieving revision 1.83
  diff -u -r1.82 -r1.83
  --- NewStuff    10 Feb 2006 14:25:43 -0000    1.82
  +++ NewStuff    13 Feb 2006 12:02:59 -0000    1.83
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-doc/doc-txt/NewStuff,v 1.82 2006/02/10 14:25:43 ph10 Exp $
  +$Cambridge: exim/exim-doc/doc-txt/NewStuff,v 1.83 2006/02/13 12:02:59 ph10 Exp $


   New Features in Exim
   --------------------
  @@ -39,6 +39,12 @@
         authentication data. The preferred variables are now the new ones, with
         the use of the numerical ones being deprecated, though the support will
         not be removed, at least, not for a long time.
  +
  +PH/05 The "control=freeze" ACL modifier can now be followed by /no_tell. If
  +      the global option freeze_tell is set, it is ignored for the current
  +      message (that is, nobody is told about the freezing), provided all the
  +      "control=freeze" modifiers that are obeyed in the current message have
  +      the /no_tell option.



Version 4.60

  Index: ACKNOWLEDGMENTS
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/ACKNOWLEDGMENTS,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- ACKNOWLEDGMENTS    12 Dec 2005 15:58:53 -0000    1.39
  +++ ACKNOWLEDGMENTS    13 Feb 2006 12:02:59 -0000    1.40
  @@ -1,4 +1,4 @@
  -$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.39 2005/12/12 15:58:53 ph10 Exp $
  +$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.40 2006/02/13 12:02:59 ph10 Exp $


EXIM ACKNOWLEDGEMENTS

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

Lists created: 20 November 2002
-Last updated: 12 December 2005
+Last updated: 13 February 2006


   THE OLD LIST
  @@ -243,5 +243,6 @@
                             Patch for hosts_avoid_esmtp
   Stephen Wilcox            Patch for ignore_enotdir problem
   David Woodhouse           SQLite support proof of concept code
  +                          control=freeze/no_tell basic code


****

  Index: acl.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/acl.c,v
  retrieving revision 1.54
  retrieving revision 1.55
  diff -u -r1.54 -r1.55
  --- acl.c    7 Feb 2006 11:19:00 -0000    1.54
  +++ acl.c    13 Feb 2006 12:02:59 -0000    1.55
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/acl.c,v 1.54 2006/02/07 11:19:00 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/acl.c,v 1.55 2006/02/13 12:02:59 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -528,7 +528,7 @@
     { US"caseful_local_part",     CONTROL_CASEFUL_LOCAL_PART, FALSE },
     { US"caselower_local_part",   CONTROL_CASELOWER_LOCAL_PART, FALSE },
     { US"enforce_sync",           CONTROL_ENFORCE_SYNC, FALSE },
  -  { US"freeze",                 CONTROL_FREEZE, FALSE },
  +  { US"freeze",                 CONTROL_FREEZE, TRUE },
     { US"no_enforce_sync",        CONTROL_NO_ENFORCE_SYNC, FALSE },
     { US"no_multiline_responses", CONTROL_NO_MULTILINE, FALSE },
     { US"queue_only",             CONTROL_QUEUE_ONLY, FALSE },
  @@ -2375,7 +2375,7 @@
       {
       /* A nested ACL that returns "discard" makes sense only for an "accept" or
       "discard" verb. */
  -
  +\
       case ACLC_ACL:
       rc = acl_check_internal(where, addr, arg, level+1, user_msgptr, log_msgptr);
       if (rc == DISCARD && verb != ACL_ACCEPT && verb != ACL_DISCARD)
  @@ -2489,6 +2489,17 @@
         case CONTROL_FREEZE:
         deliver_freeze = TRUE;
         deliver_frozen_at = time(NULL);
  +      freeze_tell = freeze_tell_config;       /* Reset to configured value */
  +      if (Ustrncmp(p, "/no_tell", 8) == 0)
  +        {
  +        p += 8;
  +        freeze_tell = NULL;
  +        }
  +      if (*p != 0)
  +        {
  +        *log_msgptr = string_sprintf("syntax error in \"control=%s\"", arg);
  +        return ERROR;
  +        }
         break;


         case CONTROL_QUEUE_ONLY:


  Index: globals.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/globals.c,v
  retrieving revision 1.47
  retrieving revision 1.48
  diff -u -r1.47 -r1.48
  --- globals.c    10 Feb 2006 16:29:20 -0000    1.47
  +++ globals.c    13 Feb 2006 12:02:59 -0000    1.48
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/globals.c,v 1.47 2006/02/10 16:29:20 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/globals.c,v 1.48 2006/02/13 12:02:59 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -545,6 +545,7 @@
   #endif
   uid_t   fixed_never_users[]    = { FIXED_NEVER_USERS };
   uschar *freeze_tell            = NULL;
  +uschar *freeze_tell_config     = NULL;
   uschar *fudged_queue_times     = US"";


   uschar *gecos_name             = NULL;


  Index: globals.h
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/globals.h,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- globals.h    10 Feb 2006 14:25:43 -0000    1.34
  +++ globals.h    13 Feb 2006 12:02:59 -0000    1.35
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/globals.h,v 1.34 2006/02/10 14:25:43 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/globals.h,v 1.35 2006/02/13 12:02:59 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -333,6 +333,7 @@
   extern uschar *found_extension;        /* demime acl condition: file extension found */
   #endif
   extern uschar *freeze_tell;            /* Message on (some) freezings */
  +extern uschar *freeze_tell_config;     /* The configured setting */
   extern uschar *fudged_queue_times;     /* For use in test harness */


   extern uschar *gecos_name;             /* To be expanded when pattern matches */


  Index: readconf.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/readconf.c,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- readconf.c    8 Feb 2006 14:28:51 -0000    1.18
  +++ readconf.c    13 Feb 2006 12:02:59 -0000    1.19
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/readconf.c,v 1.18 2006/02/08 14:28:51 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/readconf.c,v 1.19 2006/02/13 12:02:59 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -2818,6 +2818,11 @@
   /* remote_max_parallel must be > 0 */


if (remote_max_parallel <= 0) remote_max_parallel = 1;
+
+/* Save the configured setting of freeze_tell, so we can re-instate it at the
+start of a new SMTP message. */
+
+freeze_tell_config = freeze_tell;

/* The primary host name may be required for expansion of spool_directory
and log_file_path, so make sure it is set asap. It is obtained from uname(),

  Index: smtp_in.c
  ===================================================================
  RCS file: /home/cvs/exim/exim-src/src/smtp_in.c,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- smtp_in.c    10 Feb 2006 14:25:43 -0000    1.30
  +++ smtp_in.c    13 Feb 2006 12:02:59 -0000    1.31
  @@ -1,4 +1,4 @@
  -/* $Cambridge: exim/exim-src/src/smtp_in.c,v 1.30 2006/02/10 14:25:43 ph10 Exp $ */
  +/* $Cambridge: exim/exim-src/src/smtp_in.c,v 1.31 2006/02/13 12:02:59 ph10 Exp $ */


   /*************************************************
   *     Exim - an Internet mail transport agent    *
  @@ -806,6 +806,7 @@
   acl_warn_headers = NULL;
   queue_only_policy = FALSE;
   deliver_freeze = FALSE;                              /* Can be set by ACL */
  +freeze_tell = freeze_tell_config;                    /* Can be set by ACL */
   fake_response = OK;                                  /* Can be set by ACL */
   #ifdef WITH_CONTENT_SCAN
   no_mbox_unspool = FALSE;                             /* Can be set by ACL */


  Index: 0233
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/confs/0233,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0233    7 Feb 2006 10:34:25 -0000    1.1
  +++ 0233    13 Feb 2006 12:02:59 -0000    1.2
  @@ -23,7 +23,9 @@
   begin acl


   rcpt:
  -  accept control = freeze
  +  accept local_parts = usery
  +         control = freeze
  +  accept control = freeze/no_tell



# ----- Routers -----

  Index: 0233
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/log/0233,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0233    7 Feb 2006 10:34:46 -0000    1.1
  +++ 0233    13 Feb 2006 12:03:00 -0000    1.2
  @@ -9,6 +9,13 @@
   1999-03-02 09:44:33 10HmaX-0005vi-00 Frozen by the system filter: system filter freezes
   1999-03-02 09:44:33 10HmbA-0005vi-00 <= CALLER@??? U=CALLER P=local-smtp S=sss
   1999-03-02 09:44:33 10HmbA-0005vi-00 frozen by ACL
  -1999-03-02 09:44:33 10HmbB-0005vi-00 <= <> R=10HmbA-0005vi-00 U=EXIMUSER P=local S=sss
  -1999-03-02 09:44:33 10HmbB-0005vi-00 => me <me@???> R=all T=local_delivery
  -1999-03-02 09:44:33 10HmbB-0005vi-00 Completed
  +1999-03-02 09:44:33 10HmbB-0005vi-00 <= CALLER@??? U=CALLER P=local-smtp S=sss
  +1999-03-02 09:44:33 10HmbB-0005vi-00 frozen by ACL
  +1999-03-02 09:44:33 10HmbC-0005vi-00 <= <> R=10HmbB-0005vi-00 U=EXIMUSER P=local S=sss
  +1999-03-02 09:44:33 10HmbC-0005vi-00 => me <me@???> R=all T=local_delivery
  +1999-03-02 09:44:33 10HmbC-0005vi-00 Completed
  +1999-03-02 09:44:33 10HmbD-0005vi-00 <= CALLER@??? U=CALLER P=local-smtp S=sss
  +1999-03-02 09:44:33 10HmbD-0005vi-00 frozen by ACL
  +1999-03-02 09:44:33 10HmbE-0005vi-00 <= <> R=10HmbD-0005vi-00 U=EXIMUSER P=local S=sss
  +1999-03-02 09:44:33 10HmbE-0005vi-00 => me <me@???> R=all T=local_delivery
  +1999-03-02 09:44:33 10HmbE-0005vi-00 Completed


  Index: 0233.me
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/mail/0233.me,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0233.me    7 Feb 2006 10:34:59 -0000    1.1
  +++ 0233.me    13 Feb 2006 12:03:00 -0000    1.2
  @@ -18,15 +18,29 @@


   From MAILER-DAEMON Tue Mar 02 09:44:33 1999
   Received: from EXIMUSER by myhost.test.ex with local (Exim x.yz)
  -    id 10HmbB-0005vi-00
  +    id 10HmbC-0005vi-00
       for me@???; Tue, 2 Mar 1999 09:44:33 +0000
   Auto-Submitted: auto-replied
   From: Mail Delivery System <Mailer-Daemon@???>
   To: me@???
   Subject: Message frozen on arrival
  -Message-Id: <E10HmbB-0005vi-00@???>
  +Message-Id: <E10HmbC-0005vi-00@???>
   Date: Tue, 2 Mar 1999 09:44:33 +0000


  -Message 10HmbA-0005vi-00 was frozen on arrival by ACL.
  +Message 10HmbB-0005vi-00 was frozen on arrival by ACL.
  +The sender is <CALLER@???>.
  +
  +From MAILER-DAEMON Tue Mar 02 09:44:33 1999
  +Received: from EXIMUSER by myhost.test.ex with local (Exim x.yz)
  +    id 10HmbE-0005vi-00
  +    for me@???; Tue, 2 Mar 1999 09:44:33 +0000
  +Auto-Submitted: auto-replied
  +From: Mail Delivery System <Mailer-Daemon@???>
  +To: me@???
  +Subject: Message frozen on arrival
  +Message-Id: <E10HmbE-0005vi-00@???>
  +Date: Tue, 2 Mar 1999 09:44:33 +0000
  +
  +Message 10HmbD-0005vi-00 was frozen on arrival by ACL.
   The sender is <CALLER@???>.



Index: 0233.10HmbB-0005vi-00
====================================================================
1999-03-02 09:44:33 Received from CALLER@??? U=CALLER P=local-smtp S=sss
1999-03-02 09:44:33 frozen by ACL

Index: 0233.10HmbD-0005vi-00
====================================================================
1999-03-02 09:44:33 Received from CALLER@??? U=CALLER P=local-smtp S=sss
1999-03-02 09:44:33 frozen by ACL

  Index: 0233
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/scripts/0000-Basic/0233,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0233    7 Feb 2006 10:54:33 -0000    1.1
  +++ 0233    13 Feb 2006 12:03:00 -0000    1.2
  @@ -1,12 +1,25 @@
   # freeze_tell & system filter & ACL
  +# System filter freezes this one
   exim -odi userx
   Rhubarb
   ****
  +# ACL freezes these two, tell for the second, and third, not for the first
   exim -odi -bs
   mail from:<a@???>
  +rcpt to:<userz@???>
  +data
  +Should be frozen (no tell)
  +.
  +mail from:<a@???>
  +rcpt to:<usery@???>
  +data
  +Should be frozen (with tell)
  +.
  +mail from:<a@???>
  +rcpt to:<userz@???>
   rcpt to:<usery@???>
   data
  -Should be frozen
  +Should be frozen (with tell because not both no_tell)
   .
   quit
   ****


  Index: 0233
  ===================================================================
  RCS file: /home/cvs/exim/exim-test/stdout/0233,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- 0233    7 Feb 2006 10:47:37 -0000    1.1
  +++ 0233    13 Feb 2006 12:03:00 -0000    1.2
  @@ -3,4 +3,13 @@
   250 Accepted
   354 Enter message, ending with "." on a line by itself
   250 OK id=10HmbA-0005vi-00
  +250 OK
  +250 Accepted
  +354 Enter message, ending with "." on a line by itself
  +250 OK id=10HmbB-0005vi-00
  +250 OK
  +250 Accepted
  +250 Accepted
  +354 Enter message, ending with "." on a line by itself
  +250 OK id=10HmbD-0005vi-00
   221 myhost.test.ex closing connection