Commit ce615101 authored by Steve Holme's avatar Steve Holme
Browse files

email: Fixed QUIT / LOGOUT being sent when SSL connect fails

parent 86c64f3d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1982,7 +1982,7 @@ static CURLcode imap_disconnect(struct connectdata *conn, bool dead_connection)

  /* The IMAP session may or may not have been allocated/setup at this
     point! */
  if(!dead_connection && imapc->pp.conn)
  if(!dead_connection && imapc->pp.conn && imapc->pp.conn->bits.protoconnstart)
    if(!imap_perform_logout(conn))
      (void)imap_block_statemach(conn); /* ignore errors on LOGOUT */

+2 −3
Original line number Diff line number Diff line
@@ -1634,8 +1634,7 @@ static CURLcode pop3_do(struct connectdata *conn, bool *done)
 * Disconnect from an POP3 server. Cleanup protocol-specific per-connection
 * resources. BLOCKING.
 */
static CURLcode pop3_disconnect(struct connectdata *conn,
                                bool dead_connection)
static CURLcode pop3_disconnect(struct connectdata *conn, bool dead_connection)
{
  struct pop3_conn *pop3c = &conn->proto.pop3c;

@@ -1645,7 +1644,7 @@ static CURLcode pop3_disconnect(struct connectdata *conn,

  /* The POP3 session may or may not have been allocated/setup at this
     point! */
  if(!dead_connection && pop3c->pp.conn)
  if(!dead_connection && pop3c->pp.conn && pop3c->pp.conn->bits.protoconnstart)
    if(!pop3_perform_quit(conn))
      (void)pop3_block_statemach(conn); /* ignore errors on QUIT */

+2 −3
Original line number Diff line number Diff line
@@ -1632,8 +1632,7 @@ static CURLcode smtp_do(struct connectdata *conn, bool *done)
 * Disconnect from an SMTP server. Cleanup protocol-specific per-connection
 * resources. BLOCKING.
 */
static CURLcode smtp_disconnect(struct connectdata *conn,
                                bool dead_connection)
static CURLcode smtp_disconnect(struct connectdata *conn, bool dead_connection)
{
  struct smtp_conn *smtpc = &conn->proto.smtpc;

@@ -1643,7 +1642,7 @@ static CURLcode smtp_disconnect(struct connectdata *conn,

  /* The SMTP session may or may not have been allocated/setup at this
     point! */
  if(!dead_connection && smtpc->pp.conn)
  if(!dead_connection && smtpc->pp.conn && smtpc->pp.conn->bits.protoconnstart)
    if(!smtp_perform_quit(conn))
      (void)smtp_block_statemach(conn); /* ignore errors on QUIT */