dovecot-2.2: lib-imap-client: Get capabilities again after recon...

dovecot at dovecot.org dovecot at dovecot.org
Tue Mar 3 15:26:10 UTC 2015


details:   http://hg.dovecot.org/dovecot-2.2/rev/31c0b82250b6
changeset: 18285:31c0b82250b6
user:      Timo Sirainen <tss at iki.fi>
date:      Tue Mar 03 17:25:33 2015 +0200
description:
lib-imap-client: Get capabilities again after reconnection to server.
This is needed most importantly if we're not using plaintext authentication
to log in.

diffstat:

 src/lib-imap-client/imapc-connection.c |  9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diffs (19 lines):

diff -r e270bf24491c -r 31c0b82250b6 src/lib-imap-client/imapc-connection.c
--- a/src/lib-imap-client/imapc-connection.c	Tue Mar 03 01:05:49 2015 +0200
+++ b/src/lib-imap-client/imapc-connection.c	Tue Mar 03 17:25:33 2015 +0200
@@ -400,6 +400,15 @@
 		conn->fd = -1;
 	}
 
+	/* get capabilities again after reconnection. this is especially
+	   important because post-login capabilities often do not contain AUTH=
+	   capabilities. */
+	conn->capabilities = 0;
+	if (conn->capabilities_list != NULL) {
+		p_strsplit_free(default_pool, conn->capabilities_list);
+		conn->capabilities_list = NULL;
+	}
+
 	imapc_connection_set_state(conn, IMAPC_CONNECTION_STATE_DISCONNECTED);
 	imapc_connection_abort_commands(conn, NULL, reconnecting);
 }


More information about the dovecot-cvs mailing list