diff options
Diffstat (limited to 'libssh/keyfiles.c')
-rw-r--r-- | libssh/keyfiles.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/libssh/keyfiles.c b/libssh/keyfiles.c index 5e7fe4f2..8dc2f10f 100644 --- a/libssh/keyfiles.c +++ b/libssh/keyfiles.c @@ -1386,11 +1386,13 @@ int ssh_is_server_known(ssh_session session) { enter_function(); - if (ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, NULL) < 0) { - ssh_set_error(session, SSH_REQUEST_DENIED, - "Can't find a known_hosts file"); - leave_function(); - return SSH_SERVER_FILE_NOT_FOUND; + if (session->knownhosts == NULL) { + if (ssh_options_set(session, SSH_OPTIONS_KNOWNHOSTS, NULL) < 0) { + ssh_set_error(session, SSH_REQUEST_DENIED, + "Can't find a known_hosts file"); + leave_function(); + return SSH_SERVER_FILE_NOT_FOUND; + } } if (session->host == NULL) { |