diff options
-rw-r--r-- | docs-xml/manpages-3/vfs_full_audit.8.xml | 17 | ||||
-rw-r--r-- | examples/VFS/skel_opaque.c | 119 | ||||
-rw-r--r-- | examples/VFS/skel_transparent.c | 102 | ||||
-rw-r--r-- | source3/include/vfs.h | 59 | ||||
-rw-r--r-- | source3/include/vfs_macros.h | 85 | ||||
-rw-r--r-- | source3/modules/vfs_default.c | 102 | ||||
-rw-r--r-- | source3/modules/vfs_full_audit.c | 302 | ||||
-rw-r--r-- | source3/modules/vfs_time_audit.c | 357 | ||||
-rw-r--r-- | source3/smbd/vfs.c | 129 |
9 files changed, 1 insertions, 1271 deletions
diff --git a/docs-xml/manpages-3/vfs_full_audit.8.xml b/docs-xml/manpages-3/vfs_full_audit.8.xml index 0f0d96d1fb..f773a086a8 100644 --- a/docs-xml/manpages-3/vfs_full_audit.8.xml +++ b/docs-xml/manpages-3/vfs_full_audit.8.xml @@ -95,28 +95,11 @@ <member>stat</member> <member>statvfs</member> <member>symlink</member> - <member>sys_acl_add_perm</member> - <member>sys_acl_clear_perms</member> - <member>sys_acl_create_entry</member> <member>sys_acl_delete_def_file</member> - <member>sys_acl_free_acl</member> - <member>sys_acl_free_qualifier</member> - <member>sys_acl_free_text</member> - <member>sys_acl_get_entry</member> <member>sys_acl_get_fd</member> <member>sys_acl_get_file</member> - <member>sys_acl_get_perm</member> - <member>sys_acl_get_permset</member> - <member>sys_acl_get_qualifier</member> - <member>sys_acl_get_tag_type</member> - <member>sys_acl_init</member> <member>sys_acl_set_fd</member> <member>sys_acl_set_file</member> - <member>sys_acl_set_permset</member> - <member>sys_acl_set_qualifier</member> - <member>sys_acl_set_tag_type</member> - <member>sys_acl_to_text</member> - <member>sys_acl_valid</member> <member>telldir</member> <member>unlink</member> <member>utime</member> diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c index 03a5157e8a..edfb772698 100644 --- a/examples/VFS/skel_opaque.c +++ b/examples/VFS/skel_opaque.c @@ -574,30 +574,6 @@ static int skel_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp, mode_t return -1; } -static int skel_sys_acl_get_entry(vfs_handle_struct *handle, SMB_ACL_T theacl, int entry_id, SMB_ACL_ENTRY_T *entry_p) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_get_tag_type(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_TAG_T *tag_type_p) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_get_permset(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_PERMSET_T *permset_p) -{ - errno = ENOSYS; - return -1; -} - -static void *skel_sys_acl_get_qualifier(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d) -{ - errno = ENOSYS; - return NULL; -} - static SMB_ACL_T skel_sys_acl_get_file(vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type) { errno = ENOSYS; @@ -610,60 +586,6 @@ static SMB_ACL_T skel_sys_acl_get_fd(vfs_handle_struct *handle, files_struct *fs return (SMB_ACL_T)NULL; } -static int skel_sys_acl_clear_perms(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_add_perm(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm) -{ - errno = ENOSYS; - return -1; -} - -static char *skel_sys_acl_to_text(vfs_handle_struct *handle, SMB_ACL_T theacl, ssize_t *plen) -{ - errno = ENOSYS; - return NULL; -} - -static SMB_ACL_T skel_sys_acl_init(vfs_handle_struct *handle, int count) -{ - errno = ENOSYS; - return (SMB_ACL_T)NULL; -} - -static int skel_sys_acl_create_entry(vfs_handle_struct *handle, SMB_ACL_T *pacl, SMB_ACL_ENTRY_T *pentry) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_set_tag_type(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_TAG_T tagtype) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_set_qualifier(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, void *qual) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_set_permset(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_PERMSET_T permset) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_valid(vfs_handle_struct *handle, SMB_ACL_T theacl ) -{ - errno = ENOSYS; - return -1; -} - static int skel_sys_acl_set_file(vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl) { errno = ENOSYS; @@ -682,30 +604,6 @@ static int skel_sys_acl_delete_def_file(vfs_handle_struct *handle, const char * return -1; } -static int skel_sys_acl_get_perm(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_free_text(vfs_handle_struct *handle, char *text) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_free_acl(vfs_handle_struct *handle, SMB_ACL_T posix_acl) -{ - errno = ENOSYS; - return -1; -} - -static int skel_sys_acl_free_qualifier(vfs_handle_struct *handle, void *qualifier, SMB_ACL_TAG_T tagtype) -{ - errno = ENOSYS; - return -1; -} - static ssize_t skel_getxattr(vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size) { errno = ENOSYS; @@ -871,28 +769,11 @@ struct vfs_fn_pointers skel_opaque_fns = { .chmod_acl_fn = skel_chmod_acl, .fchmod_acl_fn = skel_fchmod_acl, - .sys_acl_get_entry_fn = skel_sys_acl_get_entry, - .sys_acl_get_tag_type_fn = skel_sys_acl_get_tag_type, - .sys_acl_get_permset_fn = skel_sys_acl_get_permset, - .sys_acl_get_qualifier_fn = skel_sys_acl_get_qualifier, .sys_acl_get_file_fn = skel_sys_acl_get_file, .sys_acl_get_fd_fn = skel_sys_acl_get_fd, - .sys_acl_clear_perms_fn = skel_sys_acl_clear_perms, - .sys_acl_add_perm_fn = skel_sys_acl_add_perm, - .sys_acl_to_text_fn = skel_sys_acl_to_text, - .sys_acl_init_fn = skel_sys_acl_init, - .sys_acl_create_entry_fn = skel_sys_acl_create_entry, - .sys_acl_set_tag_type_fn = skel_sys_acl_set_tag_type, - .sys_acl_set_qualifier_fn = skel_sys_acl_set_qualifier, - .sys_acl_set_permset_fn = skel_sys_acl_set_permset, - .sys_acl_valid_fn = skel_sys_acl_valid, .sys_acl_set_file_fn = skel_sys_acl_set_file, .sys_acl_set_fd_fn = skel_sys_acl_set_fd, .sys_acl_delete_def_file_fn = skel_sys_acl_delete_def_file, - .sys_acl_get_perm_fn = skel_sys_acl_get_perm, - .sys_acl_free_text_fn = skel_sys_acl_free_text, - .sys_acl_free_acl_fn = skel_sys_acl_free_acl, - .sys_acl_free_qualifier_fn = skel_sys_acl_free_qualifier, /* EA operations. */ .getxattr_fn = skel_getxattr, diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c index 6981b5da05..711b7fc139 100644 --- a/examples/VFS/skel_transparent.c +++ b/examples/VFS/skel_transparent.c @@ -689,26 +689,6 @@ static int skel_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp, mode_t return SMB_VFS_NEXT_FCHMOD_ACL(handle, fsp, mode); } -static int skel_sys_acl_get_entry(vfs_handle_struct *handle, SMB_ACL_T theacl, int entry_id, SMB_ACL_ENTRY_T *entry_p) -{ - return SMB_VFS_NEXT_SYS_ACL_GET_ENTRY(handle, theacl, entry_id, entry_p); -} - -static int skel_sys_acl_get_tag_type(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_TAG_T *tag_type_p) -{ - return SMB_VFS_NEXT_SYS_ACL_GET_TAG_TYPE(handle, entry_d, tag_type_p); -} - -static int skel_sys_acl_get_permset(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_PERMSET_T *permset_p) -{ - return SMB_VFS_NEXT_SYS_ACL_GET_PERMSET(handle, entry_d, permset_p); -} - -static void *skel_sys_acl_get_qualifier(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d) -{ - return SMB_VFS_NEXT_SYS_ACL_GET_QUALIFIER(handle, entry_d); -} - static SMB_ACL_T skel_sys_acl_get_file(vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type) { return SMB_VFS_NEXT_SYS_ACL_GET_FILE(handle, path_p, type); @@ -719,51 +699,6 @@ static SMB_ACL_T skel_sys_acl_get_fd(vfs_handle_struct *handle, files_struct *fs return SMB_VFS_NEXT_SYS_ACL_GET_FD(handle, fsp); } -static int skel_sys_acl_clear_perms(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset) -{ - return SMB_VFS_NEXT_SYS_ACL_CLEAR_PERMS(handle, permset); -} - -static int skel_sys_acl_add_perm(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm) -{ - return SMB_VFS_NEXT_SYS_ACL_ADD_PERM(handle, permset, perm); -} - -static char *skel_sys_acl_to_text(vfs_handle_struct *handle, SMB_ACL_T theacl, ssize_t *plen) -{ - return SMB_VFS_NEXT_SYS_ACL_TO_TEXT(handle, theacl, plen); -} - -static SMB_ACL_T skel_sys_acl_init(vfs_handle_struct *handle, int count) -{ - return SMB_VFS_NEXT_SYS_ACL_INIT(handle, count); -} - -static int skel_sys_acl_create_entry(vfs_handle_struct *handle, SMB_ACL_T *pacl, SMB_ACL_ENTRY_T *pentry) -{ - return SMB_VFS_NEXT_SYS_ACL_CREATE_ENTRY(handle, pacl, pentry); -} - -static int skel_sys_acl_set_tag_type(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_TAG_T tagtype) -{ - return SMB_VFS_NEXT_SYS_ACL_SET_TAG_TYPE(handle, entry, tagtype); -} - -static int skel_sys_acl_set_qualifier(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, void *qual) -{ - return SMB_VFS_NEXT_SYS_ACL_SET_QUALIFIER(handle, entry, qual); -} - -static int skel_sys_acl_set_permset(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_PERMSET_T permset) -{ - return SMB_VFS_NEXT_SYS_ACL_SET_PERMSET(handle, entry, permset); -} - -static int skel_sys_acl_valid(vfs_handle_struct *handle, SMB_ACL_T theacl ) -{ - return SMB_VFS_NEXT_SYS_ACL_VALID(handle, theacl); -} - static int skel_sys_acl_set_file(vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl) { return SMB_VFS_NEXT_SYS_ACL_SET_FILE(handle, name, acltype, theacl); @@ -779,26 +714,6 @@ static int skel_sys_acl_delete_def_file(vfs_handle_struct *handle, const char * return SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FILE(handle, path); } -static int skel_sys_acl_get_perm(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm) -{ - return SMB_VFS_NEXT_SYS_ACL_GET_PERM(handle, permset, perm); -} - -static int skel_sys_acl_free_text(vfs_handle_struct *handle, char *text) -{ - return SMB_VFS_NEXT_SYS_ACL_FREE_TEXT(handle, text); -} - -static int skel_sys_acl_free_acl(vfs_handle_struct *handle, SMB_ACL_T posix_acl) -{ - return SMB_VFS_NEXT_SYS_ACL_FREE_ACL(handle, posix_acl); -} - -static int skel_sys_acl_free_qualifier(vfs_handle_struct *handle, void *qualifier, SMB_ACL_TAG_T tagtype) -{ - return SMB_VFS_NEXT_SYS_ACL_FREE_QUALIFIER(handle, qualifier, tagtype); -} - static ssize_t skel_getxattr(vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size) { return SMB_VFS_NEXT_GETXATTR(handle, path, name, value, size); @@ -952,28 +867,11 @@ struct vfs_fn_pointers skel_transparent_fns = { .chmod_acl_fn = skel_chmod_acl, .fchmod_acl_fn = skel_fchmod_acl, - .sys_acl_get_entry_fn = skel_sys_acl_get_entry, - .sys_acl_get_tag_type_fn = skel_sys_acl_get_tag_type, - .sys_acl_get_permset_fn = skel_sys_acl_get_permset, - .sys_acl_get_qualifier_fn = skel_sys_acl_get_qualifier, .sys_acl_get_file_fn = skel_sys_acl_get_file, .sys_acl_get_fd_fn = skel_sys_acl_get_fd, - .sys_acl_clear_perms_fn = skel_sys_acl_clear_perms, - .sys_acl_add_perm_fn = skel_sys_acl_add_perm, - .sys_acl_to_text_fn = skel_sys_acl_to_text, - .sys_acl_init_fn = skel_sys_acl_init, - .sys_acl_create_entry_fn = skel_sys_acl_create_entry, - .sys_acl_set_tag_type_fn = skel_sys_acl_set_tag_type, - .sys_acl_set_qualifier_fn = skel_sys_acl_set_qualifier, - .sys_acl_set_permset_fn = skel_sys_acl_set_permset, - .sys_acl_valid_fn = skel_sys_acl_valid, .sys_acl_set_file_fn = skel_sys_acl_set_file, .sys_acl_set_fd_fn = skel_sys_acl_set_fd, .sys_acl_delete_def_file_fn = skel_sys_acl_delete_def_file, - .sys_acl_get_perm_fn = skel_sys_acl_get_perm, - .sys_acl_free_text_fn = skel_sys_acl_free_text, - .sys_acl_free_acl_fn = skel_sys_acl_free_acl, - .sys_acl_free_qualifier_fn = skel_sys_acl_free_qualifier, /* EA operations. */ .getxattr_fn = skel_getxattr, diff --git a/source3/include/vfs.h b/source3/include/vfs.h index c5b896db0f..f2cfd24cd3 100644 --- a/source3/include/vfs.h +++ b/source3/include/vfs.h @@ -140,6 +140,7 @@ /* Leave at 29 - not yet released. add SMB_VFS_GET_DFS_REFERRAL() - metze */ /* Leave at 29 - not yet released. Remove l{list,get,set,remove}xattr - abartlet */ /* Leave at 29 - not yet released. move to plain off_t - abartlet */ +/* Leave at 29 - not yet released. Remove sys_acl functions other than set and get - abartlet */ #define SMB_VFS_INTERFACE_VERSION 29 /* @@ -683,28 +684,11 @@ struct vfs_fn_pointers { int (*chmod_acl_fn)(struct vfs_handle_struct *handle, const char *name, mode_t mode); int (*fchmod_acl_fn)(struct vfs_handle_struct *handle, struct files_struct *fsp, mode_t mode); - int (*sys_acl_get_entry_fn)(struct vfs_handle_struct *handle, SMB_ACL_T theacl, int entry_id, SMB_ACL_ENTRY_T *entry_p); - int (*sys_acl_get_tag_type_fn)(struct vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_TAG_T *tag_type_p); - int (*sys_acl_get_permset_fn)(struct vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_PERMSET_T *permset_p); - void * (*sys_acl_get_qualifier_fn)(struct vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d); SMB_ACL_T (*sys_acl_get_file_fn)(struct vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type); SMB_ACL_T (*sys_acl_get_fd_fn)(struct vfs_handle_struct *handle, struct files_struct *fsp); - int (*sys_acl_clear_perms_fn)(struct vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset); - int (*sys_acl_add_perm_fn)(struct vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm); - char * (*sys_acl_to_text_fn)(struct vfs_handle_struct *handle, SMB_ACL_T theacl, ssize_t *plen); - SMB_ACL_T (*sys_acl_init_fn)(struct vfs_handle_struct *handle, int count); - int (*sys_acl_create_entry_fn)(struct vfs_handle_struct *handle, SMB_ACL_T *pacl, SMB_ACL_ENTRY_T *pentry); - int (*sys_acl_set_tag_type_fn)(struct vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_TAG_T tagtype); - int (*sys_acl_set_qualifier_fn)(struct vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, void *qual); - int (*sys_acl_set_permset_fn)(struct vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_PERMSET_T permset); - int (*sys_acl_valid_fn)(struct vfs_handle_struct *handle, SMB_ACL_T theacl ); int (*sys_acl_set_file_fn)(struct vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl); int (*sys_acl_set_fd_fn)(struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_ACL_T theacl); int (*sys_acl_delete_def_file_fn)(struct vfs_handle_struct *handle, const char *path); - int (*sys_acl_get_perm_fn)(struct vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm); - int (*sys_acl_free_text_fn)(struct vfs_handle_struct *handle, char *text); - int (*sys_acl_free_acl_fn)(struct vfs_handle_struct *handle, SMB_ACL_T posix_acl); - int (*sys_acl_free_qualifier_fn)(struct vfs_handle_struct *handle, void *qualifier, SMB_ACL_TAG_T tagtype); /* EA operations. */ ssize_t (*getxattr_fn)(struct vfs_handle_struct *handle,const char *path, const char *name, void *value, size_t size); @@ -1076,43 +1060,11 @@ int smb_vfs_call_chmod_acl(struct vfs_handle_struct *handle, const char *name, mode_t mode); int smb_vfs_call_fchmod_acl(struct vfs_handle_struct *handle, struct files_struct *fsp, mode_t mode); -int smb_vfs_call_sys_acl_get_entry(struct vfs_handle_struct *handle, - SMB_ACL_T theacl, int entry_id, - SMB_ACL_ENTRY_T *entry_p); -int smb_vfs_call_sys_acl_get_tag_type(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_TAG_T *tag_type_p); -int smb_vfs_call_sys_acl_get_permset(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_PERMSET_T *permset_p); -void * smb_vfs_call_sys_acl_get_qualifier(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d); SMB_ACL_T smb_vfs_call_sys_acl_get_file(struct vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type); SMB_ACL_T smb_vfs_call_sys_acl_get_fd(struct vfs_handle_struct *handle, struct files_struct *fsp); -int smb_vfs_call_sys_acl_clear_perms(struct vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset); -int smb_vfs_call_sys_acl_add_perm(struct vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm); -char * smb_vfs_call_sys_acl_to_text(struct vfs_handle_struct *handle, - SMB_ACL_T theacl, ssize_t *plen); -SMB_ACL_T smb_vfs_call_sys_acl_init(struct vfs_handle_struct *handle, - int count); -int smb_vfs_call_sys_acl_create_entry(struct vfs_handle_struct *handle, - SMB_ACL_T *pacl, SMB_ACL_ENTRY_T *pentry); -int smb_vfs_call_sys_acl_set_tag_type(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, - SMB_ACL_TAG_T tagtype); -int smb_vfs_call_sys_acl_set_qualifier(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, void *qual); -int smb_vfs_call_sys_acl_set_permset(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, - SMB_ACL_PERMSET_T permset); -int smb_vfs_call_sys_acl_valid(struct vfs_handle_struct *handle, - SMB_ACL_T theacl); int smb_vfs_call_sys_acl_set_file(struct vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl); @@ -1120,15 +1072,6 @@ int smb_vfs_call_sys_acl_set_fd(struct vfs_handle_struct *handle, struct files_struct *fsp, SMB_ACL_T theacl); int smb_vfs_call_sys_acl_delete_def_file(struct vfs_handle_struct *handle, const char *path); -int smb_vfs_call_sys_acl_get_perm(struct vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm); -int smb_vfs_call_sys_acl_free_text(struct vfs_handle_struct *handle, - char *text); -int smb_vfs_call_sys_acl_free_acl(struct vfs_handle_struct *handle, - SMB_ACL_T posix_acl); -int smb_vfs_call_sys_acl_free_qualifier(struct vfs_handle_struct *handle, - void *qualifier, SMB_ACL_TAG_T tagtype); ssize_t smb_vfs_call_getxattr(struct vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size); diff --git a/source3/include/vfs_macros.h b/source3/include/vfs_macros.h index 515f68f16e..e577e9950f 100644 --- a/source3/include/vfs_macros.h +++ b/source3/include/vfs_macros.h @@ -429,26 +429,6 @@ #define SMB_VFS_NEXT_FCHMOD_ACL(handle, fsp, mode) \ smb_vfs_call_fchmod_acl((handle)->next, (fsp), (mode)) -#define SMB_VFS_SYS_ACL_GET_ENTRY(conn, theacl, entry_id, entry_p) \ - smb_vfs_call_sys_acl_get_entry((conn)->vfs_handles, (theacl), (entry_id), (entry_p)) -#define SMB_VFS_NEXT_SYS_ACL_GET_ENTRY(handle, theacl, entry_id, entry_p) \ - smb_vfs_call_sys_acl_get_entry((handle)->next, (theacl), (entry_id), (entry_p)) - -#define SMB_VFS_SYS_ACL_GET_TAG_TYPE(conn, entry_d, tag_type_p) \ - smb_vfs_call_sys_acl_get_tag_type((conn)->vfs_handles, (entry_d), (tag_type_p)) -#define SMB_VFS_NEXT_SYS_ACL_GET_TAG_TYPE(handle, entry_d, tag_type_p) \ - smb_vfs_call_sys_acl_get_tag_type((handle)->next, (entry_d), (tag_type_p)) - -#define SMB_VFS_SYS_ACL_GET_PERMSET(conn, entry_d, permset_p) \ - smb_vfs_call_sys_acl_get_permset((conn)->vfs_handles, (entry_d), (permset_p)) -#define SMB_VFS_NEXT_SYS_ACL_GET_PERMSET(handle, entry_d, permset_p) \ - smb_vfs_call_sys_acl_get_permset((handle)->next, (entry_d), (permset_p)) - -#define SMB_VFS_SYS_ACL_GET_QUALIFIER(conn, entry_d) \ - smb_vfs_call_sys_acl_get_qualifier((conn)->vfs_handles, (entry_d)) -#define SMB_VFS_NEXT_SYS_ACL_GET_QUALIFIER(handle, entry_d) \ - smb_vfs_call_sys_acl_get_qualifier((handle)->next, (entry_d)) - #define SMB_VFS_SYS_ACL_GET_FILE(conn, path_p, type) \ smb_vfs_call_sys_acl_get_file((conn)->vfs_handles, (path_p), (type)) #define SMB_VFS_NEXT_SYS_ACL_GET_FILE(handle, path_p, type) \ @@ -459,51 +439,6 @@ #define SMB_VFS_NEXT_SYS_ACL_GET_FD(handle, fsp) \ smb_vfs_call_sys_acl_get_fd((handle)->next, (fsp)) -#define SMB_VFS_SYS_ACL_CLEAR_PERMS(conn, permset) \ - smb_vfs_call_sys_acl_clear_perms((conn)->vfs_handles, (permset)) -#define SMB_VFS_NEXT_SYS_ACL_CLEAR_PERMS(handle, permset) \ - smb_vfs_call_sys_acl_clear_perms((handle)->next, (permset)) - -#define SMB_VFS_SYS_ACL_ADD_PERM(conn, permset, perm) \ - smb_vfs_call_sys_acl_add_perm((conn)->vfs_handles, (permset), (perm)) -#define SMB_VFS_NEXT_SYS_ACL_ADD_PERM(handle, permset, perm) \ - smb_vfs_call_sys_acl_add_perm((handle)->next, (permset), (perm)) - -#define SMB_VFS_SYS_ACL_TO_TEXT(conn, theacl, plen) \ - smb_vfs_call_sys_acl_to_text((conn)->vfs_handles, (theacl), (plen)) -#define SMB_VFS_NEXT_SYS_ACL_TO_TEXT(handle, theacl, plen) \ - smb_vfs_call_sys_acl_to_text((handle)->next, (theacl), (plen)) - -#define SMB_VFS_SYS_ACL_INIT(conn, count) \ - smb_vfs_call_sys_acl_init((conn)->vfs_handles, (count)) -#define SMB_VFS_NEXT_SYS_ACL_INIT(handle, count) \ - smb_vfs_call_sys_acl_init((handle)->next, (count)) - -#define SMB_VFS_SYS_ACL_CREATE_ENTRY(conn, pacl, pentry) \ - smb_vfs_call_sys_acl_create_entry((conn)->vfs_handles, (pacl), (pentry)) -#define SMB_VFS_NEXT_SYS_ACL_CREATE_ENTRY(handle, pacl, pentry) \ - smb_vfs_call_sys_acl_create_entry((handle)->next, (pacl), (pentry)) - -#define SMB_VFS_SYS_ACL_SET_TAG_TYPE(conn, entry, tagtype) \ - smb_vfs_call_sys_acl_set_tag_type((conn)->vfs_handles, (entry), (tagtype)) -#define SMB_VFS_NEXT_SYS_ACL_SET_TAG_TYPE(handle, entry, tagtype) \ - smb_vfs_call_sys_acl_set_tag_type((handle)->next, (entry), (tagtype)) - -#define SMB_VFS_SYS_ACL_SET_QUALIFIER(conn, entry, qual) \ - smb_vfs_call_sys_acl_set_qualifier((conn)->vfs_handles, (entry), (qual)) -#define SMB_VFS_NEXT_SYS_ACL_SET_QUALIFIER(handle, entry, qual) \ - smb_vfs_call_sys_acl_set_qualifier((handle)->next, (entry), (qual)) - -#define SMB_VFS_SYS_ACL_SET_PERMSET(conn, entry, permset) \ - smb_vfs_call_sys_acl_set_permset((conn)->vfs_handles, (entry), (permset)) -#define SMB_VFS_NEXT_SYS_ACL_SET_PERMSET(handle, entry, permset) \ - smb_vfs_call_sys_acl_set_permset((handle)->next, (entry), (permset)) - -#define SMB_VFS_SYS_ACL_VALID(conn, theacl) \ - smb_vfs_call_sys_acl_valid((conn)->vfs_handles, (theacl)) -#define SMB_VFS_NEXT_SYS_ACL_VALID(handle, theacl) \ - smb_vfs_call_sys_acl_valid((handle)->next, (theacl)) - #define SMB_VFS_SYS_ACL_SET_FILE(conn, name, acltype, theacl) \ smb_vfs_call_sys_acl_set_file((conn)->vfs_handles, (name), (acltype), (theacl)) #define SMB_VFS_NEXT_SYS_ACL_SET_FILE(handle, name, acltype, theacl) \ @@ -519,26 +454,6 @@ #define SMB_VFS_NEXT_SYS_ACL_DELETE_DEF_FILE(handle, path) \ smb_vfs_call_sys_acl_delete_def_file((handle)->next, (path)) -#define SMB_VFS_SYS_ACL_GET_PERM(conn, permset, perm) \ - smb_vfs_call_sys_acl_get_perm((conn)->vfs_handles, (permset), (perm)) -#define SMB_VFS_NEXT_SYS_ACL_GET_PERM(handle, permset, perm) \ - smb_vfs_call_sys_acl_get_perm((handle)->next, (permset), (perm)) - -#define SMB_VFS_SYS_ACL_FREE_TEXT(conn, text) \ - smb_vfs_call_sys_acl_free_text((conn)->vfs_handles, (text)) -#define SMB_VFS_NEXT_SYS_ACL_FREE_TEXT(handle, text) \ - smb_vfs_call_sys_acl_free_text((handle)->next, (text)) - -#define SMB_VFS_SYS_ACL_FREE_ACL(conn, posix_acl) \ - smb_vfs_call_sys_acl_free_acl((conn)->vfs_handles, (posix_acl)) -#define SMB_VFS_NEXT_SYS_ACL_FREE_ACL(handle, posix_acl) \ - smb_vfs_call_sys_acl_free_acl((handle)->next, (posix_acl)) - -#define SMB_VFS_SYS_ACL_FREE_QUALIFIER(conn, qualifier, tagtype) \ - smb_vfs_call_sys_acl_free_qualifier((conn)->vfs_handles, (qualifier), (tagtype)) -#define SMB_VFS_NEXT_SYS_ACL_FREE_QUALIFIER(handle, qualifier, tagtype) \ - smb_vfs_call_sys_acl_free_qualifier((handle)->next, (qualifier), (tagtype)) - #define SMB_VFS_GETXATTR(conn,path,name,value,size) \ smb_vfs_call_getxattr((conn)->vfs_handles,(path),(name),(value),(size)) #define SMB_VFS_NEXT_GETXATTR(handle,path,name,value,size) \ diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c index 002a5501fd..42671a1dbe 100644 --- a/source3/modules/vfs_default.c +++ b/source3/modules/vfs_default.c @@ -2111,26 +2111,6 @@ static int vfswrap_fchmod_acl(vfs_handle_struct *handle, files_struct *fsp, mode #endif } -static int vfswrap_sys_acl_get_entry(vfs_handle_struct *handle, SMB_ACL_T theacl, int entry_id, SMB_ACL_ENTRY_T *entry_p) -{ - return sys_acl_get_entry(theacl, entry_id, entry_p); -} - -static int vfswrap_sys_acl_get_tag_type(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_TAG_T *tag_type_p) -{ - return sys_acl_get_tag_type(entry_d, tag_type_p); -} - -static int vfswrap_sys_acl_get_permset(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d, SMB_ACL_PERMSET_T *permset_p) -{ - return sys_acl_get_permset(entry_d, permset_p); -} - -static void * vfswrap_sys_acl_get_qualifier(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry_d) -{ - return sys_acl_get_qualifier(entry_d); -} - static SMB_ACL_T vfswrap_sys_acl_get_file(vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type) { return sys_acl_get_file(handle, path_p, type); @@ -2141,51 +2121,6 @@ static SMB_ACL_T vfswrap_sys_acl_get_fd(vfs_handle_struct *handle, files_struct return sys_acl_get_fd(handle, fsp); } -static int vfswrap_sys_acl_clear_perms(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset) -{ - return sys_acl_clear_perms(permset); -} - -static int vfswrap_sys_acl_add_perm(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm) -{ - return sys_acl_add_perm(permset, perm); -} - -static char * vfswrap_sys_acl_to_text(vfs_handle_struct *handle, SMB_ACL_T theacl, ssize_t *plen) -{ - return sys_acl_to_text(theacl, plen); -} - -static SMB_ACL_T vfswrap_sys_acl_init(vfs_handle_struct *handle, int count) -{ - return sys_acl_init(count); -} - -static int vfswrap_sys_acl_create_entry(vfs_handle_struct *handle, SMB_ACL_T *pacl, SMB_ACL_ENTRY_T *pentry) -{ - return sys_acl_create_entry(pacl, pentry); -} - -static int vfswrap_sys_acl_set_tag_type(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_TAG_T tagtype) -{ - return sys_acl_set_tag_type(entry, tagtype); -} - -static int vfswrap_sys_acl_set_qualifier(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, void *qual) -{ - return sys_acl_set_qualifier(entry, qual); -} - -static int vfswrap_sys_acl_set_permset(vfs_handle_struct *handle, SMB_ACL_ENTRY_T entry, SMB_ACL_PERMSET_T permset) -{ - return sys_acl_set_permset(entry, permset); -} - -static int vfswrap_sys_acl_valid(vfs_handle_struct *handle, SMB_ACL_T theacl ) -{ - return sys_acl_valid(theacl ); -} - static int vfswrap_sys_acl_set_file(vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl) { return sys_acl_set_file(handle, name, acltype, theacl); @@ -2201,26 +2136,6 @@ static int vfswrap_sys_acl_delete_def_file(vfs_handle_struct *handle, const cha return sys_acl_delete_def_file(handle, path); } -static int vfswrap_sys_acl_get_perm(vfs_handle_struct *handle, SMB_ACL_PERMSET_T permset, SMB_ACL_PERM_T perm) -{ - return sys_acl_get_perm(permset, perm); -} - -static int vfswrap_sys_acl_free_text(vfs_handle_struct *handle, char *text) -{ - return sys_acl_free_text(text); -} - -static int vfswrap_sys_acl_free_acl(vfs_handle_struct *handle, SMB_ACL_T posix_acl) -{ - return sys_acl_free_acl(posix_acl); -} - -static int vfswrap_sys_acl_free_qualifier(vfs_handle_struct *handle, void *qualifier, SMB_ACL_TAG_T tagtype) -{ - return sys_acl_free_qualifier(qualifier, tagtype); -} - /**************************************************************** Extended attribute operations. *****************************************************************/ @@ -2408,28 +2323,11 @@ static struct vfs_fn_pointers vfs_default_fns = { .chmod_acl_fn = vfswrap_chmod_acl, .fchmod_acl_fn = vfswrap_fchmod_acl, - .sys_acl_get_entry_fn = vfswrap_sys_acl_get_entry, - .sys_acl_get_tag_type_fn = vfswrap_sys_acl_get_tag_type, - .sys_acl_get_permset_fn = vfswrap_sys_acl_get_permset, - .sys_acl_get_qualifier_fn = vfswrap_sys_acl_get_qualifier, .sys_acl_get_file_fn = vfswrap_sys_acl_get_file, .sys_acl_get_fd_fn = vfswrap_sys_acl_get_fd, - .sys_acl_clear_perms_fn = vfswrap_sys_acl_clear_perms, - .sys_acl_add_perm_fn = vfswrap_sys_acl_add_perm, - .sys_acl_to_text_fn = vfswrap_sys_acl_to_text, - .sys_acl_init_fn = vfswrap_sys_acl_init, - .sys_acl_create_entry_fn = vfswrap_sys_acl_create_entry, - .sys_acl_set_tag_type_fn = vfswrap_sys_acl_set_tag_type, - .sys_acl_set_qualifier_fn = vfswrap_sys_acl_set_qualifier, - .sys_acl_set_permset_fn = vfswrap_sys_acl_set_permset, - .sys_acl_valid_fn = vfswrap_sys_acl_valid, .sys_acl_set_file_fn = vfswrap_sys_acl_set_file, .sys_acl_set_fd_fn = vfswrap_sys_acl_set_fd, .sys_acl_delete_def_file_fn = vfswrap_sys_acl_delete_def_file, - .sys_acl_get_perm_fn = vfswrap_sys_acl_get_perm, - .sys_acl_free_text_fn = vfswrap_sys_acl_free_text, - .sys_acl_free_acl_fn = vfswrap_sys_acl_free_acl, - .sys_acl_free_qualifier_fn = vfswrap_sys_acl_free_qualifier, /* EA operations. */ .getxattr_fn = vfswrap_getxattr, diff --git a/source3/modules/vfs_full_audit.c b/source3/modules/vfs_full_audit.c index 3199503e52..48198e7fa5 100644 --- a/source3/modules/vfs_full_audit.c +++ b/source3/modules/vfs_full_audit.c @@ -173,28 +173,11 @@ typedef enum _vfs_op_type { SMB_VFS_OP_CHMOD_ACL, SMB_VFS_OP_FCHMOD_ACL, - SMB_VFS_OP_SYS_ACL_GET_ENTRY, - SMB_VFS_OP_SYS_ACL_GET_TAG_TYPE, - SMB_VFS_OP_SYS_ACL_GET_PERMSET, - SMB_VFS_OP_SYS_ACL_GET_QUALIFIER, SMB_VFS_OP_SYS_ACL_GET_FILE, SMB_VFS_OP_SYS_ACL_GET_FD, - SMB_VFS_OP_SYS_ACL_CLEAR_PERMS, - SMB_VFS_OP_SYS_ACL_ADD_PERM, - SMB_VFS_OP_SYS_ACL_TO_TEXT, - SMB_VFS_OP_SYS_ACL_INIT, - SMB_VFS_OP_SYS_ACL_CREATE_ENTRY, - SMB_VFS_OP_SYS_ACL_SET_TAG_TYPE, - SMB_VFS_OP_SYS_ACL_SET_QUALIFIER, - SMB_VFS_OP_SYS_ACL_SET_PERMSET, - SMB_VFS_OP_SYS_ACL_VALID, SMB_VFS_OP_SYS_ACL_SET_FILE, SMB_VFS_OP_SYS_ACL_SET_FD, SMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE, - SMB_VFS_OP_SYS_ACL_GET_PERM, - SMB_VFS_OP_SYS_ACL_FREE_TEXT, - SMB_VFS_OP_SYS_ACL_FREE_ACL, - SMB_VFS_OP_SYS_ACL_FREE_QUALIFIER, /* EA operations. */ SMB_VFS_OP_GETXATTR, @@ -299,28 +282,11 @@ static struct { { SMB_VFS_OP_FSET_NT_ACL, "fset_nt_acl" }, { SMB_VFS_OP_CHMOD_ACL, "chmod_acl" }, { SMB_VFS_OP_FCHMOD_ACL, "fchmod_acl" }, - { SMB_VFS_OP_SYS_ACL_GET_ENTRY, "sys_acl_get_entry" }, - { SMB_VFS_OP_SYS_ACL_GET_TAG_TYPE, "sys_acl_get_tag_type" }, - { SMB_VFS_OP_SYS_ACL_GET_PERMSET, "sys_acl_get_permset" }, - { SMB_VFS_OP_SYS_ACL_GET_QUALIFIER, "sys_acl_get_qualifier" }, { SMB_VFS_OP_SYS_ACL_GET_FILE, "sys_acl_get_file" }, { SMB_VFS_OP_SYS_ACL_GET_FD, "sys_acl_get_fd" }, - { SMB_VFS_OP_SYS_ACL_CLEAR_PERMS, "sys_acl_clear_perms" }, - { SMB_VFS_OP_SYS_ACL_ADD_PERM, "sys_acl_add_perm" }, - { SMB_VFS_OP_SYS_ACL_TO_TEXT, "sys_acl_to_text" }, - { SMB_VFS_OP_SYS_ACL_INIT, "sys_acl_init" }, - { SMB_VFS_OP_SYS_ACL_CREATE_ENTRY, "sys_acl_create_entry" }, - { SMB_VFS_OP_SYS_ACL_SET_TAG_TYPE, "sys_acl_set_tag_type" }, - { SMB_VFS_OP_SYS_ACL_SET_QUALIFIER, "sys_acl_set_qualifier" }, - { SMB_VFS_OP_SYS_ACL_SET_PERMSET, "sys_acl_set_permset" }, - { SMB_VFS_OP_SYS_ACL_VALID, "sys_acl_valid" }, { SMB_VFS_OP_SYS_ACL_SET_FILE, "sys_acl_set_file" }, { SMB_VFS_OP_SYS_ACL_SET_FD, "sys_acl_set_fd" }, { SMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE, "sys_acl_delete_def_file" }, - { SMB_VFS_OP_SYS_ACL_GET_PERM, "sys_acl_get_perm" }, - { SMB_VFS_OP_SYS_ACL_FREE_TEXT, "sys_acl_free_text" }, - { SMB_VFS_OP_SYS_ACL_FREE_ACL, "sys_acl_free_acl" }, - { SMB_VFS_OP_SYS_ACL_FREE_QUALIFIER, "sys_acl_free_qualifier" }, { SMB_VFS_OP_GETXATTR, "getxattr" }, { SMB_VFS_OP_FGETXATTR, "fgetxattr" }, { SMB_VFS_OP_LISTXATTR, "listxattr" }, @@ -1828,68 +1794,6 @@ static int smb_full_audit_fchmod_acl(vfs_handle_struct *handle, files_struct *fs return result; } -static int smb_full_audit_sys_acl_get_entry(vfs_handle_struct *handle, - - SMB_ACL_T theacl, int entry_id, - SMB_ACL_ENTRY_T *entry_p) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_GET_ENTRY(handle, theacl, entry_id, - entry_p); - - do_log(SMB_VFS_OP_SYS_ACL_GET_ENTRY, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_get_tag_type(vfs_handle_struct *handle, - - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_TAG_T *tag_type_p) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_GET_TAG_TYPE(handle, entry_d, - tag_type_p); - - do_log(SMB_VFS_OP_SYS_ACL_GET_TAG_TYPE, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_get_permset(vfs_handle_struct *handle, - - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_PERMSET_T *permset_p) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_GET_PERMSET(handle, entry_d, - permset_p); - - do_log(SMB_VFS_OP_SYS_ACL_GET_PERMSET, (result >= 0), handle, - ""); - - return result; -} - -static void * smb_full_audit_sys_acl_get_qualifier(vfs_handle_struct *handle, - - SMB_ACL_ENTRY_T entry_d) -{ - void *result; - - result = SMB_VFS_NEXT_SYS_ACL_GET_QUALIFIER(handle, entry_d); - - do_log(SMB_VFS_OP_SYS_ACL_GET_QUALIFIER, (result != NULL), handle, - ""); - - return result; -} - static SMB_ACL_T smb_full_audit_sys_acl_get_file(vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type) @@ -1917,137 +1821,6 @@ static SMB_ACL_T smb_full_audit_sys_acl_get_fd(vfs_handle_struct *handle, return result; } -static int smb_full_audit_sys_acl_clear_perms(vfs_handle_struct *handle, - - SMB_ACL_PERMSET_T permset) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_CLEAR_PERMS(handle, permset); - - do_log(SMB_VFS_OP_SYS_ACL_CLEAR_PERMS, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_add_perm(vfs_handle_struct *handle, - - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_ADD_PERM(handle, permset, perm); - - do_log(SMB_VFS_OP_SYS_ACL_ADD_PERM, (result >= 0), handle, - ""); - - return result; -} - -static char * smb_full_audit_sys_acl_to_text(vfs_handle_struct *handle, - SMB_ACL_T theacl, - ssize_t *plen) -{ - char * result; - - result = SMB_VFS_NEXT_SYS_ACL_TO_TEXT(handle, theacl, plen); - - do_log(SMB_VFS_OP_SYS_ACL_TO_TEXT, (result != NULL), handle, - ""); - - return result; -} - -static SMB_ACL_T smb_full_audit_sys_acl_init(vfs_handle_struct *handle, - - int count) -{ - SMB_ACL_T result; - - result = SMB_VFS_NEXT_SYS_ACL_INIT(handle, count); - - do_log(SMB_VFS_OP_SYS_ACL_INIT, (result != NULL), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_create_entry(vfs_handle_struct *handle, - SMB_ACL_T *pacl, - SMB_ACL_ENTRY_T *pentry) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_CREATE_ENTRY(handle, pacl, pentry); - - do_log(SMB_VFS_OP_SYS_ACL_CREATE_ENTRY, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_set_tag_type(vfs_handle_struct *handle, - - SMB_ACL_ENTRY_T entry, - SMB_ACL_TAG_T tagtype) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_SET_TAG_TYPE(handle, entry, - tagtype); - - do_log(SMB_VFS_OP_SYS_ACL_SET_TAG_TYPE, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_set_qualifier(vfs_handle_struct *handle, - - SMB_ACL_ENTRY_T entry, - void *qual) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_SET_QUALIFIER(handle, entry, qual); - - do_log(SMB_VFS_OP_SYS_ACL_SET_QUALIFIER, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_set_permset(vfs_handle_struct *handle, - - SMB_ACL_ENTRY_T entry, - SMB_ACL_PERMSET_T permset) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_SET_PERMSET(handle, entry, permset); - - do_log(SMB_VFS_OP_SYS_ACL_SET_PERMSET, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_valid(vfs_handle_struct *handle, - - SMB_ACL_T theacl ) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_VALID(handle, theacl); - - do_log(SMB_VFS_OP_SYS_ACL_VALID, (result >= 0), handle, - ""); - - return result; -} - static int smb_full_audit_sys_acl_set_file(vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, @@ -2091,64 +1864,6 @@ static int smb_full_audit_sys_acl_delete_def_file(vfs_handle_struct *handle, return result; } -static int smb_full_audit_sys_acl_get_perm(vfs_handle_struct *handle, - - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_GET_PERM(handle, permset, perm); - - do_log(SMB_VFS_OP_SYS_ACL_GET_PERM, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_free_text(vfs_handle_struct *handle, - - char *text) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_FREE_TEXT(handle, text); - - do_log(SMB_VFS_OP_SYS_ACL_FREE_TEXT, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_free_acl(vfs_handle_struct *handle, - - SMB_ACL_T posix_acl) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_FREE_ACL(handle, posix_acl); - - do_log(SMB_VFS_OP_SYS_ACL_FREE_ACL, (result >= 0), handle, - ""); - - return result; -} - -static int smb_full_audit_sys_acl_free_qualifier(vfs_handle_struct *handle, - void *qualifier, - SMB_ACL_TAG_T tagtype) -{ - int result; - - result = SMB_VFS_NEXT_SYS_ACL_FREE_QUALIFIER(handle, qualifier, - tagtype); - - do_log(SMB_VFS_OP_SYS_ACL_FREE_QUALIFIER, (result >= 0), handle, - ""); - - return result; -} - static ssize_t smb_full_audit_getxattr(struct vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size) @@ -2377,28 +2092,11 @@ static struct vfs_fn_pointers vfs_full_audit_fns = { .fset_nt_acl_fn = smb_full_audit_fset_nt_acl, .chmod_acl_fn = smb_full_audit_chmod_acl, .fchmod_acl_fn = smb_full_audit_fchmod_acl, - .sys_acl_get_entry_fn = smb_full_audit_sys_acl_get_entry, - .sys_acl_get_tag_type_fn = smb_full_audit_sys_acl_get_tag_type, - .sys_acl_get_permset_fn = smb_full_audit_sys_acl_get_permset, - .sys_acl_get_qualifier_fn = smb_full_audit_sys_acl_get_qualifier, .sys_acl_get_file_fn = smb_full_audit_sys_acl_get_file, .sys_acl_get_fd_fn = smb_full_audit_sys_acl_get_fd, - .sys_acl_clear_perms_fn = smb_full_audit_sys_acl_clear_perms, - .sys_acl_add_perm_fn = smb_full_audit_sys_acl_add_perm, - .sys_acl_to_text_fn = smb_full_audit_sys_acl_to_text, - .sys_acl_init_fn = smb_full_audit_sys_acl_init, - .sys_acl_create_entry_fn = smb_full_audit_sys_acl_create_entry, - .sys_acl_set_tag_type_fn = smb_full_audit_sys_acl_set_tag_type, - .sys_acl_set_qualifier_fn = smb_full_audit_sys_acl_set_qualifier, - .sys_acl_set_permset_fn = smb_full_audit_sys_acl_set_permset, - .sys_acl_valid_fn = smb_full_audit_sys_acl_valid, .sys_acl_set_file_fn = smb_full_audit_sys_acl_set_file, .sys_acl_set_fd_fn = smb_full_audit_sys_acl_set_fd, .sys_acl_delete_def_file_fn = smb_full_audit_sys_acl_delete_def_file, - .sys_acl_get_perm_fn = smb_full_audit_sys_acl_get_perm, - .sys_acl_free_text_fn = smb_full_audit_sys_acl_free_text, - .sys_acl_free_acl_fn = smb_full_audit_sys_acl_free_acl, - .sys_acl_free_qualifier_fn = smb_full_audit_sys_acl_free_qualifier, .getxattr_fn = smb_full_audit_getxattr, .fgetxattr_fn = smb_full_audit_fgetxattr, .listxattr_fn = smb_full_audit_listxattr, diff --git a/source3/modules/vfs_time_audit.c b/source3/modules/vfs_time_audit.c index 9b42ec9d2d..4a400bd17d 100644 --- a/source3/modules/vfs_time_audit.c +++ b/source3/modules/vfs_time_audit.c @@ -1680,88 +1680,6 @@ static int smb_time_audit_fchmod_acl(vfs_handle_struct *handle, return result; } -static int smb_time_audit_sys_acl_get_entry(vfs_handle_struct *handle, - SMB_ACL_T theacl, int entry_id, - SMB_ACL_ENTRY_T *entry_p) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_GET_ENTRY(handle, theacl, entry_id, - entry_p); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_get_entry", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_get_tag_type(vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_TAG_T *tag_type_p) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_GET_TAG_TYPE(handle, entry_d, - tag_type_p); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_get_tag_type", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_get_permset(vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_PERMSET_T *permset_p) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_GET_PERMSET(handle, entry_d, - permset_p); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_get_permset", timediff); - } - - return result; -} - -static void * smb_time_audit_sys_acl_get_qualifier(vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d) -{ - void *result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_GET_QUALIFIER(handle, entry_d); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_get_qualifier", timediff); - } - - return result; -} - static SMB_ACL_T smb_time_audit_sys_acl_get_file(vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type) @@ -1801,184 +1719,6 @@ static SMB_ACL_T smb_time_audit_sys_acl_get_fd(vfs_handle_struct *handle, return result; } -static int smb_time_audit_sys_acl_clear_perms(vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_CLEAR_PERMS(handle, permset); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_clear_perms", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_add_perm(vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_ADD_PERM(handle, permset, perm); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_add_perm", timediff); - } - - return result; -} - -static char * smb_time_audit_sys_acl_to_text(vfs_handle_struct *handle, - SMB_ACL_T theacl, - ssize_t *plen) -{ - char * result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_TO_TEXT(handle, theacl, plen); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_to_text", timediff); - } - - return result; -} - -static SMB_ACL_T smb_time_audit_sys_acl_init(vfs_handle_struct *handle, - int count) -{ - SMB_ACL_T result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_INIT(handle, count); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_init", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_create_entry(vfs_handle_struct *handle, - SMB_ACL_T *pacl, - SMB_ACL_ENTRY_T *pentry) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_CREATE_ENTRY(handle, pacl, pentry); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_create_entry", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_set_tag_type(vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, - SMB_ACL_TAG_T tagtype) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_SET_TAG_TYPE(handle, entry, - tagtype); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_set_tag_type", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_set_qualifier(vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, - void *qual) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_SET_QUALIFIER(handle, entry, qual); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_set_qualifier", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_set_permset(vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, - SMB_ACL_PERMSET_T permset) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_SET_PERMSET(handle, entry, permset); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_set_permset", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_valid(vfs_handle_struct *handle, - SMB_ACL_T theacl) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_VALID(handle, theacl); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_valid", timediff); - } - - return result; -} - static int smb_time_audit_sys_acl_set_file(vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, @@ -2040,85 +1780,6 @@ static int smb_time_audit_sys_acl_delete_def_file(vfs_handle_struct *handle, return result; } -static int smb_time_audit_sys_acl_get_perm(vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_GET_PERM(handle, permset, perm); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_get_perm", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_free_text(vfs_handle_struct *handle, - char *text) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_FREE_TEXT(handle, text); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_free_text", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_free_acl(vfs_handle_struct *handle, - SMB_ACL_T posix_acl) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_FREE_ACL(handle, posix_acl); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_free_acl", timediff); - } - - return result; -} - -static int smb_time_audit_sys_acl_free_qualifier(vfs_handle_struct *handle, - void *qualifier, - SMB_ACL_TAG_T tagtype) -{ - int result; - struct timespec ts1,ts2; - double timediff; - - clock_gettime_mono(&ts1); - result = SMB_VFS_NEXT_SYS_ACL_FREE_QUALIFIER(handle, qualifier, - tagtype); - clock_gettime_mono(&ts2); - timediff = nsec_time_diff(&ts2,&ts1)*1.0e-9; - - if (timediff > audit_timeout) { - smb_time_audit_log("sys_acl_free_qualifier", timediff); - } - - return result; -} - static ssize_t smb_time_audit_getxattr(struct vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size) @@ -2382,28 +2043,10 @@ static struct vfs_fn_pointers vfs_time_audit_fns = { .fset_nt_acl_fn = smb_time_audit_fset_nt_acl, .chmod_acl_fn = smb_time_audit_chmod_acl, .fchmod_acl_fn = smb_time_audit_fchmod_acl, - .sys_acl_get_entry_fn = smb_time_audit_sys_acl_get_entry, - .sys_acl_get_tag_type_fn = smb_time_audit_sys_acl_get_tag_type, - .sys_acl_get_permset_fn = smb_time_audit_sys_acl_get_permset, - .sys_acl_get_qualifier_fn = smb_time_audit_sys_acl_get_qualifier, .sys_acl_get_file_fn = smb_time_audit_sys_acl_get_file, .sys_acl_get_fd_fn = smb_time_audit_sys_acl_get_fd, - .sys_acl_clear_perms_fn = smb_time_audit_sys_acl_clear_perms, - .sys_acl_add_perm_fn = smb_time_audit_sys_acl_add_perm, - .sys_acl_to_text_fn = smb_time_audit_sys_acl_to_text, - .sys_acl_init_fn = smb_time_audit_sys_acl_init, - .sys_acl_create_entry_fn = smb_time_audit_sys_acl_create_entry, - .sys_acl_set_tag_type_fn = smb_time_audit_sys_acl_set_tag_type, - .sys_acl_set_qualifier_fn = smb_time_audit_sys_acl_set_qualifier, - .sys_acl_set_permset_fn = smb_time_audit_sys_acl_set_permset, - .sys_acl_valid_fn = smb_time_audit_sys_acl_valid, .sys_acl_set_file_fn = smb_time_audit_sys_acl_set_file, .sys_acl_set_fd_fn = smb_time_audit_sys_acl_set_fd, - .sys_acl_delete_def_file_fn = smb_time_audit_sys_acl_delete_def_file, - .sys_acl_get_perm_fn = smb_time_audit_sys_acl_get_perm, - .sys_acl_free_text_fn = smb_time_audit_sys_acl_free_text, - .sys_acl_free_acl_fn = smb_time_audit_sys_acl_free_acl, - .sys_acl_free_qualifier_fn = smb_time_audit_sys_acl_free_qualifier, .getxattr_fn = smb_time_audit_getxattr, .fgetxattr_fn = smb_time_audit_fgetxattr, .listxattr_fn = smb_time_audit_listxattr, diff --git a/source3/smbd/vfs.c b/source3/smbd/vfs.c index 1438f6834d..d4412a92b6 100644 --- a/source3/smbd/vfs.c +++ b/source3/smbd/vfs.c @@ -2211,39 +2211,6 @@ int smb_vfs_call_fchmod_acl(struct vfs_handle_struct *handle, return handle->fns->fchmod_acl_fn(handle, fsp, mode); } -int smb_vfs_call_sys_acl_get_entry(struct vfs_handle_struct *handle, - SMB_ACL_T theacl, int entry_id, - SMB_ACL_ENTRY_T *entry_p) -{ - VFS_FIND(sys_acl_get_entry); - return handle->fns->sys_acl_get_entry_fn(handle, theacl, entry_id, - entry_p); -} - -int smb_vfs_call_sys_acl_get_tag_type(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_TAG_T *tag_type_p) -{ - VFS_FIND(sys_acl_get_tag_type); - return handle->fns->sys_acl_get_tag_type_fn(handle, entry_d, - tag_type_p); -} - -int smb_vfs_call_sys_acl_get_permset(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d, - SMB_ACL_PERMSET_T *permset_p) -{ - VFS_FIND(sys_acl_get_permset); - return handle->fns->sys_acl_get_permset_fn(handle, entry_d, permset_p); -} - -void * smb_vfs_call_sys_acl_get_qualifier(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry_d) -{ - VFS_FIND(sys_acl_get_qualifier); - return handle->fns->sys_acl_get_qualifier_fn(handle, entry_d); -} - SMB_ACL_T smb_vfs_call_sys_acl_get_file(struct vfs_handle_struct *handle, const char *path_p, SMB_ACL_TYPE_T type) @@ -2259,72 +2226,6 @@ SMB_ACL_T smb_vfs_call_sys_acl_get_fd(struct vfs_handle_struct *handle, return handle->fns->sys_acl_get_fd_fn(handle, fsp); } -int smb_vfs_call_sys_acl_clear_perms(struct vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset) -{ - VFS_FIND(sys_acl_clear_perms); - return handle->fns->sys_acl_clear_perms_fn(handle, permset); -} - -int smb_vfs_call_sys_acl_add_perm(struct vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm) -{ - VFS_FIND(sys_acl_add_perm); - return handle->fns->sys_acl_add_perm_fn(handle, permset, perm); -} - -char * smb_vfs_call_sys_acl_to_text(struct vfs_handle_struct *handle, - SMB_ACL_T theacl, ssize_t *plen) -{ - VFS_FIND(sys_acl_to_text); - return handle->fns->sys_acl_to_text_fn(handle, theacl, plen); -} - -SMB_ACL_T smb_vfs_call_sys_acl_init(struct vfs_handle_struct *handle, - int count) -{ - VFS_FIND(sys_acl_init); - return handle->fns->sys_acl_init_fn(handle, count); -} - -int smb_vfs_call_sys_acl_create_entry(struct vfs_handle_struct *handle, - SMB_ACL_T *pacl, SMB_ACL_ENTRY_T *pentry) -{ - VFS_FIND(sys_acl_create_entry); - return handle->fns->sys_acl_create_entry_fn(handle, pacl, pentry); -} - -int smb_vfs_call_sys_acl_set_tag_type(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, - SMB_ACL_TAG_T tagtype) -{ - VFS_FIND(sys_acl_set_tag_type); - return handle->fns->sys_acl_set_tag_type_fn(handle, entry, tagtype); -} - -int smb_vfs_call_sys_acl_set_qualifier(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, void *qual) -{ - VFS_FIND(sys_acl_set_qualifier); - return handle->fns->sys_acl_set_qualifier_fn(handle, entry, qual); -} - -int smb_vfs_call_sys_acl_set_permset(struct vfs_handle_struct *handle, - SMB_ACL_ENTRY_T entry, - SMB_ACL_PERMSET_T permset) -{ - VFS_FIND(sys_acl_set_permset); - return handle->fns->sys_acl_set_permset_fn(handle, entry, permset); -} - -int smb_vfs_call_sys_acl_valid(struct vfs_handle_struct *handle, - SMB_ACL_T theacl) -{ - VFS_FIND(sys_acl_valid); - return handle->fns->sys_acl_valid_fn(handle, theacl); -} - int smb_vfs_call_sys_acl_set_file(struct vfs_handle_struct *handle, const char *name, SMB_ACL_TYPE_T acltype, SMB_ACL_T theacl) @@ -2347,36 +2248,6 @@ int smb_vfs_call_sys_acl_delete_def_file(struct vfs_handle_struct *handle, return handle->fns->sys_acl_delete_def_file_fn(handle, path); } -int smb_vfs_call_sys_acl_get_perm(struct vfs_handle_struct *handle, - SMB_ACL_PERMSET_T permset, - SMB_ACL_PERM_T perm) -{ - VFS_FIND(sys_acl_get_perm); - return handle->fns->sys_acl_get_perm_fn(handle, permset, perm); -} - -int smb_vfs_call_sys_acl_free_text(struct vfs_handle_struct *handle, - char *text) -{ - VFS_FIND(sys_acl_free_text); - return handle->fns->sys_acl_free_text_fn(handle, text); -} - -int smb_vfs_call_sys_acl_free_acl(struct vfs_handle_struct *handle, - SMB_ACL_T posix_acl) -{ - VFS_FIND(sys_acl_free_acl); - return handle->fns->sys_acl_free_acl_fn(handle, posix_acl); -} - -int smb_vfs_call_sys_acl_free_qualifier(struct vfs_handle_struct *handle, - void *qualifier, SMB_ACL_TAG_T tagtype) -{ - VFS_FIND(sys_acl_free_qualifier); - return handle->fns->sys_acl_free_qualifier_fn(handle, qualifier, - tagtype); -} - ssize_t smb_vfs_call_getxattr(struct vfs_handle_struct *handle, const char *path, const char *name, void *value, size_t size) |