Bug#471563: cyrus-imapd-2.2: After the first 'id' command is issues Cyrus IMAPD always returns an error
Daniel Pittman
daniel at rimspace.net
Tue Mar 18 23:22:21 UTC 2008
Package: cyrus-imapd-2.2
Version: 2.2.13-10
Severity: important
I was testing the Zimbra Desktop IMAP client against my Cyrus server and
found what I thought to be a bug in that client. On further
investigation I believe this is a bug in the Cyrus IMAPD component; the
following is from the original bug:
] nc rimspace.net 143
* OK anu Cyrus IMAP4 v2.2.13-Debian-2.2.13-10 server ready
a0 capability
* CAPABILITY IMAP4 IMAP4rev1 ACL QUOTA LITERAL+ MAILBOX-REFERRALS NAMESPACE
UIDPLUS ID NO_ATOMIC_RENAME UNSELECT CHILDREN MULTIAPPEND BINARY SORT
THREAD=ORDEREDSUBJECT THREAD=REFERENCES ANNOTATEMORE IDLE STARTTLS
a0 OK Completed
a1 id ("vendor" "Zimbra" "os" "Linux" "os-version" "12")
* ID ("name" "Cyrus IMAPD" "version" "v2.2.13-Debian-2.2.13-10 2006/11/13
16:17:53" "vendor" "Project Cyrus" "support-url" "http://asg.web.cmu.edu/cyrus"
"os" "Linux" "os-version" "2.6.18-ovz-028stab051.1" "environment" "Built w/
Cyrus SASL 2.1.22; Running w/Cyrus SASL 2.1.22; Built w/Sleepycat Software:
Berkeley DB 4.2.52: (December 3, 2003); Running w/Sleepycat Software: Berkeley
DB 4.2.52: (December 3, 2003); Built w/OpenSSL 0.9.8c 05 Sep 2006; Running w/
OpenSSL 0.9.8c 05 Sep 2006; CMU Sieve 2.2; TCP Wrappers; NET-SNMP; mmap =
shared; lock = fcntl; nonblock = fcntl; idle = poll")
a1 OK Completed
a2 id ("vendor" "zimbra")
a2 NO Only one Id allowed in non-authenticated state
a3 logout
* BYE LOGOUT received
a3 OK Completed
] nc rimspace.net 143
* OK anu Cyrus IMAP4 v2.2.13-Debian-2.2.13-10 server ready
a4 id ("vendor" "zimbra")
a4 NO Only one Id allowed in non-authenticated state
a5 logout
* BYE LOGOUT received
a5 OK Completed
So, it looks like /any/ id command after the first returns the same state.
How about this...
] nc rimspace.net 143
* OK anu Cyrus IMAP4 v2.2.13-Debian-2.2.13-10 server ready
a0 login daniel "XXXXXXXXXX"
a0 OK User logged in
a1 logout
* BYE LOGOUT received
a1 OK Completed
] nc rimspace.net 143
* OK anu Cyrus IMAP4 v2.2.13-Debian-2.2.13-10 server ready
a0 id ("vendor" "Zimbra")
a0 NO Only one Id allowed in non-authenticated state
a1 logout
* BYE LOGOUT received
a1 OK Completed
...which makes it look like an upstream bug in Cyrus IMAP where any ID command
will result in that error to any subsequent ID command or, at least, where that
happens iff you don't authenticate correctly the first time.
While the Zimbra client should probably cope with the failure of the id
command it is not reasonable, I think, that any user can cause ID
commands to fail globally for all other users.
Regards,
Daniel
-- System Information:
Debian Release: 4.0
APT prefers stable
APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-ovz-028stab051.1
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8)
Versions of packages cyrus-imapd-2.2 depends on:
ii cyrus-common-2.2 2.2.13-10 Cyrus mail system (common files)
ii libc6 2.3.6.ds1-13etch5 GNU C Library: Shared libraries
ii libdb4.2 4.2.52+dfsg-2 Berkeley v4.2 Database Libraries [
ii libsasl2-2 2.1.22.dfsg1-8 Authentication abstraction library
ii libssl0.9.8 0.9.8c-4etch1 SSL shared libraries
ii libwrap0 7.6.dbs-13 Wietse Venema's TCP wrappers libra
cyrus-imapd-2.2 recommends no packages.
-- no debconf information
More information about the Pkg-Cyrus-imapd-Debian-devel
mailing list