Immanuel pointed out that public key SSH auth failed if no public/private

key was specified and there was no HOME environment variable, and then it
didn't continue to try the other auth methods. Now it will instead try to
get the files id_dsa.pub and id_dsa from the current directory if none of
the two conditions were met.
This commit is contained in:
Daniel Stenberg 2007-09-18 21:14:28 +00:00
parent 0159636373
commit 45fd6685bd
3 changed files with 14 additions and 0 deletions

View file

@ -407,6 +407,9 @@ static CURLcode ssh_statemach_act(struct connectdata *conn)
sshc->rsa_pub = aprintf("%s", data->set.str[STRING_SSH_PUBLIC_KEY]);
else if (home)
sshc->rsa_pub = aprintf("%s/.ssh/id_dsa.pub", home);
else
/* as a final resort, try current dir! */
sshc->rsa_pub = strdup("id_dsa.pub");
if (sshc->rsa_pub == NULL) {
Curl_safefree(home);
@ -420,6 +423,9 @@ static CURLcode ssh_statemach_act(struct connectdata *conn)
sshc->rsa = aprintf("%s", data->set.str[STRING_SSH_PRIVATE_KEY]);
else if (home)
sshc->rsa = aprintf("%s/.ssh/id_dsa", home);
else
/* as a final resort, try current dir! */
sshc->rsa = strdup("id_dsa");
if (sshc->rsa == NULL) {
Curl_safefree(home);