aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2020-01-23 09:15:29 +0100
committerAndreas Schneider <asn@cryptomilk.org>2020-01-23 09:19:07 +0100
commit72498bac5fcaf92b11ccb58798ad8c6c0fcbee71 (patch)
treefdeb6d77e3db9fefc7778105abd09583610c992f /src
parent4b4f568a681394b73f2646a5533ae96e9f376645 (diff)
downloadlibssh-72498bac5fcaf92b11ccb58798ad8c6c0fcbee71.tar.gz
libssh-72498bac5fcaf92b11ccb58798ad8c6c0fcbee71.tar.xz
libssh-72498bac5fcaf92b11ccb58798ad8c6c0fcbee71.zip
pki_crypto: Fix possible memory leak on error
CID #1409680 Signed-off-by: Andreas Schneider <asn@cryptomilk.org> Reviewed-by: Jakub Jelen <jjelen@redhat.com>
Diffstat (limited to 'src')
-rw-r--r--src/pki_crypto.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/pki_crypto.c b/src/pki_crypto.c
index 000afd35..7e10d8c6 100644
--- a/src/pki_crypto.c
+++ b/src/pki_crypto.c
@@ -1576,9 +1576,9 @@ static int pki_signature_from_rsa_blob(const ssh_key pubkey,
ssh_signature sig)
{
uint32_t pad_len = 0;
- char *blob_orig;
- char *blob_padded_data;
- ssh_string sig_blob_padded;
+ char *blob_orig = NULL;
+ char *blob_padded_data = NULL;
+ ssh_string sig_blob_padded = NULL;
size_t rsalen = 0;
size_t len = ssh_string_len(sig_blob);
@@ -1636,6 +1636,7 @@ static int pki_signature_from_rsa_blob(const ssh_key pubkey,
return SSH_OK;
errout:
+ SSH_STRING_FREE(sig_blob_padded);
return SSH_ERROR;
}