Ewald Dieterich
2012-Jul-19 11:16 UTC
[Dovecot] Append with literal+ and mailbox over quota
I'm appending a mail with literal+ to a mailbox that is over quota:
1 APPEND INBOX {127+}
From: <ewald.dieterich at fun.de>
To: <ewald.dieterich at fun.de>
Subject: Quota-Test
Message-ID: <abcdefg at fun.de>
Quota-Test
1 NO [OVERQUOTA] Quota exceeded (mailbox for user is full)
2 NOOP
1 BAD Error in IMAP command APPEND: Invalid arguments.
3 NOOP
3 OK NOOP completed.
Somehow the first NOOP is considered to be part of the already failed
APPEND. I have to add an empty line after to NO response for the NOOP to
work:
1 APPEND INBOX {127+}
From: <ewald.dieterich at fun.de>
To: <ewald.dieterich at fun.de>
Subject: Quota-Test
Message-ID: <abcdefg at fun.de>
Quota-Test
1 NO [OVERQUOTA] Quota exceeded (mailbox for user is full)
2 NOOP
2 OK NOOP completed.
Can somebody confirm this to be bug?
Here is the output of doveconf -n
# 2.1.8: /usr/local/dovecot-orig/etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.3 ext3
auth_debug = yes
auth_verbose = yes
debug_log_path = /var/log/dovecot/debug.log
disable_plaintext_auth = no
info_log_path = /var/log/dovecot/info.log
log_path = /var/log/dovecot/error.log
mail_debug = yes
mail_location = mdbox:/var/spool/dovecot/%2.256Hu/%3.4096Hu/%u
mail_plugins = notify mail_log quota acl
namespace {
inbox = yes
location prefix = INBOX.
separator = .
type = private
}
passdb {
driver = pam
}
plugin {
acl = vfile
autocreate = INBOX.Drafts
autocreate2 = INBOX.Sent
autocreate3 = INBOX.Trash
quota = dict:User
quota::file:/var/spool/dovecot/%2.256Hu/%3.4096/%u/dovecot.dict
quota_rule = *:bytes=2000
}
ssl = no
userdb {
driver = passwd
}
protocol imap {
mail_plugins = notify mail_log quota acl autocreate imap_quota imap_acl
Ewald Dieterich
2012-Jul-19 15:21 UTC
[Dovecot] Append with literal+ and mailbox over quota
On 07/19/12 13:16, Ewald Dieterich wrote:> I'm appending a mail with literal+ to a mailbox that is over quota: > > 1 APPEND INBOX {127+}[...]> 1 NO [OVERQUOTA] Quota exceeded (mailbox for user is full) > 2 NOOP > 1 BAD Error in IMAP command APPEND: Invalid arguments. > 3 NOOP > 3 OK NOOP completed. > > Somehow the first NOOP is considered to be part of the already failed > APPEND. I have to add an empty line after to NO response for the NOOP to > work: > > 1 APPEND INBOX {127+}[...]> 1 NO [OVERQUOTA] Quota exceeded (mailbox for user is full) > > 2 NOOP > 2 OK NOOP completed. > > Can somebody confirm this to be bug?I think I'm just confused because Dovecot sends the NO reply before I finish the string literal. In the first case I send an invalid string literal (which Dovecot tries to interpret as a MULTIAPPEND) and in the second case I finish the string literal correctly with CRLF. So I guess everything is OK.