s3:smbd: make sure we always have a valid talloc stackframe
[Samba.git] / librpc / gen_ndr / epmapper.h
blob3d004116554189451e8fe17c558407b91dbd93cc
1 /* header auto-generated by pidl */
3 #include <stdint.h>
5 #include "libcli/util/ntstatus.h"
7 #include "librpc/gen_ndr/misc.h"
8 #ifndef _HEADER_epmapper
9 #define _HEADER_epmapper
11 #define EPMAPPER_STATUS_NO_MORE_ENTRIES ( 0x16c9a0d6 )
12 #define EPMAPPER_STATUS_NO_MEMORY ( 0x16C9A012 )
13 #define EPMAPPER_STATUS_OK ( 0 )
14 enum epm_protocol
15 #ifndef USE_UINT_ENUMS
17 EPM_PROTOCOL_DNET_NSP=(int)(0x04),
18 EPM_PROTOCOL_OSI_TP4=(int)(0x05),
19 EPM_PROTOCOL_OSI_CLNS=(int)(0x06),
20 EPM_PROTOCOL_TCP=(int)(0x07),
21 EPM_PROTOCOL_UDP=(int)(0x08),
22 EPM_PROTOCOL_IP=(int)(0x09),
23 EPM_PROTOCOL_NCADG=(int)(0x0a),
24 EPM_PROTOCOL_NCACN=(int)(0x0b),
25 EPM_PROTOCOL_NCALRPC=(int)(0x0c),
26 EPM_PROTOCOL_UUID=(int)(0x0d),
27 EPM_PROTOCOL_IPX=(int)(0x0e),
28 EPM_PROTOCOL_SMB=(int)(0x0f),
29 EPM_PROTOCOL_NAMED_PIPE=(int)(0x10),
30 EPM_PROTOCOL_NETBIOS=(int)(0x11),
31 EPM_PROTOCOL_NETBEUI=(int)(0x12),
32 EPM_PROTOCOL_SPX=(int)(0x13),
33 EPM_PROTOCOL_NB_IPX=(int)(0x14),
34 EPM_PROTOCOL_DSP=(int)(0x16),
35 EPM_PROTOCOL_DDP=(int)(0x17),
36 EPM_PROTOCOL_APPLETALK=(int)(0x18),
37 EPM_PROTOCOL_VINES_SPP=(int)(0x1a),
38 EPM_PROTOCOL_VINES_IPC=(int)(0x1b),
39 EPM_PROTOCOL_STREETTALK=(int)(0x1c),
40 EPM_PROTOCOL_HTTP=(int)(0x1f),
41 EPM_PROTOCOL_UNIX_DS=(int)(0x20),
42 EPM_PROTOCOL_NULL=(int)(0x21)
44 #else
45 { __donnot_use_enum_epm_protocol=0x7FFFFFFF}
46 #define EPM_PROTOCOL_DNET_NSP ( 0x04 )
47 #define EPM_PROTOCOL_OSI_TP4 ( 0x05 )
48 #define EPM_PROTOCOL_OSI_CLNS ( 0x06 )
49 #define EPM_PROTOCOL_TCP ( 0x07 )
50 #define EPM_PROTOCOL_UDP ( 0x08 )
51 #define EPM_PROTOCOL_IP ( 0x09 )
52 #define EPM_PROTOCOL_NCADG ( 0x0a )
53 #define EPM_PROTOCOL_NCACN ( 0x0b )
54 #define EPM_PROTOCOL_NCALRPC ( 0x0c )
55 #define EPM_PROTOCOL_UUID ( 0x0d )
56 #define EPM_PROTOCOL_IPX ( 0x0e )
57 #define EPM_PROTOCOL_SMB ( 0x0f )
58 #define EPM_PROTOCOL_NAMED_PIPE ( 0x10 )
59 #define EPM_PROTOCOL_NETBIOS ( 0x11 )
60 #define EPM_PROTOCOL_NETBEUI ( 0x12 )
61 #define EPM_PROTOCOL_SPX ( 0x13 )
62 #define EPM_PROTOCOL_NB_IPX ( 0x14 )
63 #define EPM_PROTOCOL_DSP ( 0x16 )
64 #define EPM_PROTOCOL_DDP ( 0x17 )
65 #define EPM_PROTOCOL_APPLETALK ( 0x18 )
66 #define EPM_PROTOCOL_VINES_SPP ( 0x1a )
67 #define EPM_PROTOCOL_VINES_IPC ( 0x1b )
68 #define EPM_PROTOCOL_STREETTALK ( 0x1c )
69 #define EPM_PROTOCOL_HTTP ( 0x1f )
70 #define EPM_PROTOCOL_UNIX_DS ( 0x20 )
71 #define EPM_PROTOCOL_NULL ( 0x21 )
72 #endif
75 struct epm_rhs_dnet_nsp {
76 char _empty_;
79 struct epm_rhs_osi_tp4 {
80 char _empty_;
83 struct epm_rhs_osi_clns {
84 char _empty_;
87 struct epm_rhs_udp {
88 uint16_t port;
91 struct epm_rhs_tcp {
92 uint16_t port;
95 struct epm_rhs_ip {
96 const char * ipaddr;
99 struct epm_rhs_ncadg {
100 uint16_t minor_version;
103 struct epm_rhs_ncacn {
104 uint16_t minor_version;
107 struct epm_rhs_uuid {
108 DATA_BLOB unknown;/* [flag(LIBNDR_FLAG_REMAINING)] */
111 struct epm_rhs_ipx {
112 char _empty_;
115 struct epm_rhs_smb {
116 const char * unc;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
119 struct epm_rhs_named_pipe {
120 const char * path;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
123 struct epm_rhs_netbios {
124 const char * name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
127 struct epm_rhs_netbeui {
128 char _empty_;
131 struct epm_rhs_spx {
132 char _empty_;
135 struct epm_rhs_nb_ipx {
136 char _empty_;
139 struct epm_rhs_http {
140 uint16_t port;
143 struct epm_rhs_unix_ds {
144 const char * path;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
147 struct epm_rhs_null {
148 char _empty_;
151 struct epm_rhs_ncalrpc {
152 uint16_t minor_version;
155 struct epm_rhs_appletalk {
156 char _empty_;
159 struct epm_rhs_atalk_stream {
160 char _empty_;
163 struct epm_rhs_atalk_datagram {
164 char _empty_;
167 struct epm_rhs_vines_spp {
168 uint16_t port;
171 struct epm_rhs_vines_ipc {
172 uint16_t port;
175 struct epm_rhs_streettalk {
176 const char * streettalk;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
179 union epm_rhs {
180 struct epm_rhs_dnet_nsp dnet_nsp;/* [case(EPM_PROTOCOL_DNET_NSP)] */
181 struct epm_rhs_osi_tp4 osi_tp4;/* [case(EPM_PROTOCOL_OSI_TP4)] */
182 struct epm_rhs_osi_clns osi_clns;/* [case(EPM_PROTOCOL_OSI_CLNS)] */
183 struct epm_rhs_tcp tcp;/* [case(EPM_PROTOCOL_TCP)] */
184 struct epm_rhs_udp udp;/* [case(EPM_PROTOCOL_UDP)] */
185 struct epm_rhs_ip ip;/* [case(EPM_PROTOCOL_IP)] */
186 struct epm_rhs_ncadg ncadg;/* [case(EPM_PROTOCOL_NCADG)] */
187 struct epm_rhs_ncacn ncacn;/* [case(EPM_PROTOCOL_NCACN)] */
188 struct epm_rhs_ncalrpc ncalrpc;/* [case(EPM_PROTOCOL_NCALRPC)] */
189 struct epm_rhs_uuid uuid;/* [case(EPM_PROTOCOL_UUID)] */
190 struct epm_rhs_ipx ipx;/* [case(EPM_PROTOCOL_IPX)] */
191 struct epm_rhs_smb smb;/* [case(EPM_PROTOCOL_SMB)] */
192 struct epm_rhs_named_pipe named_pipe;/* [case(EPM_PROTOCOL_NAMED_PIPE)] */
193 struct epm_rhs_netbios netbios;/* [case(EPM_PROTOCOL_NETBIOS)] */
194 struct epm_rhs_netbeui netbeui;/* [case(EPM_PROTOCOL_NETBEUI)] */
195 struct epm_rhs_spx spx;/* [case(EPM_PROTOCOL_SPX)] */
196 struct epm_rhs_nb_ipx nb_ipx;/* [case(EPM_PROTOCOL_NB_IPX)] */
197 struct epm_rhs_atalk_stream atalk_stream;/* [case(EPM_PROTOCOL_DSP)] */
198 struct epm_rhs_atalk_datagram atalk_datagram;/* [case(EPM_PROTOCOL_DDP)] */
199 struct epm_rhs_appletalk appletalk;/* [case(EPM_PROTOCOL_APPLETALK)] */
200 struct epm_rhs_vines_spp vines_spp;/* [case(EPM_PROTOCOL_VINES_SPP)] */
201 struct epm_rhs_vines_ipc vines_ipc;/* [case(EPM_PROTOCOL_VINES_IPC)] */
202 struct epm_rhs_streettalk streettalk;/* [case(EPM_PROTOCOL_STREETTALK)] */
203 struct epm_rhs_http http;/* [case(EPM_PROTOCOL_HTTP)] */
204 struct epm_rhs_unix_ds unix_ds;/* [case(EPM_PROTOCOL_UNIX_DS)] */
205 struct epm_rhs_null null;/* [case(EPM_PROTOCOL_NULL)] */
206 DATA_BLOB unknown;/* [default,flag(LIBNDR_FLAG_REMAINING)] */
207 }/* [nodiscriminant,flag(LIBNDR_FLAG_BIGENDIAN)] */;
209 struct epm_lhs {
210 enum epm_protocol protocol;
211 DATA_BLOB lhs_data;/* [flag(LIBNDR_FLAG_REMAINING)] */
214 struct epm_floor {
215 struct epm_lhs lhs;/* [subcontext(2)] */
216 union epm_rhs rhs;/* [subcontext(2),switch_is(lhs.protocol)] */
219 struct epm_tower {
220 uint16_t num_floors;
221 struct epm_floor *floors;
222 }/* [gensize,flag(LIBNDR_FLAG_NOALIGN|LIBNDR_FLAG_LITTLE_ENDIAN)] */;
224 struct epm_twr_t {
225 uint32_t tower_length;/* [value(ndr_size_epm_tower(&tower,ndr->iconv_convenience,ndr->flags))] */
226 struct epm_tower tower;/* [subcontext(4)] */
229 struct epm_entry_t {
230 struct GUID object;
231 struct epm_twr_t *tower;/* [ptr] */
232 uint32_t __annotation_offset;/* [value(0)] */
233 uint32_t __annotation_length;/* [value(strlen(annotation)+1)] */
234 const char *annotation;/* [charset(DOS)] */
237 struct rpc_if_id_t {
238 struct GUID uuid;
239 uint16_t vers_major;
240 uint16_t vers_minor;
243 struct epm_twr_p_t {
244 struct epm_twr_t *twr;/* [ptr] */
248 struct epm_Insert {
249 struct {
250 uint32_t num_ents;
251 struct epm_entry_t *entries;/* [size_is(num_ents)] */
252 uint32_t replace;
253 } in;
255 struct {
256 uint32_t result;
257 } out;
262 struct epm_Delete {
263 struct {
264 uint32_t num_ents;
265 struct epm_entry_t *entries;/* [size_is(num_ents)] */
266 } in;
268 struct {
269 uint32_t result;
270 } out;
275 struct epm_Lookup {
276 struct {
277 uint32_t inquiry_type;
278 struct GUID *object;/* [ptr] */
279 struct rpc_if_id_t *interface_id;/* [ptr] */
280 uint32_t vers_option;
281 uint32_t max_ents;
282 struct policy_handle *entry_handle;/* [ref] */
283 } in;
285 struct {
286 uint32_t *num_ents;/* [ref] */
287 struct epm_entry_t *entries;/* [length_is(*num_ents),size_is(max_ents)] */
288 struct policy_handle *entry_handle;/* [ref] */
289 uint32_t result;
290 } out;
295 struct epm_Map {
296 struct {
297 struct GUID *object;/* [ptr] */
298 struct epm_twr_t *map_tower;/* [ptr] */
299 uint32_t max_towers;
300 struct policy_handle *entry_handle;/* [ref] */
301 } in;
303 struct {
304 uint32_t *num_towers;/* [ref] */
305 struct epm_twr_p_t *towers;/* [length_is(*num_towers),size_is(max_towers)] */
306 struct policy_handle *entry_handle;/* [ref] */
307 uint32_t result;
308 } out;
313 struct epm_LookupHandleFree {
314 struct {
315 struct policy_handle *entry_handle;/* [ref] */
316 } in;
318 struct {
319 struct policy_handle *entry_handle;/* [ref] */
320 uint32_t result;
321 } out;
326 struct epm_InqObject {
327 struct {
328 struct GUID *epm_object;/* [ref] */
329 } in;
331 struct {
332 uint32_t result;
333 } out;
338 struct epm_MgmtDelete {
339 struct {
340 uint32_t object_speced;
341 struct GUID *object;/* [ptr] */
342 struct epm_twr_t *tower;/* [ptr] */
343 } in;
345 struct {
346 uint32_t result;
347 } out;
352 struct epm_MapAuth {
353 struct {
354 uint32_t result;
355 } out;
359 #endif /* _HEADER_epmapper */