diff options
author | Andreas Schneider <asn@cryptomilk.org> | 2012-10-07 22:03:35 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2012-10-07 22:03:35 +0200 |
commit | ff53664f540517a6e7c634ae9cc804d168a9e9a8 (patch) | |
tree | 65fb33ec9b60f84b31af20ded19ef30733e64049 | |
parent | b811b89f57ec167612948e688d75015f85b9c8f4 (diff) | |
download | libssh-ff53664f540517a6e7c634ae9cc804d168a9e9a8.tar.gz libssh-ff53664f540517a6e7c634ae9cc804d168a9e9a8.tar.xz libssh-ff53664f540517a6e7c634ae9cc804d168a9e9a8.zip |
sftp: Fix a possible null pointer dereference in sftp_async_read.
-rw-r--r-- | src/sftp.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -1834,13 +1834,18 @@ int sftp_async_read_begin(sftp_file file, uint32_t len){ /* Wait for an asynchronous read to complete and save the data. */ int sftp_async_read(sftp_file file, void *data, uint32_t size, uint32_t id){ - sftp_session sftp = file->sftp; + sftp_session sftp; sftp_message msg = NULL; sftp_status_message status; ssh_string datastring; int err = SSH_OK; uint32_t len; + if (file == NULL) { + return SSH_ERROR; + } + sftp = file->sftp; + if (file->eof) { return 0; } |