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 inode
*inode
, const char *name
,
33 void *value
, size_t size
);
35 static inline ssize_t
hfsplus_getxattr(struct dentry
*dentry
,
40 return __hfsplus_getxattr(dentry
->d_inode
, name
, value
, size
);
43 ssize_t
hfsplus_listxattr(struct dentry
*dentry
, char *buffer
, size_t size
);
45 int hfsplus_removexattr(struct dentry
*dentry
, const char *name
);
47 int hfsplus_init_security(struct inode
*inode
, struct inode
*dir
,
48 const struct qstr
*qstr
);
50 int hfsplus_init_inode_security(struct inode
*inode
, struct inode
*dir
,
51 const struct qstr
*qstr
);