The branch, master has been updated via b4c597b6a13 s3: VFS: Update status of SMB_VFS_SYS_ACL_DELETE_DEF_FILE() and SMB_VFS_SYS_ACL_DELETE_DEF_FD(). via 0680a383019 s3: smbd: Remove all references to utility and backend functions supporting sys_acl_delete_def_file(). via 569474f153c vfs: RIP SMB_VFS_SYS_ACL_DELETE_DEF_FILE() via bf34438ef51 s3: VFS: posixacl_xattr: Remove posixacl_xattr_acl_delete_def_file(). via 97821542d33 s3: VFS: posixacl: Remove sys_acl_delete_def_file_fn pointer. via 39901d17540 s3: VFS: zfsacl: Remove zfsacl_fail__sys_acl_delete_def_file(). via cfa44483417 s3: VFS: unityed_media: Remove um_sys_acl_delete_def_file(). via 25507668d17 s3: VFS: solarisacl: Remove solarisacl_sys_acl_delete_def_file(). via 3607212b388 s3: VFS: nfsacl_xattr: Remove nfs4acl_xattr_fail__sys_acl_delete_def_file(). via 46bc4555828 s3: VFS: media_harmony: Remove mh_sys_acl_delete_def_file(). via 9cde624d2a4 s3: VFS: hpuxacl: Remove hpuxacl_sys_acl_delete_def_file(). via fedbbc9f636 s3: VFS: gpfs: Remove gpfsacl_sys_acl_delete_def_file(). via d646c54c899 s3: VFS: glusterfs: Remove sys_acl_delete_def_file_fn pointer. via 331d772cc71 s3: VFS: fake_acls: Remove fake_acls_sys_acl_delete_def_file(). via ce5fb5b4a0f s3: VFS: ceph: Remove sys_acl_delete_def_file_fn() pointer. via 51c732a6c4f s3: VFS: catia: Remove catia_sys_acl_delete_def_file(). via 109dfac02b3 s3: VFS: cap: Remove cap_sys_acl_delete_def_file(). via 981fbf55a68 s3: VFS: aixacl2: Remove aixjfs2_sys_acl_delete_def_file(). via 9e1d79dbb2a s3: VFS: aixacl: Remove aixacl_sys_acl_delete_def_file(). via b6700044de6 s3: torture: cmd_sys_acl_delete_def_file: Move SMB_VFS_SYS_ACL_DELETE_DEF_FILE() -> SMB_VFS_SYS_ACL_DELETE_DEF_FD(). via fd16f9da7c0 s3: smbd: Change SMB_VFS_SYS_ACL_DELETE_DEF_FILE() -> SMB_VFS_SYS_ACL_DELETE_DEF_FD(). via 165de1ca1d6 s3: VFS: default. In vfswrap_sys_acl_delete_def_file() remove the placeholder code and call sys_acl_delete_def_fd(). via f75e93ef77e s3: lib: sysacls: Add sys_acl_delete_def_fd(). via 33b76a6f248 s3: VFS: zfsacl: Add zfsacl_fail__sys_acl_delete_def_fd(). via 88a2e9f9804 s3: VFS: solarisacl: Add solarisacl_sys_acl_delete_def_fd(). via c72c4b5b322 s3: VFS: posixacl: Add posixacl_sys_acl_delete_def_fd(). via a2862968ba8 s3: VFS: nfs4acl_xattr. Add nfs4acl_xattr_fail__sys_acl_delete_def_fd(). via f6d91e33c25 s3: VFS: hpuxacl. Add hpuxacl_sys_acl_delete_def_fd(). via d39b19317d1 s3: VFS: fake_acls: Add fake_acls_sys_acl_delete_def_fd(). via 1eeb650bdd1 s3: VFS: gpfs: Add gpfsacl_sys_acl_delete_def_fd(). via 2a99e67c584 s3: VFS: glusterfs: Make gluster call posixacl_xattr_acl_delete_def_fd(). via 2c2396a282a s3: VFS: ceph: Make ceph call posixacl_xattr_acl_delete_def_fd(). via 0d9e30a1bdb s3: VFS: posixacl_xattr: Add posixacl_xattr_acl_delete_def_fd(). via ca733d8b47a s3: VFS: aixacl2: Add aixjfs2_sys_acl_delete_def_fd(). via b5344570b8c s3: VFS: aixacl: Add aixacl_sys_acl_delete_def_fd(). via 7127cba1459 s3: VFS: Add SMB_VFS_SYS_ACL_DELETE_DEF_FD(), from bebe313ced7 lib:cmdline: Fix setting 'log file' from smb.conf
https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit b4c597b6a13d00c2a2b8668a662df62845dddcef Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 21:41:49 2021 -0700 s3: VFS: Update status of SMB_VFS_SYS_ACL_DELETE_DEF_FILE() and SMB_VFS_SYS_ACL_DELETE_DEF_FD(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> Autobuild-User(master): Jeremy Allison <j...@samba.org> Autobuild-Date(master): Tue May 18 18:19:28 UTC 2021 on sn-devel-184 commit 0680a383019748a30f4a88f5d3a618964a3daa00 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 21:39:00 2021 -0700 s3: smbd: Remove all references to utility and backend functions supporting sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 569474f153c3dd4f8bfd7735e8dc629adfd16f9b Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 21:22:11 2021 -0700 vfs: RIP SMB_VFS_SYS_ACL_DELETE_DEF_FILE() .--. .-, .-..-.__ .'(`.-` \_.-'-./` |\_( "\__ __.>\ '; _;---,._| / __/`'--) /.--. : |/' _.--.<| / | | _..-' `\ /' /` /_/ _/_/ >_.-``-. `Y /' _;---.`|/)))) '` .-''. \|: .' __, .-'"` .'--._ `-: \/: /' '.\ _|_ /.'`\ :; /' `- `-|-` -` | | | :.; : | .-'~^~`-. |: | .' _ _ `. |:. | | |_) | |_) | :. : | | | \ | | | : ; | | | : ; | | SMB_VFS | : ; | | SYS_ACL | : ; | |DELETE_DEF | .jgs. : ; | FILE | -."-/\\\/:::. `\."-._'."-"_\\-| |///."- " -."-.\\"-."//.-".`-."_\\-.".-\\`=.........=`//-". Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit bf34438ef51cd16b5573fa56492ee91887bb84e5 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 19:39:41 2021 -0700 s3: VFS: posixacl_xattr: Remove posixacl_xattr_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 97821542d33baacefe2c27f620e8bca692f775f4 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 19:31:09 2021 -0700 s3: VFS: posixacl: Remove sys_acl_delete_def_file_fn pointer. Leave the called function as that's in the public API. We will be able to get rid of it when we delete sys_acl_delete_def_file() after all the callers are gone. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 39901d17540ae193e8f7223d5f6bcfd329db0894 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:23:38 2021 -0700 s3: VFS: zfsacl: Remove zfsacl_fail__sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit cfa4448341750b76be3f16d0a13f3382e65e8543 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:23:03 2021 -0700 s3: VFS: unityed_media: Remove um_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 25507668d171f9e81386e70fd4dead293f521490 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:22:23 2021 -0700 s3: VFS: solarisacl: Remove solarisacl_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 3607212b388554cc61d09546eaf14ae6f8d27028 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:21:41 2021 -0700 s3: VFS: nfsacl_xattr: Remove nfs4acl_xattr_fail__sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 46bc4555828b4ae960de3d9b2278653674bf27ad Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:20:54 2021 -0700 s3: VFS: media_harmony: Remove mh_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 9cde624d2a41c57dd9a270dec3a153f644533b8b Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:20:14 2021 -0700 s3: VFS: hpuxacl: Remove hpuxacl_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit fedbbc9f636beb9df0b6b8cb18c16d0ca2afb1d3 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:18:50 2021 -0700 s3: VFS: gpfs: Remove gpfsacl_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit d646c54c899905c28d89435f1d9c73d33fe2c6da Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:18:00 2021 -0700 s3: VFS: glusterfs: Remove sys_acl_delete_def_file_fn pointer. No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 331d772cc7173233fc664500450646bbc3681bca Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:17:20 2021 -0700 s3: VFS: fake_acls: Remove fake_acls_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.com> commit ce5fb5b4a0f5e5956d988af3ea9672caeb149b66 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:16:30 2021 -0700 s3: VFS: ceph: Remove sys_acl_delete_def_file_fn() pointer. No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 51c732a6c4f4fbc041f8053505baa2f6346ef517 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:15:35 2021 -0700 s3: VFS: catia: Remove catia_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 109dfac02b3411bf88b5b709055caab0f5788b40 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 18:14:55 2021 -0700 s3: VFS: cap: Remove cap_sys_acl_delete_def_file(). No longer used. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <noel.po...@suse.com> commit 981fbf55a6819f5d189941b874b69a5a37c9a20c Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 16:12:29 2021 -0700 s3: VFS: aixacl2: Remove aixjfs2_sys_acl_delete_def_file(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 9e1d79dbb2abe49f451b4563f6e3060772626218 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 16:12:05 2021 -0700 s3: VFS: aixacl: Remove aixacl_sys_acl_delete_def_file(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit b6700044de66fb0a1869cc939e7053f28cb93f27 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 16:09:58 2021 -0700 s3: torture: cmd_sys_acl_delete_def_file: Move SMB_VFS_SYS_ACL_DELETE_DEF_FILE() -> SMB_VFS_SYS_ACL_DELETE_DEF_FD(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit fd16f9da7c07f1ec03f1730470e831debc874b57 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 16:01:55 2021 -0700 s3: smbd: Change SMB_VFS_SYS_ACL_DELETE_DEF_FILE() -> SMB_VFS_SYS_ACL_DELETE_DEF_FD(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 165de1ca1d623c8b9f3567ff2266626044b73f44 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 16:00:55 2021 -0700 s3: VFS: default. In vfswrap_sys_acl_delete_def_file() remove the placeholder code and call sys_acl_delete_def_fd(). This will redirect to the correct backend. Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit f75e93ef77e150c23d59791a53c560d71fb5bc04 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 15:57:08 2021 -0700 s3: lib: sysacls: Add sys_acl_delete_def_fd(). In the default (posix) case goes to posixacl_sys_acl_delete_def_fd(). For all other systems goes to their relevent backends. Now we can fill in the delete_def_fd() function in vfs_default.c Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 33b76a6f248f20dc315435729e74e74b37fd24ee Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 15:46:49 2021 -0700 s3: VFS: zfsacl: Add zfsacl_fail__sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 88a2e9f98040745117888e3d0754387db0042f5c Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 15:43:09 2021 -0700 s3: VFS: solarisacl: Add solarisacl_sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit c72c4b5b3229532db18618b9e0b16a20c2087b43 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 15:39:33 2021 -0700 s3: VFS: posixacl: Add posixacl_sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit a2862968ba86a08a8956afef00e76895af6dfdc0 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 15:12:50 2021 -0700 s3: VFS: nfs4acl_xattr. Add nfs4acl_xattr_fail__sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit f6d91e33c25897f24c3c8840772bf7cadf44f696 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 15:11:20 2021 -0700 s3: VFS: hpuxacl. Add hpuxacl_sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit d39b19317d1a13f9d45d72c9fcfb06487261b766 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:39:12 2021 -0700 s3: VFS: fake_acls: Add fake_acls_sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 1eeb650bdd1977a2a020cfd84ef767a8d82cdc97 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:36:26 2021 -0700 s3: VFS: gpfs: Add gpfsacl_sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 2a99e67c584b4d276fb97dfbb542a566d371bb47 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:34:27 2021 -0700 s3: VFS: glusterfs: Make gluster call posixacl_xattr_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 2c2396a282afd7e58b0e097c885f52cdc88c6cc6 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:33:43 2021 -0700 s3: VFS: ceph: Make ceph call posixacl_xattr_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit 0d9e30a1bdb7c8c3d8e2773e0276c8477eeccc9d Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:32:53 2021 -0700 s3: VFS: posixacl_xattr: Add posixacl_xattr_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <npo...@samba.org> commit ca733d8b47a1f1a5b5251cd0549d3ecd7f0eb905 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:30:29 2021 -0700 s3: VFS: aixacl2: Add aixjfs2_sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <noel.po...@suse.com> commit b5344570b8ca75da104871c0451b377263b1b823 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:29:17 2021 -0700 s3: VFS: aixacl: Add aixacl_sys_acl_delete_def_fd(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <noel.po...@suse.com> commit 7127cba145973ede5f64b5d8b49ab29a79f230b7 Author: Jeremy Allison <j...@samba.org> Date: Fri May 14 14:20:50 2021 -0700 s3: VFS: Add SMB_VFS_SYS_ACL_DELETE_DEF_FD(), Not yet used. Eventually will replace SMB_VFS_SYS_ACL_DELETE_DEF_FILE(). Signed-off-by: Jeremy Allison <j...@samba.org> Reviewed-by: Noel Power <noel.po...@suse.com> ----------------------------------------------------------------------- Summary of changes: docs-xml/Samba-Developers-Guide/vfs.xml | 1 - docs-xml/manpages/vfs_full_audit.8.xml | 1 - examples/VFS/skel_opaque.c | 6 ++--- examples/VFS/skel_transparent.c | 8 +++--- source3/include/smb_acls.h | 4 +-- source3/include/vfs.h | 14 ++++++----- source3/include/vfs_macros.h | 8 +++--- source3/lib/sysacls.c | 34 ++++++++++++-------------- source3/modules/The_New_VFS.org | 4 +-- source3/modules/The_New_VFS.txt | 4 +-- source3/modules/posixacl_xattr.c | 7 +++--- source3/modules/posixacl_xattr.h | 4 +-- source3/modules/vfs_aixacl.c | 6 ++--- source3/modules/vfs_aixacl2.c | 6 ++--- source3/modules/vfs_cap.c | 36 --------------------------- source3/modules/vfs_catia.c | 43 --------------------------------- source3/modules/vfs_ceph.c | 2 +- source3/modules/vfs_default.c | 8 +++--- source3/modules/vfs_fake_acls.c | 10 ++++---- source3/modules/vfs_full_audit.c | 16 ++++++------ source3/modules/vfs_glusterfs.c | 2 +- source3/modules/vfs_gpfs.c | 9 ++++--- source3/modules/vfs_hpuxacl.c | 34 ++++++++++++-------------- source3/modules/vfs_hpuxacl.h | 4 +-- source3/modules/vfs_media_harmony.c | 32 ------------------------ source3/modules/vfs_nfs4acl_xattr.c | 6 ++--- source3/modules/vfs_not_implemented.c | 6 ++--- source3/modules/vfs_posixacl.c | 24 ++++++++++++++---- source3/modules/vfs_posixacl.h | 4 +-- source3/modules/vfs_solarisacl.c | 37 ++++++++++++++-------------- source3/modules/vfs_solarisacl.h | 4 +-- source3/modules/vfs_time_audit.c | 11 ++++----- source3/modules/vfs_unityed_media.c | 36 --------------------------- source3/modules/vfs_zfsacl.c | 6 ++--- source3/smbd/posix_acls.c | 16 ++++++------ source3/smbd/vfs.c | 8 +++--- source3/torture/cmd_vfs.c | 38 ++++++++++++++++++++++------- 37 files changed, 189 insertions(+), 310 deletions(-) Changeset truncated at 500 lines: diff --git a/docs-xml/Samba-Developers-Guide/vfs.xml b/docs-xml/Samba-Developers-Guide/vfs.xml index 948b98936a2..268295a20ea 100644 --- a/docs-xml/Samba-Developers-Guide/vfs.xml +++ b/docs-xml/Samba-Developers-Guide/vfs.xml @@ -647,7 +647,6 @@ struct vfs_ops example_ops = { NULL, /* sys_acl_valid */ NULL, /* sys_acl_set_file */ NULL, /* sys_acl_set_fd */ - NULL, /* sys_acl_delete_def_file */ NULL, /* sys_acl_get_perm */ NULL, /* sys_acl_free_text */ NULL, /* sys_acl_free_acl */ diff --git a/docs-xml/manpages/vfs_full_audit.8.xml b/docs-xml/manpages/vfs_full_audit.8.xml index 1b768917d21..10c96fd20e3 100644 --- a/docs-xml/manpages/vfs_full_audit.8.xml +++ b/docs-xml/manpages/vfs_full_audit.8.xml @@ -141,7 +141,6 @@ <member>symlinkat</member> <member>sys_acl_blob_get_fd</member> <member>sys_acl_blob_get_file</member> - <member>sys_acl_delete_def_file</member> <member>sys_acl_get_fd</member> <member>sys_acl_get_file</member> <member>sys_acl_set_fd</member> diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c index bb98c001d25..487919f38a8 100644 --- a/examples/VFS/skel_opaque.c +++ b/examples/VFS/skel_opaque.c @@ -832,8 +832,8 @@ static int skel_sys_acl_set_fd(vfs_handle_struct *handle, return -1; } -static int skel_sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +static int skel_sys_acl_delete_def_fd(vfs_handle_struct *handle, + struct files_struct *fsp) { errno = ENOSYS; return -1; @@ -1086,7 +1086,7 @@ static struct vfs_fn_pointers skel_opaque_fns = { .sys_acl_blob_get_file_fn = skel_sys_acl_blob_get_file, .sys_acl_blob_get_fd_fn = skel_sys_acl_blob_get_fd, .sys_acl_set_fd_fn = skel_sys_acl_set_fd, - .sys_acl_delete_def_file_fn = skel_sys_acl_delete_def_file, + .sys_acl_delete_def_fd_fn = skel_sys_acl_delete_def_fd, /* EA operations. */ .getxattr_fn = skel_getxattr, diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c index 4811bad3b2c..a0a747d8b57 100644 --- a/examples/VFS/skel_transparent.c +++ b/examples/VFS/skel_transparent.c @@ -1093,10 +1093,10 @@ static int skel_sys_acl_set_fd(vfs_handle_struct *handle, return SMB_VFS_NEXT_SYS_ACL_SET_FD(handle, fsp, type, theacl); } -static int skel_sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +static int skel_sys_acl_delete_def_fd(vfs_handle_struct *handle, + struct files_struct *fsp) { - return SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FILE(handle, smb_fname); + return SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FD(handle, fsp); } static ssize_t skel_getxattr(vfs_handle_struct *handle, @@ -1391,7 +1391,7 @@ static struct vfs_fn_pointers skel_transparent_fns = { .sys_acl_blob_get_file_fn = skel_sys_acl_blob_get_file, .sys_acl_blob_get_fd_fn = skel_sys_acl_blob_get_fd, .sys_acl_set_fd_fn = skel_sys_acl_set_fd, - .sys_acl_delete_def_file_fn = skel_sys_acl_delete_def_file, + .sys_acl_delete_def_fd_fn = skel_sys_acl_delete_def_fd, /* EA operations. */ .getxattr_fn = skel_getxattr, diff --git a/source3/include/smb_acls.h b/source3/include/smb_acls.h index c5a2339f1db..3e679e58f1f 100644 --- a/source3/include/smb_acls.h +++ b/source3/include/smb_acls.h @@ -70,8 +70,8 @@ int sys_acl_set_file(struct vfs_handle_struct *handle, SMB_ACL_T acl_d); int sys_acl_set_fd(struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_ACL_T acl_d); -int sys_acl_delete_def_file(struct vfs_handle_struct *handle, - const struct smb_filename *smb_fname); +int sys_acl_delete_def_fd(struct vfs_handle_struct *handle, + struct files_struct *fsp); int no_acl_syscall_error(int err); #endif /* _SMB_ACLS_H */ diff --git a/source3/include/vfs.h b/source3/include/vfs.h index 1c076c2c8f6..02293c64733 100644 --- a/source3/include/vfs.h +++ b/source3/include/vfs.h @@ -352,6 +352,8 @@ * Version 45 - ADD SMB_VFS_FSTREAMINFO * Version 45 - Add SMB_VFS_FREADDIR_ATTR * Version 45 - Remove SMB_VFS_READDIR_ATTR + * Version 45 - Add SMB_VFS_SYS_ACL_DELETE_DEF_FD + * Version 45 - Remove SMB_VFS_SYS_ACL_DELETE_DEF_FILE */ #define SMB_VFS_INTERFACE_VERSION 45 @@ -1224,8 +1226,8 @@ struct vfs_fn_pointers { struct files_struct *fsp, SMB_ACL_TYPE_T type, SMB_ACL_T theacl); - int (*sys_acl_delete_def_file_fn)(struct vfs_handle_struct *handle, - const struct smb_filename *smb_fname); + int (*sys_acl_delete_def_fd_fn)(struct vfs_handle_struct *handle, + struct files_struct *fsp); /* EA operations. */ ssize_t (*getxattr_fn)(struct vfs_handle_struct *handle, @@ -1732,8 +1734,8 @@ int smb_vfs_call_sys_acl_set_fd(struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_ACL_TYPE_T type, SMB_ACL_T theacl); -int smb_vfs_call_sys_acl_delete_def_file(struct vfs_handle_struct *handle, - const struct smb_filename *smb_fname); +int smb_vfs_call_sys_acl_delete_def_fd(struct vfs_handle_struct *handle, + struct files_struct *fsp); ssize_t smb_vfs_call_getxattr(struct vfs_handle_struct *handle, const struct smb_filename *smb_fname, const char *name, @@ -2136,8 +2138,8 @@ int vfs_not_implemented_sys_acl_set_fd(vfs_handle_struct *handle, struct files_struct *fsp, SMB_ACL_TYPE_T type, SMB_ACL_T theacl); -int vfs_not_implemented_sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname); +int vfs_not_implemented_sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp); ssize_t vfs_not_implemented_getxattr(vfs_handle_struct *handle, const struct smb_filename *smb_fname, const char *name, diff --git a/source3/include/vfs_macros.h b/source3/include/vfs_macros.h index 0f69dcc930f..018d60ce914 100644 --- a/source3/include/vfs_macros.h +++ b/source3/include/vfs_macros.h @@ -509,10 +509,10 @@ #define SMB_VFS_NEXT_SYS_ACL_SET_FD(handle, fsp, type, theacl) \ smb_vfs_call_sys_acl_set_fd((handle)->next, (fsp), (type), (theacl)) -#define SMB_VFS_SYS_ACL_DELETE_DEF_FILE(conn, smb_fname) \ - smb_vfs_call_sys_acl_delete_def_file((conn)->vfs_handles, (smb_fname)) -#define SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FILE(handle, smb_fname) \ - smb_vfs_call_sys_acl_delete_def_file((handle)->next, (smb_fname)) +#define SMB_VFS_SYS_ACL_DELETE_DEF_FD(fsp) \ + smb_vfs_call_sys_acl_delete_def_fd((fsp)->conn->vfs_handles, (fsp)) +#define SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FD(handle, fsp) \ + smb_vfs_call_sys_acl_delete_def_fd((handle)->next, (fsp)) #define SMB_VFS_GETXATTR(conn,smb_fname,name,value,size) \ smb_vfs_call_getxattr((conn)->vfs_handles,(smb_fname),(name),(value),(size)) diff --git a/source3/lib/sysacls.c b/source3/lib/sysacls.c index 77bf414d731..e41f88b1285 100644 --- a/source3/lib/sysacls.c +++ b/source3/lib/sysacls.c @@ -353,7 +353,7 @@ int sys_acl_valid(SMB_ACL_T acl_d) /* * acl_get_file, acl_get_fd, acl_set_file, acl_set_fd and - * sys_acl_delete_def_file are to be redirected to the default + * sys_acl_delete_def_fd are to be redirected to the default * statically-bound acl vfs module, but they are replacable. */ @@ -386,10 +386,10 @@ int sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp, return posixacl_sys_acl_set_fd(handle, fsp, SMB_ACL_TYPE_ACCESS, acl_d); } -int sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { - return posixacl_sys_acl_delete_def_file(handle, smb_fname); + return posixacl_sys_acl_delete_def_fd(handle, fsp); } #elif defined(HAVE_AIX_ACLS) @@ -422,12 +422,11 @@ int sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp, return aixacl_sys_acl_set_fd(handle, fsp, acl_d); } -int sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { - return aixacl_sys_acl_delete_def_file(handle, smb_fname); + return aixacl_sys_acl_delete_def_fd(handle, fsp); } - #elif defined(HAVE_SOLARIS_UNIXWARE_ACLS) SMB_ACL_T sys_acl_get_file(vfs_handle_struct *handle, @@ -460,12 +459,11 @@ int sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp, return solarisacl_sys_acl_set_fd(handle, fsp, acl_d); } -int sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { - return solarisacl_sys_acl_delete_def_file(handle, smb_fname); + return solarisacl_sys_acl_delete_def_fd(handle, fsp); } - #elif defined(HAVE_HPUX_ACLS) SMB_ACL_T sys_acl_get_file(vfs_handle_struct *handle, @@ -496,12 +494,11 @@ int sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp, return hpuxacl_sys_acl_set_fd(handle, fsp, acl_d); } -int sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { - return hpuxacl_sys_acl_delete_def_file(handle, smb_fname); + return hpuxacl_sys_acl_delete_def_fd(handle, fsp); } - #else /* No ACLs. */ SMB_ACL_T sys_acl_get_file(vfs_handle_struct *handle, @@ -552,8 +549,8 @@ int sys_acl_set_fd(vfs_handle_struct *handle, files_struct *fsp, return -1; } -int sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { #ifdef ENOTSUP errno = ENOTSUP; @@ -562,7 +559,6 @@ int sys_acl_delete_def_file(vfs_handle_struct *handle, #endif return -1; } - #endif /************************************************************************ diff --git a/source3/modules/The_New_VFS.org b/source3/modules/The_New_VFS.org index f9d96995d4b..5eb849e1c22 100644 --- a/source3/modules/The_New_VFS.org +++ b/source3/modules/The_New_VFS.org @@ -295,7 +295,7 @@ whenever VFS access is done in a piecemeal fashion. | SMB_VFS_SYMLINKAT() | [[NsC][NsC]] | - | | SMB_VFS_SYS_ACL_BLOB_GET_FD() | [[xpathref][xpathref]] | - | | SMB_VFS_SYS_ACL_BLOB_GET_FILE() | [[Path][Path]] | Todo | -| SMB_VFS_SYS_ACL_DELETE_DEF_FILE() | [[Path][Path]] | Todo | +| SMB_VFS_SYS_ACL_DELETE_DEF_FILE() | [[Path][Path]] | - | | SMB_VFS_SYS_ACL_GET_FD() | [[xpathref][xpathref]] | - | | SMB_VFS_SYS_ACL_GET_FILE() | [[Path][Path]] | Todo | | SMB_VFS_SYS_ACL_SET_FD() | [[xpathref][xpathref]] | - | @@ -308,7 +308,7 @@ whenever VFS access is done in a piecemeal fashion. #+ATTR_HTML: :border 1 :rules all :frame border | VFS Function | Group | Status | |---------------------------------+----------+--------| -| SMB_VFS_SYS_ACL_DELETE_DEF_FD() | [[xpathref][xpathref]] | Todo | +| SMB_VFS_SYS_ACL_DELETE_DEF_FD() | [[xpathref][xpathref]] | - | | SMB_VFS_FNTIMENS() | [[fsp][fsp]] | - | |---------------------------------+----------+--------| diff --git a/source3/modules/The_New_VFS.txt b/source3/modules/The_New_VFS.txt index 003b740ebf0..149b1d39a8d 100644 --- a/source3/modules/The_New_VFS.txt +++ b/source3/modules/The_New_VFS.txt @@ -363,7 +363,7 @@ Table of Contents SMB_VFS_SYMLINKAT() [NsC] - SMB_VFS_SYS_ACL_BLOB_GET_FD() [xpathref] - SMB_VFS_SYS_ACL_BLOB_GET_FILE() [Path] Todo - SMB_VFS_SYS_ACL_DELETE_DEF_FILE() [Path] Todo + SMB_VFS_SYS_ACL_DELETE_DEF_FILE() [Path] - SMB_VFS_SYS_ACL_GET_FD() [xpathref] - SMB_VFS_SYS_ACL_GET_FILE() [Path] Todo SMB_VFS_SYS_ACL_SET_FD() [xpathref] - @@ -398,7 +398,7 @@ Table of Contents ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ VFS Function Group Status ───────────────────────────────────────────────────── - SMB_VFS_SYS_ACL_DELETE_DEF_FD() [xpathref] Todo + SMB_VFS_SYS_ACL_DELETE_DEF_FD() [xpathref] - SMB_VFS_FNTIMENS() [fsp] - ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ diff --git a/source3/modules/posixacl_xattr.c b/source3/modules/posixacl_xattr.c index 6b0407b66ff..2b8c926cd33 100644 --- a/source3/modules/posixacl_xattr.c +++ b/source3/modules/posixacl_xattr.c @@ -512,9 +512,8 @@ int posixacl_xattr_acl_set_fd(vfs_handle_struct *handle, return SMB_VFS_FSETXATTR(fsp, name, buf, size, 0); } -int posixacl_xattr_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int posixacl_xattr_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { - return SMB_VFS_FREMOVEXATTR(smb_fname->fsp, - ACL_EA_DEFAULT); + return SMB_VFS_FREMOVEXATTR(fsp, ACL_EA_DEFAULT); } diff --git a/source3/modules/posixacl_xattr.h b/source3/modules/posixacl_xattr.h index 7d0fb2bb8bf..83885b8c10e 100644 --- a/source3/modules/posixacl_xattr.h +++ b/source3/modules/posixacl_xattr.h @@ -40,6 +40,6 @@ int posixacl_xattr_acl_set_fd(vfs_handle_struct *handle, SMB_ACL_TYPE_T type, SMB_ACL_T theacl); -int posixacl_xattr_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname); +int posixacl_xattr_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp); #endif diff --git a/source3/modules/vfs_aixacl.c b/source3/modules/vfs_aixacl.c index e4c5f1ef7e2..182e4e1880e 100644 --- a/source3/modules/vfs_aixacl.c +++ b/source3/modules/vfs_aixacl.c @@ -184,8 +184,8 @@ int aixacl_sys_acl_set_fd(vfs_handle_struct *handle, return rc; } -int aixacl_sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int aixacl_sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { return 0; /* otherwise you can't set acl at upper level */ } @@ -196,7 +196,7 @@ static struct vfs_fn_pointers vfs_aixacl_fns = { .sys_acl_blob_get_file_fn = posix_sys_acl_blob_get_file, .sys_acl_blob_get_fd_fn = posix_sys_acl_blob_get_fd, .sys_acl_set_fd_fn = aixacl_sys_acl_set_fd, - .sys_acl_delete_def_file_fn = aixacl_sys_acl_delete_def_file, + .sys_acl_delete_def_fd_fn = aixacl_sys_acl_delete_def_fd, }; static_decl_vfs; diff --git a/source3/modules/vfs_aixacl2.c b/source3/modules/vfs_aixacl2.c index bb42641c02d..8f4b34ada65 100644 --- a/source3/modules/vfs_aixacl2.c +++ b/source3/modules/vfs_aixacl2.c @@ -522,8 +522,8 @@ int aixjfs2_sys_acl_set_fd(vfs_handle_struct *handle, return 0; } -int aixjfs2_sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) +int aixjfs2_sys_acl_delete_def_fd(vfs_handle_struct *handle, + files_struct *fsp) { /* Not available under AIXC ACL */ /* Don't report here any error otherwise */ @@ -540,7 +540,7 @@ static struct vfs_fn_pointers vfs_aixacl2_fns = { .sys_acl_blob_get_file_fn = aixjfs2_sys_acl_blob_get_file, .sys_acl_blob_get_fd_fn = aixjfs2_sys_acl_blob_get_fd, .sys_acl_set_fd_fn = aixjfs2_sys_acl_set_fd, - .sys_acl_delete_def_file_fn = aixjfs2_sys_acl_delete_def_file + .sys_acl_delete_def_fd_fn = aixjfs2_sys_acl_delete_def_fd }; static_decl_vfs; diff --git a/source3/modules/vfs_cap.c b/source3/modules/vfs_cap.c index 0c12712a8f1..181d11c28ac 100644 --- a/source3/modules/vfs_cap.c +++ b/source3/modules/vfs_cap.c @@ -758,41 +758,6 @@ static SMB_ACL_T cap_sys_acl_get_file(vfs_handle_struct *handle, return ret; } -static int cap_sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) -{ - struct smb_filename *cap_smb_fname = NULL; - char *cappath = capencode(talloc_tos(), smb_fname->base_name); - int ret; - int saved_errno = 0; - - if (!cappath) { - errno = ENOMEM; - return -1; - } - cap_smb_fname = synthetic_smb_fname(talloc_tos(), - cappath, - NULL, - NULL, - smb_fname->twrp, - smb_fname->flags); - if (cap_smb_fname == NULL) { - TALLOC_FREE(cappath); - errno = ENOMEM; - return -1; - } - ret = SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FILE(handle, cap_smb_fname); - if (ret == -1) { - saved_errno = errno; - } - TALLOC_FREE(cappath); - TALLOC_FREE(cap_smb_fname); - if (saved_errno) { - errno = saved_errno; - } - return ret; -} - static ssize_t cap_getxattr(vfs_handle_struct *handle, const struct smb_filename *smb_fname, const char *name, @@ -961,7 +926,6 @@ static struct vfs_fn_pointers vfs_cap_fns = { .mknodat_fn = cap_mknodat, .realpath_fn = cap_realpath, .sys_acl_get_file_fn = cap_sys_acl_get_file, - .sys_acl_delete_def_file_fn = cap_sys_acl_delete_def_file, .getxattr_fn = cap_getxattr, .getxattrat_send_fn = vfs_not_implemented_getxattrat_send, .getxattrat_recv_fn = vfs_not_implemented_getxattrat_recv, diff --git a/source3/modules/vfs_catia.c b/source3/modules/vfs_catia.c index e6709c86ca9..34f6bbaed4d 100644 --- a/source3/modules/vfs_catia.c +++ b/source3/modules/vfs_catia.c @@ -1097,48 +1097,6 @@ catia_sys_acl_get_file(vfs_handle_struct *handle, return ret; } -static int -catia_sys_acl_delete_def_file(vfs_handle_struct *handle, - const struct smb_filename *smb_fname) -{ - struct smb_filename *mapped_smb_fname = NULL; - int saved_errno = 0; - char *mapped_name = NULL; - NTSTATUS status; - int ret; - - status = catia_string_replace_allocate(handle->conn, - smb_fname->base_name, - &mapped_name, - vfs_translate_to_unix); - if (!NT_STATUS_IS_OK(status)) { - errno = map_errno_from_nt_status(status); - return -1; - } - - mapped_smb_fname = synthetic_smb_fname(talloc_tos(), - mapped_name, - NULL, - &smb_fname->st, - smb_fname->twrp, - smb_fname->flags); - if (mapped_smb_fname == NULL) { - TALLOC_FREE(mapped_name); - errno = ENOMEM; - return -1; - } - ret = SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FILE(handle, mapped_smb_fname); - if (ret == -1) { - saved_errno = errno; - } - TALLOC_FREE(mapped_smb_fname); - TALLOC_FREE(mapped_name); - if (saved_errno != 0) { - errno = saved_errno; - } - return ret; -} - static ssize_t catia_getxattr(vfs_handle_struct *handle, const struct smb_filename *smb_fname, @@ -2145,7 +2103,6 @@ static struct vfs_fn_pointers vfs_catia_fns = { .sys_acl_get_fd_fn = catia_sys_acl_get_fd, .sys_acl_blob_get_fd_fn = catia_sys_acl_blob_get_fd, .sys_acl_set_fd_fn = catia_sys_acl_set_fd, - .sys_acl_delete_def_file_fn = catia_sys_acl_delete_def_file, /* EA operations. */ .getxattr_fn = catia_getxattr, diff --git a/source3/modules/vfs_ceph.c b/source3/modules/vfs_ceph.c index 82b956ae85a..110bec84cbb 100644 --- a/source3/modules/vfs_ceph.c +++ b/source3/modules/vfs_ceph.c @@ -1632,7 +1632,7 @@ static struct vfs_fn_pointers ceph_fns = { .sys_acl_blob_get_file_fn = posix_sys_acl_blob_get_file, .sys_acl_blob_get_fd_fn = posix_sys_acl_blob_get_fd, .sys_acl_set_fd_fn = posixacl_xattr_acl_set_fd, - .sys_acl_delete_def_file_fn = posixacl_xattr_acl_delete_def_file, + .sys_acl_delete_def_fd_fn = posixacl_xattr_acl_delete_def_fd, /* aio operations */ .aio_force_fn = cephwrap_aio_force, diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c -- Samba Shared Repository