xref: /linux/fs/smb/server/ndr.h (revision bfb921b2a9d5d1123d1d10b196a39db629ddef87)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  *   Copyright (C) 2020 Samsung Electronics Co., Ltd.
4  *   Author(s): Namjae Jeon <linkinjeon@kernel.org>
5  */
6 
7 struct ndr {
8 	char	*data;
9 	int	offset;
10 	int	length;
11 };
12 
13 #define NDR_NTSD_OFFSETOF	0xA0
14 
15 int ndr_encode_dos_attr(struct ndr *n, struct xattr_dos_attrib *da);
16 int ndr_decode_dos_attr(struct ndr *n, struct xattr_dos_attrib *da);
17 int ndr_encode_posix_acl(struct ndr *n, struct mnt_idmap *idmap,
18 			 struct inode *inode, struct xattr_smb_acl *acl,
19 			 struct xattr_smb_acl *def_acl);
20 int ndr_encode_v4_ntacl(struct ndr *n, struct xattr_ntacl *acl);
21 int ndr_encode_v3_ntacl(struct ndr *n, struct xattr_ntacl *acl);
22 int ndr_decode_v4_ntacl(struct ndr *n, struct xattr_ntacl *acl);
23