The branch, master has been updated
       via  a06bbf3 vfs_gpfs: Fix compile after change in get_nt_acl_fn
       via  1f9d1f9 s3/lib/netapi/tests/netuser.c: fix wrong closing paren
       via  cde44d4 s3/vfs_btrfs.c: use sizeof() instead of ARRAY_SIZE()
       via  c11ad90 smbd: ignore SVHDX create context
      from  cd1335e VFS: Modify rmdir to take a const struct smb_filename * 
instead of const char *

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


- Log -----------------------------------------------------------------
commit a06bbf344707604b612d63195050c5cc8fa19554
Author: Christof Schmitt <c...@samba.org>
Date:   Thu Feb 25 13:42:21 2016 -0700

    vfs_gpfs: Fix compile after change in get_nt_acl_fn
    
    Signed-off-by: Christof Schmitt <c...@samba.org>
    Reviewed-by: Jeremy Allison <j...@samba.org>
    
    Autobuild-User(master): Jeremy Allison <j...@samba.org>
    Autobuild-Date(master): Fri Feb 26 01:21:21 CET 2016 on sn-devel-144

commit 1f9d1f9cd70b4e9b41e53d9cca5025ed31ef7e71
Author: Aurelien Aptel <aap...@suse.com>
Date:   Thu Feb 25 14:17:46 2016 +0100

    s3/lib/netapi/tests/netuser.c: fix wrong closing paren
    
    Signed-off-by: Aurelien Aptel <aap...@suse.com>
    Reviewed-by: David Disseldorp <dd...@samba.org>
    Reviewed-by: Michael Adam <ob...@samba.org>
    Revewied-by: Jeremy Allison <j...@samba.org>

commit cde44d48003499547c6745866b39c3e65bd25d38
Author: Aurelien Aptel <aap...@suse.com>
Date:   Thu Feb 25 15:55:07 2016 +0100

    s3/vfs_btrfs.c: use sizeof() instead of ARRAY_SIZE()
    
    The `unused` member being set to zero is an uint64_t array. We want the
    byte size here.
    
    Signed-off-by: Aurelien Aptel <aap...@suse.com>
    Reviewed-by: David Disseldorp <dd...@samba.org>
    Reviewed-by: Jeremy Allison <j...@samba.org>

commit c11ad90a240a7703e04d290f78c15839ba31d733
Author: Uri Simchoni <u...@samba.org>
Date:   Thu Feb 25 07:08:06 2016 +0200

    smbd: ignore SVHDX create context
    
    According to discussions with doch...@microsoft.com, an SMB
    server should ignore an SVHDX_OPEN_DEVICE_CONTEXT or
    SVHDX_OPEN_DEVICE_CONTEXT_V2 create context if it does not
    support the RSVD protocol. This is contrary to [MS-SMB2] rev 48.0
    which states (3.3.5.9.14) that the open should fail in this case.
    
    Failing the create fails Windows backup if the SMB dialect is
    SMB3.0.2 or higher.
    
    Hopefully a new revision of MS-SMB2 will clear this up in the future.
    
    Meanwhile, this patch modifies smbd to ignore the
    SVHDX_OPEN_DEVICE_CONTEXT by default. This can be overriden by a VFS
    module if a VFS module adds support for RSVD.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11753
    
    Signed-off-by: Uri Simchoni <u...@samba.org>
    Reviewed-by: Jeremy Allison <j...@samba.org>
    Reviewed-by: Richard Sharpe <realrichardsha...@gmail.com>

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

Summary of changes:
 source3/lib/netapi/tests/netuser.c |  2 +-
 source3/modules/vfs_btrfs.c        |  2 +-
 source3/modules/vfs_default.c      | 16 ----------------
 source3/modules/vfs_gpfs.c         | 21 ++++++++++++---------
 4 files changed, 14 insertions(+), 27 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/lib/netapi/tests/netuser.c 
