git add -f bin/default/librpc/gen_ndr/*.[ch] bin/default/source*/librpc/gen_ndr/...
[metze/samba/wip.git] / bin.gen_ndr / default / librpc / gen_ndr / ndr_oxidresolver.c
1 /* parser auto-generated by pidl */
2
3 #include "includes.h"
4 #include "bin/default/librpc/gen_ndr/ndr_oxidresolver.h"
5
6 #include "librpc/gen_ndr/ndr_misc.h"
7 #include "librpc/gen_ndr/ndr_orpc.h"
8 static enum ndr_err_code ndr_push_COMINFO(struct ndr_push *ndr, int ndr_flags, const struct COMINFO *r)
9 {
10         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
11         if (ndr_flags & NDR_SCALARS) {
12                 NDR_CHECK(ndr_push_align(ndr, 4));
13                 NDR_CHECK(ndr_push_COMVERSION(ndr, NDR_SCALARS, &r->version));
14                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown1));
15                 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
16         }
17         if (ndr_flags & NDR_BUFFERS) {
18         }
19         return NDR_ERR_SUCCESS;
20 }
21
22 static enum ndr_err_code ndr_pull_COMINFO(struct ndr_pull *ndr, int ndr_flags, struct COMINFO *r)
23 {
24         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
25         if (ndr_flags & NDR_SCALARS) {
26                 NDR_CHECK(ndr_pull_align(ndr, 4));
27                 NDR_CHECK(ndr_pull_COMVERSION(ndr, NDR_SCALARS, &r->version));
28                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1));
29                 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
30         }
31         if (ndr_flags & NDR_BUFFERS) {
32         }
33         return NDR_ERR_SUCCESS;
34 }
35
36 _PUBLIC_ void ndr_print_COMINFO(struct ndr_print *ndr, const char *name, const struct COMINFO *r)
37 {
38         ndr_print_struct(ndr, name, "COMINFO");
39         if (r == NULL) { ndr_print_null(ndr); return; }
40         ndr->depth++;
41         ndr_print_COMVERSION(ndr, "version", &r->version);
42         ndr_print_uint32(ndr, "unknown1", r->unknown1);
43         ndr->depth--;
44 }
45
46 static enum ndr_err_code ndr_push_ResolveOxid(struct ndr_push *ndr, int flags, const struct ResolveOxid *r)
47 {
48         uint32_t cntr_arRequestedProtseqs_0;
49         NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
50         if (flags & NDR_IN) {
51                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->in.pOxid));
52                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cRequestedProtseqs));
53                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cRequestedProtseqs));
54                 for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < r->in.cRequestedProtseqs; cntr_arRequestedProtseqs_0++) {
55                         NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]));
56                 }
57         }
58         if (flags & NDR_OUT) {
59                 if (r->out.ppdsaOxidBindings == NULL) {
60                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
61                 }
62                 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.ppdsaOxidBindings));
63                 if (*r->out.ppdsaOxidBindings) {
64                         NDR_CHECK(ndr_push_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ppdsaOxidBindings));
65                 }
66                 if (r->out.pipidRemUnknown == NULL) {
67                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
68                 }
69                 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->out.pipidRemUnknown));
70                 if (r->out.pAuthnHint == NULL) {
71                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
72                 }
73                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.pAuthnHint));
74                 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
75         }
76         return NDR_ERR_SUCCESS;
77 }
78
79 static enum ndr_err_code ndr_pull_ResolveOxid(struct ndr_pull *ndr, int flags, struct ResolveOxid *r)
80 {
81         uint32_t size_arRequestedProtseqs_0 = 0;
82         uint32_t cntr_arRequestedProtseqs_0;
83         uint32_t _ptr_ppdsaOxidBindings;
84         TALLOC_CTX *_mem_save_arRequestedProtseqs_0;
85         TALLOC_CTX *_mem_save_ppdsaOxidBindings_0;
86         TALLOC_CTX *_mem_save_ppdsaOxidBindings_1;
87         TALLOC_CTX *_mem_save_pipidRemUnknown_0;
88         TALLOC_CTX *_mem_save_pAuthnHint_0;
89         NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
90         if (flags & NDR_IN) {
91                 ZERO_STRUCT(r->out);
92
93                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->in.pOxid));
94                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cRequestedProtseqs));
95                 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.arRequestedProtseqs));
96                 size_arRequestedProtseqs_0 = ndr_get_array_size(ndr, &r->in.arRequestedProtseqs);
97                 NDR_PULL_ALLOC_N(ndr, r->in.arRequestedProtseqs, size_arRequestedProtseqs_0);
98                 _mem_save_arRequestedProtseqs_0 = NDR_PULL_GET_MEM_CTX(ndr);
99                 NDR_PULL_SET_MEM_CTX(ndr, r->in.arRequestedProtseqs, 0);
100                 for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < size_arRequestedProtseqs_0; cntr_arRequestedProtseqs_0++) {
101                         NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]));
102                 }
103                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_arRequestedProtseqs_0, 0);
104                 NDR_PULL_ALLOC(ndr, r->out.ppdsaOxidBindings);
105                 ZERO_STRUCTP(r->out.ppdsaOxidBindings);
106                 NDR_PULL_ALLOC(ndr, r->out.pipidRemUnknown);
107                 ZERO_STRUCTP(r->out.pipidRemUnknown);
108                 NDR_PULL_ALLOC(ndr, r->out.pAuthnHint);
109                 ZERO_STRUCTP(r->out.pAuthnHint);
110                 if (r->in.arRequestedProtseqs) {
111                         NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.arRequestedProtseqs, r->in.cRequestedProtseqs));
112                 }
113         }
114         if (flags & NDR_OUT) {
115                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
116                         NDR_PULL_ALLOC(ndr, r->out.ppdsaOxidBindings);
117                 }
118                 _mem_save_ppdsaOxidBindings_0 = NDR_PULL_GET_MEM_CTX(ndr);
119                 NDR_PULL_SET_MEM_CTX(ndr, r->out.ppdsaOxidBindings, LIBNDR_FLAG_REF_ALLOC);
120                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ppdsaOxidBindings));
121                 if (_ptr_ppdsaOxidBindings) {
122                         NDR_PULL_ALLOC(ndr, *r->out.ppdsaOxidBindings);
123                 } else {
124                         *r->out.ppdsaOxidBindings = NULL;
125                 }
126                 if (*r->out.ppdsaOxidBindings) {
127                         _mem_save_ppdsaOxidBindings_1 = NDR_PULL_GET_MEM_CTX(ndr);
128                         NDR_PULL_SET_MEM_CTX(ndr, *r->out.ppdsaOxidBindings, 0);
129                         NDR_CHECK(ndr_pull_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ppdsaOxidBindings));
130                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ppdsaOxidBindings_1, 0);
131                 }
132                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ppdsaOxidBindings_0, LIBNDR_FLAG_REF_ALLOC);
133                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
134                         NDR_PULL_ALLOC(ndr, r->out.pipidRemUnknown);
135                 }
136                 _mem_save_pipidRemUnknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
137                 NDR_PULL_SET_MEM_CTX(ndr, r->out.pipidRemUnknown, LIBNDR_FLAG_REF_ALLOC);
138                 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->out.pipidRemUnknown));
139                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pipidRemUnknown_0, LIBNDR_FLAG_REF_ALLOC);
140                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
141                         NDR_PULL_ALLOC(ndr, r->out.pAuthnHint);
142                 }
143                 _mem_save_pAuthnHint_0 = NDR_PULL_GET_MEM_CTX(ndr);
144                 NDR_PULL_SET_MEM_CTX(ndr, r->out.pAuthnHint, LIBNDR_FLAG_REF_ALLOC);
145                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.pAuthnHint));
146                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pAuthnHint_0, LIBNDR_FLAG_REF_ALLOC);
147                 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
148         }
149         return NDR_ERR_SUCCESS;
150 }
151
152 _PUBLIC_ void ndr_print_ResolveOxid(struct ndr_print *ndr, const char *name, int flags, const struct ResolveOxid *r)
153 {
154         uint32_t cntr_arRequestedProtseqs_0;
155         ndr_print_struct(ndr, name, "ResolveOxid");
156         if (r == NULL) { ndr_print_null(ndr); return; }
157         ndr->depth++;
158         if (flags & NDR_SET_VALUES) {
159                 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
160         }
161         if (flags & NDR_IN) {
162                 ndr_print_struct(ndr, "in", "ResolveOxid");
163                 ndr->depth++;
164                 ndr_print_hyper(ndr, "pOxid", r->in.pOxid);
165                 ndr_print_uint16(ndr, "cRequestedProtseqs", r->in.cRequestedProtseqs);
166                 ndr->print(ndr, "%s: ARRAY(%d)", "arRequestedProtseqs", (int)r->in.cRequestedProtseqs);
167                 ndr->depth++;
168                 for (cntr_arRequestedProtseqs_0=0;cntr_arRequestedProtseqs_0<r->in.cRequestedProtseqs;cntr_arRequestedProtseqs_0++) {
169                         ndr_print_uint16(ndr, "arRequestedProtseqs", r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]);
170                 }
171                 ndr->depth--;
172                 ndr->depth--;
173         }
174         if (flags & NDR_OUT) {
175                 ndr_print_struct(ndr, "out", "ResolveOxid");
176                 ndr->depth++;
177                 ndr_print_ptr(ndr, "ppdsaOxidBindings", r->out.ppdsaOxidBindings);
178                 ndr->depth++;
179                 ndr_print_ptr(ndr, "ppdsaOxidBindings", *r->out.ppdsaOxidBindings);
180                 ndr->depth++;
181                 if (*r->out.ppdsaOxidBindings) {
182                         ndr_print_DUALSTRINGARRAY(ndr, "ppdsaOxidBindings", *r->out.ppdsaOxidBindings);
183                 }
184                 ndr->depth--;
185                 ndr->depth--;
186                 ndr_print_ptr(ndr, "pipidRemUnknown", r->out.pipidRemUnknown);
187                 ndr->depth++;
188                 ndr_print_GUID(ndr, "pipidRemUnknown", r->out.pipidRemUnknown);
189                 ndr->depth--;
190                 ndr_print_ptr(ndr, "pAuthnHint", r->out.pAuthnHint);
191                 ndr->depth++;
192                 ndr_print_uint32(ndr, "pAuthnHint", *r->out.pAuthnHint);
193                 ndr->depth--;
194                 ndr_print_WERROR(ndr, "result", r->out.result);
195                 ndr->depth--;
196         }
197         ndr->depth--;
198 }
199
200 static enum ndr_err_code ndr_push_SimplePing(struct ndr_push *ndr, int flags, const struct SimplePing *r)
201 {
202         NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
203         if (flags & NDR_IN) {
204                 if (r->in.SetId == NULL) {
205                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
206                 }
207                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, *r->in.SetId));
208         }
209         if (flags & NDR_OUT) {
210                 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
211         }
212         return NDR_ERR_SUCCESS;
213 }
214
215 static enum ndr_err_code ndr_pull_SimplePing(struct ndr_pull *ndr, int flags, struct SimplePing *r)
216 {
217         TALLOC_CTX *_mem_save_SetId_0;
218         NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
219         if (flags & NDR_IN) {
220                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
221                         NDR_PULL_ALLOC(ndr, r->in.SetId);
222                 }
223                 _mem_save_SetId_0 = NDR_PULL_GET_MEM_CTX(ndr);
224                 NDR_PULL_SET_MEM_CTX(ndr, r->in.SetId, LIBNDR_FLAG_REF_ALLOC);
225                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, r->in.SetId));
226                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_SetId_0, LIBNDR_FLAG_REF_ALLOC);
227         }
228         if (flags & NDR_OUT) {
229                 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
230         }
231         return NDR_ERR_SUCCESS;
232 }
233
234 _PUBLIC_ void ndr_print_SimplePing(struct ndr_print *ndr, const char *name, int flags, const struct SimplePing *r)
235 {
236         ndr_print_struct(ndr, name, "SimplePing");
237         if (r == NULL) { ndr_print_null(ndr); return; }
238         ndr->depth++;
239         if (flags & NDR_SET_VALUES) {
240                 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
241         }
242         if (flags & NDR_IN) {
243                 ndr_print_struct(ndr, "in", "SimplePing");
244                 ndr->depth++;
245                 ndr_print_ptr(ndr, "SetId", r->in.SetId);
246                 ndr->depth++;
247                 ndr_print_hyper(ndr, "SetId", *r->in.SetId);
248                 ndr->depth--;
249                 ndr->depth--;
250         }
251         if (flags & NDR_OUT) {
252                 ndr_print_struct(ndr, "out", "SimplePing");
253                 ndr->depth++;
254                 ndr_print_WERROR(ndr, "result", r->out.result);
255                 ndr->depth--;
256         }
257         ndr->depth--;
258 }
259
260 static enum ndr_err_code ndr_push_ComplexPing(struct ndr_push *ndr, int flags, const struct ComplexPing *r)
261 {
262         uint32_t cntr_AddToSet_0;
263         uint32_t cntr_DelFromSet_0;
264         NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
265         if (flags & NDR_IN) {
266                 if (r->in.SetId == NULL) {
267                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
268                 }
269                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, *r->in.SetId));
270                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.SequenceNum));
271                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cAddToSet));
272                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cDelFromSet));
273                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cAddToSet));
274                 for (cntr_AddToSet_0 = 0; cntr_AddToSet_0 < r->in.cAddToSet; cntr_AddToSet_0++) {
275                         NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.AddToSet[cntr_AddToSet_0]));
276                 }
277                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cDelFromSet));
278                 for (cntr_DelFromSet_0 = 0; cntr_DelFromSet_0 < r->in.cDelFromSet; cntr_DelFromSet_0++) {
279                         NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.DelFromSet[cntr_DelFromSet_0]));
280                 }
281         }
282         if (flags & NDR_OUT) {
283                 if (r->out.SetId == NULL) {
284                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
285                 }
286                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, *r->out.SetId));
287                 if (r->out.PingBackoffFactor == NULL) {
288                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
289                 }
290                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->out.PingBackoffFactor));
291                 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
292         }
293         return NDR_ERR_SUCCESS;
294 }
295
296 static enum ndr_err_code ndr_pull_ComplexPing(struct ndr_pull *ndr, int flags, struct ComplexPing *r)
297 {
298         uint32_t size_AddToSet_0 = 0;
299         uint32_t cntr_AddToSet_0;
300         uint32_t size_DelFromSet_0 = 0;
301         uint32_t cntr_DelFromSet_0;
302         TALLOC_CTX *_mem_save_SetId_0;
303         TALLOC_CTX *_mem_save_AddToSet_0;
304         TALLOC_CTX *_mem_save_DelFromSet_0;
305         TALLOC_CTX *_mem_save_PingBackoffFactor_0;
306         NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
307         if (flags & NDR_IN) {
308                 ZERO_STRUCT(r->out);
309
310                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
311                         NDR_PULL_ALLOC(ndr, r->in.SetId);
312                 }
313                 _mem_save_SetId_0 = NDR_PULL_GET_MEM_CTX(ndr);
314                 NDR_PULL_SET_MEM_CTX(ndr, r->in.SetId, LIBNDR_FLAG_REF_ALLOC);
315                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, r->in.SetId));
316                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_SetId_0, LIBNDR_FLAG_REF_ALLOC);
317                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.SequenceNum));
318                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cAddToSet));
319                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cDelFromSet));
320                 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.AddToSet));
321                 size_AddToSet_0 = ndr_get_array_size(ndr, &r->in.AddToSet);
322                 NDR_PULL_ALLOC_N(ndr, r->in.AddToSet, size_AddToSet_0);
323                 _mem_save_AddToSet_0 = NDR_PULL_GET_MEM_CTX(ndr);
324                 NDR_PULL_SET_MEM_CTX(ndr, r->in.AddToSet, 0);
325                 for (cntr_AddToSet_0 = 0; cntr_AddToSet_0 < size_AddToSet_0; cntr_AddToSet_0++) {
326                         NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.AddToSet[cntr_AddToSet_0]));
327                 }
328                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_AddToSet_0, 0);
329                 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.DelFromSet));
330                 size_DelFromSet_0 = ndr_get_array_size(ndr, &r->in.DelFromSet);
331                 NDR_PULL_ALLOC_N(ndr, r->in.DelFromSet, size_DelFromSet_0);
332                 _mem_save_DelFromSet_0 = NDR_PULL_GET_MEM_CTX(ndr);
333                 NDR_PULL_SET_MEM_CTX(ndr, r->in.DelFromSet, 0);
334                 for (cntr_DelFromSet_0 = 0; cntr_DelFromSet_0 < size_DelFromSet_0; cntr_DelFromSet_0++) {
335                         NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.DelFromSet[cntr_DelFromSet_0]));
336                 }
337                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_DelFromSet_0, 0);
338                 NDR_PULL_ALLOC(ndr, r->out.SetId);
339                 *r->out.SetId = *r->in.SetId;
340                 NDR_PULL_ALLOC(ndr, r->out.PingBackoffFactor);
341                 ZERO_STRUCTP(r->out.PingBackoffFactor);
342                 if (r->in.AddToSet) {
343                         NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.AddToSet, r->in.cAddToSet));
344                 }
345                 if (r->in.DelFromSet) {
346                         NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.DelFromSet, r->in.cDelFromSet));
347                 }
348         }
349         if (flags & NDR_OUT) {
350                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
351                         NDR_PULL_ALLOC(ndr, r->out.SetId);
352                 }
353                 _mem_save_SetId_0 = NDR_PULL_GET_MEM_CTX(ndr);
354                 NDR_PULL_SET_MEM_CTX(ndr, r->out.SetId, LIBNDR_FLAG_REF_ALLOC);
355                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, r->out.SetId));
356                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_SetId_0, LIBNDR_FLAG_REF_ALLOC);
357                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
358                         NDR_PULL_ALLOC(ndr, r->out.PingBackoffFactor);
359                 }
360                 _mem_save_PingBackoffFactor_0 = NDR_PULL_GET_MEM_CTX(ndr);
361                 NDR_PULL_SET_MEM_CTX(ndr, r->out.PingBackoffFactor, LIBNDR_FLAG_REF_ALLOC);
362                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->out.PingBackoffFactor));
363                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_PingBackoffFactor_0, LIBNDR_FLAG_REF_ALLOC);
364                 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
365         }
366         return NDR_ERR_SUCCESS;
367 }
368
369 _PUBLIC_ void ndr_print_ComplexPing(struct ndr_print *ndr, const char *name, int flags, const struct ComplexPing *r)
370 {
371         uint32_t cntr_AddToSet_0;
372         uint32_t cntr_DelFromSet_0;
373         ndr_print_struct(ndr, name, "ComplexPing");
374         if (r == NULL) { ndr_print_null(ndr); return; }
375         ndr->depth++;
376         if (flags & NDR_SET_VALUES) {
377                 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
378         }
379         if (flags & NDR_IN) {
380                 ndr_print_struct(ndr, "in", "ComplexPing");
381                 ndr->depth++;
382                 ndr_print_ptr(ndr, "SetId", r->in.SetId);
383                 ndr->depth++;
384                 ndr_print_hyper(ndr, "SetId", *r->in.SetId);
385                 ndr->depth--;
386                 ndr_print_uint16(ndr, "SequenceNum", r->in.SequenceNum);
387                 ndr_print_uint16(ndr, "cAddToSet", r->in.cAddToSet);
388                 ndr_print_uint16(ndr, "cDelFromSet", r->in.cDelFromSet);
389                 ndr->print(ndr, "%s: ARRAY(%d)", "AddToSet", (int)r->in.cAddToSet);
390                 ndr->depth++;
391                 for (cntr_AddToSet_0=0;cntr_AddToSet_0<r->in.cAddToSet;cntr_AddToSet_0++) {
392                         ndr_print_GUID(ndr, "AddToSet", &r->in.AddToSet[cntr_AddToSet_0]);
393                 }
394                 ndr->depth--;
395                 ndr->print(ndr, "%s: ARRAY(%d)", "DelFromSet", (int)r->in.cDelFromSet);
396                 ndr->depth++;
397                 for (cntr_DelFromSet_0=0;cntr_DelFromSet_0<r->in.cDelFromSet;cntr_DelFromSet_0++) {
398                         ndr_print_GUID(ndr, "DelFromSet", &r->in.DelFromSet[cntr_DelFromSet_0]);
399                 }
400                 ndr->depth--;
401                 ndr->depth--;
402         }
403         if (flags & NDR_OUT) {
404                 ndr_print_struct(ndr, "out", "ComplexPing");
405                 ndr->depth++;
406                 ndr_print_ptr(ndr, "SetId", r->out.SetId);
407                 ndr->depth++;
408                 ndr_print_hyper(ndr, "SetId", *r->out.SetId);
409                 ndr->depth--;
410                 ndr_print_ptr(ndr, "PingBackoffFactor", r->out.PingBackoffFactor);
411                 ndr->depth++;
412                 ndr_print_uint16(ndr, "PingBackoffFactor", *r->out.PingBackoffFactor);
413                 ndr->depth--;
414                 ndr_print_WERROR(ndr, "result", r->out.result);
415                 ndr->depth--;
416         }
417         ndr->depth--;
418 }
419
420 static enum ndr_err_code ndr_push_ServerAlive(struct ndr_push *ndr, int flags, const struct ServerAlive *r)
421 {
422         NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
423         if (flags & NDR_IN) {
424         }
425         if (flags & NDR_OUT) {
426                 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
427         }
428         return NDR_ERR_SUCCESS;
429 }
430
431 static enum ndr_err_code ndr_pull_ServerAlive(struct ndr_pull *ndr, int flags, struct ServerAlive *r)
432 {
433         NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
434         if (flags & NDR_IN) {
435         }
436         if (flags & NDR_OUT) {
437                 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
438         }
439         return NDR_ERR_SUCCESS;
440 }
441
442 _PUBLIC_ void ndr_print_ServerAlive(struct ndr_print *ndr, const char *name, int flags, const struct ServerAlive *r)
443 {
444         ndr_print_struct(ndr, name, "ServerAlive");
445         if (r == NULL) { ndr_print_null(ndr); return; }
446         ndr->depth++;
447         if (flags & NDR_SET_VALUES) {
448                 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
449         }
450         if (flags & NDR_IN) {
451                 ndr_print_struct(ndr, "in", "ServerAlive");
452                 ndr->depth++;
453                 ndr->depth--;
454         }
455         if (flags & NDR_OUT) {
456                 ndr_print_struct(ndr, "out", "ServerAlive");
457                 ndr->depth++;
458                 ndr_print_WERROR(ndr, "result", r->out.result);
459                 ndr->depth--;
460         }
461         ndr->depth--;
462 }
463
464 static enum ndr_err_code ndr_push_ResolveOxid2(struct ndr_push *ndr, int flags, const struct ResolveOxid2 *r)
465 {
466         uint32_t cntr_arRequestedProtseqs_0;
467         NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
468         if (flags & NDR_IN) {
469                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->in.pOxid));
470                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cRequestedProtseqs));
471                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cRequestedProtseqs));
472                 for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < r->in.cRequestedProtseqs; cntr_arRequestedProtseqs_0++) {
473                         NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]));
474                 }
475         }
476         if (flags & NDR_OUT) {
477                 if (r->out.pdsaOxidBindings == NULL) {
478                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
479                 }
480                 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.pdsaOxidBindings));
481                 if (*r->out.pdsaOxidBindings) {
482                         NDR_CHECK(ndr_push_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.pdsaOxidBindings));
483                 }
484                 if (r->out.ipidRemUnknown == NULL) {
485                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
486                 }
487                 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->out.ipidRemUnknown));
488                 if (r->out.AuthnHint == NULL) {
489                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
490                 }
491                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.AuthnHint));
492                 if (r->out.ComVersion == NULL) {
493                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
494                 }
495                 NDR_CHECK(ndr_push_COMVERSION(ndr, NDR_SCALARS, r->out.ComVersion));
496                 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
497         }
498         return NDR_ERR_SUCCESS;
499 }
500
501 static enum ndr_err_code ndr_pull_ResolveOxid2(struct ndr_pull *ndr, int flags, struct ResolveOxid2 *r)
502 {
503         uint32_t size_arRequestedProtseqs_0 = 0;
504         uint32_t cntr_arRequestedProtseqs_0;
505         uint32_t _ptr_pdsaOxidBindings;
506         TALLOC_CTX *_mem_save_arRequestedProtseqs_0;
507         TALLOC_CTX *_mem_save_pdsaOxidBindings_0;
508         TALLOC_CTX *_mem_save_pdsaOxidBindings_1;
509         TALLOC_CTX *_mem_save_ipidRemUnknown_0;
510         TALLOC_CTX *_mem_save_AuthnHint_0;
511         TALLOC_CTX *_mem_save_ComVersion_0;
512         NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
513         if (flags & NDR_IN) {
514                 ZERO_STRUCT(r->out);
515
516                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->in.pOxid));
517                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cRequestedProtseqs));
518                 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.arRequestedProtseqs));
519                 size_arRequestedProtseqs_0 = ndr_get_array_size(ndr, &r->in.arRequestedProtseqs);
520                 NDR_PULL_ALLOC_N(ndr, r->in.arRequestedProtseqs, size_arRequestedProtseqs_0);
521                 _mem_save_arRequestedProtseqs_0 = NDR_PULL_GET_MEM_CTX(ndr);
522                 NDR_PULL_SET_MEM_CTX(ndr, r->in.arRequestedProtseqs, 0);
523                 for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < size_arRequestedProtseqs_0; cntr_arRequestedProtseqs_0++) {
524                         NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]));
525                 }
526                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_arRequestedProtseqs_0, 0);
527                 NDR_PULL_ALLOC(ndr, r->out.pdsaOxidBindings);
528                 ZERO_STRUCTP(r->out.pdsaOxidBindings);
529                 NDR_PULL_ALLOC(ndr, r->out.ipidRemUnknown);
530                 ZERO_STRUCTP(r->out.ipidRemUnknown);
531                 NDR_PULL_ALLOC(ndr, r->out.AuthnHint);
532                 ZERO_STRUCTP(r->out.AuthnHint);
533                 NDR_PULL_ALLOC(ndr, r->out.ComVersion);
534                 ZERO_STRUCTP(r->out.ComVersion);
535                 if (r->in.arRequestedProtseqs) {
536                         NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.arRequestedProtseqs, r->in.cRequestedProtseqs));
537                 }
538         }
539         if (flags & NDR_OUT) {
540                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
541                         NDR_PULL_ALLOC(ndr, r->out.pdsaOxidBindings);
542                 }
543                 _mem_save_pdsaOxidBindings_0 = NDR_PULL_GET_MEM_CTX(ndr);
544                 NDR_PULL_SET_MEM_CTX(ndr, r->out.pdsaOxidBindings, LIBNDR_FLAG_REF_ALLOC);
545                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_pdsaOxidBindings));
546                 if (_ptr_pdsaOxidBindings) {
547                         NDR_PULL_ALLOC(ndr, *r->out.pdsaOxidBindings);
548                 } else {
549                         *r->out.pdsaOxidBindings = NULL;
550                 }
551                 if (*r->out.pdsaOxidBindings) {
552                         _mem_save_pdsaOxidBindings_1 = NDR_PULL_GET_MEM_CTX(ndr);
553                         NDR_PULL_SET_MEM_CTX(ndr, *r->out.pdsaOxidBindings, 0);
554                         NDR_CHECK(ndr_pull_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.pdsaOxidBindings));
555                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pdsaOxidBindings_1, 0);
556                 }
557                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pdsaOxidBindings_0, LIBNDR_FLAG_REF_ALLOC);
558                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
559                         NDR_PULL_ALLOC(ndr, r->out.ipidRemUnknown);
560                 }
561                 _mem_save_ipidRemUnknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
562                 NDR_PULL_SET_MEM_CTX(ndr, r->out.ipidRemUnknown, LIBNDR_FLAG_REF_ALLOC);
563                 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->out.ipidRemUnknown));
564                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ipidRemUnknown_0, LIBNDR_FLAG_REF_ALLOC);
565                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
566                         NDR_PULL_ALLOC(ndr, r->out.AuthnHint);
567                 }
568                 _mem_save_AuthnHint_0 = NDR_PULL_GET_MEM_CTX(ndr);
569                 NDR_PULL_SET_MEM_CTX(ndr, r->out.AuthnHint, LIBNDR_FLAG_REF_ALLOC);
570                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.AuthnHint));
571                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_AuthnHint_0, LIBNDR_FLAG_REF_ALLOC);
572                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
573                         NDR_PULL_ALLOC(ndr, r->out.ComVersion);
574                 }
575                 _mem_save_ComVersion_0 = NDR_PULL_GET_MEM_CTX(ndr);
576                 NDR_PULL_SET_MEM_CTX(ndr, r->out.ComVersion, LIBNDR_FLAG_REF_ALLOC);
577                 NDR_CHECK(ndr_pull_COMVERSION(ndr, NDR_SCALARS, r->out.ComVersion));
578                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ComVersion_0, LIBNDR_FLAG_REF_ALLOC);
579                 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
580         }
581         return NDR_ERR_SUCCESS;
582 }
583
584 _PUBLIC_ void ndr_print_ResolveOxid2(struct ndr_print *ndr, const char *name, int flags, const struct ResolveOxid2 *r)
585 {
586         uint32_t cntr_arRequestedProtseqs_0;
587         ndr_print_struct(ndr, name, "ResolveOxid2");
588         if (r == NULL) { ndr_print_null(ndr); return; }
589         ndr->depth++;
590         if (flags & NDR_SET_VALUES) {
591                 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
592         }
593         if (flags & NDR_IN) {
594                 ndr_print_struct(ndr, "in", "ResolveOxid2");
595                 ndr->depth++;
596                 ndr_print_hyper(ndr, "pOxid", r->in.pOxid);
597                 ndr_print_uint16(ndr, "cRequestedProtseqs", r->in.cRequestedProtseqs);
598                 ndr->print(ndr, "%s: ARRAY(%d)", "arRequestedProtseqs", (int)r->in.cRequestedProtseqs);
599                 ndr->depth++;
600                 for (cntr_arRequestedProtseqs_0=0;cntr_arRequestedProtseqs_0<r->in.cRequestedProtseqs;cntr_arRequestedProtseqs_0++) {
601                         ndr_print_uint16(ndr, "arRequestedProtseqs", r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]);
602                 }
603                 ndr->depth--;
604                 ndr->depth--;
605         }
606         if (flags & NDR_OUT) {
607                 ndr_print_struct(ndr, "out", "ResolveOxid2");
608                 ndr->depth++;
609                 ndr_print_ptr(ndr, "pdsaOxidBindings", r->out.pdsaOxidBindings);
610                 ndr->depth++;
611                 ndr_print_ptr(ndr, "pdsaOxidBindings", *r->out.pdsaOxidBindings);
612                 ndr->depth++;
613                 if (*r->out.pdsaOxidBindings) {
614                         ndr_print_DUALSTRINGARRAY(ndr, "pdsaOxidBindings", *r->out.pdsaOxidBindings);
615                 }
616                 ndr->depth--;
617                 ndr->depth--;
618                 ndr_print_ptr(ndr, "ipidRemUnknown", r->out.ipidRemUnknown);
619                 ndr->depth++;
620                 ndr_print_GUID(ndr, "ipidRemUnknown", r->out.ipidRemUnknown);
621                 ndr->depth--;
622                 ndr_print_ptr(ndr, "AuthnHint", r->out.AuthnHint);
623                 ndr->depth++;
624                 ndr_print_uint32(ndr, "AuthnHint", *r->out.AuthnHint);
625                 ndr->depth--;
626                 ndr_print_ptr(ndr, "ComVersion", r->out.ComVersion);
627                 ndr->depth++;
628                 ndr_print_COMVERSION(ndr, "ComVersion", r->out.ComVersion);
629                 ndr->depth--;
630                 ndr_print_WERROR(ndr, "result", r->out.result);
631                 ndr->depth--;
632         }
633         ndr->depth--;
634 }
635
636 static enum ndr_err_code ndr_push_ServerAlive2(struct ndr_push *ndr, int flags, const struct ServerAlive2 *r)
637 {
638         NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
639         if (flags & NDR_IN) {
640         }
641         if (flags & NDR_OUT) {
642                 if (r->out.info == NULL) {
643                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
644                 }
645                 NDR_CHECK(ndr_push_COMINFO(ndr, NDR_SCALARS, r->out.info));
646                 if (r->out.dualstring == NULL) {
647                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
648                 }
649                 NDR_CHECK(ndr_push_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.dualstring));
650                 if (r->out.unknown2 == NULL) {
651                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
652                 }
653                 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->out.unknown2));
654                 if (r->out.unknown3 == NULL) {
655                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
656                 }
657                 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->out.unknown3));
658                 if (r->out.unknown4 == NULL) {
659                         return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
660                 }
661                 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->out.unknown4));
662                 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
663         }
664         return NDR_ERR_SUCCESS;
665 }
666
667 static enum ndr_err_code ndr_pull_ServerAlive2(struct ndr_pull *ndr, int flags, struct ServerAlive2 *r)
668 {
669         TALLOC_CTX *_mem_save_info_0;
670         TALLOC_CTX *_mem_save_dualstring_0;
671         TALLOC_CTX *_mem_save_unknown2_0;
672         TALLOC_CTX *_mem_save_unknown3_0;
673         TALLOC_CTX *_mem_save_unknown4_0;
674         NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
675         if (flags & NDR_IN) {
676                 ZERO_STRUCT(r->out);
677
678                 NDR_PULL_ALLOC(ndr, r->out.info);
679                 ZERO_STRUCTP(r->out.info);
680                 NDR_PULL_ALLOC(ndr, r->out.dualstring);
681                 ZERO_STRUCTP(r->out.dualstring);
682                 NDR_PULL_ALLOC(ndr, r->out.unknown2);
683                 ZERO_STRUCTP(r->out.unknown2);
684                 NDR_PULL_ALLOC(ndr, r->out.unknown3);
685                 ZERO_STRUCTP(r->out.unknown3);
686                 NDR_PULL_ALLOC(ndr, r->out.unknown4);
687                 ZERO_STRUCTP(r->out.unknown4);
688         }
689         if (flags & NDR_OUT) {
690                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
691                         NDR_PULL_ALLOC(ndr, r->out.info);
692                 }
693                 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
694                 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
695                 NDR_CHECK(ndr_pull_COMINFO(ndr, NDR_SCALARS, r->out.info));
696                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
697                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
698                         NDR_PULL_ALLOC(ndr, r->out.dualstring);
699                 }
700                 _mem_save_dualstring_0 = NDR_PULL_GET_MEM_CTX(ndr);
701                 NDR_PULL_SET_MEM_CTX(ndr, r->out.dualstring, LIBNDR_FLAG_REF_ALLOC);
702                 NDR_CHECK(ndr_pull_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.dualstring));
703                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dualstring_0, LIBNDR_FLAG_REF_ALLOC);
704                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
705                         NDR_PULL_ALLOC(ndr, r->out.unknown2);
706                 }
707                 _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
708                 NDR_PULL_SET_MEM_CTX(ndr, r->out.unknown2, LIBNDR_FLAG_REF_ALLOC);
709                 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->out.unknown2));
710                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, LIBNDR_FLAG_REF_ALLOC);
711                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
712                         NDR_PULL_ALLOC(ndr, r->out.unknown3);
713                 }
714                 _mem_save_unknown3_0 = NDR_PULL_GET_MEM_CTX(ndr);
715                 NDR_PULL_SET_MEM_CTX(ndr, r->out.unknown3, LIBNDR_FLAG_REF_ALLOC);
716                 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->out.unknown3));
717                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown3_0, LIBNDR_FLAG_REF_ALLOC);
718                 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
719                         NDR_PULL_ALLOC(ndr, r->out.unknown4);
720                 }
721                 _mem_save_unknown4_0 = NDR_PULL_GET_MEM_CTX(ndr);
722                 NDR_PULL_SET_MEM_CTX(ndr, r->out.unknown4, LIBNDR_FLAG_REF_ALLOC);
723                 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->out.unknown4));
724                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown4_0, LIBNDR_FLAG_REF_ALLOC);
725                 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
726         }
727         return NDR_ERR_SUCCESS;
728 }
729
730 _PUBLIC_ void ndr_print_ServerAlive2(struct ndr_print *ndr, const char *name, int flags, const struct ServerAlive2 *r)
731 {
732         ndr_print_struct(ndr, name, "ServerAlive2");
733         if (r == NULL) { ndr_print_null(ndr); return; }
734         ndr->depth++;
735         if (flags & NDR_SET_VALUES) {
736                 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
737         }
738         if (flags & NDR_IN) {
739                 ndr_print_struct(ndr, "in", "ServerAlive2");
740                 ndr->depth++;
741                 ndr->depth--;
742         }
743         if (flags & NDR_OUT) {
744                 ndr_print_struct(ndr, "out", "ServerAlive2");
745                 ndr->depth++;
746                 ndr_print_ptr(ndr, "info", r->out.info);
747                 ndr->depth++;
748                 ndr_print_COMINFO(ndr, "info", r->out.info);
749                 ndr->depth--;
750                 ndr_print_ptr(ndr, "dualstring", r->out.dualstring);
751                 ndr->depth++;
752                 ndr_print_DUALSTRINGARRAY(ndr, "dualstring", r->out.dualstring);
753                 ndr->depth--;
754                 ndr_print_ptr(ndr, "unknown2", r->out.unknown2);
755                 ndr->depth++;
756                 ndr_print_uint8(ndr, "unknown2", *r->out.unknown2);
757                 ndr->depth--;
758                 ndr_print_ptr(ndr, "unknown3", r->out.unknown3);
759                 ndr->depth++;
760                 ndr_print_uint8(ndr, "unknown3", *r->out.unknown3);
761                 ndr->depth--;
762                 ndr_print_ptr(ndr, "unknown4", r->out.unknown4);
763                 ndr->depth++;
764                 ndr_print_uint8(ndr, "unknown4", *r->out.unknown4);
765                 ndr->depth--;
766                 ndr_print_WERROR(ndr, "result", r->out.result);
767                 ndr->depth--;
768         }
769         ndr->depth--;
770 }
771
772 static const struct ndr_interface_call IOXIDResolver_calls[] = {
773         {
774                 "ResolveOxid",
775                 sizeof(struct ResolveOxid),
776                 (ndr_push_flags_fn_t) ndr_push_ResolveOxid,
777                 (ndr_pull_flags_fn_t) ndr_pull_ResolveOxid,
778                 (ndr_print_function_t) ndr_print_ResolveOxid,
779                 { 0, NULL },
780                 { 0, NULL },
781         },
782         {
783                 "SimplePing",
784                 sizeof(struct SimplePing),
785                 (ndr_push_flags_fn_t) ndr_push_SimplePing,
786                 (ndr_pull_flags_fn_t) ndr_pull_SimplePing,
787                 (ndr_print_function_t) ndr_print_SimplePing,
788                 { 0, NULL },
789                 { 0, NULL },
790         },
791         {
792                 "ComplexPing",
793                 sizeof(struct ComplexPing),
794                 (ndr_push_flags_fn_t) ndr_push_ComplexPing,
795                 (ndr_pull_flags_fn_t) ndr_pull_ComplexPing,
796                 (ndr_print_function_t) ndr_print_ComplexPing,
797                 { 0, NULL },
798                 { 0, NULL },
799         },
800         {
801                 "ServerAlive",
802                 sizeof(struct ServerAlive),
803                 (ndr_push_flags_fn_t) ndr_push_ServerAlive,
804                 (ndr_pull_flags_fn_t) ndr_pull_ServerAlive,
805                 (ndr_print_function_t) ndr_print_ServerAlive,
806                 { 0, NULL },
807                 { 0, NULL },
808         },
809         {
810                 "ResolveOxid2",
811                 sizeof(struct ResolveOxid2),
812                 (ndr_push_flags_fn_t) ndr_push_ResolveOxid2,
813                 (ndr_pull_flags_fn_t) ndr_pull_ResolveOxid2,
814                 (ndr_print_function_t) ndr_print_ResolveOxid2,
815                 { 0, NULL },
816                 { 0, NULL },
817         },
818         {
819                 "ServerAlive2",
820                 sizeof(struct ServerAlive2),
821                 (ndr_push_flags_fn_t) ndr_push_ServerAlive2,
822                 (ndr_pull_flags_fn_t) ndr_pull_ServerAlive2,
823                 (ndr_print_function_t) ndr_print_ServerAlive2,
824                 { 0, NULL },
825                 { 0, NULL },
826         },
827         { NULL, 0, NULL, NULL, NULL }
828 };
829
830 static const char * const IOXIDResolver_endpoint_strings[] = {
831         "ncacn_np:[\\pipe\\epmapper]", 
832         "ncacn_ip_tcp:[135]", 
833         "ncalrpc:", 
834 };
835
836 static const struct ndr_interface_string_array IOXIDResolver_endpoints = {
837         .count  = 3,
838         .names  = IOXIDResolver_endpoint_strings
839 };
840
841 static const char * const IOXIDResolver_authservice_strings[] = {
842         "host", 
843 };
844
845 static const struct ndr_interface_string_array IOXIDResolver_authservices = {
846         .count  = 1,
847         .names  = IOXIDResolver_authservice_strings
848 };
849
850
851 const struct ndr_interface_table ndr_table_IOXIDResolver = {
852         .name           = "IOXIDResolver",
853         .syntax_id      = {
854                 {0x99fcfec4,0x5260,0x101b,{0xbb,0xcb},{0x00,0xaa,0x00,0x21,0x34,0x7a}},
855                 NDR_IOXIDRESOLVER_VERSION
856         },
857         .helpstring     = NDR_IOXIDRESOLVER_HELPSTRING,
858         .num_calls      = 6,
859         .calls          = IOXIDResolver_calls,
860         .endpoints      = &IOXIDResolver_endpoints,
861         .authservices   = &IOXIDResolver_authservices
862 };
863