The branch, master has been updated
       via  bddd118 s3:smb2_getinfo ensure proper error for not yet present 
quota support
       via  6d1be1c s3:vfs_gpfs re-indent run-away lines
       via  fa728d1 s3:vfs_gpfs fix the build
       via  e4946cf s3:vfs_gpfs remove a trailing space
       via  12ae181 s3:vfs_gpfs skip local flock when gpfs sharemodes are 
disabled
      from  ff82afb selftest: Move more tests to common list script.

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


- Log -----------------------------------------------------------------
commit bddd1182ea44875f28e12cf15fd07a86f43d8716
Author: Christian Ambach <a...@samba.org>
Date:   Thu Sep 27 22:09:23 2012 -0700

    s3:smb2_getinfo ensure proper error for not yet present quota support
    
    non-existing quota support needs to be signaled by NT_STATUS_NOT_SUPPORTED,
    not NT_STATUS_INVALID_PARAMETER
    
    Autobuild-User(master): Christian Ambach <a...@samba.org>
    Autobuild-Date(master): Fri Oct 12 13:37:37 CEST 2012 on sn-devel-104

commit 6d1be1caf925f80badabcbca3a2676398647f4a3
Author: Christian Ambach <a...@samba.org>
Date:   Fri Oct 12 11:47:04 2012 +0200

    s3:vfs_gpfs re-indent run-away lines
    
    some lines added by the acl_blob additions were longer than 80 chars

commit fa728d1c0b6583c7d11b5540a8d13942a14701f4
Author: Christian Ambach <a...@samba.org>
Date:   Fri Oct 12 11:45:59 2012 +0200

    s3:vfs_gpfs fix the build
    
    make it compile again after the recent (untested) additions of the acl_blob 
functions

commit e4946cf10cdc112aaa61291442ce29690fe1c105
Author: Christian Ambach <a...@samba.org>
Date:   Fri Oct 12 10:32:20 2012 +0200

    s3:vfs_gpfs remove a trailing space

commit 12ae1812d0f123b6b988f597efaabf610f352d30
Author: Christian Ambach <a...@samba.org>
Date:   Fri Oct 12 10:31:10 2012 +0200

    s3:vfs_gpfs skip local flock when gpfs sharemodes are disabled
    
    no sense in calling local flock when clustered sharemodes should be disabled

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

Summary of changes:
 source3/modules/vfs_gpfs.c  |   39 +++++++++++++++++++++++++++------------
 source3/smbd/smb2_getinfo.c |    4 ++++
 2 files changed, 31 insertions(+), 12 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_gpfs.c b/source3/modules/vfs_gpfs.c
index b3cdca5..8e8c694 100644
--- a/source3/modules/vfs_gpfs.c
+++ b/source3/modules/vfs_gpfs.c
@@ -50,7 +50,7 @@ struct gpfs_config_data {
 };
 
 
