From 0338bba66cd60276fb918a6c24b8886a0f6579f2 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Fri, 23 Oct 2020 12:43:13 +0200 Subject: replaced some deprecated functions in libssh --- src/cssh.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/cssh.c b/src/cssh.c index c45f310..0ef0a78 100644 --- a/src/cssh.c +++ b/src/cssh.c @@ -222,7 +222,7 @@ static int accept_server( ssh_session session, unsigned char *hash, size_t hlen fprintf( stderr, "Do you want to write this new key into the known host file for future usage?\n" ); if( get_yes_or_no( ) ) { - if( ssh_write_knownhost( session ) < 0 ) { + if( ssh_session_update_known_hosts( session ) != SSH_OK ) { fprintf( stderr, "ERROR: error while writing known host file: %s\n", strerror( errno ) ); return -1; @@ -234,12 +234,12 @@ static int accept_server( ssh_session session, unsigned char *hash, size_t hlen static int verify_knownhost( ssh_session session ) { - int state; + enum ssh_known_hosts_e state; - state = ssh_is_server_known( session ); + state = ssh_session_is_known_server( session ); ssh_key srv_pubkey; - int rc = ssh_get_publickey( session, &srv_pubkey ); + int rc = ssh_get_server_publickey( session, &srv_pubkey ); if( rc < 0 ) { fprintf( stderr, "ERROR: Failed to get public key of host: %s\n", ssh_get_error( session ) ); @@ -262,11 +262,12 @@ static int verify_knownhost( ssh_session session ) ssh_clean_pubkey_hash( &hash ); return 0; - case SSH_SERVER_KNOWN_CHANGED: - fprintf( stderr, "ERROR: Host key for server changed : server's one is now:\n" ); - ssh_print_hexa( "Public key hash", hash, hlen ); + case SSH_SERVER_KNOWN_CHANGED: { + char *hexa = ssh_get_hexa( hash, hlen ); + fprintf( stderr, "ERROR: Host key for server changed : server's one is now:\n%s\n", hexa ); + ssh_string_free_char( hexa ); ssh_clean_pubkey_hash( &hash ); - return -1; + } return -1; case SSH_SERVER_FOUND_OTHER: fprintf( stderr, "ERROR: The server gave us an unexpected host key, this could be an attack\n" ); -- cgit v1.2.3-54-g00ecf