diff options
-rw-r--r-- | lib/ssh-libssh.c | 1 | ||||
-rw-r--r-- | tests/data/Makefile.inc | 2 | ||||
-rw-r--r-- | tests/data/test656 | 33 |
3 files changed, 35 insertions, 1 deletions
diff --git a/lib/ssh-libssh.c b/lib/ssh-libssh.c index f40f074b9..12d618cfe 100644 --- a/lib/ssh-libssh.c +++ b/lib/ssh-libssh.c @@ -663,6 +663,7 @@ static CURLcode myssh_statemach_act(struct connectdata *conn, bool *block) if(rc != SSH_OK) { failf(data, "Could not load private key file %s", data->set.str[STRING_SSH_PRIVATE_KEY]); + MOVE_TO_ERROR_STATE(CURLE_LOGIN_DENIED); break; } diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc index 20274b37c..518a5a543 100644 --- a/tests/data/Makefile.inc +++ b/tests/data/Makefile.inc @@ -83,7 +83,7 @@ test617 test618 test619 test620 test621 test622 test623 test624 test625 \ test626 test627 test628 test629 test630 test631 test632 test633 test634 \ test635 test636 test637 test638 test639 test640 test641 test642 \ test643 test644 test645 test646 test647 test648 test649 test650 test651 \ -test652 test653 test654 test655 \ +test652 test653 test654 test655 test656 \ \ test700 test701 test702 test703 test704 test705 test706 test707 test708 \ test709 test710 test711 test712 test713 test714 test715 \ diff --git a/tests/data/test656 b/tests/data/test656 new file mode 100644 index 000000000..4107d3d17 --- /dev/null +++ b/tests/data/test656 @@ -0,0 +1,33 @@ +<testcase> +<info> +<keywords> +SFTP +FAILURE +</keywords> +</info> + +# +# Client-side +<client> +<server> +sftp +</server> + <name> +SFTP retrieval with nonexistent private key file + </name> + <command> +--key DOES_NOT_EXIST --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure --connect-timeout 8 +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<valgrind> +disable +</valgrind> +<errorcode> +67 +</errorcode> +</verify> +</testcase> |