blob: aeab0a0d10812f434769da5baa64c93391e42471 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#include "idl_types.h"
/*
NFS4 ACL format on disk
see http://www.suse.de/~agruen/nfs4acl/
*/
import "misc.idl", "security.idl";
[ uuid("18763978-8625-abc3-54ca-9892bacdf321"),
version(1.0),
pointer_default(unique)
]
interface nfs4acl
{
const char *NFS4ACL_XATTR_NAME = "system.nfs4acl";
const char *NFS4ACL_XATTR_OWNER_WHO = "OWNER@";
const char *NFS4ACL_XATTR_GROUP_WHO = "GROUP@";
const char *NFS4ACL_XATTR_EVERYONE_WHO = "EVERYONE@";
/* these structures use the same bit values and other constants as
in security.idl */
typedef [flag(NDR_BIG_ENDIAN)] struct {
uint16 e_type;
uint16 e_flags;
uint32 e_mask;
uint32 e_id;
utf8string e_who;
[flag(NDR_ALIGN4)] DATA_BLOB _pad;
} nfs4ace;
typedef [public,flag(NDR_BIG_ENDIAN)] struct {
uint8 a_version;
uint8 a_flags;
uint16 a_count;
uint32 a_owner_mask;
uint32 a_group_mask;
uint32 a_other_mask;
nfs4ace ace[a_count];
} nfs4acl;
NTSTATUS nfs4acl_test(
[in] nfs4acl acl
);
}
|