From 6baeeb3f03190ba0aef186c78e1b9951c0a345dd Mon Sep 17 00:00:00 2001 From: Aneesh Kumar K.V Date: Thu, 5 Nov 2009 11:19:46 +0530 Subject: [PATCH 2/5] richacl: Add support for printing POSIX Mapped acl flag Kernel would set ACL4_POSIX_MAPPED flag to indicate that the richacl returned is derived out of posix acl stored in the file. Print this information during --get operations. This enables the user to validate the mapping. Signed-off-by: Aneesh Kumar K.V --- include/richacl.h | 26 ++++++++++++++------------ lib/richacl.c | 1 + src/richacl.c | 3 ++- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/include/richacl.h b/include/richacl.h index bb708fa..b6dee71 100644 --- a/include/richacl.h +++ b/include/richacl.h @@ -8,13 +8,15 @@ #define ACL4_AUTO_INHERIT 0x01 #define ACL4_PROTECTED 0x02 #define ACL4_DEFAULTED 0x04 +#define ACL4_POSIX_MAPPED 0x10 #define ACL4_WRITE_THROUGH 0x40 -#define ACL4_VALID_FLAGS ( \ - ACL4_AUTO_INHERIT | \ - ACL4_PROTECTED | \ - ACL4_DEFAULTED | \ - ACL4_WRITE_THROUGH ) +#define ACL4_VALID_FLAGS ( \ + ACL4_AUTO_INHERIT | \ + ACL4_PROTECTED | \ + ACL4_DEFAULTED | \ + ACL4_POSIX_MAPPED | \ + ACL4_WRITE_THROUGH) /* e_type values */ #define ACE4_ACCESS_ALLOWED_ACE_TYPE 0x0000 @@ -28,13 +30,13 @@ #define ACE4_IDENTIFIER_GROUP 0x0040 #define ACE4_INHERITED_ACE 0x0080 -#define ACE4_VALID_FLAGS ( \ - ACE4_FILE_INHERIT_ACE | \ - ACE4_DIRECTORY_INHERIT_ACE | \ - ACE4_NO_PROPAGATE_INHERIT_ACE | \ - ACE4_INHERIT_ONLY_ACE | \ - ACE4_IDENTIFIER_GROUP | \ - ACE4_INHERITED_ACE ) +#define ACE4_VALID_FLAGS ( \ + ACE4_FILE_INHERIT_ACE | \ + ACE4_DIRECTORY_INHERIT_ACE | \ + ACE4_NO_PROPAGATE_INHERIT_ACE | \ + ACE4_INHERIT_ONLY_ACE | \ + ACE4_IDENTIFIER_GROUP | \ + ACE4_INHERITED_ACE) /* e_mask bitflags */ #define ACE4_READ_DATA 0x00000001 diff --git a/lib/richacl.c b/lib/richacl.c index f8bbe92..14ee4eb 100644 --- a/lib/richacl.c +++ b/lib/richacl.c @@ -40,6 +40,7 @@ static struct { { 'a', ACL4_AUTO_INHERIT, "auto_inherit" }, { 'p', ACL4_PROTECTED, "protected" }, { 'd', ACL4_DEFAULTED, "defaulted" }, + { 'P', ACL4_POSIX_MAPPED, "posix mapped"}, { 'w', ACL4_WRITE_THROUGH, "write_through" }, }; diff --git a/src/richacl.c b/src/richacl.c index ab447ef..95236b3 100644 --- a/src/richacl.c +++ b/src/richacl.c @@ -207,7 +207,8 @@ static void synopsis(int help) "\tidentifier_group (g), inherited_ace (a)\n" "\n" "Per-ACL flag values are:\n" -"\tauto_inherit (a), protected (p), defaulted (d), write_through (w)\n", +"\tauto_inherit (a), protected (p), defaulted (d), write_through (w),\n" +"\tposix mapped (P)\n", basename(progname)); exit(0); } -- 1.6.5.2.74.g610f9