1aa98d7cfSKaiGai Kohei /*-------------------------------------------------------------------------* 2aa98d7cfSKaiGai Kohei * File: fs/jffs2/acl.h 3aa98d7cfSKaiGai Kohei * POSIX ACL support on JFFS2 FileSystem 4aa98d7cfSKaiGai Kohei * 5aa98d7cfSKaiGai Kohei * Implemented by KaiGai Kohei <kaigai@ak.jp.nec.com> 6aa98d7cfSKaiGai Kohei * Copyright (C) 2006 NEC Corporation 7aa98d7cfSKaiGai Kohei * 8aa98d7cfSKaiGai Kohei * For licensing information, see the file 'LICENCE' in the jffs2 directory. 9aa98d7cfSKaiGai Kohei *-------------------------------------------------------------------------*/ 10de1f72faSKaiGai Kohei struct jffs2_acl_entry { 11aa98d7cfSKaiGai Kohei jint16_t e_tag; 12aa98d7cfSKaiGai Kohei jint16_t e_perm; 13aa98d7cfSKaiGai Kohei jint32_t e_id; 14de1f72faSKaiGai Kohei }; 15aa98d7cfSKaiGai Kohei 16de1f72faSKaiGai Kohei struct jffs2_acl_entry_short { 17aa98d7cfSKaiGai Kohei jint16_t e_tag; 18aa98d7cfSKaiGai Kohei jint16_t e_perm; 19de1f72faSKaiGai Kohei }; 20aa98d7cfSKaiGai Kohei 21de1f72faSKaiGai Kohei struct jffs2_acl_header { 22aa98d7cfSKaiGai Kohei jint32_t a_version; 23de1f72faSKaiGai Kohei }; 24aa98d7cfSKaiGai Kohei 25aa98d7cfSKaiGai Kohei #ifdef __KERNEL__ 26aa98d7cfSKaiGai Kohei #ifdef CONFIG_JFFS2_FS_POSIX_ACL 27aa98d7cfSKaiGai Kohei 28aa98d7cfSKaiGai Kohei #define JFFS2_ACL_NOT_CACHED ((void *)-1) 29aa98d7cfSKaiGai Kohei 30aa98d7cfSKaiGai Kohei extern int jffs2_permission(struct inode *, int, struct nameidata *); 31aa98d7cfSKaiGai Kohei extern int jffs2_acl_chmod(struct inode *); 32aa98d7cfSKaiGai Kohei extern int jffs2_init_acl(struct inode *, struct inode *); 33aa98d7cfSKaiGai Kohei extern void jffs2_clear_acl(struct inode *); 34aa98d7cfSKaiGai Kohei 35aa98d7cfSKaiGai Kohei extern struct xattr_handler jffs2_acl_access_xattr_handler; 36aa98d7cfSKaiGai Kohei extern struct xattr_handler jffs2_acl_default_xattr_handler; 37aa98d7cfSKaiGai Kohei 38aa98d7cfSKaiGai Kohei #else 39aa98d7cfSKaiGai Kohei 40aa98d7cfSKaiGai Kohei #define jffs2_permission NULL 41aa98d7cfSKaiGai Kohei #define jffs2_acl_chmod(inode) (0) 42aa98d7cfSKaiGai Kohei #define jffs2_init_acl(inode,dir) (0) 43aa98d7cfSKaiGai Kohei #define jffs2_clear_acl(inode) 44aa98d7cfSKaiGai Kohei 45aa98d7cfSKaiGai Kohei #endif /* CONFIG_JFFS2_FS_POSIX_ACL */ 46aa98d7cfSKaiGai Kohei #endif /* __KERNEL__ */ 47