summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2020-04-09 17:35:49 -0700
committerJeremy Allison <jra@samba.org>2020-05-07 19:27:34 +0000
commit773b6e17405178bf47b97300a8edfd4c79133d9e (patch)
treed62f5b02a80033eabf6016649f61a9420fddad11 /examples
parent2437dcc5ac820ea554273cc2365e363d46f57abd (diff)
downloadsamba-773b6e17405178bf47b97300a8edfd4c79133d9e.tar.gz
s3: VFS: Add SMB_VFS_GET_NT_ACL_AT().
Currently identical to SMB_VFS_GET_NT_ACL(). Next, add to all VFS modules that implement get_nt_acl and eventually remove get_nt_acl. NB. Modules that use smb_vfs_assert_all_fns() have SMB_VFS_GET_NT_ACL_AT() will not build until they have this function added. Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
Diffstat (limited to 'examples')
-rw-r--r--examples/VFS/skel_opaque.c11
-rw-r--r--examples/VFS/skel_transparent.c16
2 files changed, 27 insertions, 0 deletions
diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c
index cc3aa7eae6b..309a51ed183 100644
--- a/examples/VFS/skel_opaque.c
+++ b/examples/VFS/skel_opaque.c
@@ -800,6 +800,16 @@ static NTSTATUS skel_get_nt_acl(vfs_handle_struct *handle,
return NT_STATUS_NOT_IMPLEMENTED;
}
+static NTSTATUS skel_get_nt_acl_at(vfs_handle_struct *handle,
+ struct files_struct *dirfsp,
+ const struct smb_filename *smb_fname,
+ uint32_t security_info,
+ TALLOC_CTX *mem_ctx,
+ struct security_descriptor **ppdesc)
+{
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
static NTSTATUS skel_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
uint32_t security_info_sent,
const struct security_descriptor *psd)
@@ -1133,6 +1143,7 @@ static struct vfs_fn_pointers skel_opaque_fns = {
.fget_nt_acl_fn = skel_fget_nt_acl,
.get_nt_acl_fn = skel_get_nt_acl,
+ .get_nt_acl_at_fn = skel_get_nt_acl_at,
.fset_nt_acl_fn = skel_fset_nt_acl,
/* POSIX ACL operations. */
diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c
index 235d4533df3..307882afadf 100644
--- a/examples/VFS/skel_transparent.c
+++ b/examples/VFS/skel_transparent.c
@@ -1068,6 +1068,21 @@ static NTSTATUS skel_get_nt_acl(vfs_handle_struct *handle,
ppdesc);
}
+static NTSTATUS skel_get_nt_acl_at(vfs_handle_struct *handle,
+ struct files_struct *dirfsp,
+ 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_AT(handle,
+ dirfsp,
+ smb_fname,
+ security_info,
+ mem_ctx,
+ ppdesc);
+}
+
static NTSTATUS skel_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
uint32_t security_info_sent,
const struct security_descriptor *psd)
@@ -1440,6 +1455,7 @@ static struct vfs_fn_pointers skel_transparent_fns = {
.fget_nt_acl_fn = skel_fget_nt_acl,
.get_nt_acl_fn = skel_get_nt_acl,
+ .get_nt_acl_at_fn = skel_get_nt_acl_at,
.fset_nt_acl_fn = skel_fset_nt_acl,
/* POSIX ACL operations. */