b/source3/lib/netapi/tests/netuser.c
index beeeb34..de5f0a1 100644
--- a/source3/lib/netapi/tests/netuser.c
+++ b/source3/lib/netapi/tests/netuser.c
@@ -244,7 +244,7 @@ static NET_API_STATUS test_netusermodals(struct 
libnetapi_ctx *ctx,
                return status;
        }
 
-       if (memcmp(u0, _u0, sizeof(u0) != 0)) {
+       if (memcmp(u0, _u0, sizeof(*u0)) != 0) {
                printf("USER_MODALS_INFO_0 struct has changed!!!!\n");
                return -1;
        }
diff --git a/source3/modules/vfs_btrfs.c b/source3/modules/vfs_btrfs.c
index bd95637..154fcc3 100644
--- a/source3/modules/vfs_btrfs.c
+++ b/source3/modules/vfs_btrfs.c
@@ -531,7 +531,7 @@ static NTSTATUS btrfs_snap_create(struct vfs_handle_struct 
*handle,
        ioctl_arg.fd = src_fd;
        ioctl_arg.transid = 0;
        ioctl_arg.flags = (rw == false) ? BTRFS_SUBVOL_RDONLY : 0;
-       memset(ioctl_arg.unused, 0, ARRAY_SIZE(ioctl_arg.unused));
+       memset(ioctl_arg.unused, 0, sizeof(ioctl_arg.unused));
        len = strlcpy(ioctl_arg.name, dest_subvolume,
                      ARRAY_SIZE(ioctl_arg.name));
        if (len >= ARRAY_SIZE(ioctl_arg.name)) {
diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c
index c3ff1bc..b13b517 100644
--- a/source3/modules/vfs_default.c
+++ b/source3/modules/vfs_default.c
@@ -571,22 +571,6 @@ 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/modules/vfs_gpfs.c b/source3/modules/vfs_gpfs.c
index 2216d1d..33a30d0 100644
--- a/source3/modules/vfs_gpfs.c
+++ b/source3/modules/vfs_gpfs.c
@@ -585,9 +585,10 @@ static NTSTATUS gpfsacl_fget_nt_acl(vfs_handle_struct 
*handle,
 }
 
 static NTSTATUS gpfsacl_get_nt_acl(vfs_handle_struct *handle,
-       const char *name,
-       uint32_t security_info,
-       TALLOC_CTX *mem_ctx, struct security_descriptor **ppdesc)
+                                  const struct smb_filename *smb_fname,
+                                  uint32_t security_info,
+                                  TALLOC_CTX *mem_ctx,
+                                  struct security_descriptor **ppdesc)
 {
        struct SMB4ACL_T *pacl = NULL;
        int     result;
@@ -602,25 +603,27 @@ static NTSTATUS gpfsacl_get_nt_acl(vfs_handle_struct 
*handle,
                                return NT_STATUS_INTERNAL_ERROR);
 
        if (!config->acl) {
-               status = SMB_VFS_NEXT_GET_NT_ACL(handle, name, security_info,
+               status = SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname,
+                                                security_info,
                                                 mem_ctx, ppdesc);
                TALLOC_FREE(frame);
                return status;
        }
 
-       result = gpfs_get_nfs4_acl(frame, name, &pacl);
+       result = gpfs_get_nfs4_acl(frame, smb_fname->base_name, &pacl);
 
        if (result == 0) {
-               status = smb_get_nt_acl_nfs4(handle->conn, name, security_info,
-                                          mem_ctx, ppdesc, pacl);
+               status = smb_get_nt_acl_nfs4(handle->conn, smb_fname->base_name,
+                                            security_info, mem_ctx, ppdesc,
+                                            pacl);
                TALLOC_FREE(frame);
                return status;
        }
 
        if (result > 0) {
                DEBUG(10, ("retrying with posix acl...\n"));
-               status =  posix_get_nt_acl(handle->conn, name, security_info,
-                                          mem_ctx, ppdesc);
+               status = posix_get_nt_acl(handle->conn, smb_fname->base_name,
+                                         security_info, mem_ctx, ppdesc);
                TALLOC_FREE(frame);
                return status;
        }


-- 
Samba Shared Repository

Reply via email to