xref: /kernel/linux/linux-5.10/fs/hfsplus/xattr.h (revision 8c2ecf20)
18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * linux/fs/hfsplus/xattr.h
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Vyacheslav Dubeyko <slava@dubeyko.com>
68c2ecf20Sopenharmony_ci *
78c2ecf20Sopenharmony_ci * Logic of processing extended attributes
88c2ecf20Sopenharmony_ci */
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci#ifndef _LINUX_HFSPLUS_XATTR_H
118c2ecf20Sopenharmony_ci#define _LINUX_HFSPLUS_XATTR_H
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci#include <linux/xattr.h>
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciextern const struct xattr_handler hfsplus_xattr_osx_handler;
168c2ecf20Sopenharmony_ciextern const struct xattr_handler hfsplus_xattr_user_handler;
178c2ecf20Sopenharmony_ciextern const struct xattr_handler hfsplus_xattr_trusted_handler;
188c2ecf20Sopenharmony_ciextern const struct xattr_handler hfsplus_xattr_security_handler;
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciextern const struct xattr_handler *hfsplus_xattr_handlers[];
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ciint __hfsplus_setxattr(struct inode *inode, const char *name,
238c2ecf20Sopenharmony_ci			const void *value, size_t size, int flags);
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciint hfsplus_setxattr(struct inode *inode, const char *name,
268c2ecf20Sopenharmony_ci				   const void *value, size_t size, int flags,
278c2ecf20Sopenharmony_ci				   const char *prefix, size_t prefixlen);
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_cissize_t __hfsplus_getxattr(struct inode *inode, const char *name,
308c2ecf20Sopenharmony_ci			   void *value, size_t size);
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_cissize_t hfsplus_getxattr(struct inode *inode, const char *name,
338c2ecf20Sopenharmony_ci			 void *value, size_t size,
348c2ecf20Sopenharmony_ci			 const char *prefix, size_t prefixlen);
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_cissize_t hfsplus_listxattr(struct dentry *dentry, char *buffer, size_t size);
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ciint hfsplus_init_security(struct inode *inode, struct inode *dir,
398c2ecf20Sopenharmony_ci				const struct qstr *qstr);
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci#endif
42