]> granicus.if.org Git - curl/commit
ssh: loop the state machine if not done and not blocking
authorDaniel Stenberg <daniel@haxx.se>
Mon, 4 Mar 2019 15:17:10 +0000 (16:17 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 5 Mar 2019 06:57:11 +0000 (07:57 +0100)
commitd6f73af7303fceb7751fbd12cdadad25a3b94ed3
treef2d089609468bd58c3dead43080e9b8af14b745f
parentb0972bc8e1296dff4b43869ef88123ecce456c41
ssh: loop the state machine if not done and not blocking

If the state machine isn't complete, didn't fail and it didn't return
due to blocking it can just as well loop again.

This addresses the problem with SFTP directory listings where we would
otherwise return back to the parent and as the multi state machine
doesn't have any code for using CURLM_CALL_MULTI_PERFORM for as long the
doing phase isn't complete, it would return out when in reality there
was more data to deal with.

Fixes #3506
Closes #3644
lib/ssh.c