diff options
Diffstat (limited to 'fs/afs/afs.h')
-rw-r--r-- | fs/afs/afs.h | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/fs/afs/afs.h b/fs/afs/afs.h index b9d2d2ceaf43..d959092aaf4b 100644 --- a/fs/afs/afs.h +++ b/fs/afs/afs.h | |||
@@ -14,6 +14,9 @@ | |||
14 | 14 | ||
15 | #include <linux/in.h> | 15 | #include <linux/in.h> |
16 | 16 | ||
17 | #define AFS_MAXCELLNAME 64 /* maximum length of a cell name */ | ||
18 | #define AFS_MAXVOLNAME 64 /* maximum length of a volume name */ | ||
19 | |||
17 | typedef unsigned afs_volid_t; | 20 | typedef unsigned afs_volid_t; |
18 | typedef unsigned afs_vnodeid_t; | 21 | typedef unsigned afs_vnodeid_t; |
19 | typedef unsigned long long afs_dataversion_t; | 22 | typedef unsigned long long afs_dataversion_t; |
@@ -75,6 +78,26 @@ struct afs_volume_info { | |||
75 | }; | 78 | }; |
76 | 79 | ||
77 | /* | 80 | /* |
81 | * AFS security ACE access mask | ||
82 | */ | ||
83 | typedef u32 afs_access_t; | ||
84 | #define AFS_ACE_READ 0x00000001U /* - permission to read a file/dir */ | ||
85 | #define AFS_ACE_WRITE 0x00000002U /* - permission to write/chmod a file */ | ||
86 | #define AFS_ACE_INSERT 0x00000004U /* - permission to create dirent in a dir */ | ||
87 | #define AFS_ACE_LOOKUP 0x00000008U /* - permission to lookup a file/dir in a dir */ | ||
88 | #define AFS_ACE_DELETE 0x00000010U /* - permission to delete a dirent from a dir */ | ||
89 | #define AFS_ACE_LOCK 0x00000020U /* - permission to lock a file */ | ||
90 | #define AFS_ACE_ADMINISTER 0x00000040U /* - permission to change ACL */ | ||
91 | #define AFS_ACE_USER_A 0x01000000U /* - 'A' user-defined permission */ | ||
92 | #define AFS_ACE_USER_B 0x02000000U /* - 'B' user-defined permission */ | ||
93 | #define AFS_ACE_USER_C 0x04000000U /* - 'C' user-defined permission */ | ||
94 | #define AFS_ACE_USER_D 0x08000000U /* - 'D' user-defined permission */ | ||
95 | #define AFS_ACE_USER_E 0x10000000U /* - 'E' user-defined permission */ | ||
96 | #define AFS_ACE_USER_F 0x20000000U /* - 'F' user-defined permission */ | ||
97 | #define AFS_ACE_USER_G 0x40000000U /* - 'G' user-defined permission */ | ||
98 | #define AFS_ACE_USER_H 0x80000000U /* - 'H' user-defined permission */ | ||
99 | |||
100 | /* | ||
78 | * AFS file status information | 101 | * AFS file status information |
79 | */ | 102 | */ |
80 | struct afs_file_status { | 103 | struct afs_file_status { |
@@ -87,8 +110,8 @@ struct afs_file_status { | |||
87 | afs_dataversion_t data_version; /* current data version */ | 110 | afs_dataversion_t data_version; /* current data version */ |
88 | unsigned author; /* author ID */ | 111 | unsigned author; /* author ID */ |
89 | unsigned owner; /* owner ID */ | 112 | unsigned owner; /* owner ID */ |
90 | unsigned caller_access; /* access rights for authenticated caller */ | 113 | afs_access_t caller_access; /* access rights for authenticated caller */ |
91 | unsigned anon_access; /* access rights for unauthenticated caller */ | 114 | afs_access_t anon_access; /* access rights for unauthenticated caller */ |
92 | umode_t mode; /* UNIX mode */ | 115 | umode_t mode; /* UNIX mode */ |
93 | struct afs_fid parent; /* parent file ID */ | 116 | struct afs_fid parent; /* parent file ID */ |
94 | time_t mtime_client; /* last time client changed data */ | 117 | time_t mtime_client; /* last time client changed data */ |