/* [<][>][^][v][top][bottom][index][help] */
1 /* header auto-generated by pidl */
2
3 #include <stdint.h>
4
5 #include "libcli/util/ntstatus.h"
6
7 #ifndef _HEADER_rpcecho
8 #define _HEADER_rpcecho
9
10 struct echo_info1 {
11 uint8_t v;
12 }/* [public] */;
13
14 struct echo_info2 {
15 uint16_t v;
16 };
17
18 struct echo_info3 {
19 uint32_t v;
20 };
21
22 struct echo_info4 {
23 uint64_t v;
24 };
25
26 struct echo_info5 {
27 uint8_t v1;
28 uint64_t v2;
29 };
30
31 struct echo_info6 {
32 uint8_t v1;
33 struct echo_info1 info1;
34 };
35
36 struct echo_info7 {
37 uint8_t v1;
38 struct echo_info4 info4;
39 };
40
41 union echo_Info {
42 struct echo_info1 info1;/* [case] */
43 struct echo_info2 info2;/* [case(2)] */
44 struct echo_info3 info3;/* [case(3)] */
45 struct echo_info4 info4;/* [case(4)] */
46 struct echo_info5 info5;/* [case(5)] */
47 struct echo_info6 info6;/* [case(6)] */
48 struct echo_info7 info7;/* [case(7)] */
49 }/* [switch_type(uint16)] */;
50
51 enum echo_Enum1
52 #ifndef USE_UINT_ENUMS
53 {
54 ECHO_ENUM1=1,
55 ECHO_ENUM2=2
56 }
57 #else
58 { __donnot_use_enum_echo_Enum1=0x7FFFFFFF}
59 #define ECHO_ENUM1 ( 1 )
60 #define ECHO_ENUM2 ( 2 )
61 #endif
62 ;
63
64 enum echo_Enum1_32
65 #ifndef USE_UINT_ENUMS
66 {
67 ECHO_ENUM1_32=1,
68 ECHO_ENUM2_32=2
69 }
70 #else
71 { __donnot_use_enum_echo_Enum1_32=0x7FFFFFFF}
72 #define ECHO_ENUM1_32 ( 1 )
73 #define ECHO_ENUM2_32 ( 2 )
74 #endif
75 ;
76
77 struct echo_Enum2 {
78 enum echo_Enum1 e1;
79 enum echo_Enum1_32 e2;
80 };
81
82 union echo_Enum3 {
83 enum echo_Enum1 e1;/* [case(ECHO_ENUM1)] */
84 struct echo_Enum2 e2;/* [case(ECHO_ENUM2)] */
85 }/* [switch_type(uint16)] */;
86
87 struct echo_Surrounding {
88 uint32_t x;
89 uint16_t *surrounding;/* [size_is(x)] */
90 };
91
92
93 struct echo_AddOne {
94 struct {
95 uint32_t in_data;
96 } in;
97
98 struct {
99 uint32_t *out_data;/* [ref] */
100 } out;
101
102 };
103
104
105 struct echo_EchoData {
106 struct {
107 uint32_t len;
108 uint8_t *in_data;/* [size_is(len)] */
109 } in;
110
111 struct {
112 uint8_t *out_data;/* [size_is(len)] */
113 } out;
114
115 };
116
117
118 struct echo_SinkData {
119 struct {
120 uint32_t len;
121 uint8_t *data;/* [size_is(len)] */
122 } in;
123
124 };
125
126
127 struct echo_SourceData {
128 struct {
129 uint32_t len;
130 } in;
131
132 struct {
133 uint8_t *data;/* [size_is(len)] */
134 } out;
135
136 };
137
138
139 struct echo_TestCall {
140 struct {
141 const char *s1;/* [ref,charset(UTF16)] */
142 } in;
143
144 struct {
145 const char **s2;/* [ref,charset(UTF16)] */
146 } out;
147
148 };
149
150
151 struct echo_TestCall2 {
152 struct {
153 uint16_t level;
154 } in;
155
156 struct {
157 union echo_Info *info;/* [ref,switch_is(level)] */
158 NTSTATUS result;
159 } out;
160
161 };
162
163
164 struct echo_TestSleep {
165 struct {
166 uint32_t seconds;
167 } in;
168
169 struct {
170 uint32_t result;
171 } out;
172
173 };
174
175
176 struct echo_TestEnum {
177 struct {
178 enum echo_Enum1 *foo1;/* [ref] */
179 struct echo_Enum2 *foo2;/* [ref] */
180 union echo_Enum3 *foo3;/* [ref,switch_is(*foo1)] */
181 } in;
182
183 struct {
184 enum echo_Enum1 *foo1;/* [ref] */
185 struct echo_Enum2 *foo2;/* [ref] */
186 union echo_Enum3 *foo3;/* [ref,switch_is(*foo1)] */
187 } out;
188
189 };
190
191
192 struct echo_TestSurrounding {
193 struct {
194 struct echo_Surrounding *data;/* [ref] */
195 } in;
196
197 struct {
198 struct echo_Surrounding *data;/* [ref] */
199 } out;
200
201 };
202
203
204 struct echo_TestDoublePointer {
205 struct {
206 uint16_t ***data;/* [ref] */
207 } in;
208
209 struct {
210 uint16_t result;
211 } out;
212
213 };
214
215 #endif /* _HEADER_rpcecho */