On 1/24/19 6:01 AM, Trever L. Adams wrote: > On 1/24/19 12:15 AM, Per Jessen wrote: >> Trever L. Adams wrote: >> >>> I know that sieve doesn't do math. The file would be created >>> externally. >>> >>> Based on examples in section 4.4 of >>> https://tools.ietf.org/html/rfc5260#section-4 >>> >>> I figured something like this would work. >>> >>> if date :value "le" :originalzone "date" "date" "2018-10-25" { >>> fileinto "SPAM"; >>> stop; >>> } >>> >>> However, I get the following. >>> >>> spam: line 41: error: unknown tagged argument ':value' for the date >>> test (reported only once at first occurrence). >>> spam: error: validation failed. >>> sievec(root): Fatal: failed to compile sieve script 'spam.sieve' >>> >>> Does anyone have any advice on how to get this working? >> Hi Trever >> >> here is a snippet I use occasionally: >> >> if allof( >> currentdate :zone "+0200" :value "ge" "iso8601" "2017-09-04T00:00:00+02:00", >> currentdate :zone "+0200" :value "le" "iso8601" "2017-09-06T18:09:00+02:00" >> ) >> >> >> HTH >> Per > > Please, correct me if I am wrong. This looks at the system clock. I need > to look at the date in the email (Date header). I am trying to catch > spam that hides 6-9 months in the past (in the last week I have had two > from August 2018 show up... obviously forged header, but...). > > Thanks. > > Trever > > Thank you Per. My problem was I wasn't requiring relational. With it, this works:
if date :originalzone :value "le" "date" "date" "2018-10-26" { fileinto "SPAM"; stop; } I am sorry for the noise. Obviously, anyone using the above snippet will need something to modify the date on a regular basis so it is say 90 days in the past or what not. Thank you again. Trever
signature.asc
Description: OpenPGP digital signature