Subject: Please shoot this ridiculous idea down.

From: Arnt Gulbrandsen <[email-masked]>
Date: Wed, 17 Dec 2003 16:16:06 +0100

Hi,

I had a ridiculous idea earlier today. It really needs to be shot down. 
You have to help fix my brain.

Ready? Here it comes:

Managesieve should offer mail delivery notification.

The argument:

Mail delivery notification needs some sort of authentication, and it 
needs knowledge of when which mailboxes receive mail. Sieve has the 
latter. The natural way to get the former is to keep a TCP connection 
to somewhere, perhaps turn on TLS, authenticate, say "tell me about 
deliveries" and just listen. That way, TCP/TLS will make sure that if I 
disappear, noone else gets my news.

So, are two TCP protocols for talking to Sieve software desirable? I say 
that's one too much, which leaves me with the suggestion: Managesieve 
should offer mail delivery nofication. Ridiculous.

--Arnt

---

From: Rob Siemborski <[email-masked]>
Date: Wed, 17 Dec 2003 10:47:06 -0500 (EST)

> should offer mail delivery nofication. Ridiculous.

I really don't like this idea.  It overloads the protocol in a very
strange way that is entirely orthogonal to its original purpose.

Aren't people in the SIP groups working on much better ways to do
notifications for changes in the message store?

-Rob

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Rob Siemborski | Andrew Systems Group * Research Systems Programmer
PGP:0x5CE32FCC | Cyert Hall 207 * [email-masked] * 412.268.7456
-----BEGIN GEEK CODE BLOCK----
Version: 3.12
GCS/IT/CM/PA d- s+: a-- C++++$ ULS++++$ P+++$ L+++(++++) E W+ N o? K-
w O- M-- V-- PS+ PE++ Y+ PGP+ t+@ 5+++ R@ tv-@ b+ DI+++ G e++ h r- y?
------END GEEK CODE BLOCK-----

---

From: Cyrus Daboo <[email-masked]>
Date: Wed, 17 Dec 2003 10:48:28 -0500

Hi Arnt,

--On Wednesday, December 17, 2003 4:16 PM +0100 Arnt Gulbrandsen 
<[email-masked]> wrote:

| I had a ridiculous idea earlier today. It really needs to be shot down.
| You have to help fix my brain.
|
| Ready? Here it comes:
|
| Managesieve should offer mail delivery notification.
|
| The argument:
|
| Mail delivery notification needs some sort of authentication, and it
| needs knowledge of when which mailboxes receive mail. Sieve has the
| latter. The natural way to get the former is to keep a TCP connection to
| somewhere, perhaps turn on TLS, authenticate, say "tell me about
| deliveries" and just listen. That way, TCP/TLS will make sure that if I
| disappear, noone else gets my news.
|
| So, are two TCP protocols for talking to Sieve software desirable? I say
| that's one too much, which leaves me with the suggestion: Managesieve
| should offer mail delivery nofication. Ridiculous.

Well, in the case of IMAP, messages can be delivered outside of the normal 
'delivery loop' - i.e. by an IMAP APPEND or COPY. I would certainly want a 
mail notification protocol to be able to notify me of IMAP APPENDs and 
COPYs adding new messages to a mailbox as well as regular delivery. What is 
needed is notification on the mailstore, not just on the delivery process.

-- 
Cyrus Daboo

---

From: Arnt Gulbrandsen <[email-masked]>
Date: Wed, 17 Dec 2003 16:49:45 +0100

Simon Josefsson writes:
> Arnt Gulbrandsen <[email-masked]> writes:
>
>>  latter.
> That doesn't imply the managesieve server has that knowledge. I think 
> that for all it is worth, the managesieve could be located on an 
> entirely different machine and not at all connected to the 
> mail-delivery process. It might just be responsible for copying the 
> sieve script, and switch between the active scripts, on the mail 
> server.

The managesieve server certainly knows which mailboxes are delivery 
candidates. To know that, one has to parse the Sieve scripts.

It may or may not know about the delivery time.

>>  So, are two TCP protocols for talking to Sieve software desirable? I 
>>  say that's one too much, which leaves me with the suggestion: 
>>  Managesieve should offer mail delivery nofication. Ridiculous.
>
> I believe Managesieve is useful, and that a mail delivery protocol is 
> also useful. Whether the mail delivery protocol should be 
> sieve-specific isn't evident to me. Overloading managesieve for this 
> purpose seem more complicated than inventing a new protocol.

ANOTHER protocol with exactly the same authentication/tls verbiage?

--Arnt

---

From: Kjetil Torgrim Homme <[email-masked]>
Date: Wed, 17 Dec 2003 17:26:57 +0100

> Managesieve should offer mail delivery notification.

why not use IMAP (preferably with the IDLE extension to avoid polling)?

problem:  IMAP will only report deliveries to the currently selected
mailbox.  I think it is better to fix that with some extension than to
extend MANAGESIEVE in this strange way.

(unfortunately, tests show that Cyrus will wait for quite a while
(upwards of a minute) before reporting deliveries, but this is a quality
of implementation issue, not a problem with the protocol.)
-- 
Kjetil T.

---

From: Arnt Gulbrandsen <[email-masked]>
Date: Wed, 17 Dec 2003 17:34:48 +0100

> strange way that is entirely orthogonal to its original purpose.

I don't either, for exactly the same reason.

> notifications for changes in the message store?

People are always working on much better ways to do that.

--Arnt

---

