[SCM] Samba Shared Repository - branch v3-2-test updated - release-3-2-0pre2-2386-g47eb2e8

Jeremy Allison jra at samba.org
Tue May 20 19:11:24 GMT 2008


The branch, v3-2-test has been updated
       via  47eb2e8fa858d9f12637eb9a10466271335f61aa (commit)
      from  006e45fba01e05c664359e8104d495609d9555f7 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test


- Log -----------------------------------------------------------------
commit 47eb2e8fa858d9f12637eb9a10466271335f61aa
Author: Jeremy Allison <jra at samba.org>
Date:   Tue May 20 12:10:01 2008 -0700

    Fix bug #5477 - recvfile code was broken.
    Jeremy.

-----------------------------------------------------------------------

Summary of changes:
 source/lib/recvfile.c |   10 ++++++++++
 source/smbd/process.c |   12 ++++--------
 2 files changed, 14 insertions(+), 8 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/lib/recvfile.c b/source/lib/recvfile.c
index 6e20933..513742c 100644
--- a/source/lib/recvfile.c
+++ b/source/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/source/smbd/process.c b/source/smbd/process.c
index 5946989..2fc88ca 100644
--- a/source/smbd/process.c
+++ b/source/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)) {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list