[Fwd: Comments on draft-melnikov-sieve-external-lists-02.txt]

Alexey Melnikov <alexey.melnikov@isode.com> Sun, 19 July 2009 18:40 UTC

Return-Path: <alexey.melnikov@isode.com>
X-Original-To: apps-discuss@core3.amsl.com
Delivered-To: apps-discuss@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 40FEF3A6AF1 for <apps-discuss@core3.amsl.com>; Sun, 19 Jul 2009 11:40:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.228
X-Spam-Level:
X-Spam-Status: No, score=-1.228 tagged_above=-999 required=5 tests=[AWL=-0.488, BAYES_20=-0.74]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id IjDKzc5q2BKh for <apps-discuss@core3.amsl.com>; Sun, 19 Jul 2009 11:40:47 -0700 (PDT)
Received: from rufus.isode.com (rufus.isode.com [62.3.217.251]) by core3.amsl.com (Postfix) with ESMTP id 9A20B3A694D for <discuss@ietf.org>; Sun, 19 Jul 2009 11:40:46 -0700 (PDT)
Received: from [92.40.25.192] (92.40.25.192.sub.mbb.three.co.uk [92.40.25.192]) by rufus.isode.com (submission channel) via TCP with ESMTPA id <SmNopAAe-arj@rufus.isode.com>; Sun, 19 Jul 2009 19:40:43 +0100
Message-ID: <4A636889.7020009@isode.com>
Date: Sun, 19 Jul 2009 19:40:09 +0100
From: Alexey Melnikov <alexey.melnikov@isode.com>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915
X-Accept-Language: en-us, en
To: general discussion of application-layer protocols <discuss@ietf.org>
Subject: [Fwd: Comments on draft-melnikov-sieve-external-lists-02.txt]
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="------------010502010004060500050307"
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 19 Jul 2009 18:40:48 -0000

This started as a discussion on white/black listing.

--- Begin Message ---
Hi Ned,
I've changed the subject and moving my reply to the Sieve mailing list, 
where I think it belongs.

Ned Freed wrote:
 [...]

>> There is also a Sieve extension for making use of whitelists/blacklists
>> during mail delivery. See draft-melnikov-sieve-external-lists-02.txt.
>> It can work with CARDDAV, LDAP and other things.
>
> Interestingly, this extension in its current form is not compatible with
> at least one of the proposals that was made here. The issue is one I've
> raised before - the fact that :list is separate argument and not a 
> match type.
>
> Where there is clearly some utility in being able to say stuff along the
> lines of:
>
>    header :contains :list "subject" "tag:dirty-word-list"
>
> The problem is that in order for this to work the list has to be 
> enumerable.

This wasn't the intent. I was certainly aware of the need not to 
retrieve the whole membership list.
But you are saying that my syntax wouldn't work in this case.

> Not all lists are enumerable, and even some that are are so large even 
> though oyu can enumerate them in theory you can't afford to do so in 
> practice.
>
> One use case where this matters is when the list is a set of hashed 
> values. The
> way you find if something is "on the list" is to hash it and see if 
> that value
> appears. And even if the input string is short enough that you can 
> enumerate
> all the unique substrings, how about :matches and :regex? Good luck with
> those.
>
> Hashed lists have in fact been proposed in the present discussion as a 
> means of
> avoiding giving your address whitelist to the mail server. I happen 
> not to
> think this is a useful thing to do for a variety of reasons, mostly 
> having to
> do with address canonicalization (or lack thereof), but there are other
> use cases where hashed lists make more sense.
>
> So, although it reduces functionality, I believe :list should be a 
> match type
> and the underlying comparison type that's done should be a property of 
> the list
> itself.

Hmm. You are probably right, :list as a modifier is a bit of a hack.
How would the new match type work with tests other than 
header/address/envelope?

--- End Message ---