[ingo] escaped strings in _year (_month, _day) Check functions (sieve.php)

Jan Schneider jan at horde.org
Tue Dec 15 10:01:22 UTC 2009


Zitat von Serge Chernyavsky <serg.remote at gmail.com>:

> Jan,
>
> Jan Schneider wrote:
>> Zitat von Serge Chernyavsky <serg.remote at gmail.com>:
>>
>>> Hi All,
>>>
>>> I use latest webmail groupware edition and dbmail-timsieved.
>>> After saving vacation script I had regex strings looked like:
>>> -- 
>>> if header :regex "Received" "^.*(2009) (\\(.*\\) )?..:..:..  
>>> (\\(.*\\) )?(\\+|\\-)....( \\(.*\\))?$"
>>> -- 
>>> in my sieve database which obviously doesn't work.
>>
>> What's obvious about that?
> Above regexp requires '\(', '\)', '\+', '\-' combinations, not '(',  
> ')',  '+', '-'. In mail header there's nothing with escape  
> characters as far as I could see.
>
>>> It's returned by _yearCheck and similar functions which have 4  
>>> backslashes in a row in return strings which causes this. Not sure  
>>> if it's required for correct behavior with other sieve  
>>> implementations but with dbmail it only works if I replace '\\\\'  
>>> with '\\' in above functions.
>>
>> Then dbmail is broken.
> Jan, I really appreciate and like your product but maybe first  
> explain before claiming?

Uh, why me? You claim that this is incorrect syntax without any prove.  
But since you asked:  
http://tools.ietf.org/id/draft-murchison-sieve-regex-08.txt

Jan.

-- 
Do you need professional PHP or Horde consulting?
http://horde.org/consulting/



More information about the ingo mailing list