I'm going to take exception to the way dovecot (1.2.8) is returning
the NONEXISTENT response code in certain cases. For example, these
transactions:
c: 1 EXAMINE "foo"
S: 1 NO [NONEXISTENT] Mailbox doesn't exist: foo
C: 2 STATUS "foo" (MESSAGES)
S: 2 NO [NONEXISTENT] Mailbox doesn't exist: foo
...don't appear to be the proper usage of NONEXISTENT.
From RFC 5530[3]:
NONEXISTENT
The operation attempts to delete something that does not exist.
NONEXISTENT should be used for RENAME or DELETE (also the UID EXPUNGE)
commands. Although the textual description is appropriate in the
above situations - the mailbox truly doesn't exist - this is not what
the response code indicates. Under the RFCs, it seems that failure of
a STATUS or EXAMINE command with a NO response *could* mean the
mailbox doesn't exist, but there is no method of reporting this via a
response code.
michael
On Fri, 2009-11-20 at 15:43 -0700, Michael M. Slusarz wrote:> From RFC 5530[3]: > > NONEXISTENT > > The operation attempts to delete something that does not exist. > > NONEXISTENT should be used for RENAME or DELETE (also the UID EXPUNGE) > commands.Well, that sucks.. I'll ask Arnt if he had an actual reason for the above text, but I suppose I'll anyway have to modify Dovecot to internally separate between NONEXISTENT and NONEXISTENT_DELETE or something. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20091120/412d0cac/attachment-0002.bin>
Possibly Parallel Threads
- NONEXISTENT handling
- include => parkedcalls but nonexistent context 'parkedcalls'
- database configuration specifies nonexistent postgresql adapter
- virtual Folder Plugin with "." Separator: [NONEXISTENT] Mailbox doesn't exist
- [Ubuntu 10.10/wine 1.3.16] Nonexistent printers in pulldown