o Update copyright.

o Updates content to reflect the changes to acl.h for
  internal/external acl_t representations.

Approved by:	rwatson
Obtained from:	TrustedBSD Project
This commit is contained in:
Chris D. Faulhaber
2001-12-02 04:27:13 +00:00
parent b3457b5173
commit 8a2d4f5134
+37 -17
View File
@@ -1,5 +1,5 @@
.\"-
.\" Copyright (c) 1999, 2000 Robert N. M. Watson
.\" Copyright (c) 1999-2001 Robert N. M. Watson
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -40,6 +40,7 @@
typedef int acl_type_t;
typedef int acl_tag_t;
typedef mode_t acl_perm_t;
typedef mode_t *acl_permset_t;
struct acl_entry {
acl_tag_t ae_tag;
@@ -48,25 +49,33 @@ struct acl_entry {
};
typedef struct acl_entry *acl_entry_t;
/* internal ACL structure */
struct acl {
int acl_cnt;
struct acl_entry acl_entry[ACL_MAX_ENTRIES];
};
typedef struct acl *acl_t;
/* external ACL structure */
struct acl_t_struct {
struct acl ats_acl;
int ats_cur_entry;
};
typedef struct acl_t_struct *acl_t;
/*
* Possible valid values for a_tag of acl_entry_t
* Possible valid values for ae_tag field.
*/
#define ACL_USER_OBJ 0x00000001
#define ACL_USER 0x00000002
#define ACL_GROUP_OBJ 0x00000004
#define ACL_GROUP 0x00000008
#define ACL_MASK 0x00000010
#define ACL_OTHER 0x00000020
#define ACL_OTHER_OBJ ACL_OTHER
#define ACL_UNDEFINED_TAG 0x00000000
#define ACL_USER_OBJ 0x00000001
#define ACL_USER 0x00000002
#define ACL_GROUP_OBJ 0x00000004
#define ACL_GROUP 0x00000008
#define ACL_MASK 0x00000010
#define ACL_OTHER 0x00000020
#define ACL_OTHER_OBJ ACL_OTHER
/*
* Possible valid values a_type_t arguments
* Possible valid values for acl_type_t arguments.
*/
#define ACL_TYPE_ACCESS 0x00000000
#define ACL_TYPE_DEFAULT 0x00000001
@@ -76,14 +85,25 @@ typedef struct acl *acl_t;
#define ACL_TYPE_NWFS 0x00000005
/*
* Possible flags in a_perm field
* Possible flags in ae_perm field.
*/
#define ACL_PERM_EXEC 0x0001
#define ACL_PERM_WRITE 0x0002
#define ACL_PERM_READ 0x0004
#define ACL_EXECUTE 0x0001
#define ACL_WRITE 0x0002
#define ACL_READ 0x0004
#define ACL_PERM_NONE 0x0000
#define ACL_PERM_BITS (ACL_PERM_EXEC | ACL_PERM_WRITE | ACL_PERM_READ)
#define ACL_POSIX1E_BITS (ACL_PERM_EXEC | ACL_PERM_WRITE | ACL_PERM_READ)
#define ACL_PERM_BITS (ACL_EXECUTE | ACL_WRITE | ACL_READ)
#define ACL_POSIX1E_BITS (ACL_EXECUTE | ACL_WRITE | ACL_READ)
/*
* Possible entry_id values for acl_get_entry()
*/
#define ACL_FIRST_ENTRY 0
#define ACL_NEXT_ENTRY 1
/*
* Undefined value in ae_id field
*/
#define ACL_UNDEFINED_ID ((uid_t)-1)
.Ed
.Sh DESCRIPTION
Access control lists, or ACLs, allow fine-grained specification of rights