[ https://issues.apache.org/jira/browse/JSIEVE-75?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefano Bagnara reassigned JSIEVE-75: ------------------------------------- Assignee: Stefano Bagnara > 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 > Assignee: Stefano Bagnara > Priority: Critical > Attachments: patch.txt > > > 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: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org