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