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