18#ifdef HAVE_FREEBSD_SUNACL
22#ifdef HAVE_SOLARIS_ACLS
49#define ACE_TRIVIAL (ACE_OWNER | ACE_GROUP | ACE_EVERYONE)
62#define DARWIN_ACL_FLAGS_PRIVATE (0xffff)
64#define KAUTH_ACL_DEFER_INHERIT (1<<16)
66#define KAUTH_ACL_NO_INHERIT (1<<17)
69#define DARWIN_ACE_FLAGS_KINDMASK 0xf
70#define DARWIN_ACE_FLAGS_PERMIT (1<<0)
71#define DARWIN_ACE_FLAGS_DENY (1<<1)
72#define DARWIN_ACE_FLAGS_INHERITED (1<<4)
73#define DARWIN_ACE_FLAGS_FILE_INHERIT (1<<5)
74#define DARWIN_ACE_FLAGS_DIRECTORY_INHERIT (1<<6)
75#define DARWIN_ACE_FLAGS_LIMIT_INHERIT (1<<7)
76#define DARWIN_ACE_FLAGS_ONLY_INHERIT (1<<8)
79#define DARWIN_ACE_INHERIT_CONTROL_FLAGS \
80 (DARWIN_ACE_FLAGS_FILE_INHERIT |\
81 DARWIN_ACE_FLAGS_DIRECTORY_INHERIT |\
82 DARWIN_ACE_FLAGS_LIMIT_INHERIT |\
83 DARWIN_ACE_FLAGS_ONLY_INHERIT)
86#define DARWIN_ACE_READ_DATA 0x00000002
87#define DARWIN_ACE_LIST_DIRECTORY 0x00000002
88#define DARWIN_ACE_WRITE_DATA 0x00000004
89#define DARWIN_ACE_ADD_FILE 0x00000004
90#define DARWIN_ACE_EXECUTE 0x00000008
91#define DARWIN_ACE_SEARCH 0x00000008
92#define DARWIN_ACE_DELETE 0x00000010
93#define DARWIN_ACE_APPEND_DATA 0x00000020
94#define DARWIN_ACE_ADD_SUBDIRECTORY 0x00000020
95#define DARWIN_ACE_DELETE_CHILD 0x00000040
96#define DARWIN_ACE_READ_ATTRIBUTES 0x00000080
97#define DARWIN_ACE_WRITE_ATTRIBUTES 0x00000100
98#define DARWIN_ACE_READ_EXTATTRIBUTES 0x00000200
99#define DARWIN_ACE_WRITE_EXTATTRIBUTES 0x00000400
100#define DARWIN_ACE_READ_SECURITY 0x00000800
101#define DARWIN_ACE_WRITE_SECURITY 0x00001000
102#define DARWIN_ACE_TAKE_OWNERSHIP 0x00002000
127 struct stat *st,
struct maccess *ma);
@ kFileSec_REMOVEACL
Definition acls.h:57
@ kFileSec_UUID
Definition acls.h:54
@ kFileSec_Inherit
Definition acls.h:58
@ kFileSec_ACL
Definition acls.h:56
@ kFileSec_GRPUUID
Definition acls.h:55
int afp_getacl(AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen)
Definition acls.c:1734
int afp_setacl(AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen)
Definition acls.c:1852
int acltoownermode(const AFPObj *obj, const struct vol *vol, char *path, struct stat *st, struct maccess *ma)
map ACL to user maccess
Definition acls.c:1981
int afp_access(AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen)
Definition acls.c:1677
static size_t rbuflen
Definition afpfunc_helpers.c:45
static char rbuf[rbufsize]
Definition afpfunc_helpers.c:44
static AFPObj obj
Definition netatalk.c:62
atalk_uuid_t darwin_ace_uuid
Definition acls.h:106
uint32_t darwin_ace_flags
Definition acls.h:107
uint32_t darwin_ace_rights
Definition acls.h:108
Definition etc/afpd/directory.h:68
Definition include/atalk/directory.h:81
Definition include/atalk/volume.h:30
unsigned char atalk_uuid_t[UUID_BINSIZE]
Definition uuid.h:21