From 0d34815f56f46e5d3674f55930b7d9d691fc33d9 Mon Sep 17 00:00:00 2001 From: Nathan Scott Date: Mon, 25 Feb 2002 22:37:38 +0000 Subject: Merge of xfs-cmds-2.4.18:slinx:112262a by nathans. Removed, replaced by a new version of the ACL userspace from AndreasG. --- include/acl_ea.h | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 include/acl_ea.h (limited to 'include/acl_ea.h') diff --git a/include/acl_ea.h b/include/acl_ea.h new file mode 100644 index 0000000..cf36455 --- /dev/null +++ b/include/acl_ea.h @@ -0,0 +1,39 @@ +/* + File: acl_ea.h + + (extended attribute representation of access control lists) + + (C) 2002 Andreas Gruenbacher, +*/ + +#define ACL_EA_ACCESS "system.posix_acl_access" +#define ACL_EA_DEFAULT "system.posix_acl_default" + +#define ACL_EA_VERSION 0x0002 + +typedef struct { + __u16 e_tag; + __u16 e_perm; + __u32 e_id; +} acl_ea_entry; + +typedef struct { + __u32 a_version; + acl_ea_entry a_entries[0]; +} acl_ea_header; + +static inline size_t acl_ea_size(int count) +{ + return sizeof(acl_ea_header) + count * sizeof(acl_ea_entry); +} + +static inline int acl_ea_count(size_t size) +{ + if (size < sizeof(acl_ea_header)) + return -1; + size -= sizeof(acl_ea_header); + if (size % sizeof(acl_ea_entry)) + return -1; + return size / sizeof(acl_ea_entry); +} + -- cgit v1.2.1