[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Fri Aug 28 01:20:03 UTC 2015


The branch, master has been updated
       via  e6c234d Move the error handling for svhdx to vfswrap_create to give VFS module writers a chance to handle RSVD opens if they want to.
      from  d9166eb lib/crypto: make it possible to use only parts of aes.[ch]

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit e6c234d31ad22120d0890b561dac9b456f8f6530
Author: Richard Sharpe <rsharpe at samba.org>
Date:   Tue Jul 28 19:08:02 2015 -0700

    Move the error handling for svhdx to vfswrap_create to give VFS module writers a chance to handle RSVD opens if they want to.
    
    Also handle a review comment by Metze.
    
    Signed-off-by: Richard Sharpe <rsharpe at samba.org>
    Reviewed-by: Ira Cooper <ira at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Fri Aug 28 03:19:36 CEST 2015 on sn-devel-104

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

Summary of changes:
 source3/modules/vfs_default.c | 16 ++++++++++++++++
 source3/smbd/smb2_create.c    |  7 -------
 2 files changed, 16 insertions(+), 7 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c
index 460837c..9ea630a 100644
--- a/source3/modules/vfs_default.c
+++ b/source3/modules/vfs_default.c
@@ -563,6 +563,22 @@ static NTSTATUS vfswrap_create_file(vfs_handle_struct *handle,
 				    const struct smb2_create_blobs *in_context_blobs,
 				    struct smb2_create_blobs *out_context_blobs)
 {
+	struct smb2_create_blob *svhdx = NULL;
+
+	/*
+	 * It might be empty ... and smb2_create_blob_find does not handle that
+	 */
+	if (in_context_blobs) {
+		svhdx = smb2_create_blob_find(in_context_blobs,
+					      SVHDX_OPEN_DEVICE_CONTEXT);
+	}
+
+	if (svhdx != NULL) {
+		/* SharedVHD is not yet supported */
+		DEBUG(10, ("Shared VHD not yet supported, INVALID_DEVICE_REQUEST\n"));
+		return NT_STATUS_INVALID_DEVICE_REQUEST;
+	}
+
 	return create_file_default(handle->conn, req, root_dir_fid, smb_fname,
 				   access_mask, share_access,
 				   create_disposition, create_options,
diff --git a/source3/smbd/smb2_create.c b/source3/smbd/smb2_create.c
index 880ceee..9f14544 100644
--- a/source3/smbd/smb2_create.c
+++ b/source3/smbd/smb2_create.c
@@ -910,13 +910,6 @@ static struct tevent_req *smbd_smb2_create_send(TALLOC_CTX *mem_ctx,
 			}
 		}
 
-		if (svhdx != NULL) {
-			/* SharedVHD is not yet supported */
-			tevent_req_nterror(
-				req, NT_STATUS_INVALID_DEVICE_REQUEST);
-			return tevent_req_post(req, ev);
-		}
-
 		/* these are ignored for SMB2 */
 		in_create_options &= ~(0x10);/* NTCREATEX_OPTIONS_SYNC_ALERT */
 		in_create_options &= ~(0x20);/* NTCREATEX_OPTIONS_ASYNC_ALERT */


-- 
Samba Shared Repository



More information about the samba-cvs mailing list