xref: /linux/fs/9p/xattr.h (revision ca55b2fef3a9373fcfc30f82fd26bc7fccbda732)
1 /*
2  * Copyright IBM Corporation, 2010
3  * Author Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of version 2.1 of the GNU Lesser General Public License
7  * as published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it would be useful, but
10  * WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12  *
13  */
14 #ifndef FS_9P_XATTR_H
15 #define FS_9P_XATTR_H
16 
17 #include <linux/xattr.h>
18 #include <net/9p/9p.h>
19 #include <net/9p/client.h>
20 
21 extern const struct xattr_handler *v9fs_xattr_handlers[];
22 extern struct xattr_handler v9fs_xattr_user_handler;
23 extern struct xattr_handler v9fs_xattr_trusted_handler;
24 extern struct xattr_handler v9fs_xattr_security_handler;
25 extern const struct xattr_handler v9fs_xattr_acl_access_handler;
26 extern const struct xattr_handler v9fs_xattr_acl_default_handler;
27 
28 extern ssize_t v9fs_fid_xattr_get(struct p9_fid *, const char *,
29 				  void *, size_t);
30 extern ssize_t v9fs_xattr_get(struct dentry *, const char *,
31 			      void *, size_t);
32 extern int v9fs_fid_xattr_set(struct p9_fid *, const char *,
33 			  const void *, size_t, int);
34 extern int v9fs_xattr_set(struct dentry *, const char *,
35 			  const void *, size_t, int);
36 extern ssize_t v9fs_listxattr(struct dentry *, char *, size_t);
37 #endif /* FS_9P_XATTR_H */
38