-static int vfs_gpfs_kernel_flock(vfs_handle_struct *handle, files_struct *fsp, 
+static int vfs_gpfs_kernel_flock(vfs_handle_struct *handle, files_struct *fsp,
                                 uint32 share_mode, uint32 access_mask)
 {
 
@@ -61,12 +61,15 @@ static int vfs_gpfs_kernel_flock(vfs_handle_struct *handle, 
files_struct *fsp,
                                struct gpfs_config_data,
                                return -1);
 
+       if(!config->sharemodes) {
+               return 0;
+       }
+
        START_PROFILE(syscall_kernel_flock);
 
        kernel_flock(fsp->fh->fd, share_mode, access_mask);
 
-       if (config->sharemodes
-               && !set_gpfs_sharemode(fsp, access_mask, fsp->share_access)) {
+       if (!set_gpfs_sharemode(fsp, access_mask, fsp->share_access)) {
                ret = -1;
        }
 
@@ -362,7 +365,8 @@ static NTSTATUS gpfsacl_fget_nt_acl(vfs_handle_struct 
*handle,
                                return NT_STATUS_INTERNAL_ERROR);
 
        if (!config->acl) {
-               return SMB_VFS_NEXT_FGET_NT_ACL(handle, fsp, security_info, 
ppdesc);
+               return SMB_VFS_NEXT_FGET_NT_ACL(handle, fsp, security_info,
+                                               mem_ctx, ppdesc);
        }
 
        result = gpfs_get_nfs4_acl(fsp->fsp_name->base_name, &pacl);
@@ -395,7 +399,8 @@ static NTSTATUS gpfsacl_get_nt_acl(vfs_handle_struct 
*handle,
                                return NT_STATUS_INTERNAL_ERROR);
 
        if (!config->acl) {
-               return SMB_VFS_NEXT_GET_NT_ACL(handle, name, security_info, 
ppdesc);
+               return SMB_VFS_NEXT_GET_NT_ACL(handle, name, security_info,
+                                              mem_ctx, ppdesc);
        }
 
        result = gpfs_get_nfs4_acl(name, &pacl);
@@ -709,22 +714,28 @@ static SMB_ACL_T gpfsacl_sys_acl_get_fd(vfs_handle_struct 
*handle,
                                     GPFS_ACL_TYPE_ACCESS, mem_ctx);
 }
 
-static int gpfsacl_sys_acl_blob_get_file(vfs_handle_struct *handle, const char 
*path_p,
+static int gpfsacl_sys_acl_blob_get_file(vfs_handle_struct *handle,
+                                     const char *path_p,
                                      TALLOC_CTX *mem_ctx,
                                      char **blob_description,
                                      DATA_BLOB *blob)
 {
        struct gpfs_config_data *config;
+       SMB4ACL_T *pacl = NULL;
+       int result;
 
        SMB_VFS_HANDLE_GET_DATA(handle, config,
                                struct gpfs_config_data,
-                               return NULL);
+                               return -1);
 
        if (!config->acl) {
-               return SMB_VFS_NEXT_SYS_ACL_BLOB_GET_FILE(handle, path_p, 
mem_ctx, blob_description, blob);
+               return SMB_VFS_NEXT_SYS_ACL_BLOB_GET_FILE(handle, path_p,
+                                                         mem_ctx,
+                                                         blob_description,
+                                                         blob);
        }
 
-       result = gpfs_get_nfs4_acl(name, &pacl);
+       result = gpfs_get_nfs4_acl(path_p, &pacl);
        if (result == 0) {
                /* We don't have a way to linearlise the NFS4 ACL
                 * right now, and it is much closer to the NT ACL
@@ -737,19 +748,23 @@ static int 
gpfsacl_sys_acl_blob_get_file(vfs_handle_struct *handle, const char *
                                           blob_description, blob);
 }
 
-static int gpfsacl_sys_acl_blob_get_fd(vfs_handle_struct *handle, files_struct 
*fsp,
+static int gpfsacl_sys_acl_blob_get_fd(vfs_handle_struct *handle,
+                                     files_struct *fsp,
                                      TALLOC_CTX *mem_ctx,
                                      char **blob_description,
                                      DATA_BLOB *blob)
 {
        struct gpfs_config_data *config;
+       SMB4ACL_T *pacl = NULL;
+       int result;
 
        SMB_VFS_HANDLE_GET_DATA(handle, config,
                                struct gpfs_config_data,
-                               return NULL);
+                               return -1);
 
        if (!config->acl) {
-               return SMB_VFS_NEXT_SYS_ACL_BLOB_GET_FD(handle, fsp, mem_ctx, 
blob_description, blob);
+               return SMB_VFS_NEXT_SYS_ACL_BLOB_GET_FD(handle, fsp, mem_ctx,
+                                                       blob_description, blob);
        }
 
        result = gpfs_get_nfs4_acl(fsp->fsp_name->base_name, &pacl);
diff --git a/source3/smbd/smb2_getinfo.c b/source3/smbd/smb2_getinfo.c
index 0f4ed29..33cee99 100644
--- a/source3/smbd/smb2_getinfo.c
+++ b/source3/smbd/smb2_getinfo.c
@@ -482,6 +482,10 @@ static struct tevent_req 
*smbd_smb2_getinfo_send(TALLOC_CTX *mem_ctx,
                break;
        }
 
+       case 0x04: /* SMB2_0_INFO_QUOTA */
+               tevent_req_nterror(req, NT_STATUS_NOT_SUPPORTED);
+               return tevent_req_post(req, ev);
+
        default:
                DEBUG(10,("smbd_smb2_getinfo_send: "
                        "unknown in_info_type of %u "


-- 
Samba Shared Repository

Reply via email to