Re: [exim] sieve/vacation

Top Page
Delete this message
Reply to this message
Author: Michael Haardt
Date:  
To: exim-users
Subject: Re: [exim] sieve/vacation
On Fri, Feb 18, 2005 at 10:13:12AM -0600, Larry Rosenman wrote:
> Never mind, this is the well-known issue of -bf not being able
> to deal with the vacation_directory. The actual script does the right
> thing.


Please try the appended patch. I am not sure it is all that's needed,
though. It looks too easy somehow.

Michael
----------------------------------------------------------------------
--- src/sieve.c.ph    2005-02-21 14:51:57.000000000 +0100
+++ src/sieve.c    2005-02-21 15:00:06.000000000 +0100
@@ -2501,7 +2501,7 @@
       }
     if (parse_semicolon(filter)==-1) return -1;


-    if (exec)
+    if (exec && filter_test == FTEST_NONE)
       {
       address_item *addr;
       int capacity,start;
@@ -2665,7 +2665,7 @@


if (parse_white(filter)==-1) return -1;

-if (exec && filter->vacation_directory != NULL)   /* 2nd test added by PH */
+if (exec && filter->vacation_directory != NULL && filter_test == FTEST_NONE)
   {
   DIR *oncelogdir;
   struct dirent *oncelog;
@@ -2727,7 +2727,7 @@
 #ifdef VACATION
     else if (eq_asciicase(check,&str_vacation,0))
       {
-      if (filter->vacation_directory == NULL)
+      if (filter_test == FTEST_NONE && filter->vacation_directory == NULL)
         {
         filter->errmsg=CUS "vacation disabled";
         return -1;