diff options
author | milo <milo@r0ot.me> | 2011-08-26 18:17:14 +0200 |
---|---|---|
committer | milo <milo@r0ot.me> | 2011-08-26 18:17:14 +0200 |
commit | f1634d33da5f918d46c9643c9c9a508500138b6b (patch) | |
tree | d6f967e50fe9565659b306fb4290d2e03ea1cc49 /src/messages.c | |
parent | 4bdd831d7f2eaf6f2ed93ed940ee5d564dcb6e47 (diff) | |
download | libssh-f1634d33da5f918d46c9643c9c9a508500138b6b.tar.gz libssh-f1634d33da5f918d46c9643c9c9a508500138b6b.tar.xz libssh-f1634d33da5f918d46c9643c9c9a508500138b6b.zip |
Free sig_blob if an error occurs
Diffstat (limited to 'src/messages.c')
-rw-r--r-- | src/messages.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/messages.c b/src/messages.c index 79dfe070..cf4dd237 100644 --- a/src/messages.c +++ b/src/messages.c @@ -603,6 +603,7 @@ SSH_PACKET_CALLBACK(ssh_packet_userauth_request){ msg->auth_request.pubkey, &sig); if (rc < 0) { + ssh_string_free(sig_blob); ssh_log(session, SSH_LOG_PACKET, "Wrong signature from peer"); msg->auth_request.signature_state = SSH_PUBLICKEY_STATE_WRONG; goto error; @@ -610,6 +611,7 @@ SSH_PACKET_CALLBACK(ssh_packet_userauth_request){ digest = ssh_msg_userauth_build_digest(session, msg, service_c); if (digest == NULL) { + ssh_string_free(sig_blob); ssh_signature_free(sig); ssh_log(session, SSH_LOG_PACKET, "Failed to get digest"); msg->auth_request.signature_state = SSH_PUBLICKEY_STATE_WRONG; |