summaryrefslogtreecommitdiff
path: root/source4/librpc/ndr/ndr_dfs.h
blob: ea8868f4503ce943675e0bc60d8ad2ddecebc61e (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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
/* header auto-generated by pidl */

struct dfs_Exist {
	struct {
	} in;

	struct {
		uint32 *exist_flag;
	} out;

};

struct dfs_Add {
	struct {
		const char *path;
		const char *server;
		const char *share;
		const char *comment;
		uint32 flags;
	} in;

	struct {
		NTSTATUS result;
	} out;

};

struct dfs_Remove {
	struct {
		const char *path;
		const char *server;
		const char *share;
	} in;

	struct {
		NTSTATUS result;
	} out;

};

struct dfs_UNKNOWN3 {
	struct {
	} in;

	struct {
		NTSTATUS result;
	} out;

};

struct dfs_Info {
	struct {
		const char *path;
		const char *server;
		const char *share;
		uint16 level;
	} in;

	struct {
		NTSTATUS result;
	} out;

};

struct dfs_String {
	const char *str;
};

struct dfs_Enum1 {
	uint32 count;
	struct dfs_String *s;
};

union dfs_EnumInfo {
/* [case(1)] */ struct dfs_Enum1 *enum1;
};

struct dfs_EnumStruct {
	uint32 level;
	union dfs_EnumInfo e;
};

struct dfs_Enum {
	struct {
		uint32 level;
		uint32 bufsize;
		struct dfs_EnumStruct *info;
		uint32 *unknown;
		uint32 *total;
	} in;

	struct {
		struct dfs_EnumStruct *info;
		uint32 *total;
		NTSTATUS result;
	} out;

};

#define DCERPC_DFS_EXIST 0
#define DCERPC_DFS_ADD 1
#define DCERPC_DFS_REMOVE 2
#define DCERPC_DFS_UNKNOWN3 3
#define DCERPC_DFS_INFO 4
#define DCERPC_DFS_ENUM 5