IMAP capabilities incorrectly assumed with IMAP proxy environment
|Reported by:||mbowie||Owned by:|
We run a number of IMAP servers behind some perdition proxy servers. Different IMAP backends have different CAPABILITY values depending on their specific application and in some cases IMAP distribution.
At the moment, RoundCube appears to take the CAPABILITY value as reported by the proxy when it connects, rather than the value reported by the backend server it's ultimately proxied to. As a result, users which were directed to a Cyrus IMAP backends were unable to create folders, since Cyrus was not detected by RC and thus the correct naming convention was not applied.
To work around this, we've temporarily added an additional perdition proxy which reports the same CAPABILITY list as the Cyrus servers in question, which resolves the issue.
Having not tried it in practice, I'd imagine that while the initial CAPABILITY is suitable for establishing that IMAP is available, a second CAPABILITY statement after LOGIN would ensure that the correct server is recognized.