From f409b00dc7100bfd574848a4d3ebd04ef3825baf Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Fri, 12 Jun 2009 13:55:18 -0700 Subject: [PATCH] Check for error in transfer_file return also. Jeremy. --- source3/smbd/close.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/source3/smbd/close.c b/source3/smbd/close.c index bc54bacbc8e..760a2d520cc 100644 --- a/source3/smbd/close.c +++ b/source3/smbd/close.c @@ -106,7 +106,13 @@ static NTSTATUS check_magic(struct files_struct *fsp) return map_nt_error_from_unix(err); } - transfer_file(tmp_fd,outfd,(SMB_OFF_T)st.st_ex_size); + if (transfer_file(tmp_fd,outfd,(SMB_OFF_T)st.st_ex_size) == (SMB_OFF_T)-1) { + int err = errno; + close(tmp_fd); + close(outfd); + TALLOC_FREE(ctx); + return map_nt_error_from_unix(err); + } close(tmp_fd); if (close(outfd) == -1) { TALLOC_FREE(ctx); -- 2.34.1