Hi, 

I am using jSieve 0.4. I have the following sieve script containing two 
multi-line forms: 

---- 
require ["fileinto", "reject", "tag", "flag"]; 

# filter1 
if anyof (header :contains "subject" "abc") { 
reply text: 
reply1 
. 
; 
reply text: 
reply2 
. 
; 
} 
---- 

The issue is that the jSieve parser sees only one multi-line form in the above 
script, with form data being the text between the first "text:" and last 
"CRLF.CRLF", i.e. 

---- 
reply1 
. 
; 
reply text: 
reply2 
---- 

Is there an issue in the sieve.jjt grammar in dealing with multiple multi-line 
forms? 

One of the odd things I observed in sieve.jjt is that NEWLINE is considered as 
"\n"|"\r"|"\r\n", whereas RFC 3028 (section 2.4.2) requires that a multi-line 
form: 

starts with the keyword "text:", 
followed by a CRLF, and ends with the sequence of a CRLF, a single 
period, and another CRLF. 
which implies that standalone "\n" and "\r" chars should not be considered in 
determining start and end of multi-line form data. 

Thanks, 

Vishal 

Reply via email to