Thread (1 message) 1 message, 1 author, 2016-06-16

Re: [PATCH 1/2] imap-send: check for NOLOGIN capability only when using LOGIN command

From: Junio C Hamano <hidden>
Date: 2016-06-16 02:18:43

Kazuki Yamaguchi [off-list ref] writes:
Don't check for NOLOGIN (LOGINDISABLED) capability when imap.authMethod
is specified.

LOGINDISABLED capability doesn't forbid using AUTHENTICATE, so it should
be allowed, or we can't connect to IMAP servers which only accepts
AUTHENTICATE command.
Makes sense.  The code with this patch applied implements "An IMAP
client which complies with this specification MUST NOT issue the
LOGIN command if this capability is present." correctly.

Will queue.  Thanks.
quoted hunk
Signed-off-by: Kazuki Yamaguchi <redacted>
---
 imap-send.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/imap-send.c b/imap-send.c
index 2c52027c8445..30979f0c63cc 100644
--- a/imap-send.c
+++ b/imap-send.c
@@ -1095,11 +1095,6 @@ static struct imap_store *imap_open_store(struct imap_server_conf *srvc, char *f
 				srvc->pass = xstrdup(cred.password);
 		}
 
-		if (CAP(NOLOGIN)) {
-			fprintf(stderr, "Skipping account %s@%s, server forbids LOGIN\n", srvc->user, srvc->host);
-			goto bail;
-		}
-
 		if (srvc->auth_method) {
 			struct imap_cmd_cb cb;
 
@@ -1123,6 +1118,11 @@ static struct imap_store *imap_open_store(struct imap_server_conf *srvc, char *f
 				goto bail;
 			}
 		} else {
+			if (CAP(NOLOGIN)) {
+				fprintf(stderr, "Skipping account %s@%s, server forbids LOGIN\n",
+					srvc->user, srvc->host);
+				goto bail;
+			}
 			if (!imap->buf.sock.ssl)
 				imap_warn("*** IMAP Warning *** Password is being "
 					  "sent in the clear\n");
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help