]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - include/linux/generic_acl.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus
[mirror_ubuntu-artful-kernel.git] / include / linux / generic_acl.h
1 /*
2 * include/linux/generic_acl.h
3 *
4 * (C) 2005 Andreas Gruenbacher <agruen@suse.de>
5 *
6 * This file is released under the GPL.
7 */
8
9 #ifndef GENERIC_ACL_H
10 #define GENERIC_ACL_H
11
12 #include <linux/posix_acl.h>
13 #include <linux/posix_acl_xattr.h>
14
15 /**
16 * struct generic_acl_operations - filesystem operations
17 *
18 * Filesystems must make these operations available to the generic
19 * operations.
20 */
21 struct generic_acl_operations {
22 struct posix_acl *(*getacl)(struct inode *, int);
23 void (*setacl)(struct inode *, int, struct posix_acl *);
24 };
25
26 size_t generic_acl_list(struct inode *, struct generic_acl_operations *, int,
27 char *, size_t);
28 int generic_acl_get(struct inode *, struct generic_acl_operations *, int,
29 void *, size_t);
30 int generic_acl_set(struct inode *, struct generic_acl_operations *, int,
31 const void *, size_t);
32 int generic_acl_init(struct inode *, struct inode *,
33 struct generic_acl_operations *);
34 int generic_acl_chmod(struct inode *, struct generic_acl_operations *);
35
36 #endif