ssh: prevent a logic error that could result in an infinite loop

This commit is contained in:
Dan Fandrich 2014-03-15 09:57:41 +01:00
parent ca7d1de69c
commit 9b5b6a2b1a
1 changed files with 2 additions and 1 deletions

View File

@ -2204,7 +2204,8 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
/* Check if nextstate is set and move .nextstate could be POSTQUOTE_INIT
After nextstate is executed,the control should come back to
SSH_SFTP_CLOSE to pass the correct result back */
if(sshc->nextstate != SSH_NO_STATE) {
if(sshc->nextstate != SSH_NO_STATE &&
sshc->nextstate != SSH_SFTP_CLOSE) {
state(conn, sshc->nextstate);
sshc->nextstate = SSH_SFTP_CLOSE;
}