linux/fs/f2fs/acl.h
<<
>>
Prefs
   1/*
   2 * fs/f2fs/acl.h
   3 *
   4 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
   5 *             http://www.samsung.com/
   6 *
   7 * Portions of this code from linux/fs/ext2/acl.h
   8 *
   9 * Copyright (C) 2001-2003 Andreas Gruenbacher, <agruen@suse.de>
  10 *
  11 * This program is free software; you can redistribute it and/or modify
  12 * it under the terms of the GNU General Public License version 2 as
  13 * published by the Free Software Foundation.
  14 */
  15#ifndef __F2FS_ACL_H__
  16#define __F2FS_ACL_H__
  17
  18#include <linux/posix_acl_xattr.h>
  19
  20#define F2FS_ACL_VERSION        0x0001
  21
  22struct f2fs_acl_entry {
  23        __le16 e_tag;
  24        __le16 e_perm;
  25        __le32 e_id;
  26};
  27
  28struct f2fs_acl_entry_short {
  29        __le16 e_tag;
  30        __le16 e_perm;
  31};
  32
  33struct f2fs_acl_header {
  34        __le32 a_version;
  35};
  36
  37#ifdef CONFIG_F2FS_FS_POSIX_ACL
  38
  39extern struct posix_acl *f2fs_get_acl(struct inode *, int);
  40extern int f2fs_set_acl(struct inode *, struct posix_acl *, int);
  41extern int f2fs_init_acl(struct inode *, struct inode *, struct page *,
  42                                                        struct page *);
  43#else
  44#define f2fs_get_acl    NULL
  45#define f2fs_set_acl    NULL
  46
  47static inline int f2fs_init_acl(struct inode *inode, struct inode *dir,
  48                                struct page *ipage, struct page *dpage)
  49{
  50        return 0;
  51}
  52#endif
  53#endif /* __F2FS_ACL_H__ */
  54