acl.h (3554116d3aae25353713f3d0131d86ae6c1e5674) acl.h (4ac7249ea5a0ceef9f8269f63f33cc873c3fac61)
1/*
2 * Common NFSv4 ACL handling definitions.
3 *
4 * Copyright (c) 2002 The Regents of the University of Michigan.
5 * All rights reserved.
6 *
7 * Marius Aamodt Eriksen <marius@umich.edu>
8 *

--- 21 unchanged lines hidden (view full) ---

30 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
31 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 */
34
35#ifndef LINUX_NFS4_ACL_H
36#define LINUX_NFS4_ACL_H
37
1/*
2 * Common NFSv4 ACL handling definitions.
3 *
4 * Copyright (c) 2002 The Regents of the University of Michigan.
5 * All rights reserved.
6 *
7 * Marius Aamodt Eriksen <marius@umich.edu>
8 *

--- 21 unchanged lines hidden (view full) ---

30 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
31 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 */
34
35#ifndef LINUX_NFS4_ACL_H
36#define LINUX_NFS4_ACL_H
37
38#include <linux/posix_acl.h>
38struct nfs4_acl;
39struct svc_fh;
40struct svc_rqst;
39
40/* Maximum ACL we'll accept from client; chosen (somewhat arbitrarily) to
41 * fit in a page: */
42#define NFS4_ACL_MAX 170
43
44struct nfs4_acl *nfs4_acl_new(int);
45int nfs4_acl_get_whotype(char *, u32);
41
42/* Maximum ACL we'll accept from client; chosen (somewhat arbitrarily) to
43 * fit in a page: */
44#define NFS4_ACL_MAX 170
45
46struct nfs4_acl *nfs4_acl_new(int);
47int nfs4_acl_get_whotype(char *, u32);
46__be32 nfs4_acl_write_who(int who, __be32 **p, int *len);
48int nfs4_acl_write_who(int who, char *p);
47
49
48#define NFS4_ACL_TYPE_DEFAULT 0x01
49#define NFS4_ACL_DIR 0x02
50#define NFS4_ACL_OWNER 0x04
50int nfsd4_get_nfs4_acl(struct svc_rqst *rqstp, struct dentry *dentry,
51 struct nfs4_acl **acl);
52__be32 nfsd4_set_nfs4_acl(struct svc_rqst *rqstp, struct svc_fh *fhp,
53 struct nfs4_acl *acl);
51
54
52struct nfs4_acl *nfs4_acl_posix_to_nfsv4(struct posix_acl *,
53 struct posix_acl *, unsigned int flags);
54int nfs4_acl_nfsv4_to_posix(struct nfs4_acl *, struct posix_acl **,
55 struct posix_acl **, unsigned int flags);
56
57#endif /* LINUX_NFS4_ACL_H */
55#endif /* LINUX_NFS4_ACL_H */