[Dovecot] uid fetch/store always use the last uid when range is invalid
hello all;
one colleague found a strange behavior, that can be annoying :
-bash-3.1$ telnet 0 143 Trying 0.0.0.0... Connected to 0 (0.0.0.0). Escape character is '^]'.
- OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE AUTH=PLAIN AUTH=CRAM-MD5] Dovecot ready. l login login pass l OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS QUOTA] Logged in l select inbox
- FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
- OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags permitted.
- 281 EXISTS
- 0 RECENT
- OK [UNSEEN 7] First unseen.
- OK [UIDVALIDITY 1223038537] UIDs valid
- OK [UIDNEXT 363] Predicted next UID
- OK [HIGHESTMODSEQ 1] Highest l OK [READ-WRITE] Select completed. l uid fetch 363:* rfc822.size
- 281 FETCH (UID 362 RFC822.SIZE 1559) l OK Fetch completed.
and more annoying:
l uid store 1000000:* +flags (\Seen \Deleted)
- 281 FETCH (UID 362 FLAGS (\Deleted \Seen)) l OK Store completed.
1.2.10: /xam/dovecot/etc/dovecot.conf
# OS: Linux 2.6.22.14-72.fc6 i686 Fedora Core release 6 (Zod) ext3 base_dir: /opt/dovecot/var/run log_path: /opt/logs/dovecot/dovecot.log info_log_path: /opt/logs/dovecot-info.log protocols: imap pop3 managesieve listen(default): * listen(imap): * listen(pop3): * listen(managesieve): *:2000 ssl: no disable_plaintext_auth: no login_dir: /opt/dovecot/var/run/login login_executable(default): /xam/dovecot/libexec/dovecot/imap-login login_executable(imap): /xam/dovecot/libexec/dovecot/imap-login login_executable(pop3): /xam/dovecot/libexec/dovecot/pop3-login login_executable(managesieve): /xam/dovecot/libexec/dovecot/managesieve-login login_user: dovelog mail_location: maildir:/opt/vmail/%d/%n mail_cache_fields: imap.bodystructure, imap.body, mime.parts, flags, date.sent, date.received, size.virtual, size.physical mail_executable(default): /xam/dovecot/libexec/dovecot/imap mail_executable(imap): /xam/dovecot/libexec/dovecot/imap mail_executable(pop3): /xam/dovecot/libexec/dovecot/pop3 mail_executable(managesieve): /xam/dovecot/libexec/dovecot/managesieve mail_plugins(default): quota imap_quota mail_plugins(imap): quota imap_quota mail_plugins(pop3): quota mail_plugins(managesieve): mail_plugin_dir(default): /xam/dovecot/lib/dovecot/imap mail_plugin_dir(imap): /xam/dovecot/lib/dovecot/imap mail_plugin_dir(pop3): /xam/dovecot/lib/dovecot/pop3 mail_plugin_dir(managesieve): /xam/dovecot/lib/dovecot/managesieve lda: postmaster_address: postmaster@linux15.xandmail.com sendmail_path: /opt/postfix/usr/sbin/sendmail auth_socket_path: /opt/dovecot/var/run/dovecot/auth-master sendmail_path: /xam/postfix/usr/sbin/sendmail mail_plugins: quota sieve log_path: /xam/logs/deliver/deliver.log info_log_path: /xam/logs/deliver/deliver.log auth default: mechanisms: plain cram-md5 apop user: dovecot passdb: driver: sql args: /opt/dovecot/etc/dovecot-mysql.conf userdb: driver: sql args: /opt/dovecot/etc/dovecot-mysql.conf socket: type: listen client: path: /opt/dovecot/var/run/dovecot/auth-client mode: 432 user: postfix group: postfix master: path: /opt/dovecot/var/run/dovecot/auth-master mode: 384 user: vmail group: vmail plugin: quota: dict:user::proxy::quotadict quota_rule: *:storage=100M quota_rule2: *:messages=1000000 sieve: %h/sieve/dovecot.sieve sieve_global_path: /xam/dovecot/etc/sieve/default sieve_global_dir: /xam/dovecot/etc/sieve sieve_dir: %h/sieve/ mail_log_max_lines_per_sec: 0 mail_log_group_events: no mail_log_events: delete undelete expunge copy mail_log_fields: uid box msgid size dict: quotadict: mysql:/opt/dovecot/etc/dovecot-dict-quota.conf path: /opt/dovecot/var/run/dict-server
On 11.3.2010, at 11.27, Jean-Baptiste Vignaud wrote:
one colleague found a strange behavior, that can be annoying : .. and more annoying:
l uid store 1000000:* +flags (\Seen \Deleted)
- 281 FETCH (UID 362 FLAGS (\Deleted \Seen)) l OK Store completed.
and exactly as required by RFC 3501.
On Thu, Mar 11, 2010 at 10:54 AM, Timo Sirainen <tss@iki.fi> wrote:
one colleague found a strange behavior, that can be annoying : .. and more annoying:
l uid store 1000000:* +flags (\Seen \Deleted)
- 281 FETCH (UID 362 FLAGS (\Deleted \Seen)) l OK Store completed.
and exactly as required by RFC 3501.
Thanks; i'll tell him :)
It seems he has seen another server that does not comply with this.
JB
On 11.3.2010, at 12.07, Jean-Baptiste Vignaud wrote:
l uid store 1000000:* +flags (\Seen \Deleted)
- 281 FETCH (UID 362 FLAGS (\Deleted \Seen)) l OK Store completed.
and exactly as required by RFC 3501.
Thanks; i'll tell him :)
It seems he has seen another server that does not comply with this.
Yeah, Courier doesn't. Anyway if you're writing an IMAP client, you could instead do:
uid store 1000000:4294967295
that'll do what you want.
participants (2)
-
Jean-Baptiste Vignaud
-
Timo Sirainen