dovecot-2.2: pop3c: If POP3 server doesn't support CAPA command,...

dovecot at dovecot.org dovecot at dovecot.org
Fri Aug 10 05:24:41 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.2/rev/4b505b1c4c5b
changeset: 14809:4b505b1c4c5b
user:      Timo Sirainen <tss at iki.fi>
date:      Wed Jul 25 15:39:14 2012 +0300
description:
pop3c: If POP3 server doesn't support CAPA command, try to use UIDL anyway.

diffstat:

 src/lib-storage/index/pop3c/pop3c-client.c |  9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diffs (19 lines):

diff -r b6df5871632a -r 4b505b1c4c5b src/lib-storage/index/pop3c/pop3c-client.c
--- a/src/lib-storage/index/pop3c/pop3c-client.c	Mon Jul 23 21:43:39 2012 +0300
+++ b/src/lib-storage/index/pop3c/pop3c-client.c	Wed Jul 25 15:39:14 2012 +0300
@@ -348,8 +348,13 @@
 		client->state = POP3C_CLIENT_STATE_CAPA;
 		break;
 	case POP3C_CLIENT_STATE_CAPA:
-		if (strncasecmp(line, "-ERR", 4) == 0 ||
-		    strcmp(line, ".") == 0) {
+		if (strncasecmp(line, "-ERR", 4) == 0) {
+			/* CAPA command not supported. some commands still
+			   support UIDL though. */
+			client->capabilities |= POP3C_CAPABILITY_UIDL;
+			pop3c_client_login_finished(client);
+			break;
+		} else if (strcmp(line, ".") == 0) {
 			pop3c_client_login_finished(client);
 			break;
 		}


More information about the dovecot-cvs mailing list