From 0705391ed06441b2046d1de4529aa93f51bc3573 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Sun, 12 Aug 2012 22:02:23 +1000 Subject: s3-smbd: Move smb_acl_t declaration to smb_acl.idl This will allow us to marshall this into and from an NDR blob on disk, which will allow us to fake up ACL support during make test, and to test the NT ACL emulation using python bindings via the VFS. Andrew Bartlett --- source3/include/smb_acls.h | 37 +++---------------------------------- source3/wscript_build | 1 + 2 files changed, 4 insertions(+), 34 deletions(-) (limited to 'source3') diff --git a/source3/include/smb_acls.h b/source3/include/smb_acls.h index 4998e4b07d..2a47661ede 100644 --- a/source3/include/smb_acls.h +++ b/source3/include/smb_acls.h @@ -20,51 +20,20 @@ #ifndef _SMB_ACLS_H #define _SMB_ACLS_H +#include "librpc/gen_ndr/smb_acl.h" + struct vfs_handle_struct; struct files_struct; typedef int SMB_ACL_TYPE_T; typedef mode_t *SMB_ACL_PERMSET_T; typedef mode_t SMB_ACL_PERM_T; -#define SMB_ACL_READ 4 -#define SMB_ACL_WRITE 2 -#define SMB_ACL_EXECUTE 1 - -/* Types of ACLs. */ -enum smb_acl_tag_t { - SMB_ACL_TAG_INVALID=0, - SMB_ACL_USER=1, - SMB_ACL_USER_OBJ, - SMB_ACL_GROUP, - SMB_ACL_GROUP_OBJ, - SMB_ACL_OTHER, - SMB_ACL_MASK -}; typedef enum smb_acl_tag_t SMB_ACL_TAG_T; - -struct smb_acl_entry { - enum smb_acl_tag_t a_type; - SMB_ACL_PERM_T a_perm; - uid_t uid; - gid_t gid; -}; - -typedef struct smb_acl_t { - int size; - int count; - int next; - struct smb_acl_entry *acl; -} *SMB_ACL_T; +typedef struct smb_acl_t *SMB_ACL_T; typedef struct smb_acl_entry *SMB_ACL_ENTRY_T; -#define SMB_ACL_FIRST_ENTRY 0 -#define SMB_ACL_NEXT_ENTRY 1 - -#define SMB_ACL_TYPE_ACCESS 0 -#define SMB_ACL_TYPE_DEFAULT 1 - /* The following definitions come from lib/sysacls.c */ int sys_acl_get_entry(SMB_ACL_T acl_d, int entry_id, SMB_ACL_ENTRY_T *entry_p); diff --git a/source3/wscript_build b/source3/wscript_build index 9c6c5aa6b1..2fc65550c9 100755 --- a/source3/wscript_build +++ b/source3/wscript_build @@ -932,6 +932,7 @@ bld.SAMBA3_LIBRARY('smbd_base', NDR_SMBXSRV LIBASYS ccan-hash + NDR_SMB_ACL ''', private_library=True, vars=locals()) -- cgit