Thanks for the quick reply. I created a new file and copied exactly your example filter above. This file looks like the following:
Code:
ma dflynn zimbraMailSieveScript '\
require ["fileinto", "reject", "tag", "flag"];\
# Helpdesk Tickets\
if anyof (header :contains "subject" "[Lib Help #" )\
{\
tag "Tickets";\
flag "flagged";\
stop;\
}\
' I then run the following command as user Zimbra:
Code:
cat zmprov.script | zmprov
And then
Which gives me the following:
Code:
zimbraMailSieveScript: require ["fileinto", "reject", "tag", "flag"];# Helpdesk Ticketsif anyof (header :contains "subject" "[Lib Help #" ){ tag "Tickets"; flag "flagged"; stop;} Somewhere, the newlines are getting truncated. They've gotta be present in the original file, but they aren't showing up in the LDAP attribute, and it's not clear why. To make things more fun, I'm now getting errors from the web interface for this account when I attempt to create a filter manually:
Quote:
|
There was a problem parsing your filter rules: invalid request: missing required attribute: name
|
(of course, I did put in a name for the filter I was trying to create)
tail -f /opt/zimbra/log/mailbox.log shows the following information:
Quote:
2007-07-10 13:48:30,529 INFO [http-443-Processor99] [name=dflynn@example.domain;ip=*.*.*.*;ua=ZimbraWeb Client - FF2.0 (Win)/4.5.6_GA_1023.RHEL4_64;] SoapEngine - handler exception
com.zimbra.common.service.ServiceException: invalid request: missing required attribute: name
at com.zimbra.common.service.ServiceException.INVALID _REQUEST(ServiceException.java:182)
at com.zimbra.soap.Element.checkNull(Element.java:179 )
at com.zimbra.soap.Element.getAttribute(Element.java: 158)
at com.zimbra.cs.filter.RuleRewriter.condition(RuleRe writer.java:306)
at com.zimbra.cs.filter.RuleRewriter.condition(RuleRe writer.java:297)
at com.zimbra.cs.filter.RuleRewriter.traverse(RuleRew riter.java:273)
at com.zimbra.cs.filter.RuleRewriter.getScript(RuleRe writer.java:252)
at com.zimbra.cs.filter.RuleManager.setXMLRules(RuleM anager.java:145)
at com.zimbra.cs.service.mail.SaveRules.handle(SaveRu les.java:55)
at com.zimbra.soap.SoapEngine.dispatchRequest(SoapEng ine.java:270)
at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.jav a:168)
at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.jav a:90)
at com.zimbra.soap.SoapServlet.doPost(SoapServlet.jav a:223)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:709)
at com.zimbra.cs.servlet.ZimbraServlet.service(Zimbra Servlet.java:162)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:802)
at org.apache.catalina.core.ApplicationFilterChain.in ternalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.do Filter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invo ke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invo ke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invok e(StandardEngineValve.java:107)
at org.apache.catalina.valves.AccessLogValve.invoke(A ccessLogValve.java:541)
at org.apache.catalina.connector.CoyoteAdapter.servic e(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(H ttp11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11 ConnectionHandler.processConnection(Http11BaseProt ocol.java:667)
at org.apache.tomcat.util.net.PoolTcpEndpoint.process Socket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThr ead.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
|
So what it comes down to is that there's something wacky going on in the 'zmprov ma zimbraMailSieveScript' command, and it's managed to mess up something about the account associated with the operations. The server version is 4.5.6 - any ideas?