diff options
author | Jeremy Allison <jra@samba.org> | 2008-05-20 12:09:48 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2008-05-20 12:09:48 -0700 |
commit | 8ca459e067c3d4f3495e0a6dafea7296e3dfb2ab (patch) | |
tree | ba4266142ff03a157f41b4428d9e0b8484abb398 | |
parent | e84026a29b795ab5fc73c81d7790ec83aad83987 (diff) | |
download | samba-8ca459e067c3d4f3495e0a6dafea7296e3dfb2ab.tar.gz samba-8ca459e067c3d4f3495e0a6dafea7296e3dfb2ab.tar.bz2 samba-8ca459e067c3d4f3495e0a6dafea7296e3dfb2ab.zip |
Fix bug #5477 - recvfile code was broken.
Jeremy.
(This used to be commit 830337f054a6c0646d85df33d9958e99283e727a)
-rw-r--r-- | source3/lib/recvfile.c | 10 | ||||
-rw-r--r-- | source3/smbd/process.c | 12 |
2 files changed, 14 insertions, 8 deletions
diff --git a/source3/lib/recvfile.c b/source3/lib/recvfile.c index 6e20933350..513742ce8f 100644 --- a/source3/lib/recvfile.c +++ b/source3/lib/recvfile.c @@ -58,6 +58,11 @@ static ssize_t default_sys_recvfile(int fromfd, size_t total_written = 0; char *buffer = NULL; + DEBUG(10,("default_sys_recvfile: from = %d, to = %d, " + "offset=%.0f, count = %lu\n", + fromfd, tofd, (double)offset, + (unsigned long)count)); + if (count == 0) { return 0; } @@ -143,6 +148,11 @@ ssize_t sys_recvfile(int fromfd, static bool try_splice_call = true; size_t total_written = 0; + DEBUG(10,("sys_recvfile: from = %d, to = %d, " + "offset=%.0f, count = %lu\n", + fromfd, tofd, (double)offset, + (unsigned long)count)); + if (count == 0) { return 0; } diff --git a/source3/smbd/process.c b/source3/smbd/process.c index ab737a89a7..c8ad19dd15 100644 --- a/source3/smbd/process.c +++ b/source3/smbd/process.c @@ -252,6 +252,8 @@ static NTSTATUS receive_smb_raw_talloc_partial_read(TALLOC_CTX *mem_ctx, timeout, toread); if (!NT_STATUS_IS_OK(status)) { + DEBUG(10, ("receive_smb_raw_talloc_partial_read: %s\n", + nt_errstr(status))); return status; } } @@ -282,14 +284,8 @@ static NTSTATUS receive_smb_raw_talloc(TALLOC_CTX *mem_ctx, int fd, smb_len_large(lenbuf) > min_recv_size && /* Could be a UNIX large writeX. */ !srv_is_signing_active()) { - status = receive_smb_raw_talloc_partial_read( - mem_ctx, lenbuf, fd, buffer, timeout, p_unread, &len); - - if (!NT_STATUS_IS_OK(status)) { - DEBUG(10, ("receive_smb_raw: %s\n", - nt_errstr(status))); - return status; - } + return receive_smb_raw_talloc_partial_read( + mem_ctx, lenbuf, fd, buffer, timeout, p_unread, plen); } if (!valid_packet_size(len)) { |