Hi,
we just updated our master + replication servers from 2.3.13 to 2.3.16
and discovered, that the sync_client is dying with a segfault when it
connects to the replication server which has set "allowplaintext: no".
We managed to trace down the problem and came up with the following
patch against imap/backend.c to solve it.
Gernot & Didi
p.s.:
Allowing plaintext authentication by "allowplaintext: yes" on the
replication server would also be an option as workarround ... but not
for us :-)
--- backend.c.orig Thu Apr 23 19:10:05 2009
+++ backend.c Tue Jan 12 23:39:24 2010
@@ -93,7 +93,7 @@
resp = (automatic == AUTO_BANNER) ? prot->banner.resp : prot->capa_cmd.resp;
- if (!automatic) {
+ if (!automatic && (prot->capa_cmd.cmd!=NULL)) {
/* no capability command */
if (!prot->capa_cmd.cmd) return NULL;
@@ -449,7 +449,8 @@
if ((server[0] != '/') ||
(strcmp(prot->sasl_service, "lmtp") &&
strcmp(prot->sasl_service, "csync"))) {
- char *mlist = xstrdup(mechlist); /* backend_auth is destructive */
+ char *mlist=NULL;
+ if (mechlist) mlist= xstrdup(mechlist); /* backend_auth is destructive */
if ((r = backend_authenticate(ret, prot, &mlist, userid,
cb, auth_status))) {
----
Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html