diff options
author | Mark Riordan <mriordan@ipswitch.com> | 2011-04-08 10:59:05 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2011-04-08 10:59:05 +0200 |
commit | 29bb718a93969ef429e86f3bb1734d2548846d46 (patch) | |
tree | 2a56d8b9a70ce62b56ea017b34d909baa7d8fc30 | |
parent | 1c062b22bf8107e6cddce0b198e0e50441826cfd (diff) | |
download | libssh-29bb718a93969ef429e86f3bb1734d2548846d46.tar.gz libssh-29bb718a93969ef429e86f3bb1734d2548846d46.tar.xz libssh-29bb718a93969ef429e86f3bb1734d2548846d46.zip |
sftp: Fixed double-free in sftp_unlink().
-rw-r--r-- | src/sftp.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -2109,10 +2109,12 @@ int sftp_unlink(sftp_session sftp, const char *file) { ssh_set_error_oom(sftp->session); ssh_buffer_free(buffer); ssh_string_free(filename); + return -1; } if (sftp_packet_write(sftp, SSH_FXP_REMOVE, buffer) < 0) { ssh_buffer_free(buffer); ssh_string_free(filename); + return -1; } ssh_string_free(filename); ssh_buffer_free(buffer); @@ -2846,7 +2848,7 @@ sftp_statvfs_t sftp_statvfs(sftp_session sftp, const char *path) { ssh_set_error(sftp,SSH_REQUEST_DENIED,"sftp version %d does not support sftp_statvfs",sftp->version); return NULL; } - + buffer = ssh_buffer_new(); if (buffer == NULL) { ssh_set_error_oom(sftp->session); |