sieve parse error

Ken Murchison ken at oceana.com
Tue May 11 13:50:06 EDT 2004


Andrew Morgan wrote:

> I'm running cyrus-imap v2.1.16 on a Debian Linux server.  The following
> sieve script (using sieveusehomedir: true) generates a parse error, as
> expected:
> 
> -----------------------------------
> # This file generated by ONID web tools
> # Modifying this file by hand will make it unreadable by the ONID web
> # tools
> 
> require ["fileinto"];
> 
> # Spam Assassin
> if header :contains "X-Spam-Flag" "YES" { fileinto "junk-mail; }
> 
> if header :contains ["From"] "troy_guy at usgs.gov" {
> fileinto "INBOX"; }
> -----------------------------------
> 
> Notice the missing closing " after junk-mail.  The error message in syslog
> is:
> 
> -----------------------------------
> May 11 09:45:41 mail1 lmtpd[3430]: sieve parse error for sheffiel: line 10: parse error, unexpected $undefined., expecting ';'
> -----------------------------------
> 
> However, the interesting thing to note is that all sieve operations for
> this process after this error message generate bogus parse errors and
> email is not processed through sieve.  Here are the syslog messages for
> that particular lmtpd process:
> 
> -----------------------------------
> May 11 09:30:13 mail1 lmtpd[3430]: accepted connection
> May 11 09:30:13 mail1 lmtpd[3430]: connection from smtp1.oregonstate.edu [128.193.0.11] preauth'd as postman
> May 11 09:30:52 mail1 lmtpd[3430]: mystore: starting txn 2147936281
> May 11 09:30:52 mail1 lmtpd[3430]: mystore: committing txn 2147936281
> May 11 09:30:52 mail1 lmtpd[3430]: duplicate_mark: <14580-1199405-119 at theseimages.com>      .hoitingk+.sieve.    10
> [many successful sieve deliveries snipped]
> May 11 09:45:19 mail1 lmtpd[3430]: duplicate_check: <200405111641.i4BGfsLk013451 at mantis.ocsn.com>-glennklein at myblue
> May 11 09:45:19 mail1 lmtpd[3430]: mystore: starting txn 2147938005
> May 11 09:45:19 mail1 lmtpd[3430]: mystore: committing txn 2147938005
> May 11 09:45:19 mail1 lmtpd[3430]: duplicate_mark: <200405111641.i4BGfsLk013451 at mantis.ocsn.com>-glennklein at mybluel
> May 11 09:45:19 mail1 lmtpd[3430]: mystore: starting txn 2147938006
> May 11 09:45:19 mail1 lmtpd[3430]: mystore: committing txn 2147938006
> May 11 09:45:19 mail1 lmtpd[3430]: duplicate_mark: <200405111641.i4BGfsLk013451 at mantis.ocsn.com> .kleing+.sieve.
> May 11 09:45:41 mail1 lmtpd[3430]: sieve parse error for sheffiel: line 10: parse error, unexpected $undefined., expecting ';'
> May 11 09:47:06 mail1 lmtpd[3430]: sieve parse error for jonesf: line 3: parse error, unexpected STRING
> May 11 09:49:18 mail1 lmtpd[3430]: sieve parse error for ayalaj: line 4: parse error, unexpected STRING
> May 11 09:49:39 mail1 lmtpd[3430]: sieve parse error for wilsonic: line 1: parse error, unexpected STRING
> May 11 09:49:56 mail1 lmtpd[3430]: sieve parse error for moorekel: line 1: parse error, unexpected STRING
> May 11 09:50:17 mail1 lmtpd[3430]: sieve parse error for helleras: line 3: parse error, unexpected STRING
> May 11 09:51:26 mail1 lmtpd[3430]: sieve parse error for ballt: line 1: parse error, unexpected STRING
> May 11 09:51:26 mail1 lmtpd[3430]: sieve parse error for barkerr: line 4: parse error, unexpected STRING
> May 11 09:51:26 mail1 lmtpd[3430]: sieve parse error for bayleyp: line 1: parse error, unexpected STRING
> May 11 09:51:26 mail1 lmtpd[3430]: sieve parse error for beckb: line 3: parse error, unexpected STRING
> May 11 09:52:10 mail1 lmtpd[3430]: sieve parse error for jeanbapj: line 1: parse error, unexpected STRING
> May 11 09:52:10 mail1 lmtpd[3430]: sieve parse error for jederbek: line 1: parse error, unexpected STRING
> May 11 09:52:10 mail1 lmtpd[3430]: sieve parse error for jeffersa: line 1: parse error, unexpected STRING
> May 11 09:52:11 mail1 lmtpd[3430]: sieve parse error for jefferyj: line 5: parse error, unexpected STRING
> May 11 09:53:44 mail1 lmtpd[3430]: sieve parse error for wilsonic: line 1: parse error, unexpected STRING
> May 11 09:54:06 mail1 lmtpd[3430]: sieve parse error for millers7: line 4: parse error, unexpected STRING
> -----------------------------------
> 
> It seems as if the sieve parser gets "stuck" after it encounters this
> first error.  The other .sieve files that it is complaining about are
> correctly formatted sieve files that normally work.  This same pattern is
> repeated for other lmtpd processes as well.  A fresh lmtpd works correctly
> until it encounters this broken sieve script.
> 
> Is this a known bug?

Yes, the lexer state is not reset.

> Would upgrading to cyrus-imap v2.2.3 fix this?  

Yes.  Since all scripts are now compiled into bytecode, this becomes a 
non-issue and scripts are also processes faster.

> I've
> been planning a migration to the new version, but I'd like to know that
> this problem has been fixed (upgrade once instead of twice).
> 
> Let me know if any additional information is needed.
> 
> Thanks,
> 	Andy
> 
> ---
> 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
> 


-- 
Kenneth Murchison     Oceana Matrix Ltd.
Software Engineer     21 Princeton Place
716-662-8973 x26      Orchard Park, NY 14127
--PGP Public Key--    http://www.oceana.com/~ken/ksm.pgp
---
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




More information about the Info-cyrus mailing list