summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2008-05-08 18:09:07 -0700
committerJeremy Allison <jra@samba.org>2008-05-08 18:09:07 -0700
commit00b2cdf75e9bea25034440054b4acd91a179c86d (patch)
tree1e049c04c17693bd64c1d8d80a6fd3f0d85c878d /source3/include
parentf7d39653f5c5bea025a77191555231e8a28b25b8 (diff)
downloadsamba-00b2cdf75e9bea25034440054b4acd91a179c86d.tar.gz
samba-00b2cdf75e9bea25034440054b4acd91a179c86d.tar.bz2
samba-00b2cdf75e9bea25034440054b4acd91a179c86d.zip
Yay ! Remove a VFS entry. Removed the set_nt_acl() call,
this can only be done via fset_nt_acl() using an open file/directory handle. I'd like to do the same with get_nt_acl() but am concerned about efficiency problems with "hide unreadable/hide unwritable" when doing a directory listing (this would mean opening every file in the dir on list). Moving closer to rationalizing the ACL model and maybe moving the POSIX calls into a posix_acl VFS module rather than having them as first class citizens of the VFS. Jeremy. (This used to be commit f487f742cb903a06fbf2be006ddc9ce9063339ed)
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/smbprofile.h4
-rw-r--r--source3/include/vfs.h11
-rw-r--r--source3/include/vfs_macros.h3
3 files changed, 3 insertions, 15 deletions
diff --git a/source3/include/smbprofile.h b/source3/include/smbprofile.h
index 864f2bf90f..f58a6452bf 100644
--- a/source3/include/smbprofile.h
+++ b/source3/include/smbprofile.h
@@ -631,10 +631,6 @@ enum profile_stats_values
#define fget_nt_acl_count __profile_stats_value(PR_VALUE_FGET_NT_ACL, count)
#define fget_nt_acl_time __profile_stats_value(PR_VALUE_FGET_NT_ACL, time)
- PR_VALUE_SET_NT_ACL,
-#define set_nt_acl_count __profile_stats_value(PR_VALUE_SET_NT_ACL, count)
-#define set_nt_acl_time __profile_stats_value(PR_VALUE_SET_NT_ACL, time)
-
PR_VALUE_FSET_NT_ACL,
#define fset_nt_acl_count __profile_stats_value(PR_VALUE_FSET_NT_ACL, count)
#define fset_nt_acl_time __profile_stats_value(PR_VALUE_FSET_NT_ACL, time)
diff --git a/source3/include/vfs.h b/source3/include/vfs.h
index c8397164bc..7f285b7770 100644
--- a/source3/include/vfs.h
+++ b/source3/include/vfs.h
@@ -106,8 +106,10 @@
/* Leave at 22 - not yet released. Additional change: add operations for offline files -- ab */
/* Leave at 22 - not yet released. Add the streaminfo call. -- jpeach, vl */
/* Leave at 22 - not yet released. Remove parameter fd from close_fn. - obnox */
+/* Changed to version 23 - remove set_nt_acl call. This can only be done via an
+ open handle. JRA. */
-#define SMB_VFS_INTERFACE_VERSION 22
+#define SMB_VFS_INTERFACE_VERSION 23
/* to bug old modules which are trying to compile with the old functions */
@@ -208,7 +210,6 @@ typedef enum _vfs_op_type {
SMB_VFS_OP_FGET_NT_ACL,
SMB_VFS_OP_GET_NT_ACL,
SMB_VFS_OP_FSET_NT_ACL,
- SMB_VFS_OP_SET_NT_ACL,
/* POSIX ACL operations. */
@@ -365,11 +366,6 @@ struct vfs_ops {
struct files_struct *fsp,
uint32 security_info_sent,
struct security_descriptor *psd);
- NTSTATUS (*set_nt_acl)(struct vfs_handle_struct *handle,
- struct files_struct *fsp,
- const char *name,
- uint32 security_info_sent,
- struct security_descriptor *psd);
/* POSIX ACL operations. */
@@ -496,7 +492,6 @@ struct vfs_ops {
struct vfs_handle_struct *fget_nt_acl;
struct vfs_handle_struct *get_nt_acl;
struct vfs_handle_struct *fset_nt_acl;
- struct vfs_handle_struct *set_nt_acl;
/* POSIX ACL operations. */
diff --git a/source3/include/vfs_macros.h b/source3/include/vfs_macros.h
index f0a9809ecc..bb3aeba77b 100644
--- a/source3/include/vfs_macros.h
+++ b/source3/include/vfs_macros.h
@@ -89,7 +89,6 @@
#define SMB_VFS_FGET_NT_ACL(fsp, security_info, ppdesc) ((fsp)->conn->vfs.ops.fget_nt_acl((fsp)->conn->vfs.handles.fget_nt_acl, (fsp), (security_info), (ppdesc)))
#define SMB_VFS_GET_NT_ACL(conn, name, security_info, ppdesc) ((conn)->vfs.ops.get_nt_acl((conn)->vfs.handles.get_nt_acl, (name), (security_info), (ppdesc)))
#define SMB_VFS_FSET_NT_ACL(fsp, security_info_sent, psd) ((fsp)->conn->vfs.ops.fset_nt_acl((fsp)->conn->vfs.handles.fset_nt_acl, (fsp), (security_info_sent), (psd)))
-#define SMB_VFS_SET_NT_ACL(fsp, name, security_info_sent, psd) ((fsp)->conn->vfs.ops.set_nt_acl((fsp)->conn->vfs.handles.set_nt_acl, (fsp), (name), (security_info_sent), (psd)))
/* POSIX ACL operations. */
#define SMB_VFS_CHMOD_ACL(conn, name, mode) ((conn)->vfs.ops.chmod_acl((conn)->vfs.handles.chmod_acl, (name), (mode)))
@@ -215,7 +214,6 @@
#define SMB_VFS_OPAQUE_FGET_NT_ACL(fsp, security_info, ppdesc) ((fsp)->conn->vfs_opaque.ops.fget_nt_acl((fsp)->conn->vfs_opaque.handles.fget_nt_acl, (fsp), (security_info), (ppdesc)))
#define SMB_VFS_OPAQUE_GET_NT_ACL(conn, name, security_info, ppdesc) ((conn)->vfs_opaque.ops.get_nt_acl((conn)->vfs_opaque.handles.get_nt_acl, (name), (security_info), (ppdesc)))
#define SMB_VFS_OPAQUE_FSET_NT_ACL(fsp, security_info_sent, psd) ((fsp)->conn->vfs_opaque.ops.fset_nt_acl((fsp)->conn->vfs_opaque.handles.fset_nt_acl, (fsp), (security_info_sent), (psd)))
-#define SMB_VFS_OPAQUE_SET_NT_ACL(fsp, name, security_info_sent, psd) ((fsp)->conn->vfs_opaque.ops.set_nt_acl((fsp)->conn->vfs_opaque.handles.set_nt_acl, (fsp), (name), (security_info_sent), (psd)))
/* POSIX ACL operations. */
#define SMB_VFS_OPAQUE_CHMOD_ACL(conn, name, mode) ((conn)->vfs_opaque.ops.chmod_acl((conn)->vfs_opaque.handles.chmod_acl, (name), (mode)))
@@ -342,7 +340,6 @@
#define SMB_VFS_NEXT_FGET_NT_ACL(handle, fsp, security_info, ppdesc) ((handle)->vfs_next.ops.fget_nt_acl((handle)->vfs_next.handles.fget_nt_acl, (fsp), (security_info), (ppdesc)))
#define SMB_VFS_NEXT_GET_NT_ACL(handle, name, security_info, ppdesc) ((handle)->vfs_next.ops.get_nt_acl((handle)->vfs_next.handles.get_nt_acl, (name), (security_info), (ppdesc)))
#define SMB_VFS_NEXT_FSET_NT_ACL(handle, fsp, security_info_sent, psd) ((handle)->vfs_next.ops.fset_nt_acl((handle)->vfs_next.handles.fset_nt_acl, (fsp), (security_info_sent), (psd)))
-#define SMB_VFS_NEXT_SET_NT_ACL(handle, fsp, name, security_info_sent, psd) ((handle)->vfs_next.ops.set_nt_acl((handle)->vfs_next.handles.set_nt_acl, (fsp), (name), (security_info_sent), (psd)))
/* POSIX ACL operations. */
#define SMB_VFS_NEXT_CHMOD_ACL(handle, name, mode) ((handle)->vfs_next.ops.chmod_acl((handle)->vfs_next.handles.chmod_acl, (name), (mode)))