Bart Schaefer wrote:
> Denying a move is the equivalent of leaving \Deleted out of the FLAGS
> response. You can't allow copy plus allow delete plus allow expunge if
> you want to deny move; denying a specific MOVE command would only force
> the user to take more steps.
Lyndon Nerenberg wrote:
> Why can't you:
>
> C: a copy 1 othermailbox
> S: a OK copy done
> C: b store 1 +flags \deleted
> S: b NO you cannot set the \deleted flag on message 1
I want to allow the user to delete the message, so I can't just
disallow storing the \deleted flag. I really, truly, want
to distinguish user action COPY from user action MOVE. The
destination mailbox is not actually a message repository (hence,
moving a message there makes no sense and should be denied); copying
a message there has a particular side effect related to the message
being copied. You might argue this is outside the scope of imap4,
but allowing this is tremendously useful. The server can support
these odd mailboxes and if I could only distinguish client move
from client copy my server would be able to offer very useful
functions to virtually any client (no plug-in required). In
a purist sense, I probably shouldn't be using COPY but every
client already supports it and if it weren't inextricably
confused with MOVE it has adequate semantics for what I
want.
Rick Block
Avaya Inc