aboutsummaryrefslogtreecommitdiff
path: root/lib/ssh.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2012-06-10 23:39:04 +0200
committerDaniel Stenberg <daniel@haxx.se>2012-06-10 23:40:35 +0200
commit6cd084a3b5129d9ab8db3e5bc0f094943d7eef89 (patch)
tree26d32ff78ce1a9897cee17b50196e7c401959be7 /lib/ssh.c
parent72c7c1d64e101675520387c0d758b63f71d4c48a (diff)
Curl_pgrsDone: return int and acknowledge return code
Since Curl_pgrsDone() itself calls Curl_pgrsUpdate() which may return an abort instruction or similar we need to return that info back and subsequently properly handle return codes from Curl_pgrsDone() where used. (Spotted by a Coverity scan)
Diffstat (limited to 'lib/ssh.c')
-rw-r--r--lib/ssh.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/ssh.c b/lib/ssh.c
index 90c8013c2..a1abc5b08 100644
--- a/lib/ssh.c
+++ b/lib/ssh.c
@@ -2820,7 +2820,8 @@ static CURLcode ssh_done(struct connectdata *conn, CURLcode status)
if(sftp_scp)
Curl_safefree(sftp_scp->path);
- Curl_pgrsDone(conn);
+ if(Curl_pgrsDone(conn))
+ return CURLE_ABORTED_BY_CALLBACK;
conn->data->req.keepon = 0; /* clear all bits */
return result;