1652ecc20SKaiGai Kohei /* 2652ecc20SKaiGai Kohei * JFFS2 -- Journalling Flash File System, Version 2. 3aa98d7cfSKaiGai Kohei * 4c00c310eSDavid Woodhouse * Copyright © 2006 NEC Corporation 5aa98d7cfSKaiGai Kohei * 6652ecc20SKaiGai Kohei * Created by KaiGai Kohei <kaigai@ak.jp.nec.com> 7652ecc20SKaiGai Kohei * 8652ecc20SKaiGai Kohei * For licensing information, see the file 'LICENCE' in this directory. 9652ecc20SKaiGai Kohei * 10652ecc20SKaiGai Kohei */ 11c00c310eSDavid Woodhouse 12de1f72faSKaiGai Kohei struct jffs2_acl_entry { 13aa98d7cfSKaiGai Kohei jint16_t e_tag; 14aa98d7cfSKaiGai Kohei jint16_t e_perm; 15aa98d7cfSKaiGai Kohei jint32_t e_id; 16de1f72faSKaiGai Kohei }; 17aa98d7cfSKaiGai Kohei 18de1f72faSKaiGai Kohei struct jffs2_acl_entry_short { 19aa98d7cfSKaiGai Kohei jint16_t e_tag; 20aa98d7cfSKaiGai Kohei jint16_t e_perm; 21de1f72faSKaiGai Kohei }; 22aa98d7cfSKaiGai Kohei 23de1f72faSKaiGai Kohei struct jffs2_acl_header { 24aa98d7cfSKaiGai Kohei jint32_t a_version; 25a3ac9730SMatthew Wilcox struct jffs2_acl_entry a_entries[]; 26de1f72faSKaiGai Kohei }; 27aa98d7cfSKaiGai Kohei 28aa98d7cfSKaiGai Kohei #ifdef CONFIG_JFFS2_FS_POSIX_ACL 29aa98d7cfSKaiGai Kohei 30*0cad6246SMiklos Szeredi struct posix_acl *jffs2_get_acl(struct inode *inode, int type, bool rcu); 31549c7297SChristian Brauner int jffs2_set_acl(struct user_namespace *mnt_userns, struct inode *inode, 32549c7297SChristian Brauner struct posix_acl *acl, int type); 33d3fb6120SAl Viro extern int jffs2_init_acl_pre(struct inode *, struct inode *, umode_t *); 34cfc8dc6fSKaiGai Kohei extern int jffs2_init_acl_post(struct inode *); 35aa98d7cfSKaiGai Kohei 36aa98d7cfSKaiGai Kohei #else 37aa98d7cfSKaiGai Kohei 384e34e719SChristoph Hellwig #define jffs2_get_acl (NULL) 39f2963d45SChristoph Hellwig #define jffs2_set_acl (NULL) 40cfc8dc6fSKaiGai Kohei #define jffs2_init_acl_pre(dir_i,inode,mode) (0) 41cfc8dc6fSKaiGai Kohei #define jffs2_init_acl_post(inode) (0) 42aa98d7cfSKaiGai Kohei 43aa98d7cfSKaiGai Kohei #endif /* CONFIG_JFFS2_FS_POSIX_ACL */ 44