[SCM] Samba Shared Repository - branch master updated
Jeremy Allison
jra at samba.org
Tue Feb 16 22:27:05 UTC 2016
The branch, master has been updated
via a077e2a FIXUP: s3: VFS: Modify SMB_VFS_GET_NT_ACL to take a const struct smb_filename *
via 616d068 s3: VFS: Modify SMB_VFS_GET_NT_ACL to take a const struct smb_filename * instead of const char *
from 3330c79 tdb: eliminate deprecation warnings in python tests
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit a077e2ae62fea085f392cc32f1eb48942f5d43c7
Author: Ralph Boehme <slow at samba.org>
Date: Sun Feb 14 21:36:15 2016 +0100
FIXUP: s3: VFS: Modify SMB_VFS_GET_NT_ACL to take a const struct smb_filename *
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Jeremy Allison <jra at samba.org>
Autobuild-User(master): Jeremy Allison <jra at samba.org>
Autobuild-Date(master): Tue Feb 16 23:26:48 CET 2016 on sn-devel-144
commit 616d068f0cebb8e50a855b6e30f36fccb7f5a3c8
Author: Jeremy Allison <jra at samba.org>
Date: Fri Feb 12 10:30:10 2016 -0800
s3: VFS: Modify SMB_VFS_GET_NT_ACL to take a const struct smb_filename * instead of const char *
Bumps VFS version to 35.
Preparing to reduce use of lp_posix_pathnames().
Most of this is boilerplate, the only subtleties are in
the modules:
vfs_catia.c
vfs_media_harmony.c
vfs_shadow_copy2.c
vfs_unityed_media.c
Where the path is modified then passed to SMB_VFS_NEXT_GET_NT_ACL().
In these cases the change uses synthetic_smb_fname() to
create a new struct smb_filename from the modified path.
Signed-off-by: Jeremy Allison <jra at samba.org>
Reviewed-by: Ralph Boehme <rb at sernet.de>
-----------------------------------------------------------------------
Summary of changes:
examples/VFS/skel_opaque.c | 3 ++-
examples/VFS/skel_transparent.c | 10 +++++++---
source3/include/vfs.h | 9 ++++++---
source3/include/vfs_macros.h | 8 ++++----
source3/modules/vfs_acl_common.c | 21 ++++++++++++++-------
source3/modules/vfs_catia.c | 16 ++++++++++++++--
source3/modules/vfs_default.c | 9 ++++++---
source3/modules/vfs_full_audit.c | 6 +++---
source3/modules/vfs_media_harmony.c | 21 ++++++++++++++++-----
source3/modules/vfs_nfs4acl_xattr.c | 4 +++-
source3/modules/vfs_shadow_copy2.c | 36 ++++++++++++++++++++++++++++++------
source3/modules/vfs_snapper.c | 33 +++++++++++++++++++++++++++------
source3/modules/vfs_time_audit.c | 8 +++++---
source3/modules/vfs_unityed_media.c | 21 ++++++++++++++++-----
source3/smbd/dir.c | 2 +-
source3/smbd/file_access.c | 12 +++++++++++-
source3/smbd/open.c | 27 +++++++++++++++++++++++----
source3/smbd/posix_acls.c | 15 ++++++++++++++-
source3/smbd/pysmbd.c | 18 ++++++++++++++++--
source3/smbd/vfs.c | 8 ++++++--
source3/torture/cmd_vfs.c | 12 +++++++++++-
21 files changed, 235 insertions(+), 64 deletions(-)
Changeset truncated at 500 lines:
diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c
index a4309d4..0d5571c 100644
--- a/examples/VFS/skel_opaque.c
+++ b/examples/VFS/skel_opaque.c
@@ -667,7 +667,8 @@ static NTSTATUS skel_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
}
static NTSTATUS skel_get_nt_acl(vfs_handle_struct *handle,
- const char *name, uint32_t security_info,
+ const struct smb_filename *smb_fname,
+ uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
{
diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c
index 2d1ed79..fc3c818 100644
--- a/examples/VFS/skel_transparent.c
+++ b/examples/VFS/skel_transparent.c
@@ -794,12 +794,16 @@ static NTSTATUS skel_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
}
static NTSTATUS skel_get_nt_acl(vfs_handle_struct *handle,
- const char *name, uint32_t security_info,
+ const struct smb_filename *smb_fname,
+ uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
{
- return SMB_VFS_NEXT_GET_NT_ACL(handle, name, security_info, mem_ctx,
- ppdesc);
+ return SMB_VFS_NEXT_GET_NT_ACL(handle,
+ smb_fname,
+ security_info,
+ mem_ctx,
+ ppdesc);
}
static NTSTATUS skel_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
diff --git a/source3/include/vfs.h b/source3/include/vfs.h
index c18ea59..d416a5b 100644
--- a/source3/include/vfs.h
+++ b/source3/include/vfs.h
@@ -170,8 +170,11 @@
/* Bump to version 34 - Samba 4.4 will ship with that */
/* Version 34 - Remove bool posix_open, add uint64_t posix_flags */
/* Version 34 - Added bool posix_pathnames to struct smb_request */
+/* Bump to version 35 - Samba 4.5 will ship with that */
+/* Version 35 - Change get_nt_acl_fn from const char *, to
+ const struct smb_filename * */
-#define SMB_VFS_INTERFACE_VERSION 34
+#define SMB_VFS_INTERFACE_VERSION 35
/*
All intercepted VFS operations must be declared as static functions inside module source
@@ -745,7 +748,7 @@ struct vfs_fn_pointers {
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc);
NTSTATUS (*get_nt_acl_fn)(struct vfs_handle_struct *handle,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc);
@@ -1188,7 +1191,7 @@ NTSTATUS smb_vfs_call_fget_nt_acl(struct vfs_handle_struct *handle,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc);
NTSTATUS smb_vfs_call_get_nt_acl(struct vfs_handle_struct *handle,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc);
diff --git a/source3/include/vfs_macros.h b/source3/include/vfs_macros.h
index 16d5bfd..cef3849 100644
--- a/source3/include/vfs_macros.h
+++ b/source3/include/vfs_macros.h
@@ -437,10 +437,10 @@
#define SMB_VFS_NEXT_FGET_NT_ACL(handle, fsp, security_info, mem_ctx, ppdesc) \
smb_vfs_call_fget_nt_acl((handle)->next, (fsp), (security_info), (mem_ctx), (ppdesc))
-#define SMB_VFS_GET_NT_ACL(conn, name, security_info, mem_ctx, ppdesc) \
- smb_vfs_call_get_nt_acl((conn)->vfs_handles, (name), (security_info), (mem_ctx), (ppdesc))
-#define SMB_VFS_NEXT_GET_NT_ACL(handle, name, security_info, mem_ctx, ppdesc) \
- smb_vfs_call_get_nt_acl((handle)->next, (name), (security_info), (mem_ctx), (ppdesc))
+#define SMB_VFS_GET_NT_ACL(conn, smb_fname, security_info, mem_ctx, ppdesc) \
+ smb_vfs_call_get_nt_acl((conn)->vfs_handles, (smb_fname), (security_info), (mem_ctx), (ppdesc))
+#define SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname, security_info, mem_ctx, ppdesc) \
+ smb_vfs_call_get_nt_acl((handle)->next, (smb_fname), (security_info), (mem_ctx), (ppdesc))
#define SMB_VFS_AUDIT_FILE(conn, name, sacl, access_requested, access_denied) \
smb_vfs_call_audit_file((conn)->vfs_handles, (name), (sacl), (access_requested), (access_denied))
diff --git a/source3/modules/vfs_acl_common.c b/source3/modules/vfs_acl_common.c
index f73e80c..30574e0 100644
--- a/source3/modules/vfs_acl_common.c
+++ b/source3/modules/vfs_acl_common.c
@@ -366,7 +366,7 @@ static NTSTATUS add_directory_inheritable_components(vfs_handle_struct *handle,
static NTSTATUS get_nt_acl_internal(vfs_handle_struct *handle,
files_struct *fsp,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
@@ -381,14 +381,17 @@ static NTSTATUS get_nt_acl_internal(vfs_handle_struct *handle,
uint8_t sys_acl_hash_tmp[XATTR_SD_HASH_SIZE];
struct security_descriptor *psd = NULL;
struct security_descriptor *pdesc_next = NULL;
+ const char *name = NULL;
bool ignore_file_system_acl = lp_parm_bool(SNUM(handle->conn),
ACL_MODULE_NAME,
"ignore system acls",
false);
TALLOC_CTX *frame = talloc_stackframe();
- if (fsp && name == NULL) {
+ if (fsp && smb_fname == NULL) {
name = fsp->fsp_name->base_name;
+ } else {
+ name = smb_fname->base_name;
}
DEBUG(10, ("get_nt_acl_internal: name=%s\n", name));
@@ -509,7 +512,7 @@ static NTSTATUS get_nt_acl_internal(vfs_handle_struct *handle,
&pdesc_next);
} else {
status = SMB_VFS_NEXT_GET_NT_ACL(handle,
- name,
+ smb_fname,
HASH_SECURITY_INFO,
mem_ctx,
&pdesc_next);
@@ -575,7 +578,7 @@ static NTSTATUS get_nt_acl_internal(vfs_handle_struct *handle,
&pdesc_next);
} else {
status = SMB_VFS_NEXT_GET_NT_ACL(handle,
- name,
+ smb_fname,
security_info,
mem_ctx,
&pdesc_next);
@@ -728,13 +731,17 @@ static NTSTATUS fget_nt_acl_common(vfs_handle_struct *handle,
*********************************************************************/
static NTSTATUS get_nt_acl_common(vfs_handle_struct *handle,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
{
- return get_nt_acl_internal(handle, NULL,
- name, security_info, mem_ctx, ppdesc);
+ return get_nt_acl_internal(handle,
+ NULL,
+ smb_fname,
+ security_info,
+ mem_ctx,
+ ppdesc);
}
/*********************************************************************
diff --git a/source3/modules/vfs_catia.c b/source3/modules/vfs_catia.c
index c17ffa8..48e2e3f 100644
--- a/source3/modules/vfs_catia.c
+++ b/source3/modules/vfs_catia.c
@@ -778,12 +778,14 @@ catia_streaminfo(struct vfs_handle_struct *handle,
static NTSTATUS
catia_get_nt_acl(struct vfs_handle_struct *handle,
- const char *path,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
{
char *mapped_name = NULL;
+ const char *path = smb_fname->base_name;
+ struct smb_filename *mapped_smb_fname = NULL;
NTSTATUS status;
status = catia_string_replace_allocate(handle->conn,
@@ -792,9 +794,19 @@ catia_get_nt_acl(struct vfs_handle_struct *handle,
errno = map_errno_from_nt_status(status);
return status;
}
- status = SMB_VFS_NEXT_GET_NT_ACL(handle, mapped_name,
+ mapped_smb_fname = synthetic_smb_fname(talloc_tos(),
+ mapped_name,
+ NULL,
+ NULL);
+ if (mapped_smb_fname == NULL) {
+ TALLOC_FREE(mapped_name);
+ return NT_STATUS_NO_MEMORY;
+ }
+
+ status = SMB_VFS_NEXT_GET_NT_ACL(handle, mapped_smb_fname,
security_info, mem_ctx, ppdesc);
TALLOC_FREE(mapped_name);
+ TALLOC_FREE(mapped_smb_fname);
return status;
}
diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c
index 762624b..43e65ac 100644
--- a/source3/modules/vfs_default.c
+++ b/source3/modules/vfs_default.c
@@ -2327,7 +2327,7 @@ static NTSTATUS vfswrap_fget_nt_acl(vfs_handle_struct *handle,
}
static NTSTATUS vfswrap_get_nt_acl(vfs_handle_struct *handle,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
@@ -2335,8 +2335,11 @@ static NTSTATUS vfswrap_get_nt_acl(vfs_handle_struct *handle,
NTSTATUS result;
START_PROFILE(get_nt_acl);
- result = posix_get_nt_acl(handle->conn, name, security_info,
- mem_ctx, ppdesc);
+ result = posix_get_nt_acl(handle->conn,
+ smb_fname->base_name,
+ security_info,
+ mem_ctx,
+ ppdesc);
END_PROFILE(get_nt_acl);
return result;
}
diff --git a/source3/modules/vfs_full_audit.c b/source3/modules/vfs_full_audit.c
index 904b569..9c77185 100644
--- a/source3/modules/vfs_full_audit.c
+++ b/source3/modules/vfs_full_audit.c
@@ -1897,18 +1897,18 @@ static NTSTATUS smb_full_audit_fget_nt_acl(vfs_handle_struct *handle, files_stru
}
static NTSTATUS smb_full_audit_get_nt_acl(vfs_handle_struct *handle,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
{
NTSTATUS result;
- result = SMB_VFS_NEXT_GET_NT_ACL(handle, name, security_info,
+ result = SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname, security_info,
mem_ctx, ppdesc);
do_log(SMB_VFS_OP_GET_NT_ACL, NT_STATUS_IS_OK(result), handle,
- "%s", name);
+ "%s", smb_fname_str_do_log(smb_fname));
return result;
}
diff --git a/source3/modules/vfs_media_harmony.c b/source3/modules/vfs_media_harmony.c
index d960fae..65673e1 100644
--- a/source3/modules/vfs_media_harmony.c
+++ b/source3/modules/vfs_media_harmony.c
@@ -2016,19 +2016,20 @@ out:
* In this case, "name" is a path.
*/
static NTSTATUS mh_get_nt_acl(vfs_handle_struct *handle,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
{
NTSTATUS status;
char *clientPath;
+ struct smb_filename *client_smb_fname = NULL;
TALLOC_CTX *ctx;
DEBUG(MH_INFO_DEBUG, ("Entering mh_get_nt_acl\n"));
- if (!is_in_media_files(name))
+ if (!is_in_media_files(smb_fname->base_name))
{
- status = SMB_VFS_NEXT_GET_NT_ACL(handle, name,
+ status = SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname,
security_info,
mem_ctx, ppdesc);
goto out;
@@ -2038,18 +2039,28 @@ static NTSTATUS mh_get_nt_acl(vfs_handle_struct *handle,
ctx = talloc_tos();
if (alloc_get_client_path(handle, ctx,
- name,
+ smb_fname->base_name,
&clientPath))
{
status = map_nt_error_from_unix(errno);
goto err;
}
- status = SMB_VFS_NEXT_GET_NT_ACL(handle, clientPath,
+ client_smb_fname = synthetic_smb_fname(talloc_tos(),
+ clientPath,
+ NULL,
+ NULL);
+ if (client_smb_fname == NULL) {
+ TALLOC_FREE(clientPath);
+ return NT_STATUS_NO_MEMORY;
+ }
+
+ status = SMB_VFS_NEXT_GET_NT_ACL(handle, client_smb_fname,
security_info,
mem_ctx, ppdesc);
err:
TALLOC_FREE(clientPath);
+ TALLOC_FREE(client_smb_fname);
out:
return status;
}
diff --git a/source3/modules/vfs_nfs4acl_xattr.c b/source3/modules/vfs_nfs4acl_xattr.c
index b041699..c02fd6a 100644
--- a/source3/modules/vfs_nfs4acl_xattr.c
+++ b/source3/modules/vfs_nfs4acl_xattr.c
@@ -541,12 +541,14 @@ static NTSTATUS nfs4acl_xattr_fget_nt_acl(struct vfs_handle_struct *handle,
}
static NTSTATUS nfs4acl_xattr_get_nt_acl(struct vfs_handle_struct *handle,
- const char *name, uint32_t security_info,
+ const struct smb_filename *smb_fname,
+ uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
{
struct SMB4ACL_T *pacl;
NTSTATUS status;
+ const char *name = smb_fname->base_name;
TALLOC_CTX *frame = talloc_stackframe();
status = nfs4_get_nfs4_acl(handle, frame, name, &pacl);
diff --git a/source3/modules/vfs_shadow_copy2.c b/source3/modules/vfs_shadow_copy2.c
index 61ef5d4..87b4cd2 100644
--- a/source3/modules/vfs_shadow_copy2.c
+++ b/source3/modules/vfs_shadow_copy2.c
@@ -1466,6 +1466,7 @@ static NTSTATUS shadow_copy2_fget_nt_acl(vfs_handle_struct *handle,
char *stripped;
NTSTATUS status;
char *conv;
+ struct smb_filename *smb_fname = NULL;
if (!shadow_copy2_strip_snapshot(talloc_tos(), handle,
fsp->fsp_name->base_name,
@@ -1482,14 +1483,24 @@ static NTSTATUS shadow_copy2_fget_nt_acl(vfs_handle_struct *handle,
if (conv == NULL) {
return map_nt_error_from_unix(errno);
}
- status = SMB_VFS_NEXT_GET_NT_ACL(handle, conv, security_info,
+ smb_fname = synthetic_smb_fname(talloc_tos(),
+ conv,
+ NULL,
+ NULL);
+ if (smb_fname == NULL) {
+ TALLOC_FREE(conv);
+ return NT_STATUS_NO_MEMORY;
+ }
+
+ status = SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname, security_info,
mem_ctx, ppdesc);
TALLOC_FREE(conv);
+ TALLOC_FREE(smb_fname);
return status;
}
static NTSTATUS shadow_copy2_get_nt_acl(vfs_handle_struct *handle,
- const char *fname,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
@@ -1498,13 +1509,17 @@ static NTSTATUS shadow_copy2_get_nt_acl(vfs_handle_struct *handle,
char *stripped;
NTSTATUS status;
char *conv;
+ struct smb_filename *conv_smb_fname = NULL;
- if (!shadow_copy2_strip_snapshot(talloc_tos(), handle, fname,
- ×tamp, &stripped)) {
+ if (!shadow_copy2_strip_snapshot(talloc_tos(),
+ handle,
+ smb_fname->base_name,
+ ×tamp,
+ &stripped)) {
return map_nt_error_from_unix(errno);
}
if (timestamp == 0) {
- return SMB_VFS_NEXT_GET_NT_ACL(handle, fname, security_info,
+ return SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname, security_info,
mem_ctx, ppdesc);
}
conv = shadow_copy2_convert(talloc_tos(), handle, stripped, timestamp);
@@ -1512,9 +1527,18 @@ static NTSTATUS shadow_copy2_get_nt_acl(vfs_handle_struct *handle,
if (conv == NULL) {
return map_nt_error_from_unix(errno);
}
- status = SMB_VFS_NEXT_GET_NT_ACL(handle, conv, security_info,
+ conv_smb_fname = synthetic_smb_fname(talloc_tos(),
+ conv,
+ NULL,
+ NULL);
+ if (conv_smb_fname == NULL) {
+ TALLOC_FREE(conv);
+ return NT_STATUS_NO_MEMORY;
+ }
+ status = SMB_VFS_NEXT_GET_NT_ACL(handle, conv_smb_fname, security_info,
mem_ctx, ppdesc);
TALLOC_FREE(conv);
+ TALLOC_FREE(conv_smb_fname);
return status;
}
diff --git a/source3/modules/vfs_snapper.c b/source3/modules/vfs_snapper.c
index cd7904c..970373c 100644
--- a/source3/modules/vfs_snapper.c
+++ b/source3/modules/vfs_snapper.c
@@ -2415,6 +2415,7 @@ static NTSTATUS snapper_gmt_fget_nt_acl(vfs_handle_struct *handle,
char *stripped;
NTSTATUS status;
char *conv;
+ struct smb_filename *smb_fname = NULL;
if (!snapper_gmt_strip_snapshot(talloc_tos(), handle,
fsp->fsp_name->base_name,
@@ -2431,14 +2432,24 @@ static NTSTATUS snapper_gmt_fget_nt_acl(vfs_handle_struct *handle,
if (conv == NULL) {
return map_nt_error_from_unix(errno);
}
- status = SMB_VFS_NEXT_GET_NT_ACL(handle, conv, security_info,
- mem_ctx, ppdesc);
+
+ smb_fname = synthetic_smb_fname(talloc_tos(),
+ conv,
+ NULL,
+ NULL);
TALLOC_FREE(conv);
+ if (smb_fname == NULL) {
+ return NT_STATUS_NO_MEMORY;
+ }
+
+ status = SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname, security_info,
+ mem_ctx, ppdesc);
+ TALLOC_FREE(smb_fname);
return status;
}
static NTSTATUS snapper_gmt_get_nt_acl(vfs_handle_struct *handle,
- const char *fname,
+ const struct smb_filename *fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
struct security_descriptor **ppdesc)
@@ -2447,8 +2458,9 @@ static NTSTATUS snapper_gmt_get_nt_acl(vfs_handle_struct *handle,
char *stripped;
NTSTATUS status;
char *conv;
+ struct smb_filename *smb_fname = NULL;
- if (!snapper_gmt_strip_snapshot(talloc_tos(), handle, fname,
+ if (!snapper_gmt_strip_snapshot(talloc_tos(), handle, fname->base_name,
×tamp, &stripped)) {
return map_nt_error_from_unix(errno);
}
@@ -2461,9 +2473,18 @@ static NTSTATUS snapper_gmt_get_nt_acl(vfs_handle_struct *handle,
if (conv == NULL) {
return map_nt_error_from_unix(errno);
}
- status = SMB_VFS_NEXT_GET_NT_ACL(handle, conv, security_info,
- mem_ctx, ppdesc);
+ smb_fname = synthetic_smb_fname(talloc_tos(),
+ conv,
+ NULL,
+ NULL);
TALLOC_FREE(conv);
+ if (smb_fname == NULL) {
+ return NT_STATUS_NO_MEMORY;
+ }
+
+ status = SMB_VFS_NEXT_GET_NT_ACL(handle, smb_fname, security_info,
+ mem_ctx, ppdesc);
+ TALLOC_FREE(smb_fname);
return status;
}
diff --git a/source3/modules/vfs_time_audit.c b/source3/modules/vfs_time_audit.c
index 2fc6afd..6e0c8a4 100644
--- a/source3/modules/vfs_time_audit.c
+++ b/source3/modules/vfs_time_audit.c
@@ -1895,7 +1895,7 @@ static NTSTATUS smb_time_audit_fget_nt_acl(vfs_handle_struct *handle,
}
static NTSTATUS smb_time_audit_get_nt_acl(vfs_handle_struct *handle,
- const char *name,
+ const struct smb_filename *smb_fname,
uint32_t security_info,
TALLOC_CTX *mem_ctx,
--
Samba Shared Repository
More information about the samba-cvs
mailing list