aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Holme <steve_holme@hotmail.com>2013-01-27 10:44:21 +0000
committerSteve Holme <steve_holme@hotmail.com>2013-01-27 10:44:21 +0000
commit0e5e720c1901b203fa6ef578ad137847796f71c8 (patch)
tree0ee349e3fe15c6a864f467a2ea271bcb643db318
parent3dbf11d0a1f6986331d3a49a78c138f78693efa9 (diff)
smtp.c: Fixed unnecessary state change if starttls fails
The state machine should only be changed to SMTP_STARTTLS when the STARTTLS command has been successfully sent to the server.
-rw-r--r--lib/smtp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/smtp.c b/lib/smtp.c
index 2433a6447..6204de0e8 100644
--- a/lib/smtp.c
+++ b/lib/smtp.c
@@ -543,7 +543,8 @@ static CURLcode smtp_state_ehlo_resp(struct connectdata *conn, int smtpcode,
/* We don't have a SSL/TLS connection yet, but SSL is requested. Switch
to TLS connection now */
result = Curl_pp_sendf(&conn->proto.smtpc.pp, "STARTTLS");
- state(conn, SMTP_STARTTLS);
+ if(!result)
+ state(conn, SMTP_STARTTLS);
}
else
result = smtp_authenticate(conn);