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 */ 21struct generic_acl_operations { 22 struct posix_acl *(*getacl)(struct inode *, int); 23 void (*setacl)(struct inode *, int, struct posix_acl *); 24}; 25 26size_t generic_acl_list(struct inode *, struct generic_acl_operations *, int, 27 char *, size_t); 28int generic_acl_get(struct inode *, struct generic_acl_operations *, int, 29 void *, size_t); 30int generic_acl_set(struct inode *, struct generic_acl_operations *, int, 31 const void *, size_t); 32int generic_acl_init(struct inode *, struct inode *, 33 struct generic_acl_operations *); 34int generic_acl_chmod(struct inode *, struct generic_acl_operations *); 35 36#endif 37