ietf-mta-filters
[Top] [All Lists]

Re: Is envelope missing :comparator arguement?

1999-02-22 14:44:25
At 03:57 PM 2/22/99 -0500, Tim Showalter wrote:
That script, in particular, is easily fixed:

if allof ( address :matches :all :comparator "i;octet" "from" "tim(_at_)*",
   address :matches :all "from" "*(_at_)example(_dot_)com" ) {
   discard;

I am not sure if this solution generalizes, but I think "match" lets it
do so rather reasonably.

This still does not fix the problem because the "tim(_at_)*" could match
one address and the "*(_at_)example(_dot_)com" could match another (different)
address.  Both would be true and allof() would be true even though
"tim(_at_)*" and "*(_at_)example(_dot_)com" do not appear in the same To: 
address.
Remember, tests return true if any header or address matches.

I do not see any way of performing a case sensitive compare on the
localpart of an address and a case insensitive compare on the
domain part of an address when there is the potential of more
than one address.  Each test may return true for different
addresses because they operate indepedently.  There is no way
to tell if both tests were true for the same address.

Personally, I would just do a case insensitive compare on the
entire address.  However, I think will need to revist this if
we want or expect sieve scripts to distingush between addresses
like: smith(_at_)aol(_dot_)com and SMITH(_at_)aol(_dot_)com which might be 
different users.

Greg Sereda