incorrect parsing of script containing multiple multi-line forms
----------------------------------------------------------------
Key: JSIEVE-75
URL: https://issues.apache.org/jira/browse/JSIEVE-75
Project: JAMES jSieve
Issue Type: Bug
Components: JSieve (Main)
Affects Versions: 0.4
Reporter: Vishal Mahajan
Priority: Critical
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.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]