From 56664800e1858f6a7156a4f611dd6d02873892ff Mon Sep 17 00:00:00 2001 From: Christian Ambach Date: Mon, 10 Oct 2011 17:48:18 +0200 Subject: [PATCH] s3:smb2_create: fix allocation size return value when opening existing files at least on GPFS, using the stat information gave wrong results example: FileInfo gave 12582912000, Create Response gave 25769803776000 This makes the create part use the same method as fileinfo, matching up the replies of both calls Autobuild-User: Jeremy Allison Autobuild-Date: Mon Oct 10 21:49:53 CEST 2011 on sn-devel-104 (cherry picked from commit ec0c1f2c34ea520b4a7d636ba284a9c7d3ecd96f) Fix bug #8518 (SMB2 create call returns incorrect file allocation size). (cherry picked from commit 762811de03b719ae9b69ac4e7b94a3db224c1ab9) --- source3/smbd/smb2_create.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source3/smbd/smb2_create.c b/source3/smbd/smb2_create.c index b8557e01aaf..5316100e60a 100644 --- a/source3/smbd/smb2_create.c +++ b/source3/smbd/smb2_create.c @@ -820,8 +820,8 @@ static struct tevent_req *smbd_smb2_create_send(TALLOC_CTX *mem_ctx, get_change_timespec(smb1req->conn, result, result->fsp_name)); state->out_allocation_size = - result->fsp_name->st.st_ex_blksize * - result->fsp_name->st.st_ex_blocks; + SMB_VFS_GET_ALLOC_SIZE(smb1req->conn, result, + &(result->fsp_name->st)); state->out_end_of_file = result->fsp_name->st.st_ex_size; if (state->out_file_attributes == 0) { state->out_file_attributes = FILE_ATTRIBUTE_NORMAL; -- 2.11.4.GIT