From: Rob Siemborski <[email-masked]>
Date: Wed, 17 Dec 2003 11:39:32 -0500 (EST)

> ANOTHER protocol with exactly the same authentication/tls verbiage?

The argument that protocols use a similar authentication mechanism is NOT
an argument that they should be the same protocol.

The SMTP and POP3 AUTH documents I'm working on right now are very very
similar (atleast, for the AUTH commands).  Does this mean SMTP and POP
should be the same protocol?  Hardly.

Mail notification is not something that is sieve-specific, and shouldn't
be treated that way, certainly not by wedging it into what amounts to a
glorified file transfer protocol.

-Rob

-----BEGIN GEEK CODE BLOCK----
Version: 3.12
------END GEEK CODE BLOCK-----

---

From: Simon Josefsson <[email-masked]>
Date: Wed, 17 Dec 2003 16:43:03 +0100

Regards,
Simon

---

From: [email-masked]
Date: Wed, 17 Dec 2003 08:58:38 -0800 (PST)

> needed is notification on the mailstore, not just on the delivery process.

Right. Another issue is that while sieves are typically applied near the time
of delivery, this doesn't mean they are applied _at_ the time of delivery. It
is entirely possible and legal for them to be applied before or after, and by
an entirely separate agent from the delivery agent. For example, Sun's
implementation supports sieve and notifications already but in most cases they
aren't even done on the same machine.

Store notifications just don't match up to sieve very well.

				Ned

---

From: "Mark E. Mallett" <[email-masked]>
Date: Wed, 17 Dec 2003 12:06:04 -0500

On Wed, Dec 17, 2003 at 11:39:32AM -0500, Rob Siemborski wrote:
> 
> Mail notification is not something that is sieve-specific,

Indeed, and neither is updating filters.

> and shouldn't

Not to mention the implication that you'd double the connection/process
load on a mailbox server (keeping an IMAP session and a Manage session
open).

-mm-   (still trying to decide if the original post was serious.)

---

From: Arnt Gulbrandsen <[email-masked]>
Date: Wed, 17 Dec 2003 18:30:22 +0100

[email-masked] writes:
> Another issue is that while sieves are typically applied near the time 
> of delivery, this doesn't mean they are applied _at_ the time of 
> delivery.

If I define "delivery" as appearance in a user-accessible mailbox, 
sieving would seem to _be_ delivery.

Certainly, from the point of view of a MUA watching for new mail, 
appearance in a user-visible mailbox is the interesting event.

> It is entirely possible and legal for them to be applied before or 
> after, and by an entirely separate agent from the delivery agent. For 
> example, Sun's implementation supports sieve and notifications 
> already but in most cases they aren't even done on the same machine.

Implementation detail, I think...

But anyway, I'm sort of relieved. Even if I can't kill the idea by 
rational argument, the massively negative reaction on ietf-mta-filters 
persuades me that it's too ugly to live.

--Arnt

---

From: Madan Ganesh Velayudham <[email-masked]>
Date: Wed, 17 Dec 2003 23:20:11 +0530

Arnt Gulbrandsen wrote:

>
> Hi,
>
> I had a ridiculous idea earlier today. It really needs to be shot 
> down. You have to help fix my brain.
>
> Ready? Here it comes:
>
> deliveries" and just listen. That way, TCP/TLS will make sure that if 
> I disappear, noone else gets my news.
>
I've not completely gone through this thread. The following draft may 
not be relative to this topic.

http://www.ietf.org/internet-drafts/draft-madanganeshv-sieve-stat-00.txt

This draft describes a mechanism of collecting the statistical 
information about sieve action on the received mail. It introduces 
GETSTAT and RESETSTAT commands to [MSIEVE] to get and reset the 
statistic information about the sieve actions.

---

From: [email-masked]
Date: Wed, 17 Dec 2003 11:37:09 -0800 (PST)

> sieving would seem to _be_ delivery.

Not hardly. Sieve application can and does occur long before or long after
this point.

> appearance in a user-visible mailbox is the interesting event.

Agreed, but your assumption that sieve is conflated with this event is just
plain wrong. In our implementation, for example, sieve application occurs
before, and in some cases it is separated by hours of time and done on a
different system.

				Ned

---

From: Simon Josefsson <[email-masked]>
Date: Thu, 18 Dec 2003 03:26:36 +0100

Arnt Gulbrandsen <[email-masked]> writes:

>>>  Mail delivery notification needs some sort of authentication, and
>>> it  needs knowledge of when which mailboxes receive mail. Sieve has
>>> the  latter.
>>
>> That doesn't imply the managesieve server has that knowledge. I
>> think that for all it is worth, the managesieve could be located on
>> an entirely different machine and not at all connected to the

I thought the managesieve server only parsed the script for syntax
errors.  I.e., managesieve is FTP with a built-in managesieve parser.
Can you point to anything in the specification that say the
managesieve server know about whether delivery candidates exists or
not?  I haven't seen a server reject scripts if I make a typo for the
mailboxes.

>>>  So, are two TCP protocols for talking to Sieve software desirable?
>>> I  say that's one too much, which leaves me with the suggestion:
>> I believe Managesieve is useful, and that a mail delivery protocol
>> is also useful. Whether the mail delivery protocol should be

Yes, or re-use a perhaps more suitable protocol, such as IMAP, SIP,
XMPP or Zephyr.  Given existing TLS/SASL libraries, supporting
authentication is fortunately rather easy for new protocols these
days.

Regards,
Simon