1 /****************************************************************************
2 ****************************************************************************
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
10 ****************************************************************************
11 ****************************************************************************/
12 #ifndef _LINUX_XATTR_H
13 #define _LINUX_XATTR_H
15 #define XATTR_CREATE 0x1
16 #define XATTR_REPLACE 0x2
18 #define XATTR_OS2_PREFIX "os2."
19 #define XATTR_OS2_PREFIX_LEN (sizeof (XATTR_OS2_PREFIX) - 1)
21 #define XATTR_SECURITY_PREFIX "security."
22 #define XATTR_SECURITY_PREFIX_LEN (sizeof (XATTR_SECURITY_PREFIX) - 1)
24 #define XATTR_SYSTEM_PREFIX "system."
25 #define XATTR_SYSTEM_PREFIX_LEN (sizeof (XATTR_SYSTEM_PREFIX) - 1)
27 #define XATTR_TRUSTED_PREFIX "trusted."
28 #define XATTR_TRUSTED_PREFIX_LEN (sizeof (XATTR_TRUSTED_PREFIX) - 1)
30 #define XATTR_USER_PREFIX "user."
31 #define XATTR_USER_PREFIX_LEN (sizeof (XATTR_USER_PREFIX) - 1)
33 struct xattr_handler {
35 size_t (*list)(struct inode *inode, char *list, size_t list_size,
36 const char *name, size_t name_len);
37 int (*get)(struct inode *inode, const char *name, void *buffer,
39 int (*set)(struct inode *inode, const char *name, const void *buffer,
40 size_t size, int flags);