From 45646e88188b5d175f7755bc64f186cd59ed4c80 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 5 Apr 2001 20:52:02 +0000 Subject: Fix from Michael Davidson to merge Solaris and UnixWare ACLs. Jeremy. (This used to be commit ffa800e980bfed3d82ec7b0a037085c4558f8f0f) --- source3/include/smb_acls.h | 51 ++++++---------------------------------------- 1 file changed, 6 insertions(+), 45 deletions(-) (limited to 'source3/include/smb_acls.h') diff --git a/source3/include/smb_acls.h b/source3/include/smb_acls.h index 9de3a5b6a1..570b8eab8c 100644 --- a/source3/include/smb_acls.h +++ b/source3/include/smb_acls.h @@ -54,11 +54,10 @@ #define SMB_ACL_TYPE_ACCESS ACL_TYPE_ACCESS #define SMB_ACL_TYPE_DEFAULT ACL_TYPE_DEFAULT -#elif defined(HAVE_UNIXWARE_ACLS) - +#elif defined(HAVE_UNIXWARE_ACLS) || defined(HAVE_SOLARIS_ACLS) /* - * Donated by Michael Davidson for UnixWare. - * As this is generic SVR4.x code, it may also work for Solaris ! + * Donated by Michael Davidson for UnixWare / OpenUNIX. + * Modified by Toomas Soome for Solaris. */ /* SVR4.2 ES/MP ACLs */ @@ -66,9 +65,9 @@ typedef int SMB_ACL_TAG_T; typedef int SMB_ACL_TYPE_T; typedef ushort *SMB_ACL_PERMSET_T; typedef ushort SMB_ACL_PERM_T; -#define SMB_ACL_READ S_IRUSR -#define SMB_ACL_WRITE S_IWUSR -#define SMB_ACL_EXECUTE S_IXUSR +#define SMB_ACL_READ 4 +#define SMB_ACL_WRITE 2 +#define SMB_ACL_EXECUTE 1 /* Types of ACLs. */ #define SMB_ACL_USER USER @@ -93,44 +92,6 @@ typedef struct acl *SMB_ACL_ENTRY_T; #define SMB_ACL_TYPE_ACCESS 0 #define SMB_ACL_TYPE_DEFAULT 1 -#elif defined(HAVE_SOLARIS_ACLS) - -/* - * Code donated by Toomas Soome . - * Based on the implementation by Michael Davidson for UnixWare. - */ - -typedef int SMB_ACL_TAG_T; -typedef int SMB_ACL_TYPE_T; -typedef ushort *SMB_ACL_PERMSET_T; -typedef ushort SMB_ACL_PERM_T; -#define SMB_ACL_READ 4 -#define SMB_ACL_WRITE 2 -#define SMB_ACL_EXECUTE 1 - -/* Types of ACLs. */ -#define SMB_ACL_USER USER -#define SMB_ACL_USER_OBJ USER_OBJ -#define SMB_ACL_GROUP GROUP -#define SMB_ACL_GROUP_OBJ GROUP_OBJ -#define SMB_ACL_OTHER OTHER_OBJ -#define SMB_ACL_MASK CLASS_OBJ - -typedef struct SMB_ACL_T { - int size; - int count; - int next; - struct acl acl[1]; -} *SMB_ACL_T; - -typedef struct acl *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 - #elif defined(HAVE_IRIX_ACLS) #define SMB_ACL_TAG_T acl_tag_t -- cgit