diff --git a/libssh/client.c b/libssh/client.c index 4c4f6493..43081726 100644 --- a/libssh/client.c +++ b/libssh/client.c @@ -296,6 +296,7 @@ static int dh_handshake(ssh_session session) { goto error; } session->dh_server_signature = signature; + signature=NULL; /* ownership changed */ if (dh_build_k(session) < 0) { ssh_set_error(session, SSH_FATAL, "Cannot build k number"); rc = SSH_ERROR; @@ -400,10 +401,6 @@ error: string_burn(f); string_free(f); } - if(pubkey != NULL){ - string_burn(pubkey); - string_free(pubkey); - } if(signature != NULL){ string_burn(signature); string_free(signature);