diff options
| author | Neil Brown <neilb@cse.unsw.edu.au> | 2004-08-22 23:01:32 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2004-08-22 23:01:32 -0700 |
| commit | d99ad02c5b21eb0678e2197911f2cf26be5ce126 (patch) | |
| tree | c76495baeab8003c9ab4687f9ee97f9a6f61e5cb /include/linux | |
| parent | 770d5607d037080907204dede7c920c35823f492 (diff) | |
[PATCH] nfsd: POSIX<->NFSv4 acl translation for nfsd
Code to translate between Linux's POSIX ACLs and NFSv4 ACLs. Since NFSv4 ACLs
are fundamentally richer, we are able to translate any POSIX ACL to NFSv4, but
can only map NFSv4 ACLs that follow a certain format; see
http://www.citi.umich.edu/u/marius/draft-eriksen-nfsv4-acl-02.txt for details
of the mapping.
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/nfs4_acl.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/nfs4_acl.h b/include/linux/nfs4_acl.h index 5bbb4c0769a9..22aff4d01f20 100644 --- a/include/linux/nfs4_acl.h +++ b/include/linux/nfs4_acl.h @@ -47,4 +47,13 @@ int nfs4_acl_write_who(int who, char *p); int nfs4_acl_permission(struct nfs4_acl *acl, uid_t owner, gid_t group, uid_t who, u32 mask); +#define NFS4_ACL_TYPE_DEFAULT 0x01 +#define NFS4_ACL_DIR 0x02 +#define NFS4_ACL_OWNER 0x04 + +struct nfs4_acl *nfs4_acl_posix_to_nfsv4(struct posix_acl *, + struct posix_acl *, unsigned int flags); +int nfs4_acl_nfsv4_to_posix(struct nfs4_acl *, struct posix_acl **, + struct posix_acl **, unsigned int flags); + #endif /* LINUX_NFS4_ACL_H */ |
