acl.h 1007 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * JFFS2 -- Journalling Flash File System, Version 2.
  3. *
  4. * Copyright © 2006 NEC Corporation
  5. *
  6. * Created by KaiGai Kohei <kaigai@ak.jp.nec.com>
  7. *
  8. * For licensing information, see the file 'LICENCE' in this directory.
  9. *
  10. */
  11. struct jffs2_acl_entry {
  12. jint16_t e_tag;
  13. jint16_t e_perm;
  14. jint32_t e_id;
  15. };
  16. struct jffs2_acl_entry_short {
  17. jint16_t e_tag;
  18. jint16_t e_perm;
  19. };
  20. struct jffs2_acl_header {
  21. jint32_t a_version;
  22. struct jffs2_acl_entry a_entries[];
  23. };
  24. #ifdef CONFIG_JFFS2_FS_POSIX_ACL
  25. struct posix_acl *jffs2_get_acl(struct inode *inode, int type, bool rcu);
  26. int jffs2_set_acl(struct mnt_idmap *idmap, struct dentry *dentry,
  27. struct posix_acl *acl, int type);
  28. extern int jffs2_init_acl_pre(struct inode *, struct inode *, umode_t *);
  29. extern int jffs2_init_acl_post(struct inode *);
  30. #else
  31. #define jffs2_get_acl (NULL)
  32. #define jffs2_set_acl (NULL)
  33. #define jffs2_init_acl_pre(dir_i,inode,mode) (0)
  34. #define jffs2_init_acl_post(inode) (0)
  35. #endif /* CONFIG_JFFS2_FS_POSIX_ACL */