imap.c: Fixed unnecessary state change if starttls fails
authorSteve Holme <steve_holme@hotmail.com>
Sun, 27 Jan 2013 10:41:10 +0000 (10:41 +0000)
committerSteve Holme <steve_holme@hotmail.com>
Sun, 27 Jan 2013 10:41:10 +0000 (10:41 +0000)
The state machine should only be changed to IMAP_STARTTLS when the
STARTTLS command has been successfully sent to the server.

lib/imap.c

index 5e845fb..4191f57 100644 (file)
@@ -601,7 +601,8 @@ static CURLcode imap_state_servergreet_resp(struct connectdata *conn,
        to TLS connection now */
     const char *str = getcmdid(conn);
     result = imap_sendf(conn, str, "%s STARTTLS", str);
-    state(conn, IMAP_STARTTLS);
+    if(!result)
+      state(conn, IMAP_STARTTLS);
   }
   else
     result = imap_state_capability(conn);