I had posted about a week ago about Debugging Sieve scripts. Unfortunately, I didn't get any response and unfortunately, I'm still having problems with Sieve behaving erratically. For reference, my Cyrus-IMAP install is version 2.1.16 on Red Hat Linux.
We use two packages to generate Sieve scripts - websieve and the Ingo module from the Horde project. I'm seeing oddities with scripts produced by both packages. Example: a user goes on vacation and uses websieve to turn on their vacation notice. They come back and turn off the notice. Some commented out Pseudo-Code from websieve is left in the default script file and this causes parse errors Sieve script: # Mail rules for user user_name # Created by Websieve version 0.61i ##PSEUDO script start #vacation&&1&&"[EMAIL PROTECTED]", "[EMAIL PROTECTED]"&&I will be out of the office from date, returning date. If there is an emergency, email User Name <[EMAIL PROTECTED]> or call phone number&&off #mode&&basic The essense of this script is five commented out lines (the one that starts with vacation wraps), and two blank lines with only CR/LF. Yet this file generates the following error: sieve parse error for user_name: line 6: parse error, unexpected STRING So sieve appears to be ignoring hash marks that should serve as comments. Second oddity is my own script, which I mentioned in my previous message. Periodically (and it appears to be message load related), Sieve will just stop filtering and messages that should be filtered into mailboxes drop into my INBOX. This appears to be triggered by turning on the vacation messages, as I start to see the messages appear during the time I'm out of the office and in this case, at least two weeks after I'm back and the vacation message is off. I use Ingo to generate my script and thinking it was something in that module causing the problem, I restored my script that was working fine prior to being out of the office. A diff revealed absolutely no changes, except the timestamp in the comment, created by Ingo. The following error message appears in the log: sieve parse error for kevin_myer: line 3: parse error, unexpected STRING and lines 1,2, and 3 are: # sieve filter generated by Ingo (February 7, 2005, 2:04 pm) require "fileinto"; So I'm puzzled what's wrong here. And why it only happens sporadically. And why, before I turn on the vacation message, it doesn't happen at all. And yet another oddity from my script: # sieve filter generated by Ingo (February 7, 2005, 2:04 pm) require "fileinto"; # Dell OMSA problems if anyof ( header :comparator "i;ascii-casemap" :contains "Subject" "Dell problems", header :comparator "i;ascii-casemap" :contains "Subject" "Alert from ERA" ) { redirect "[EMAIL PROTECTED]"; keep; stop; } The error generated: sieve parse error for kevin_myer: line 7: address '[EMAIL PROTECTED]': parse error, unexpected '@', expecting $ So do I have a whole bunch of buggy user scripts? Or is sieve acting up? Cyrus-imapd has been restarted since I first had these problems, to update an SSL certificate. The problems persist. Thanks for any input or feedback or suggestions. Kevin -- Kevin M. Myer Senior Systems Administrator Lancaster-Lebanon Intermediate Unit 13 (717) 560-6140 --- Cyrus Home Page: http://asg.web.cmu.edu/cyrus Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html