2 * linux/fs/hfsplus/xattr.h
4 * Vyacheslav Dubeyko <slava@dubeyko.com>
6 * Logic of processing extended attributes
9 #ifndef _LINUX_HFSPLUS_XATTR_H
10 #define _LINUX_HFSPLUS_XATTR_H
12 #include <linux/xattr.h>
14 extern const struct xattr_handler hfsplus_xattr_osx_handler
;
15 extern const struct xattr_handler hfsplus_xattr_user_handler
;
16 extern const struct xattr_handler hfsplus_xattr_trusted_handler
;
17 /*extern const struct xattr_handler hfsplus_xattr_acl_access_handler;*/
18 /*extern const struct xattr_handler hfsplus_xattr_acl_default_handler;*/
19 extern const struct xattr_handler hfsplus_xattr_security_handler
;
21 extern const struct xattr_handler
*hfsplus_xattr_handlers
[];
23 int __hfsplus_setxattr(struct inode
*inode
, const char *name
,
24 const void *value
, size_t size
, int flags
);
26 static inline int hfsplus_setxattr(struct dentry
*dentry
, const char *name
,
27 const void *value
, size_t size
, int flags
)
29 return __hfsplus_setxattr(dentry
->d_inode
, name
, value
, size
, flags
);
32 ssize_t
hfsplus_getxattr(struct dentry
*dentry
, const char *name
,
33 void *value
, size_t size
);
35 ssize_t
hfsplus_listxattr(struct dentry
*dentry
, char *buffer
, size_t size
);
37 int hfsplus_removexattr(struct dentry
*dentry
, const char *name
);
39 int hfsplus_init_security(struct inode
*inode
, struct inode
*dir
,
40 const struct qstr
*qstr
);
42 static inline int hfsplus_init_acl(struct inode
*inode
, struct inode
*dir
)
48 static inline int hfsplus_init_inode_security(struct inode
*inode
,
50 const struct qstr
*qstr
)
54 err
= hfsplus_init_acl(inode
, dir
);
56 err
= hfsplus_init_security(inode
, dir
, qstr
);