#define __XATTR__
#include <linux/xattr.h>
-#include "ctree.h"
-/* Name indexes */
-enum {
- BTRFS_XATTR_INDEX_USER,
- BTRFS_XATTR_INDEX_POSIX_ACL_ACCESS,
- BTRFS_XATTR_INDEX_POSIX_ACL_DEFAULT,
- BTRFS_XATTR_INDEX_TRUSTED,
- BTRFS_XATTR_INDEX_SECURITY,
- BTRFS_XATTR_INDEX_SYSTEM,
- BTRFS_XATTR_INDEX_END,
-};
-
-extern struct xattr_handler btrfs_xattr_user_handler;
-extern struct xattr_handler btrfs_xattr_trusted_handler;
extern struct xattr_handler btrfs_xattr_acl_access_handler;
extern struct xattr_handler btrfs_xattr_acl_default_handler;
-extern struct xattr_handler btrfs_xattr_security_handler;
-extern struct xattr_handler btrfs_xattr_system_handler;
-
extern struct xattr_handler *btrfs_xattr_handlers[];
-ssize_t btrfs_xattr_get(struct inode *inode, int name_index, const char *name,
- void *buffer, size_t size);
-int btrfs_xattr_set(struct inode *inode, int name_index, const char *name,
- const void *value, size_t size, int flags);
+extern ssize_t __btrfs_getxattr(struct inode *inode, const char *name,
+ void *buffer, size_t size);
+extern int __btrfs_setxattr(struct inode *inode, const char *name,
+ const void *value, size_t size, int flags);
+
+extern ssize_t btrfs_getxattr(struct dentry *dentry, const char *name,
+ void *buffer, size_t size);
+extern int btrfs_setxattr(struct dentry *dentry, const char *name,
+ const void *value, size_t size, int flags);
+extern int btrfs_removexattr(struct dentry *dentry, const char *name);
+
+extern int btrfs_xattr_security_init(struct inode *inode, struct inode *dir);
-/*
- * the only reason this is public is for acl.c. There may be a point where
- * acl.c doesn't need it, and if thats the case we need to remove it and make
- * it static in xattr.c
- */
-size_t btrfs_xattr_generic_list(struct inode *inode, char *list,
- size_t list_size, const char *name,
- size_t name_len);
#endif /* __XATTR__ */