• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
37