[POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Ken Murchison
The short discussion on pop3d not changing \Seen state got me thinking 
about the overall interaction of pop3d and nntpd with IMAP flags.


It would be fairly straightforward to have an option that updated \Seen 
state whenever a POP3 client issues a RETR command or an NNTP client 
issues a BODY or ARTICLE command.


My question is what do people think of the interaction between 
pop3d/nntpd and the \Deleted flag?  Should these daemons ignore articles 
that have this flag set?  Should a POP3 DELE command or a NNTP cancel 
message just set the \Deleted flag instead of expunging the message?


Should any setting which enables pop3d/nntpd to use IMAP flags be global 
or per-mailbox?


Thoughts?

--
Kenneth Murchison
Systems Programmer
Carnegie Mellon University

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: [POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Igor Brezac


On Tue, 25 Oct 2005, Ken Murchison wrote:

The short discussion on pop3d not changing \Seen state got me thinking about 
the overall interaction of pop3d and nntpd with IMAP flags.


It would be fairly straightforward to have an option that updated \Seen state 
whenever a POP3 client issues a RETR command or an NNTP client issues a BODY 
or ARTICLE command.


My question is what do people think of the interaction between pop3d/nntpd 
and the \Deleted flag?  Should these daemons ignore articles that have this 
flag set?  Should a POP3 DELE command or a NNTP cancel message just set the 
\Deleted flag instead of expunging the message?


We should be able to handle all of this via imapd.conf option(s).

Should any setting which enables pop3d/nntpd to use IMAP flags be global or 
per-mailbox?


Both, with current operation being default.  Per mbox option takes 
precedence.  How are you going to enable per-mbox flags, via annotate?


--
Igor

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: [POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Joseph Brennan


Ken Murchison [EMAIL PROTECTED] wrote:


It would be fairly straightforward to have an option that updated \Seen
state whenever a POP3 client issues a RETR command or an NNTP client
issues a BODY or ARTICLE command.


I'm on the fence whether this makes sense for POP.  But we've used
U Wash for a long time and marking them as seen has not raised any
questions that I can recall, so that behavior must be what users
expect or accept.




My question is what do people think of the interaction between
pop3d/nntpd and the \Deleted flag?  Should these daemons ignore articles
that have this flag set?  Should a POP3 DELE command or a NNTP cancel
message just set the \Deleted flag instead of expunging the message?


The RFC for POP3 actually describes DELE to mean mark as deleted, and
QUIT to mean expunge and quit.  I have just learned after all these
years that if QUIT is not sent, the server 'MUST' not expunge.  But
does any client make this optional?  The braintwister is that POP
mark deleted and IMAP mark deleted don't need to be the same thing,
so maybe POP expunge and IMAP expunge don't need to be the same thing
either.

The practical problem is that POP-only users would have no way to
really expunge if DELE and QUIT don't do it, so they'd accumulate
mail until they run out of quota.  And then what do they do?

This touches on the infamous problem of users who blow away their inbox
accidentally by using a POP3 client that defaults to DELE on server.
It's tempting to mark deleted to solve that.  But it seems to me only
to trade one problem for another.  What we need is user-controlled
unexpunge, Ken!



Joseph Brennan
Columbia University Information Technology


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: [POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Henrique de Moraes Holschuh
On Tue, 25 Oct 2005, Ken Murchison wrote:
 It would be fairly straightforward to have an option that updated \Seen 
 state whenever a POP3 client issues a RETR command or an NNTP client 
 issues a BODY or ARTICLE command.

I vote for this change, and if it is optional, I'd vote for it to be the
default behaviour.

 My question is what do people think of the interaction between 
 pop3d/nntpd and the \Deleted flag?  Should these daemons ignore articles 
 that have this flag set?  Should a POP3 DELE command or a NNTP cancel 
 message just set the \Deleted flag instead of expunging the message?

I vote for two possible behaviours, selectable via imapd.conf:
  1. pop3/nntp DELE/cancel sets \Delete flag. pop3 QUIT causes expunge
  2. what we have now (this would be the default).

 Should any setting which enables pop3d/nntpd to use IMAP flags be global 
 or per-mailbox?

I'd be happy enough with it being global.  If it is made per-mailbox, IMHO
it would be good to have it work as follows: a global option that applies
to every mailbox, and a per-mailbox annotation that overrides the global
option for this mailbox subtree.

-- 
  One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie. -- The Silicon Valley Tarot
  Henrique Holschuh

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: [POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Ken Murchison

Igor Brezac wrote:


On Tue, 25 Oct 2005, Ken Murchison wrote:

The short discussion on pop3d not changing \Seen state got me thinking 
about the overall interaction of pop3d and nntpd with IMAP flags.


It would be fairly straightforward to have an option that updated 
\Seen state whenever a POP3 client issues a RETR command or an NNTP 
client issues a BODY or ARTICLE command.


My question is what do people think of the interaction between 
pop3d/nntpd and the \Deleted flag?  Should these daemons ignore 
articles that have this flag set?  Should a POP3 DELE command or a 
NNTP cancel message just set the \Deleted flag instead of expunging 
the message?


We should be able to handle all of this via imapd.conf option(s).

Should any setting which enables pop3d/nntpd to use IMAP flags be 
global or per-mailbox?


Both, with current operation being default.  Per mbox option takes 
precedence.  How are you going to enable per-mbox flags, via annotate?


Yes, it would be a mailbox annotation.

--
Kenneth Murchison
Systems Programmer
Carnegie Mellon University

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: [POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Ken Murchison

Henrique de Moraes Holschuh wrote:

On Tue, 25 Oct 2005, Ken Murchison wrote:
It would be fairly straightforward to have an option that updated \Seen 
state whenever a POP3 client issues a RETR command or an NNTP client 
issues a BODY or ARTICLE command.


I vote for this change, and if it is optional, I'd vote for it to be the
default behaviour.


I'd probably leave the existing behavior as the default.


--
Kenneth Murchison
Systems Programmer
Carnegie Mellon University

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: [POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Ken Murchison

Joseph Brennan wrote:


Ken Murchison [EMAIL PROTECTED] wrote:


It would be fairly straightforward to have an option that updated \Seen
state whenever a POP3 client issues a RETR command or an NNTP client
issues a BODY or ARTICLE command.


I'm on the fence whether this makes sense for POP.  But we've used
U Wash for a long time and marking them as seen has not raised any
questions that I can recall, so that behavior must be what users
expect or accept.


Does UW simply mark the messages as \Seen after a RETR?  I don't see any 
other way to determine if the user has actually read the message.


 The braintwister is that POP

mark deleted and IMAP mark deleted don't need to be the same thing,
so maybe POP expunge and IMAP expunge don't need to be the same thing
either.


If we do something with IMAP flags, I'd like to make the above thing 
equivalent.  Otherwise I don't see much point.



The practical problem is that POP-only users would have no way to
really expunge if DELE and QUIT don't do it, so they'd accumulate
mail until they run out of quota.  And then what do they do?


Right, which is why we need a way to allow POP3-only users to continue 
business as usual.  Presumably, by a mailbox annotation which would 
disable the global pop3_use_imapflags option.


--
Kenneth Murchison
Systems Programmer
Carnegie Mellon University

Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: [POLL] pop3d/nntpd and IMAP flags

2005-10-25 Thread Joseph Brennan



Does UW simply mark the messages as \Seen after a RETR?  I don't see any
other way to determine if the user has actually read the message.



imap first.  message 131 is not \Seen.

c fetch 131 flags
* 131 FETCH (FLAGS (Junk))
c OK FETCH completed
z logout
* BYE okari.cc.columbia.edu IMAP4rev1 server terminating connection
z OK LOGOUT completed


pop.

retr 131
+OK 7645 octets
...blablabla
quit
+OK Sayonara



imap again-- now it is \Seen

c fetch 131 flags
* 131 FETCH (FLAGS (\Seen Junk))
c OK FETCH completed




Joseph Brennan
Columbia University Information Technology


Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html