rerun 'make samba3-idl'
[Samba.git] / librpc / gen_ndr / ndr_wkssvc.c
blobafc5494f8606b3dd0f94b2d22d27fbef62609511
1 /* parser auto-generated by pidl */
3 #include "includes.h"
4 #include "../librpc/gen_ndr/ndr_wkssvc.h"
6 #include "librpc/gen_ndr/ndr_srvsvc.h"
7 #include "librpc/gen_ndr/ndr_lsa.h"
8 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo100(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo100 *r)
10 if (ndr_flags & NDR_SCALARS) {
11 NDR_CHECK(ndr_push_align(ndr, 5));
12 NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
13 NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
14 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
15 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
16 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_minor));
17 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
19 if (ndr_flags & NDR_BUFFERS) {
20 if (r->server_name) {
21 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
22 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
23 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
24 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->server_name, ndr_charset_length(r->server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
26 if (r->domain_name) {
27 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
28 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
29 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
30 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain_name, ndr_charset_length(r->domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
33 return NDR_ERR_SUCCESS;
36 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo100(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo100 *r)
38 uint32_t _ptr_server_name;
39 uint32_t size_server_name_1 = 0;
40 uint32_t length_server_name_1 = 0;
41 TALLOC_CTX *_mem_save_server_name_0;
42 uint32_t _ptr_domain_name;
43 uint32_t size_domain_name_1 = 0;
44 uint32_t length_domain_name_1 = 0;
45 TALLOC_CTX *_mem_save_domain_name_0;
46 if (ndr_flags & NDR_SCALARS) {
47 NDR_CHECK(ndr_pull_align(ndr, 5));
48 NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
49 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
50 if (_ptr_server_name) {
51 NDR_PULL_ALLOC(ndr, r->server_name);
52 } else {
53 r->server_name = NULL;
55 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
56 if (_ptr_domain_name) {
57 NDR_PULL_ALLOC(ndr, r->domain_name);
58 } else {
59 r->domain_name = NULL;
61 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_major));
62 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_minor));
63 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
65 if (ndr_flags & NDR_BUFFERS) {
66 if (r->server_name) {
67 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
68 NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
69 NDR_CHECK(ndr_pull_array_size(ndr, &r->server_name));
70 NDR_CHECK(ndr_pull_array_length(ndr, &r->server_name));
71 size_server_name_1 = ndr_get_array_size(ndr, &r->server_name);
72 length_server_name_1 = ndr_get_array_length(ndr, &r->server_name);
73 if (length_server_name_1 > size_server_name_1) {
74 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
76 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
77 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
78 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
80 if (r->domain_name) {
81 _mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
82 NDR_PULL_SET_MEM_CTX(ndr, r->domain_name, 0);
83 NDR_CHECK(ndr_pull_array_size(ndr, &r->domain_name));
84 NDR_CHECK(ndr_pull_array_length(ndr, &r->domain_name));
85 size_domain_name_1 = ndr_get_array_size(ndr, &r->domain_name);
86 length_domain_name_1 = ndr_get_array_length(ndr, &r->domain_name);
87 if (length_domain_name_1 > size_domain_name_1) {
88 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
90 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
91 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
92 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
95 return NDR_ERR_SUCCESS;
98 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo100(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo100 *r)
100 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo100");
101 ndr->depth++;
102 ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
103 ndr_print_ptr(ndr, "server_name", r->server_name);
104 ndr->depth++;
105 if (r->server_name) {
106 ndr_print_string(ndr, "server_name", r->server_name);
108 ndr->depth--;
109 ndr_print_ptr(ndr, "domain_name", r->domain_name);
110 ndr->depth++;
111 if (r->domain_name) {
112 ndr_print_string(ndr, "domain_name", r->domain_name);
114 ndr->depth--;
115 ndr_print_uint32(ndr, "version_major", r->version_major);
116 ndr_print_uint32(ndr, "version_minor", r->version_minor);
117 ndr->depth--;
120 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo101(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo101 *r)
122 if (ndr_flags & NDR_SCALARS) {
123 NDR_CHECK(ndr_push_align(ndr, 5));
124 NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
125 NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
126 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
127 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
128 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_minor));
129 NDR_CHECK(ndr_push_unique_ptr(ndr, r->lan_root));
130 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
132 if (ndr_flags & NDR_BUFFERS) {
133 if (r->server_name) {
134 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
135 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
136 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
137 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->server_name, ndr_charset_length(r->server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
139 if (r->domain_name) {
140 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
141 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
142 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
143 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain_name, ndr_charset_length(r->domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
145 if (r->lan_root) {
146 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->lan_root, CH_UTF16)));
147 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
148 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->lan_root, CH_UTF16)));
149 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->lan_root, ndr_charset_length(r->lan_root, CH_UTF16), sizeof(uint16_t), CH_UTF16));
152 return NDR_ERR_SUCCESS;
155 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo101(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo101 *r)
157 uint32_t _ptr_server_name;
158 uint32_t size_server_name_1 = 0;
159 uint32_t length_server_name_1 = 0;
160 TALLOC_CTX *_mem_save_server_name_0;
161 uint32_t _ptr_domain_name;
162 uint32_t size_domain_name_1 = 0;
163 uint32_t length_domain_name_1 = 0;
164 TALLOC_CTX *_mem_save_domain_name_0;
165 uint32_t _ptr_lan_root;
166 uint32_t size_lan_root_1 = 0;
167 uint32_t length_lan_root_1 = 0;
168 TALLOC_CTX *_mem_save_lan_root_0;
169 if (ndr_flags & NDR_SCALARS) {
170 NDR_CHECK(ndr_pull_align(ndr, 5));
171 NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
172 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
173 if (_ptr_server_name) {
174 NDR_PULL_ALLOC(ndr, r->server_name);
175 } else {
176 r->server_name = NULL;
178 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
179 if (_ptr_domain_name) {
180 NDR_PULL_ALLOC(ndr, r->domain_name);
181 } else {
182 r->domain_name = NULL;
184 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_major));
185 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_minor));
186 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lan_root));
187 if (_ptr_lan_root) {
188 NDR_PULL_ALLOC(ndr, r->lan_root);
189 } else {
190 r->lan_root = NULL;
192 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
194 if (ndr_flags & NDR_BUFFERS) {
195 if (r->server_name) {
196 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
197 NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
198 NDR_CHECK(ndr_pull_array_size(ndr, &r->server_name));
199 NDR_CHECK(ndr_pull_array_length(ndr, &r->server_name));
200 size_server_name_1 = ndr_get_array_size(ndr, &r->server_name);
201 length_server_name_1 = ndr_get_array_length(ndr, &r->server_name);
202 if (length_server_name_1 > size_server_name_1) {
203 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
205 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
206 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
207 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
209 if (r->domain_name) {
210 _mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
211 NDR_PULL_SET_MEM_CTX(ndr, r->domain_name, 0);
212 NDR_CHECK(ndr_pull_array_size(ndr, &r->domain_name));
213 NDR_CHECK(ndr_pull_array_length(ndr, &r->domain_name));
214 size_domain_name_1 = ndr_get_array_size(ndr, &r->domain_name);
215 length_domain_name_1 = ndr_get_array_length(ndr, &r->domain_name);
216 if (length_domain_name_1 > size_domain_name_1) {
217 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
219 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
220 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
221 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
223 if (r->lan_root) {
224 _mem_save_lan_root_0 = NDR_PULL_GET_MEM_CTX(ndr);
225 NDR_PULL_SET_MEM_CTX(ndr, r->lan_root, 0);
226 NDR_CHECK(ndr_pull_array_size(ndr, &r->lan_root));
227 NDR_CHECK(ndr_pull_array_length(ndr, &r->lan_root));
228 size_lan_root_1 = ndr_get_array_size(ndr, &r->lan_root);
229 length_lan_root_1 = ndr_get_array_length(ndr, &r->lan_root);
230 if (length_lan_root_1 > size_lan_root_1) {
231 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_lan_root_1, length_lan_root_1);
233 NDR_CHECK(ndr_check_string_terminator(ndr, length_lan_root_1, sizeof(uint16_t)));
234 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->lan_root, length_lan_root_1, sizeof(uint16_t), CH_UTF16));
235 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lan_root_0, 0);
238 return NDR_ERR_SUCCESS;
241 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo101(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo101 *r)
243 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo101");
244 ndr->depth++;
245 ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
246 ndr_print_ptr(ndr, "server_name", r->server_name);
247 ndr->depth++;
248 if (r->server_name) {
249 ndr_print_string(ndr, "server_name", r->server_name);
251 ndr->depth--;
252 ndr_print_ptr(ndr, "domain_name", r->domain_name);
253 ndr->depth++;
254 if (r->domain_name) {
255 ndr_print_string(ndr, "domain_name", r->domain_name);
257 ndr->depth--;
258 ndr_print_uint32(ndr, "version_major", r->version_major);
259 ndr_print_uint32(ndr, "version_minor", r->version_minor);
260 ndr_print_ptr(ndr, "lan_root", r->lan_root);
261 ndr->depth++;
262 if (r->lan_root) {
263 ndr_print_string(ndr, "lan_root", r->lan_root);
265 ndr->depth--;
266 ndr->depth--;
269 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo102(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo102 *r)
271 if (ndr_flags & NDR_SCALARS) {
272 NDR_CHECK(ndr_push_align(ndr, 5));
273 NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
274 NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
275 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
276 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
277 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_minor));
278 NDR_CHECK(ndr_push_unique_ptr(ndr, r->lan_root));
279 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->logged_on_users));
280 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
282 if (ndr_flags & NDR_BUFFERS) {
283 if (r->server_name) {
284 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
285 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
286 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
287 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->server_name, ndr_charset_length(r->server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
289 if (r->domain_name) {
290 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
291 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
292 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
293 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain_name, ndr_charset_length(r->domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
295 if (r->lan_root) {
296 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->lan_root, CH_UTF16)));
297 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
298 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->lan_root, CH_UTF16)));
299 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->lan_root, ndr_charset_length(r->lan_root, CH_UTF16), sizeof(uint16_t), CH_UTF16));
302 return NDR_ERR_SUCCESS;
305 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo102(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo102 *r)
307 uint32_t _ptr_server_name;
308 uint32_t size_server_name_1 = 0;
309 uint32_t length_server_name_1 = 0;
310 TALLOC_CTX *_mem_save_server_name_0;
311 uint32_t _ptr_domain_name;
312 uint32_t size_domain_name_1 = 0;
313 uint32_t length_domain_name_1 = 0;
314 TALLOC_CTX *_mem_save_domain_name_0;
315 uint32_t _ptr_lan_root;
316 uint32_t size_lan_root_1 = 0;
317 uint32_t length_lan_root_1 = 0;
318 TALLOC_CTX *_mem_save_lan_root_0;
319 if (ndr_flags & NDR_SCALARS) {
320 NDR_CHECK(ndr_pull_align(ndr, 5));
321 NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
322 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
323 if (_ptr_server_name) {
324 NDR_PULL_ALLOC(ndr, r->server_name);
325 } else {
326 r->server_name = NULL;
328 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
329 if (_ptr_domain_name) {
330 NDR_PULL_ALLOC(ndr, r->domain_name);
331 } else {
332 r->domain_name = NULL;
334 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_major));
335 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_minor));
336 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_lan_root));
337 if (_ptr_lan_root) {
338 NDR_PULL_ALLOC(ndr, r->lan_root);
339 } else {
340 r->lan_root = NULL;
342 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->logged_on_users));
343 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
345 if (ndr_flags & NDR_BUFFERS) {
346 if (r->server_name) {
347 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
348 NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
349 NDR_CHECK(ndr_pull_array_size(ndr, &r->server_name));
350 NDR_CHECK(ndr_pull_array_length(ndr, &r->server_name));
351 size_server_name_1 = ndr_get_array_size(ndr, &r->server_name);
352 length_server_name_1 = ndr_get_array_length(ndr, &r->server_name);
353 if (length_server_name_1 > size_server_name_1) {
354 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
356 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
357 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
358 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
360 if (r->domain_name) {
361 _mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
362 NDR_PULL_SET_MEM_CTX(ndr, r->domain_name, 0);
363 NDR_CHECK(ndr_pull_array_size(ndr, &r->domain_name));
364 NDR_CHECK(ndr_pull_array_length(ndr, &r->domain_name));
365 size_domain_name_1 = ndr_get_array_size(ndr, &r->domain_name);
366 length_domain_name_1 = ndr_get_array_length(ndr, &r->domain_name);
367 if (length_domain_name_1 > size_domain_name_1) {
368 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
370 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
371 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
372 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
374 if (r->lan_root) {
375 _mem_save_lan_root_0 = NDR_PULL_GET_MEM_CTX(ndr);
376 NDR_PULL_SET_MEM_CTX(ndr, r->lan_root, 0);
377 NDR_CHECK(ndr_pull_array_size(ndr, &r->lan_root));
378 NDR_CHECK(ndr_pull_array_length(ndr, &r->lan_root));
379 size_lan_root_1 = ndr_get_array_size(ndr, &r->lan_root);
380 length_lan_root_1 = ndr_get_array_length(ndr, &r->lan_root);
381 if (length_lan_root_1 > size_lan_root_1) {
382 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_lan_root_1, length_lan_root_1);
384 NDR_CHECK(ndr_check_string_terminator(ndr, length_lan_root_1, sizeof(uint16_t)));
385 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->lan_root, length_lan_root_1, sizeof(uint16_t), CH_UTF16));
386 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_lan_root_0, 0);
389 return NDR_ERR_SUCCESS;
392 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo102(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo102 *r)
394 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo102");
395 ndr->depth++;
396 ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
397 ndr_print_ptr(ndr, "server_name", r->server_name);
398 ndr->depth++;
399 if (r->server_name) {
400 ndr_print_string(ndr, "server_name", r->server_name);
402 ndr->depth--;
403 ndr_print_ptr(ndr, "domain_name", r->domain_name);
404 ndr->depth++;
405 if (r->domain_name) {
406 ndr_print_string(ndr, "domain_name", r->domain_name);
408 ndr->depth--;
409 ndr_print_uint32(ndr, "version_major", r->version_major);
410 ndr_print_uint32(ndr, "version_minor", r->version_minor);
411 ndr_print_ptr(ndr, "lan_root", r->lan_root);
412 ndr->depth++;
413 if (r->lan_root) {
414 ndr_print_string(ndr, "lan_root", r->lan_root);
416 ndr->depth--;
417 ndr_print_uint32(ndr, "logged_on_users", r->logged_on_users);
418 ndr->depth--;
421 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo502(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo502 *r)
423 if (ndr_flags & NDR_SCALARS) {
424 NDR_CHECK(ndr_push_align(ndr, 4));
425 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->char_wait));
426 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->collection_time));
427 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maximum_collection_count));
428 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->keep_connection));
429 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_commands));
430 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->session_timeout));
431 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size_char_buf));
432 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_threads));
433 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_quota));
434 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_increment));
435 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_maximum));
436 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pipe_increment));
437 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pipe_maximum));
438 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->cache_file_timeout));
439 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->dormant_file_limit));
440 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->read_ahead_throughput));
441 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_mailslot_buffers));
442 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_srv_announce_buffers));
443 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_illegal_dgram_events));
444 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->dgram_event_reset_freq));
445 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->log_election_packets));
446 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_opportunistic_locking));
447 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_unlock_behind));
448 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_close_behind));
449 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_named_pipes));
450 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_lock_read_unlock));
451 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->utilize_nt_caching));
452 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_raw_read));
453 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_raw_write));
454 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_write_raw_data));
455 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_encryption));
456 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_files_deny_write));
457 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_read_only_files));
458 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->force_core_create_mode));
459 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_512_byte_max_transfer));
460 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
462 if (ndr_flags & NDR_BUFFERS) {
464 return NDR_ERR_SUCCESS;
467 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo502(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo502 *r)
469 if (ndr_flags & NDR_SCALARS) {
470 NDR_CHECK(ndr_pull_align(ndr, 4));
471 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->char_wait));
472 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->collection_time));
473 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maximum_collection_count));
474 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->keep_connection));
475 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_commands));
476 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->session_timeout));
477 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size_char_buf));
478 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_threads));
479 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_quota));
480 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_increment));
481 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_maximum));
482 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pipe_increment));
483 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pipe_maximum));
484 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->cache_file_timeout));
485 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->dormant_file_limit));
486 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->read_ahead_throughput));
487 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_mailslot_buffers));
488 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_srv_announce_buffers));
489 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_illegal_dgram_events));
490 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->dgram_event_reset_freq));
491 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->log_election_packets));
492 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_opportunistic_locking));
493 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_unlock_behind));
494 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_close_behind));
495 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_named_pipes));
496 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_lock_read_unlock));
497 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->utilize_nt_caching));
498 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_raw_read));
499 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_raw_write));
500 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_write_raw_data));
501 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_encryption));
502 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_files_deny_write));
503 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_read_only_files));
504 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->force_core_create_mode));
505 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_512_byte_max_transfer));
506 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
508 if (ndr_flags & NDR_BUFFERS) {
510 return NDR_ERR_SUCCESS;
513 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo502(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo502 *r)
515 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo502");
516 ndr->depth++;
517 ndr_print_uint32(ndr, "char_wait", r->char_wait);
518 ndr_print_uint32(ndr, "collection_time", r->collection_time);
519 ndr_print_uint32(ndr, "maximum_collection_count", r->maximum_collection_count);
520 ndr_print_uint32(ndr, "keep_connection", r->keep_connection);
521 ndr_print_uint32(ndr, "max_commands", r->max_commands);
522 ndr_print_uint32(ndr, "session_timeout", r->session_timeout);
523 ndr_print_uint32(ndr, "size_char_buf", r->size_char_buf);
524 ndr_print_uint32(ndr, "max_threads", r->max_threads);
525 ndr_print_uint32(ndr, "lock_quota", r->lock_quota);
526 ndr_print_uint32(ndr, "lock_increment", r->lock_increment);
527 ndr_print_uint32(ndr, "lock_maximum", r->lock_maximum);
528 ndr_print_uint32(ndr, "pipe_increment", r->pipe_increment);
529 ndr_print_uint32(ndr, "pipe_maximum", r->pipe_maximum);
530 ndr_print_uint32(ndr, "cache_file_timeout", r->cache_file_timeout);
531 ndr_print_uint32(ndr, "dormant_file_limit", r->dormant_file_limit);
532 ndr_print_uint32(ndr, "read_ahead_throughput", r->read_ahead_throughput);
533 ndr_print_uint32(ndr, "num_mailslot_buffers", r->num_mailslot_buffers);
534 ndr_print_uint32(ndr, "num_srv_announce_buffers", r->num_srv_announce_buffers);
535 ndr_print_uint32(ndr, "max_illegal_dgram_events", r->max_illegal_dgram_events);
536 ndr_print_uint32(ndr, "dgram_event_reset_freq", r->dgram_event_reset_freq);
537 ndr_print_uint32(ndr, "log_election_packets", r->log_election_packets);
538 ndr_print_uint32(ndr, "use_opportunistic_locking", r->use_opportunistic_locking);
539 ndr_print_uint32(ndr, "use_unlock_behind", r->use_unlock_behind);
540 ndr_print_uint32(ndr, "use_close_behind", r->use_close_behind);
541 ndr_print_uint32(ndr, "buf_named_pipes", r->buf_named_pipes);
542 ndr_print_uint32(ndr, "use_lock_read_unlock", r->use_lock_read_unlock);
543 ndr_print_uint32(ndr, "utilize_nt_caching", r->utilize_nt_caching);
544 ndr_print_uint32(ndr, "use_raw_read", r->use_raw_read);
545 ndr_print_uint32(ndr, "use_raw_write", r->use_raw_write);
546 ndr_print_uint32(ndr, "use_write_raw_data", r->use_write_raw_data);
547 ndr_print_uint32(ndr, "use_encryption", r->use_encryption);
548 ndr_print_uint32(ndr, "buf_files_deny_write", r->buf_files_deny_write);
549 ndr_print_uint32(ndr, "buf_read_only_files", r->buf_read_only_files);
550 ndr_print_uint32(ndr, "force_core_create_mode", r->force_core_create_mode);
551 ndr_print_uint32(ndr, "use_512_byte_max_transfer", r->use_512_byte_max_transfer);
552 ndr->depth--;
555 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1010(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1010 *r)
557 if (ndr_flags & NDR_SCALARS) {
558 NDR_CHECK(ndr_push_align(ndr, 4));
559 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->char_wait));
560 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
562 if (ndr_flags & NDR_BUFFERS) {
564 return NDR_ERR_SUCCESS;
567 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1010(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1010 *r)
569 if (ndr_flags & NDR_SCALARS) {
570 NDR_CHECK(ndr_pull_align(ndr, 4));
571 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->char_wait));
572 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
574 if (ndr_flags & NDR_BUFFERS) {
576 return NDR_ERR_SUCCESS;
579 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1010(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1010 *r)
581 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1010");
582 ndr->depth++;
583 ndr_print_uint32(ndr, "char_wait", r->char_wait);
584 ndr->depth--;
587 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1011(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1011 *r)
589 if (ndr_flags & NDR_SCALARS) {
590 NDR_CHECK(ndr_push_align(ndr, 4));
591 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->collection_time));
592 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
594 if (ndr_flags & NDR_BUFFERS) {
596 return NDR_ERR_SUCCESS;
599 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1011(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1011 *r)
601 if (ndr_flags & NDR_SCALARS) {
602 NDR_CHECK(ndr_pull_align(ndr, 4));
603 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->collection_time));
604 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
606 if (ndr_flags & NDR_BUFFERS) {
608 return NDR_ERR_SUCCESS;
611 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1011(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1011 *r)
613 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1011");
614 ndr->depth++;
615 ndr_print_uint32(ndr, "collection_time", r->collection_time);
616 ndr->depth--;
619 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1012(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1012 *r)
621 if (ndr_flags & NDR_SCALARS) {
622 NDR_CHECK(ndr_push_align(ndr, 4));
623 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maximum_collection_count));
624 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
626 if (ndr_flags & NDR_BUFFERS) {
628 return NDR_ERR_SUCCESS;
631 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1012(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1012 *r)
633 if (ndr_flags & NDR_SCALARS) {
634 NDR_CHECK(ndr_pull_align(ndr, 4));
635 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maximum_collection_count));
636 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
638 if (ndr_flags & NDR_BUFFERS) {
640 return NDR_ERR_SUCCESS;
643 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1012(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1012 *r)
645 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1012");
646 ndr->depth++;
647 ndr_print_uint32(ndr, "maximum_collection_count", r->maximum_collection_count);
648 ndr->depth--;
651 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1013(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1013 *r)
653 if (ndr_flags & NDR_SCALARS) {
654 NDR_CHECK(ndr_push_align(ndr, 4));
655 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->keep_connection));
656 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
658 if (ndr_flags & NDR_BUFFERS) {
660 return NDR_ERR_SUCCESS;
663 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1013(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1013 *r)
665 if (ndr_flags & NDR_SCALARS) {
666 NDR_CHECK(ndr_pull_align(ndr, 4));
667 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->keep_connection));
668 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
670 if (ndr_flags & NDR_BUFFERS) {
672 return NDR_ERR_SUCCESS;
675 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1013(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1013 *r)
677 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1013");
678 ndr->depth++;
679 ndr_print_uint32(ndr, "keep_connection", r->keep_connection);
680 ndr->depth--;
683 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1018(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1018 *r)
685 if (ndr_flags & NDR_SCALARS) {
686 NDR_CHECK(ndr_push_align(ndr, 4));
687 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->session_timeout));
688 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
690 if (ndr_flags & NDR_BUFFERS) {
692 return NDR_ERR_SUCCESS;
695 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1018(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1018 *r)
697 if (ndr_flags & NDR_SCALARS) {
698 NDR_CHECK(ndr_pull_align(ndr, 4));
699 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->session_timeout));
700 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
702 if (ndr_flags & NDR_BUFFERS) {
704 return NDR_ERR_SUCCESS;
707 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1018(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1018 *r)
709 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1018");
710 ndr->depth++;
711 ndr_print_uint32(ndr, "session_timeout", r->session_timeout);
712 ndr->depth--;
715 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1023(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1023 *r)
717 if (ndr_flags & NDR_SCALARS) {
718 NDR_CHECK(ndr_push_align(ndr, 4));
719 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size_char_buf));
720 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
722 if (ndr_flags & NDR_BUFFERS) {
724 return NDR_ERR_SUCCESS;
727 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1023(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1023 *r)
729 if (ndr_flags & NDR_SCALARS) {
730 NDR_CHECK(ndr_pull_align(ndr, 4));
731 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size_char_buf));
732 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
734 if (ndr_flags & NDR_BUFFERS) {
736 return NDR_ERR_SUCCESS;
739 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1023(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1023 *r)
741 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1023");
742 ndr->depth++;
743 ndr_print_uint32(ndr, "size_char_buf", r->size_char_buf);
744 ndr->depth--;
747 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1027(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1027 *r)
749 if (ndr_flags & NDR_SCALARS) {
750 NDR_CHECK(ndr_push_align(ndr, 4));
751 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->errorlog_sz));
752 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
754 if (ndr_flags & NDR_BUFFERS) {
756 return NDR_ERR_SUCCESS;
759 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1027(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1027 *r)
761 if (ndr_flags & NDR_SCALARS) {
762 NDR_CHECK(ndr_pull_align(ndr, 4));
763 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->errorlog_sz));
764 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
766 if (ndr_flags & NDR_BUFFERS) {
768 return NDR_ERR_SUCCESS;
771 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1027(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1027 *r)
773 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1027");
774 ndr->depth++;
775 ndr_print_uint32(ndr, "errorlog_sz", r->errorlog_sz);
776 ndr->depth--;
779 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1028(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1028 *r)
781 if (ndr_flags & NDR_SCALARS) {
782 NDR_CHECK(ndr_push_align(ndr, 4));
783 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->print_buf_time));
784 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
786 if (ndr_flags & NDR_BUFFERS) {
788 return NDR_ERR_SUCCESS;
791 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1028(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1028 *r)
793 if (ndr_flags & NDR_SCALARS) {
794 NDR_CHECK(ndr_pull_align(ndr, 4));
795 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->print_buf_time));
796 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
798 if (ndr_flags & NDR_BUFFERS) {
800 return NDR_ERR_SUCCESS;
803 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1028(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1028 *r)
805 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1028");
806 ndr->depth++;
807 ndr_print_uint32(ndr, "print_buf_time", r->print_buf_time);
808 ndr->depth--;
811 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1032(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1032 *r)
813 if (ndr_flags & NDR_SCALARS) {
814 NDR_CHECK(ndr_push_align(ndr, 4));
815 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->wrk_heuristics));
816 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
818 if (ndr_flags & NDR_BUFFERS) {
820 return NDR_ERR_SUCCESS;
823 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1032(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1032 *r)
825 if (ndr_flags & NDR_SCALARS) {
826 NDR_CHECK(ndr_pull_align(ndr, 4));
827 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->wrk_heuristics));
828 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
830 if (ndr_flags & NDR_BUFFERS) {
832 return NDR_ERR_SUCCESS;
835 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1032(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1032 *r)
837 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1032");
838 ndr->depth++;
839 ndr_print_uint32(ndr, "wrk_heuristics", r->wrk_heuristics);
840 ndr->depth--;
843 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1033(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1033 *r)
845 if (ndr_flags & NDR_SCALARS) {
846 NDR_CHECK(ndr_push_align(ndr, 4));
847 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_threads));
848 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
850 if (ndr_flags & NDR_BUFFERS) {
852 return NDR_ERR_SUCCESS;
855 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1033(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1033 *r)
857 if (ndr_flags & NDR_SCALARS) {
858 NDR_CHECK(ndr_pull_align(ndr, 4));
859 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_threads));
860 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
862 if (ndr_flags & NDR_BUFFERS) {
864 return NDR_ERR_SUCCESS;
867 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1033(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1033 *r)
869 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1033");
870 ndr->depth++;
871 ndr_print_uint32(ndr, "max_threads", r->max_threads);
872 ndr->depth--;
875 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1041(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1041 *r)
877 if (ndr_flags & NDR_SCALARS) {
878 NDR_CHECK(ndr_push_align(ndr, 4));
879 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_quota));
880 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
882 if (ndr_flags & NDR_BUFFERS) {
884 return NDR_ERR_SUCCESS;
887 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1041(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1041 *r)
889 if (ndr_flags & NDR_SCALARS) {
890 NDR_CHECK(ndr_pull_align(ndr, 4));
891 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_quota));
892 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
894 if (ndr_flags & NDR_BUFFERS) {
896 return NDR_ERR_SUCCESS;
899 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1041(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1041 *r)
901 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1041");
902 ndr->depth++;
903 ndr_print_uint32(ndr, "lock_quota", r->lock_quota);
904 ndr->depth--;
907 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1042(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1042 *r)
909 if (ndr_flags & NDR_SCALARS) {
910 NDR_CHECK(ndr_push_align(ndr, 4));
911 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_increment));
912 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
914 if (ndr_flags & NDR_BUFFERS) {
916 return NDR_ERR_SUCCESS;
919 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1042(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1042 *r)
921 if (ndr_flags & NDR_SCALARS) {
922 NDR_CHECK(ndr_pull_align(ndr, 4));
923 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_increment));
924 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
926 if (ndr_flags & NDR_BUFFERS) {
928 return NDR_ERR_SUCCESS;
931 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1042(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1042 *r)
933 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1042");
934 ndr->depth++;
935 ndr_print_uint32(ndr, "lock_increment", r->lock_increment);
936 ndr->depth--;
939 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1043(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1043 *r)
941 if (ndr_flags & NDR_SCALARS) {
942 NDR_CHECK(ndr_push_align(ndr, 4));
943 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lock_maximum));
944 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
946 if (ndr_flags & NDR_BUFFERS) {
948 return NDR_ERR_SUCCESS;
951 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1043(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1043 *r)
953 if (ndr_flags & NDR_SCALARS) {
954 NDR_CHECK(ndr_pull_align(ndr, 4));
955 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lock_maximum));
956 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
958 if (ndr_flags & NDR_BUFFERS) {
960 return NDR_ERR_SUCCESS;
963 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1043(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1043 *r)
965 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1043");
966 ndr->depth++;
967 ndr_print_uint32(ndr, "lock_maximum", r->lock_maximum);
968 ndr->depth--;
971 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1044(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1044 *r)
973 if (ndr_flags & NDR_SCALARS) {
974 NDR_CHECK(ndr_push_align(ndr, 4));
975 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pipe_increment));
976 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
978 if (ndr_flags & NDR_BUFFERS) {
980 return NDR_ERR_SUCCESS;
983 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1044(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1044 *r)
985 if (ndr_flags & NDR_SCALARS) {
986 NDR_CHECK(ndr_pull_align(ndr, 4));
987 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pipe_increment));
988 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
990 if (ndr_flags & NDR_BUFFERS) {
992 return NDR_ERR_SUCCESS;
995 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1044(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1044 *r)
997 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1044");
998 ndr->depth++;
999 ndr_print_uint32(ndr, "pipe_increment", r->pipe_increment);
1000 ndr->depth--;
1003 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1045(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1045 *r)
1005 if (ndr_flags & NDR_SCALARS) {
1006 NDR_CHECK(ndr_push_align(ndr, 4));
1007 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pipe_maximum));
1008 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1010 if (ndr_flags & NDR_BUFFERS) {
1012 return NDR_ERR_SUCCESS;
1015 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1045(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1045 *r)
1017 if (ndr_flags & NDR_SCALARS) {
1018 NDR_CHECK(ndr_pull_align(ndr, 4));
1019 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pipe_maximum));
1020 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1022 if (ndr_flags & NDR_BUFFERS) {
1024 return NDR_ERR_SUCCESS;
1027 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1045(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1045 *r)
1029 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1045");
1030 ndr->depth++;
1031 ndr_print_uint32(ndr, "pipe_maximum", r->pipe_maximum);
1032 ndr->depth--;
1035 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1046(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1046 *r)
1037 if (ndr_flags & NDR_SCALARS) {
1038 NDR_CHECK(ndr_push_align(ndr, 4));
1039 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->dormant_file_limit));
1040 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1042 if (ndr_flags & NDR_BUFFERS) {
1044 return NDR_ERR_SUCCESS;
1047 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1046(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1046 *r)
1049 if (ndr_flags & NDR_SCALARS) {
1050 NDR_CHECK(ndr_pull_align(ndr, 4));
1051 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->dormant_file_limit));
1052 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1054 if (ndr_flags & NDR_BUFFERS) {
1056 return NDR_ERR_SUCCESS;
1059 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1046(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1046 *r)
1061 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1046");
1062 ndr->depth++;
1063 ndr_print_uint32(ndr, "dormant_file_limit", r->dormant_file_limit);
1064 ndr->depth--;
1067 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1047(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1047 *r)
1069 if (ndr_flags & NDR_SCALARS) {
1070 NDR_CHECK(ndr_push_align(ndr, 4));
1071 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->cache_file_timeout));
1072 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1074 if (ndr_flags & NDR_BUFFERS) {
1076 return NDR_ERR_SUCCESS;
1079 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1047(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1047 *r)
1081 if (ndr_flags & NDR_SCALARS) {
1082 NDR_CHECK(ndr_pull_align(ndr, 4));
1083 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->cache_file_timeout));
1084 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1086 if (ndr_flags & NDR_BUFFERS) {
1088 return NDR_ERR_SUCCESS;
1091 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1047(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1047 *r)
1093 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1047");
1094 ndr->depth++;
1095 ndr_print_uint32(ndr, "cache_file_timeout", r->cache_file_timeout);
1096 ndr->depth--;
1099 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1048(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1048 *r)
1101 if (ndr_flags & NDR_SCALARS) {
1102 NDR_CHECK(ndr_push_align(ndr, 4));
1103 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_opportunistic_locking));
1104 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1106 if (ndr_flags & NDR_BUFFERS) {
1108 return NDR_ERR_SUCCESS;
1111 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1048(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1048 *r)
1113 if (ndr_flags & NDR_SCALARS) {
1114 NDR_CHECK(ndr_pull_align(ndr, 4));
1115 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_opportunistic_locking));
1116 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1118 if (ndr_flags & NDR_BUFFERS) {
1120 return NDR_ERR_SUCCESS;
1123 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1048(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1048 *r)
1125 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1048");
1126 ndr->depth++;
1127 ndr_print_uint32(ndr, "use_opportunistic_locking", r->use_opportunistic_locking);
1128 ndr->depth--;
1131 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1049(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1049 *r)
1133 if (ndr_flags & NDR_SCALARS) {
1134 NDR_CHECK(ndr_push_align(ndr, 4));
1135 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_unlock_behind));
1136 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1138 if (ndr_flags & NDR_BUFFERS) {
1140 return NDR_ERR_SUCCESS;
1143 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1049(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1049 *r)
1145 if (ndr_flags & NDR_SCALARS) {
1146 NDR_CHECK(ndr_pull_align(ndr, 4));
1147 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_unlock_behind));
1148 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1150 if (ndr_flags & NDR_BUFFERS) {
1152 return NDR_ERR_SUCCESS;
1155 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1049(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1049 *r)
1157 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1049");
1158 ndr->depth++;
1159 ndr_print_uint32(ndr, "use_unlock_behind", r->use_unlock_behind);
1160 ndr->depth--;
1163 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1050(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1050 *r)
1165 if (ndr_flags & NDR_SCALARS) {
1166 NDR_CHECK(ndr_push_align(ndr, 4));
1167 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_close_behind));
1168 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1170 if (ndr_flags & NDR_BUFFERS) {
1172 return NDR_ERR_SUCCESS;
1175 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1050(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1050 *r)
1177 if (ndr_flags & NDR_SCALARS) {
1178 NDR_CHECK(ndr_pull_align(ndr, 4));
1179 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_close_behind));
1180 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1182 if (ndr_flags & NDR_BUFFERS) {
1184 return NDR_ERR_SUCCESS;
1187 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1050(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1050 *r)
1189 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1050");
1190 ndr->depth++;
1191 ndr_print_uint32(ndr, "use_close_behind", r->use_close_behind);
1192 ndr->depth--;
1195 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1051(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1051 *r)
1197 if (ndr_flags & NDR_SCALARS) {
1198 NDR_CHECK(ndr_push_align(ndr, 4));
1199 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_named_pipes));
1200 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1202 if (ndr_flags & NDR_BUFFERS) {
1204 return NDR_ERR_SUCCESS;
1207 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1051(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1051 *r)
1209 if (ndr_flags & NDR_SCALARS) {
1210 NDR_CHECK(ndr_pull_align(ndr, 4));
1211 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_named_pipes));
1212 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1214 if (ndr_flags & NDR_BUFFERS) {
1216 return NDR_ERR_SUCCESS;
1219 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1051(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1051 *r)
1221 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1051");
1222 ndr->depth++;
1223 ndr_print_uint32(ndr, "buf_named_pipes", r->buf_named_pipes);
1224 ndr->depth--;
1227 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1052(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1052 *r)
1229 if (ndr_flags & NDR_SCALARS) {
1230 NDR_CHECK(ndr_push_align(ndr, 4));
1231 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_lock_read_unlock));
1232 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1234 if (ndr_flags & NDR_BUFFERS) {
1236 return NDR_ERR_SUCCESS;
1239 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1052(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1052 *r)
1241 if (ndr_flags & NDR_SCALARS) {
1242 NDR_CHECK(ndr_pull_align(ndr, 4));
1243 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_lock_read_unlock));
1244 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1246 if (ndr_flags & NDR_BUFFERS) {
1248 return NDR_ERR_SUCCESS;
1251 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1052(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1052 *r)
1253 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1052");
1254 ndr->depth++;
1255 ndr_print_uint32(ndr, "use_lock_read_unlock", r->use_lock_read_unlock);
1256 ndr->depth--;
1259 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1053(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1053 *r)
1261 if (ndr_flags & NDR_SCALARS) {
1262 NDR_CHECK(ndr_push_align(ndr, 4));
1263 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->utilize_nt_caching));
1264 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1266 if (ndr_flags & NDR_BUFFERS) {
1268 return NDR_ERR_SUCCESS;
1271 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1053(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1053 *r)
1273 if (ndr_flags & NDR_SCALARS) {
1274 NDR_CHECK(ndr_pull_align(ndr, 4));
1275 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->utilize_nt_caching));
1276 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1278 if (ndr_flags & NDR_BUFFERS) {
1280 return NDR_ERR_SUCCESS;
1283 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1053(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1053 *r)
1285 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1053");
1286 ndr->depth++;
1287 ndr_print_uint32(ndr, "utilize_nt_caching", r->utilize_nt_caching);
1288 ndr->depth--;
1291 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1054(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1054 *r)
1293 if (ndr_flags & NDR_SCALARS) {
1294 NDR_CHECK(ndr_push_align(ndr, 4));
1295 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_raw_read));
1296 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1298 if (ndr_flags & NDR_BUFFERS) {
1300 return NDR_ERR_SUCCESS;
1303 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1054(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1054 *r)
1305 if (ndr_flags & NDR_SCALARS) {
1306 NDR_CHECK(ndr_pull_align(ndr, 4));
1307 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_raw_read));
1308 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1310 if (ndr_flags & NDR_BUFFERS) {
1312 return NDR_ERR_SUCCESS;
1315 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1054(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1054 *r)
1317 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1054");
1318 ndr->depth++;
1319 ndr_print_uint32(ndr, "use_raw_read", r->use_raw_read);
1320 ndr->depth--;
1323 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1055(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1055 *r)
1325 if (ndr_flags & NDR_SCALARS) {
1326 NDR_CHECK(ndr_push_align(ndr, 4));
1327 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_raw_write));
1328 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1330 if (ndr_flags & NDR_BUFFERS) {
1332 return NDR_ERR_SUCCESS;
1335 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1055(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1055 *r)
1337 if (ndr_flags & NDR_SCALARS) {
1338 NDR_CHECK(ndr_pull_align(ndr, 4));
1339 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_raw_write));
1340 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1342 if (ndr_flags & NDR_BUFFERS) {
1344 return NDR_ERR_SUCCESS;
1347 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1055(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1055 *r)
1349 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1055");
1350 ndr->depth++;
1351 ndr_print_uint32(ndr, "use_raw_write", r->use_raw_write);
1352 ndr->depth--;
1355 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1056(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1056 *r)
1357 if (ndr_flags & NDR_SCALARS) {
1358 NDR_CHECK(ndr_push_align(ndr, 4));
1359 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_write_raw_data));
1360 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1362 if (ndr_flags & NDR_BUFFERS) {
1364 return NDR_ERR_SUCCESS;
1367 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1056(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1056 *r)
1369 if (ndr_flags & NDR_SCALARS) {
1370 NDR_CHECK(ndr_pull_align(ndr, 4));
1371 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_write_raw_data));
1372 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1374 if (ndr_flags & NDR_BUFFERS) {
1376 return NDR_ERR_SUCCESS;
1379 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1056(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1056 *r)
1381 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1056");
1382 ndr->depth++;
1383 ndr_print_uint32(ndr, "use_write_raw_data", r->use_write_raw_data);
1384 ndr->depth--;
1387 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1057(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1057 *r)
1389 if (ndr_flags & NDR_SCALARS) {
1390 NDR_CHECK(ndr_push_align(ndr, 4));
1391 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_encryption));
1392 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1394 if (ndr_flags & NDR_BUFFERS) {
1396 return NDR_ERR_SUCCESS;
1399 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1057(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1057 *r)
1401 if (ndr_flags & NDR_SCALARS) {
1402 NDR_CHECK(ndr_pull_align(ndr, 4));
1403 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_encryption));
1404 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1406 if (ndr_flags & NDR_BUFFERS) {
1408 return NDR_ERR_SUCCESS;
1411 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1057(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1057 *r)
1413 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1057");
1414 ndr->depth++;
1415 ndr_print_uint32(ndr, "use_encryption", r->use_encryption);
1416 ndr->depth--;
1419 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1058(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1058 *r)
1421 if (ndr_flags & NDR_SCALARS) {
1422 NDR_CHECK(ndr_push_align(ndr, 4));
1423 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_files_deny_write));
1424 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1426 if (ndr_flags & NDR_BUFFERS) {
1428 return NDR_ERR_SUCCESS;
1431 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1058(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1058 *r)
1433 if (ndr_flags & NDR_SCALARS) {
1434 NDR_CHECK(ndr_pull_align(ndr, 4));
1435 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_files_deny_write));
1436 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1438 if (ndr_flags & NDR_BUFFERS) {
1440 return NDR_ERR_SUCCESS;
1443 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1058(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1058 *r)
1445 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1058");
1446 ndr->depth++;
1447 ndr_print_uint32(ndr, "buf_files_deny_write", r->buf_files_deny_write);
1448 ndr->depth--;
1451 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1059(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1059 *r)
1453 if (ndr_flags & NDR_SCALARS) {
1454 NDR_CHECK(ndr_push_align(ndr, 4));
1455 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->buf_read_only_files));
1456 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1458 if (ndr_flags & NDR_BUFFERS) {
1460 return NDR_ERR_SUCCESS;
1463 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1059(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1059 *r)
1465 if (ndr_flags & NDR_SCALARS) {
1466 NDR_CHECK(ndr_pull_align(ndr, 4));
1467 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->buf_read_only_files));
1468 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1470 if (ndr_flags & NDR_BUFFERS) {
1472 return NDR_ERR_SUCCESS;
1475 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1059(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1059 *r)
1477 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1059");
1478 ndr->depth++;
1479 ndr_print_uint32(ndr, "buf_read_only_files", r->buf_read_only_files);
1480 ndr->depth--;
1483 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1060(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1060 *r)
1485 if (ndr_flags & NDR_SCALARS) {
1486 NDR_CHECK(ndr_push_align(ndr, 4));
1487 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->force_core_create_mode));
1488 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1490 if (ndr_flags & NDR_BUFFERS) {
1492 return NDR_ERR_SUCCESS;
1495 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1060(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1060 *r)
1497 if (ndr_flags & NDR_SCALARS) {
1498 NDR_CHECK(ndr_pull_align(ndr, 4));
1499 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->force_core_create_mode));
1500 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1502 if (ndr_flags & NDR_BUFFERS) {
1504 return NDR_ERR_SUCCESS;
1507 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1060(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1060 *r)
1509 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1060");
1510 ndr->depth++;
1511 ndr_print_uint32(ndr, "force_core_create_mode", r->force_core_create_mode);
1512 ndr->depth--;
1515 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1061(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1061 *r)
1517 if (ndr_flags & NDR_SCALARS) {
1518 NDR_CHECK(ndr_push_align(ndr, 4));
1519 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_512_byte_max_transfer));
1520 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1522 if (ndr_flags & NDR_BUFFERS) {
1524 return NDR_ERR_SUCCESS;
1527 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1061(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1061 *r)
1529 if (ndr_flags & NDR_SCALARS) {
1530 NDR_CHECK(ndr_pull_align(ndr, 4));
1531 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_512_byte_max_transfer));
1532 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1534 if (ndr_flags & NDR_BUFFERS) {
1536 return NDR_ERR_SUCCESS;
1539 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1061(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1061 *r)
1541 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1061");
1542 ndr->depth++;
1543 ndr_print_uint32(ndr, "use_512_byte_max_transfer", r->use_512_byte_max_transfer);
1544 ndr->depth--;
1547 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo1062(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaInfo1062 *r)
1549 if (ndr_flags & NDR_SCALARS) {
1550 NDR_CHECK(ndr_push_align(ndr, 4));
1551 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->read_ahead_throughput));
1552 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
1554 if (ndr_flags & NDR_BUFFERS) {
1556 return NDR_ERR_SUCCESS;
1559 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo1062(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaInfo1062 *r)
1561 if (ndr_flags & NDR_SCALARS) {
1562 NDR_CHECK(ndr_pull_align(ndr, 4));
1563 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->read_ahead_throughput));
1564 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
1566 if (ndr_flags & NDR_BUFFERS) {
1568 return NDR_ERR_SUCCESS;
1571 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo1062(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaInfo1062 *r)
1573 ndr_print_struct(ndr, name, "wkssvc_NetWkstaInfo1062");
1574 ndr->depth++;
1575 ndr_print_uint32(ndr, "read_ahead_throughput", r->read_ahead_throughput);
1576 ndr->depth--;
1579 static enum ndr_err_code ndr_push_wkssvc_NetWkstaInfo(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetWkstaInfo *r)
1581 if (ndr_flags & NDR_SCALARS) {
1582 int level = ndr_push_get_switch_value(ndr, r);
1583 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
1584 NDR_CHECK(ndr_push_union_align(ndr, 5));
1585 switch (level) {
1586 case 100: {
1587 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info100));
1588 break; }
1590 case 101: {
1591 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info101));
1592 break; }
1594 case 102: {
1595 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info102));
1596 break; }
1598 case 502: {
1599 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info502));
1600 break; }
1602 case 1010: {
1603 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1010));
1604 break; }
1606 case 1011: {
1607 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1011));
1608 break; }
1610 case 1012: {
1611 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1012));
1612 break; }
1614 case 1013: {
1615 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1013));
1616 break; }
1618 case 1018: {
1619 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1018));
1620 break; }
1622 case 1023: {
1623 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1023));
1624 break; }
1626 case 1027: {
1627 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1027));
1628 break; }
1630 case 1028: {
1631 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1028));
1632 break; }
1634 case 1032: {
1635 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1032));
1636 break; }
1638 case 1033: {
1639 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1033));
1640 break; }
1642 case 1041: {
1643 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1041));
1644 break; }
1646 case 1042: {
1647 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1042));
1648 break; }
1650 case 1043: {
1651 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1043));
1652 break; }
1654 case 1044: {
1655 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1044));
1656 break; }
1658 case 1045: {
1659 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1045));
1660 break; }
1662 case 1046: {
1663 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1046));
1664 break; }
1666 case 1047: {
1667 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1047));
1668 break; }
1670 case 1048: {
1671 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1048));
1672 break; }
1674 case 1049: {
1675 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1049));
1676 break; }
1678 case 1050: {
1679 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1050));
1680 break; }
1682 case 1051: {
1683 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1051));
1684 break; }
1686 case 1052: {
1687 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1052));
1688 break; }
1690 case 1053: {
1691 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1053));
1692 break; }
1694 case 1054: {
1695 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1054));
1696 break; }
1698 case 1055: {
1699 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1055));
1700 break; }
1702 case 1056: {
1703 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1056));
1704 break; }
1706 case 1057: {
1707 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1057));
1708 break; }
1710 case 1058: {
1711 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1058));
1712 break; }
1714 case 1059: {
1715 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1059));
1716 break; }
1718 case 1060: {
1719 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1060));
1720 break; }
1722 case 1061: {
1723 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1061));
1724 break; }
1726 case 1062: {
1727 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1062));
1728 break; }
1730 default: {
1731 break; }
1735 if (ndr_flags & NDR_BUFFERS) {
1736 int level = ndr_push_get_switch_value(ndr, r);
1737 switch (level) {
1738 case 100:
1739 if (r->info100) {
1740 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo100(ndr, NDR_SCALARS|NDR_BUFFERS, r->info100));
1742 break;
1744 case 101:
1745 if (r->info101) {
1746 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info101));
1748 break;
1750 case 102:
1751 if (r->info102) {
1752 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo102(ndr, NDR_SCALARS|NDR_BUFFERS, r->info102));
1754 break;
1756 case 502:
1757 if (r->info502) {
1758 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo502(ndr, NDR_SCALARS, r->info502));
1760 break;
1762 case 1010:
1763 if (r->info1010) {
1764 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1010(ndr, NDR_SCALARS, r->info1010));
1766 break;
1768 case 1011:
1769 if (r->info1011) {
1770 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1011(ndr, NDR_SCALARS, r->info1011));
1772 break;
1774 case 1012:
1775 if (r->info1012) {
1776 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1012(ndr, NDR_SCALARS, r->info1012));
1778 break;
1780 case 1013:
1781 if (r->info1013) {
1782 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1013(ndr, NDR_SCALARS, r->info1013));
1784 break;
1786 case 1018:
1787 if (r->info1018) {
1788 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1018(ndr, NDR_SCALARS, r->info1018));
1790 break;
1792 case 1023:
1793 if (r->info1023) {
1794 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1023(ndr, NDR_SCALARS, r->info1023));
1796 break;
1798 case 1027:
1799 if (r->info1027) {
1800 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1027(ndr, NDR_SCALARS, r->info1027));
1802 break;
1804 case 1028:
1805 if (r->info1028) {
1806 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1028(ndr, NDR_SCALARS, r->info1028));
1808 break;
1810 case 1032:
1811 if (r->info1032) {
1812 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1032(ndr, NDR_SCALARS, r->info1032));
1814 break;
1816 case 1033:
1817 if (r->info1033) {
1818 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1033(ndr, NDR_SCALARS, r->info1033));
1820 break;
1822 case 1041:
1823 if (r->info1041) {
1824 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1041(ndr, NDR_SCALARS, r->info1041));
1826 break;
1828 case 1042:
1829 if (r->info1042) {
1830 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1042(ndr, NDR_SCALARS, r->info1042));
1832 break;
1834 case 1043:
1835 if (r->info1043) {
1836 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1043(ndr, NDR_SCALARS, r->info1043));
1838 break;
1840 case 1044:
1841 if (r->info1044) {
1842 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1044(ndr, NDR_SCALARS, r->info1044));
1844 break;
1846 case 1045:
1847 if (r->info1045) {
1848 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1045(ndr, NDR_SCALARS, r->info1045));
1850 break;
1852 case 1046:
1853 if (r->info1046) {
1854 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1046(ndr, NDR_SCALARS, r->info1046));
1856 break;
1858 case 1047:
1859 if (r->info1047) {
1860 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1047(ndr, NDR_SCALARS, r->info1047));
1862 break;
1864 case 1048:
1865 if (r->info1048) {
1866 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1048(ndr, NDR_SCALARS, r->info1048));
1868 break;
1870 case 1049:
1871 if (r->info1049) {
1872 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1049(ndr, NDR_SCALARS, r->info1049));
1874 break;
1876 case 1050:
1877 if (r->info1050) {
1878 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1050(ndr, NDR_SCALARS, r->info1050));
1880 break;
1882 case 1051:
1883 if (r->info1051) {
1884 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1051(ndr, NDR_SCALARS, r->info1051));
1886 break;
1888 case 1052:
1889 if (r->info1052) {
1890 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1052(ndr, NDR_SCALARS, r->info1052));
1892 break;
1894 case 1053:
1895 if (r->info1053) {
1896 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1053(ndr, NDR_SCALARS, r->info1053));
1898 break;
1900 case 1054:
1901 if (r->info1054) {
1902 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1054(ndr, NDR_SCALARS, r->info1054));
1904 break;
1906 case 1055:
1907 if (r->info1055) {
1908 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1055(ndr, NDR_SCALARS, r->info1055));
1910 break;
1912 case 1056:
1913 if (r->info1056) {
1914 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1056(ndr, NDR_SCALARS, r->info1056));
1916 break;
1918 case 1057:
1919 if (r->info1057) {
1920 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1057(ndr, NDR_SCALARS, r->info1057));
1922 break;
1924 case 1058:
1925 if (r->info1058) {
1926 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1058(ndr, NDR_SCALARS, r->info1058));
1928 break;
1930 case 1059:
1931 if (r->info1059) {
1932 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1059(ndr, NDR_SCALARS, r->info1059));
1934 break;
1936 case 1060:
1937 if (r->info1060) {
1938 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1060(ndr, NDR_SCALARS, r->info1060));
1940 break;
1942 case 1061:
1943 if (r->info1061) {
1944 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1061(ndr, NDR_SCALARS, r->info1061));
1946 break;
1948 case 1062:
1949 if (r->info1062) {
1950 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1062(ndr, NDR_SCALARS, r->info1062));
1952 break;
1954 default:
1955 break;
1959 return NDR_ERR_SUCCESS;
1962 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaInfo(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetWkstaInfo *r)
1964 int level;
1965 uint32_t _level;
1966 TALLOC_CTX *_mem_save_info100_0;
1967 uint32_t _ptr_info100;
1968 TALLOC_CTX *_mem_save_info101_0;
1969 uint32_t _ptr_info101;
1970 TALLOC_CTX *_mem_save_info102_0;
1971 uint32_t _ptr_info102;
1972 TALLOC_CTX *_mem_save_info502_0;
1973 uint32_t _ptr_info502;
1974 TALLOC_CTX *_mem_save_info1010_0;
1975 uint32_t _ptr_info1010;
1976 TALLOC_CTX *_mem_save_info1011_0;
1977 uint32_t _ptr_info1011;
1978 TALLOC_CTX *_mem_save_info1012_0;
1979 uint32_t _ptr_info1012;
1980 TALLOC_CTX *_mem_save_info1013_0;
1981 uint32_t _ptr_info1013;
1982 TALLOC_CTX *_mem_save_info1018_0;
1983 uint32_t _ptr_info1018;
1984 TALLOC_CTX *_mem_save_info1023_0;
1985 uint32_t _ptr_info1023;
1986 TALLOC_CTX *_mem_save_info1027_0;
1987 uint32_t _ptr_info1027;
1988 TALLOC_CTX *_mem_save_info1028_0;
1989 uint32_t _ptr_info1028;
1990 TALLOC_CTX *_mem_save_info1032_0;
1991 uint32_t _ptr_info1032;
1992 TALLOC_CTX *_mem_save_info1033_0;
1993 uint32_t _ptr_info1033;
1994 TALLOC_CTX *_mem_save_info1041_0;
1995 uint32_t _ptr_info1041;
1996 TALLOC_CTX *_mem_save_info1042_0;
1997 uint32_t _ptr_info1042;
1998 TALLOC_CTX *_mem_save_info1043_0;
1999 uint32_t _ptr_info1043;
2000 TALLOC_CTX *_mem_save_info1044_0;
2001 uint32_t _ptr_info1044;
2002 TALLOC_CTX *_mem_save_info1045_0;
2003 uint32_t _ptr_info1045;
2004 TALLOC_CTX *_mem_save_info1046_0;
2005 uint32_t _ptr_info1046;
2006 TALLOC_CTX *_mem_save_info1047_0;
2007 uint32_t _ptr_info1047;
2008 TALLOC_CTX *_mem_save_info1048_0;
2009 uint32_t _ptr_info1048;
2010 TALLOC_CTX *_mem_save_info1049_0;
2011 uint32_t _ptr_info1049;
2012 TALLOC_CTX *_mem_save_info1050_0;
2013 uint32_t _ptr_info1050;
2014 TALLOC_CTX *_mem_save_info1051_0;
2015 uint32_t _ptr_info1051;
2016 TALLOC_CTX *_mem_save_info1052_0;
2017 uint32_t _ptr_info1052;
2018 TALLOC_CTX *_mem_save_info1053_0;
2019 uint32_t _ptr_info1053;
2020 TALLOC_CTX *_mem_save_info1054_0;
2021 uint32_t _ptr_info1054;
2022 TALLOC_CTX *_mem_save_info1055_0;
2023 uint32_t _ptr_info1055;
2024 TALLOC_CTX *_mem_save_info1056_0;
2025 uint32_t _ptr_info1056;
2026 TALLOC_CTX *_mem_save_info1057_0;
2027 uint32_t _ptr_info1057;
2028 TALLOC_CTX *_mem_save_info1058_0;
2029 uint32_t _ptr_info1058;
2030 TALLOC_CTX *_mem_save_info1059_0;
2031 uint32_t _ptr_info1059;
2032 TALLOC_CTX *_mem_save_info1060_0;
2033 uint32_t _ptr_info1060;
2034 TALLOC_CTX *_mem_save_info1061_0;
2035 uint32_t _ptr_info1061;
2036 TALLOC_CTX *_mem_save_info1062_0;
2037 uint32_t _ptr_info1062;
2038 level = ndr_pull_get_switch_value(ndr, r);
2039 if (ndr_flags & NDR_SCALARS) {
2040 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
2041 if (_level != level) {
2042 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
2044 NDR_CHECK(ndr_pull_union_align(ndr, 5));
2045 switch (level) {
2046 case 100: {
2047 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info100));
2048 if (_ptr_info100) {
2049 NDR_PULL_ALLOC(ndr, r->info100);
2050 } else {
2051 r->info100 = NULL;
2053 break; }
2055 case 101: {
2056 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info101));
2057 if (_ptr_info101) {
2058 NDR_PULL_ALLOC(ndr, r->info101);
2059 } else {
2060 r->info101 = NULL;
2062 break; }
2064 case 102: {
2065 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info102));
2066 if (_ptr_info102) {
2067 NDR_PULL_ALLOC(ndr, r->info102);
2068 } else {
2069 r->info102 = NULL;
2071 break; }
2073 case 502: {
2074 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info502));
2075 if (_ptr_info502) {
2076 NDR_PULL_ALLOC(ndr, r->info502);
2077 } else {
2078 r->info502 = NULL;
2080 break; }
2082 case 1010: {
2083 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1010));
2084 if (_ptr_info1010) {
2085 NDR_PULL_ALLOC(ndr, r->info1010);
2086 } else {
2087 r->info1010 = NULL;
2089 break; }
2091 case 1011: {
2092 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1011));
2093 if (_ptr_info1011) {
2094 NDR_PULL_ALLOC(ndr, r->info1011);
2095 } else {
2096 r->info1011 = NULL;
2098 break; }
2100 case 1012: {
2101 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1012));
2102 if (_ptr_info1012) {
2103 NDR_PULL_ALLOC(ndr, r->info1012);
2104 } else {
2105 r->info1012 = NULL;
2107 break; }
2109 case 1013: {
2110 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1013));
2111 if (_ptr_info1013) {
2112 NDR_PULL_ALLOC(ndr, r->info1013);
2113 } else {
2114 r->info1013 = NULL;
2116 break; }
2118 case 1018: {
2119 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1018));
2120 if (_ptr_info1018) {
2121 NDR_PULL_ALLOC(ndr, r->info1018);
2122 } else {
2123 r->info1018 = NULL;
2125 break; }
2127 case 1023: {
2128 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1023));
2129 if (_ptr_info1023) {
2130 NDR_PULL_ALLOC(ndr, r->info1023);
2131 } else {
2132 r->info1023 = NULL;
2134 break; }
2136 case 1027: {
2137 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1027));
2138 if (_ptr_info1027) {
2139 NDR_PULL_ALLOC(ndr, r->info1027);
2140 } else {
2141 r->info1027 = NULL;
2143 break; }
2145 case 1028: {
2146 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1028));
2147 if (_ptr_info1028) {
2148 NDR_PULL_ALLOC(ndr, r->info1028);
2149 } else {
2150 r->info1028 = NULL;
2152 break; }
2154 case 1032: {
2155 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1032));
2156 if (_ptr_info1032) {
2157 NDR_PULL_ALLOC(ndr, r->info1032);
2158 } else {
2159 r->info1032 = NULL;
2161 break; }
2163 case 1033: {
2164 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1033));
2165 if (_ptr_info1033) {
2166 NDR_PULL_ALLOC(ndr, r->info1033);
2167 } else {
2168 r->info1033 = NULL;
2170 break; }
2172 case 1041: {
2173 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1041));
2174 if (_ptr_info1041) {
2175 NDR_PULL_ALLOC(ndr, r->info1041);
2176 } else {
2177 r->info1041 = NULL;
2179 break; }
2181 case 1042: {
2182 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1042));
2183 if (_ptr_info1042) {
2184 NDR_PULL_ALLOC(ndr, r->info1042);
2185 } else {
2186 r->info1042 = NULL;
2188 break; }
2190 case 1043: {
2191 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1043));
2192 if (_ptr_info1043) {
2193 NDR_PULL_ALLOC(ndr, r->info1043);
2194 } else {
2195 r->info1043 = NULL;
2197 break; }
2199 case 1044: {
2200 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1044));
2201 if (_ptr_info1044) {
2202 NDR_PULL_ALLOC(ndr, r->info1044);
2203 } else {
2204 r->info1044 = NULL;
2206 break; }
2208 case 1045: {
2209 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1045));
2210 if (_ptr_info1045) {
2211 NDR_PULL_ALLOC(ndr, r->info1045);
2212 } else {
2213 r->info1045 = NULL;
2215 break; }
2217 case 1046: {
2218 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1046));
2219 if (_ptr_info1046) {
2220 NDR_PULL_ALLOC(ndr, r->info1046);
2221 } else {
2222 r->info1046 = NULL;
2224 break; }
2226 case 1047: {
2227 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1047));
2228 if (_ptr_info1047) {
2229 NDR_PULL_ALLOC(ndr, r->info1047);
2230 } else {
2231 r->info1047 = NULL;
2233 break; }
2235 case 1048: {
2236 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1048));
2237 if (_ptr_info1048) {
2238 NDR_PULL_ALLOC(ndr, r->info1048);
2239 } else {
2240 r->info1048 = NULL;
2242 break; }
2244 case 1049: {
2245 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1049));
2246 if (_ptr_info1049) {
2247 NDR_PULL_ALLOC(ndr, r->info1049);
2248 } else {
2249 r->info1049 = NULL;
2251 break; }
2253 case 1050: {
2254 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1050));
2255 if (_ptr_info1050) {
2256 NDR_PULL_ALLOC(ndr, r->info1050);
2257 } else {
2258 r->info1050 = NULL;
2260 break; }
2262 case 1051: {
2263 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1051));
2264 if (_ptr_info1051) {
2265 NDR_PULL_ALLOC(ndr, r->info1051);
2266 } else {
2267 r->info1051 = NULL;
2269 break; }
2271 case 1052: {
2272 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1052));
2273 if (_ptr_info1052) {
2274 NDR_PULL_ALLOC(ndr, r->info1052);
2275 } else {
2276 r->info1052 = NULL;
2278 break; }
2280 case 1053: {
2281 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1053));
2282 if (_ptr_info1053) {
2283 NDR_PULL_ALLOC(ndr, r->info1053);
2284 } else {
2285 r->info1053 = NULL;
2287 break; }
2289 case 1054: {
2290 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1054));
2291 if (_ptr_info1054) {
2292 NDR_PULL_ALLOC(ndr, r->info1054);
2293 } else {
2294 r->info1054 = NULL;
2296 break; }
2298 case 1055: {
2299 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1055));
2300 if (_ptr_info1055) {
2301 NDR_PULL_ALLOC(ndr, r->info1055);
2302 } else {
2303 r->info1055 = NULL;
2305 break; }
2307 case 1056: {
2308 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1056));
2309 if (_ptr_info1056) {
2310 NDR_PULL_ALLOC(ndr, r->info1056);
2311 } else {
2312 r->info1056 = NULL;
2314 break; }
2316 case 1057: {
2317 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1057));
2318 if (_ptr_info1057) {
2319 NDR_PULL_ALLOC(ndr, r->info1057);
2320 } else {
2321 r->info1057 = NULL;
2323 break; }
2325 case 1058: {
2326 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1058));
2327 if (_ptr_info1058) {
2328 NDR_PULL_ALLOC(ndr, r->info1058);
2329 } else {
2330 r->info1058 = NULL;
2332 break; }
2334 case 1059: {
2335 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1059));
2336 if (_ptr_info1059) {
2337 NDR_PULL_ALLOC(ndr, r->info1059);
2338 } else {
2339 r->info1059 = NULL;
2341 break; }
2343 case 1060: {
2344 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1060));
2345 if (_ptr_info1060) {
2346 NDR_PULL_ALLOC(ndr, r->info1060);
2347 } else {
2348 r->info1060 = NULL;
2350 break; }
2352 case 1061: {
2353 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1061));
2354 if (_ptr_info1061) {
2355 NDR_PULL_ALLOC(ndr, r->info1061);
2356 } else {
2357 r->info1061 = NULL;
2359 break; }
2361 case 1062: {
2362 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1062));
2363 if (_ptr_info1062) {
2364 NDR_PULL_ALLOC(ndr, r->info1062);
2365 } else {
2366 r->info1062 = NULL;
2368 break; }
2370 default: {
2371 break; }
2375 if (ndr_flags & NDR_BUFFERS) {
2376 switch (level) {
2377 case 100:
2378 if (r->info100) {
2379 _mem_save_info100_0 = NDR_PULL_GET_MEM_CTX(ndr);
2380 NDR_PULL_SET_MEM_CTX(ndr, r->info100, 0);
2381 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo100(ndr, NDR_SCALARS|NDR_BUFFERS, r->info100));
2382 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info100_0, 0);
2384 break;
2386 case 101:
2387 if (r->info101) {
2388 _mem_save_info101_0 = NDR_PULL_GET_MEM_CTX(ndr);
2389 NDR_PULL_SET_MEM_CTX(ndr, r->info101, 0);
2390 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info101));
2391 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info101_0, 0);
2393 break;
2395 case 102:
2396 if (r->info102) {
2397 _mem_save_info102_0 = NDR_PULL_GET_MEM_CTX(ndr);
2398 NDR_PULL_SET_MEM_CTX(ndr, r->info102, 0);
2399 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo102(ndr, NDR_SCALARS|NDR_BUFFERS, r->info102));
2400 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info102_0, 0);
2402 break;
2404 case 502:
2405 if (r->info502) {
2406 _mem_save_info502_0 = NDR_PULL_GET_MEM_CTX(ndr);
2407 NDR_PULL_SET_MEM_CTX(ndr, r->info502, 0);
2408 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo502(ndr, NDR_SCALARS, r->info502));
2409 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info502_0, 0);
2411 break;
2413 case 1010:
2414 if (r->info1010) {
2415 _mem_save_info1010_0 = NDR_PULL_GET_MEM_CTX(ndr);
2416 NDR_PULL_SET_MEM_CTX(ndr, r->info1010, 0);
2417 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1010(ndr, NDR_SCALARS, r->info1010));
2418 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1010_0, 0);
2420 break;
2422 case 1011:
2423 if (r->info1011) {
2424 _mem_save_info1011_0 = NDR_PULL_GET_MEM_CTX(ndr);
2425 NDR_PULL_SET_MEM_CTX(ndr, r->info1011, 0);
2426 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1011(ndr, NDR_SCALARS, r->info1011));
2427 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1011_0, 0);
2429 break;
2431 case 1012:
2432 if (r->info1012) {
2433 _mem_save_info1012_0 = NDR_PULL_GET_MEM_CTX(ndr);
2434 NDR_PULL_SET_MEM_CTX(ndr, r->info1012, 0);
2435 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1012(ndr, NDR_SCALARS, r->info1012));
2436 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1012_0, 0);
2438 break;
2440 case 1013:
2441 if (r->info1013) {
2442 _mem_save_info1013_0 = NDR_PULL_GET_MEM_CTX(ndr);
2443 NDR_PULL_SET_MEM_CTX(ndr, r->info1013, 0);
2444 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1013(ndr, NDR_SCALARS, r->info1013));
2445 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1013_0, 0);
2447 break;
2449 case 1018:
2450 if (r->info1018) {
2451 _mem_save_info1018_0 = NDR_PULL_GET_MEM_CTX(ndr);
2452 NDR_PULL_SET_MEM_CTX(ndr, r->info1018, 0);
2453 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1018(ndr, NDR_SCALARS, r->info1018));
2454 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1018_0, 0);
2456 break;
2458 case 1023:
2459 if (r->info1023) {
2460 _mem_save_info1023_0 = NDR_PULL_GET_MEM_CTX(ndr);
2461 NDR_PULL_SET_MEM_CTX(ndr, r->info1023, 0);
2462 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1023(ndr, NDR_SCALARS, r->info1023));
2463 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1023_0, 0);
2465 break;
2467 case 1027:
2468 if (r->info1027) {
2469 _mem_save_info1027_0 = NDR_PULL_GET_MEM_CTX(ndr);
2470 NDR_PULL_SET_MEM_CTX(ndr, r->info1027, 0);
2471 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1027(ndr, NDR_SCALARS, r->info1027));
2472 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1027_0, 0);
2474 break;
2476 case 1028:
2477 if (r->info1028) {
2478 _mem_save_info1028_0 = NDR_PULL_GET_MEM_CTX(ndr);
2479 NDR_PULL_SET_MEM_CTX(ndr, r->info1028, 0);
2480 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1028(ndr, NDR_SCALARS, r->info1028));
2481 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1028_0, 0);
2483 break;
2485 case 1032:
2486 if (r->info1032) {
2487 _mem_save_info1032_0 = NDR_PULL_GET_MEM_CTX(ndr);
2488 NDR_PULL_SET_MEM_CTX(ndr, r->info1032, 0);
2489 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1032(ndr, NDR_SCALARS, r->info1032));
2490 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1032_0, 0);
2492 break;
2494 case 1033:
2495 if (r->info1033) {
2496 _mem_save_info1033_0 = NDR_PULL_GET_MEM_CTX(ndr);
2497 NDR_PULL_SET_MEM_CTX(ndr, r->info1033, 0);
2498 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1033(ndr, NDR_SCALARS, r->info1033));
2499 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1033_0, 0);
2501 break;
2503 case 1041:
2504 if (r->info1041) {
2505 _mem_save_info1041_0 = NDR_PULL_GET_MEM_CTX(ndr);
2506 NDR_PULL_SET_MEM_CTX(ndr, r->info1041, 0);
2507 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1041(ndr, NDR_SCALARS, r->info1041));
2508 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1041_0, 0);
2510 break;
2512 case 1042:
2513 if (r->info1042) {
2514 _mem_save_info1042_0 = NDR_PULL_GET_MEM_CTX(ndr);
2515 NDR_PULL_SET_MEM_CTX(ndr, r->info1042, 0);
2516 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1042(ndr, NDR_SCALARS, r->info1042));
2517 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1042_0, 0);
2519 break;
2521 case 1043:
2522 if (r->info1043) {
2523 _mem_save_info1043_0 = NDR_PULL_GET_MEM_CTX(ndr);
2524 NDR_PULL_SET_MEM_CTX(ndr, r->info1043, 0);
2525 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1043(ndr, NDR_SCALARS, r->info1043));
2526 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1043_0, 0);
2528 break;
2530 case 1044:
2531 if (r->info1044) {
2532 _mem_save_info1044_0 = NDR_PULL_GET_MEM_CTX(ndr);
2533 NDR_PULL_SET_MEM_CTX(ndr, r->info1044, 0);
2534 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1044(ndr, NDR_SCALARS, r->info1044));
2535 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1044_0, 0);
2537 break;
2539 case 1045:
2540 if (r->info1045) {
2541 _mem_save_info1045_0 = NDR_PULL_GET_MEM_CTX(ndr);
2542 NDR_PULL_SET_MEM_CTX(ndr, r->info1045, 0);
2543 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1045(ndr, NDR_SCALARS, r->info1045));
2544 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1045_0, 0);
2546 break;
2548 case 1046:
2549 if (r->info1046) {
2550 _mem_save_info1046_0 = NDR_PULL_GET_MEM_CTX(ndr);
2551 NDR_PULL_SET_MEM_CTX(ndr, r->info1046, 0);
2552 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1046(ndr, NDR_SCALARS, r->info1046));
2553 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1046_0, 0);
2555 break;
2557 case 1047:
2558 if (r->info1047) {
2559 _mem_save_info1047_0 = NDR_PULL_GET_MEM_CTX(ndr);
2560 NDR_PULL_SET_MEM_CTX(ndr, r->info1047, 0);
2561 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1047(ndr, NDR_SCALARS, r->info1047));
2562 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1047_0, 0);
2564 break;
2566 case 1048:
2567 if (r->info1048) {
2568 _mem_save_info1048_0 = NDR_PULL_GET_MEM_CTX(ndr);
2569 NDR_PULL_SET_MEM_CTX(ndr, r->info1048, 0);
2570 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1048(ndr, NDR_SCALARS, r->info1048));
2571 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1048_0, 0);
2573 break;
2575 case 1049:
2576 if (r->info1049) {
2577 _mem_save_info1049_0 = NDR_PULL_GET_MEM_CTX(ndr);
2578 NDR_PULL_SET_MEM_CTX(ndr, r->info1049, 0);
2579 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1049(ndr, NDR_SCALARS, r->info1049));
2580 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1049_0, 0);
2582 break;
2584 case 1050:
2585 if (r->info1050) {
2586 _mem_save_info1050_0 = NDR_PULL_GET_MEM_CTX(ndr);
2587 NDR_PULL_SET_MEM_CTX(ndr, r->info1050, 0);
2588 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1050(ndr, NDR_SCALARS, r->info1050));
2589 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1050_0, 0);
2591 break;
2593 case 1051:
2594 if (r->info1051) {
2595 _mem_save_info1051_0 = NDR_PULL_GET_MEM_CTX(ndr);
2596 NDR_PULL_SET_MEM_CTX(ndr, r->info1051, 0);
2597 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1051(ndr, NDR_SCALARS, r->info1051));
2598 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1051_0, 0);
2600 break;
2602 case 1052:
2603 if (r->info1052) {
2604 _mem_save_info1052_0 = NDR_PULL_GET_MEM_CTX(ndr);
2605 NDR_PULL_SET_MEM_CTX(ndr, r->info1052, 0);
2606 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1052(ndr, NDR_SCALARS, r->info1052));
2607 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1052_0, 0);
2609 break;
2611 case 1053:
2612 if (r->info1053) {
2613 _mem_save_info1053_0 = NDR_PULL_GET_MEM_CTX(ndr);
2614 NDR_PULL_SET_MEM_CTX(ndr, r->info1053, 0);
2615 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1053(ndr, NDR_SCALARS, r->info1053));
2616 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1053_0, 0);
2618 break;
2620 case 1054:
2621 if (r->info1054) {
2622 _mem_save_info1054_0 = NDR_PULL_GET_MEM_CTX(ndr);
2623 NDR_PULL_SET_MEM_CTX(ndr, r->info1054, 0);
2624 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1054(ndr, NDR_SCALARS, r->info1054));
2625 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1054_0, 0);
2627 break;
2629 case 1055:
2630 if (r->info1055) {
2631 _mem_save_info1055_0 = NDR_PULL_GET_MEM_CTX(ndr);
2632 NDR_PULL_SET_MEM_CTX(ndr, r->info1055, 0);
2633 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1055(ndr, NDR_SCALARS, r->info1055));
2634 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1055_0, 0);
2636 break;
2638 case 1056:
2639 if (r->info1056) {
2640 _mem_save_info1056_0 = NDR_PULL_GET_MEM_CTX(ndr);
2641 NDR_PULL_SET_MEM_CTX(ndr, r->info1056, 0);
2642 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1056(ndr, NDR_SCALARS, r->info1056));
2643 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1056_0, 0);
2645 break;
2647 case 1057:
2648 if (r->info1057) {
2649 _mem_save_info1057_0 = NDR_PULL_GET_MEM_CTX(ndr);
2650 NDR_PULL_SET_MEM_CTX(ndr, r->info1057, 0);
2651 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1057(ndr, NDR_SCALARS, r->info1057));
2652 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1057_0, 0);
2654 break;
2656 case 1058:
2657 if (r->info1058) {
2658 _mem_save_info1058_0 = NDR_PULL_GET_MEM_CTX(ndr);
2659 NDR_PULL_SET_MEM_CTX(ndr, r->info1058, 0);
2660 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1058(ndr, NDR_SCALARS, r->info1058));
2661 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1058_0, 0);
2663 break;
2665 case 1059:
2666 if (r->info1059) {
2667 _mem_save_info1059_0 = NDR_PULL_GET_MEM_CTX(ndr);
2668 NDR_PULL_SET_MEM_CTX(ndr, r->info1059, 0);
2669 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1059(ndr, NDR_SCALARS, r->info1059));
2670 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1059_0, 0);
2672 break;
2674 case 1060:
2675 if (r->info1060) {
2676 _mem_save_info1060_0 = NDR_PULL_GET_MEM_CTX(ndr);
2677 NDR_PULL_SET_MEM_CTX(ndr, r->info1060, 0);
2678 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1060(ndr, NDR_SCALARS, r->info1060));
2679 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1060_0, 0);
2681 break;
2683 case 1061:
2684 if (r->info1061) {
2685 _mem_save_info1061_0 = NDR_PULL_GET_MEM_CTX(ndr);
2686 NDR_PULL_SET_MEM_CTX(ndr, r->info1061, 0);
2687 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1061(ndr, NDR_SCALARS, r->info1061));
2688 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1061_0, 0);
2690 break;
2692 case 1062:
2693 if (r->info1062) {
2694 _mem_save_info1062_0 = NDR_PULL_GET_MEM_CTX(ndr);
2695 NDR_PULL_SET_MEM_CTX(ndr, r->info1062, 0);
2696 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo1062(ndr, NDR_SCALARS, r->info1062));
2697 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1062_0, 0);
2699 break;
2701 default:
2702 break;
2706 return NDR_ERR_SUCCESS;
2709 _PUBLIC_ void ndr_print_wkssvc_NetWkstaInfo(struct ndr_print *ndr, const char *name, const union wkssvc_NetWkstaInfo *r)
2711 int level;
2712 level = ndr_print_get_switch_value(ndr, r);
2713 ndr_print_union(ndr, name, level, "wkssvc_NetWkstaInfo");
2714 switch (level) {
2715 case 100:
2716 ndr_print_ptr(ndr, "info100", r->info100);
2717 ndr->depth++;
2718 if (r->info100) {
2719 ndr_print_wkssvc_NetWkstaInfo100(ndr, "info100", r->info100);
2721 ndr->depth--;
2722 break;
2724 case 101:
2725 ndr_print_ptr(ndr, "info101", r->info101);
2726 ndr->depth++;
2727 if (r->info101) {
2728 ndr_print_wkssvc_NetWkstaInfo101(ndr, "info101", r->info101);
2730 ndr->depth--;
2731 break;
2733 case 102:
2734 ndr_print_ptr(ndr, "info102", r->info102);
2735 ndr->depth++;
2736 if (r->info102) {
2737 ndr_print_wkssvc_NetWkstaInfo102(ndr, "info102", r->info102);
2739 ndr->depth--;
2740 break;
2742 case 502:
2743 ndr_print_ptr(ndr, "info502", r->info502);
2744 ndr->depth++;
2745 if (r->info502) {
2746 ndr_print_wkssvc_NetWkstaInfo502(ndr, "info502", r->info502);
2748 ndr->depth--;
2749 break;
2751 case 1010:
2752 ndr_print_ptr(ndr, "info1010", r->info1010);
2753 ndr->depth++;
2754 if (r->info1010) {
2755 ndr_print_wkssvc_NetWkstaInfo1010(ndr, "info1010", r->info1010);
2757 ndr->depth--;
2758 break;
2760 case 1011:
2761 ndr_print_ptr(ndr, "info1011", r->info1011);
2762 ndr->depth++;
2763 if (r->info1011) {
2764 ndr_print_wkssvc_NetWkstaInfo1011(ndr, "info1011", r->info1011);
2766 ndr->depth--;
2767 break;
2769 case 1012:
2770 ndr_print_ptr(ndr, "info1012", r->info1012);
2771 ndr->depth++;
2772 if (r->info1012) {
2773 ndr_print_wkssvc_NetWkstaInfo1012(ndr, "info1012", r->info1012);
2775 ndr->depth--;
2776 break;
2778 case 1013:
2779 ndr_print_ptr(ndr, "info1013", r->info1013);
2780 ndr->depth++;
2781 if (r->info1013) {
2782 ndr_print_wkssvc_NetWkstaInfo1013(ndr, "info1013", r->info1013);
2784 ndr->depth--;
2785 break;
2787 case 1018:
2788 ndr_print_ptr(ndr, "info1018", r->info1018);
2789 ndr->depth++;
2790 if (r->info1018) {
2791 ndr_print_wkssvc_NetWkstaInfo1018(ndr, "info1018", r->info1018);
2793 ndr->depth--;
2794 break;
2796 case 1023:
2797 ndr_print_ptr(ndr, "info1023", r->info1023);
2798 ndr->depth++;
2799 if (r->info1023) {
2800 ndr_print_wkssvc_NetWkstaInfo1023(ndr, "info1023", r->info1023);
2802 ndr->depth--;
2803 break;
2805 case 1027:
2806 ndr_print_ptr(ndr, "info1027", r->info1027);
2807 ndr->depth++;
2808 if (r->info1027) {
2809 ndr_print_wkssvc_NetWkstaInfo1027(ndr, "info1027", r->info1027);
2811 ndr->depth--;
2812 break;
2814 case 1028:
2815 ndr_print_ptr(ndr, "info1028", r->info1028);
2816 ndr->depth++;
2817 if (r->info1028) {
2818 ndr_print_wkssvc_NetWkstaInfo1028(ndr, "info1028", r->info1028);
2820 ndr->depth--;
2821 break;
2823 case 1032:
2824 ndr_print_ptr(ndr, "info1032", r->info1032);
2825 ndr->depth++;
2826 if (r->info1032) {
2827 ndr_print_wkssvc_NetWkstaInfo1032(ndr, "info1032", r->info1032);
2829 ndr->depth--;
2830 break;
2832 case 1033:
2833 ndr_print_ptr(ndr, "info1033", r->info1033);
2834 ndr->depth++;
2835 if (r->info1033) {
2836 ndr_print_wkssvc_NetWkstaInfo1033(ndr, "info1033", r->info1033);
2838 ndr->depth--;
2839 break;
2841 case 1041:
2842 ndr_print_ptr(ndr, "info1041", r->info1041);
2843 ndr->depth++;
2844 if (r->info1041) {
2845 ndr_print_wkssvc_NetWkstaInfo1041(ndr, "info1041", r->info1041);
2847 ndr->depth--;
2848 break;
2850 case 1042:
2851 ndr_print_ptr(ndr, "info1042", r->info1042);
2852 ndr->depth++;
2853 if (r->info1042) {
2854 ndr_print_wkssvc_NetWkstaInfo1042(ndr, "info1042", r->info1042);
2856 ndr->depth--;
2857 break;
2859 case 1043:
2860 ndr_print_ptr(ndr, "info1043", r->info1043);
2861 ndr->depth++;
2862 if (r->info1043) {
2863 ndr_print_wkssvc_NetWkstaInfo1043(ndr, "info1043", r->info1043);
2865 ndr->depth--;
2866 break;
2868 case 1044:
2869 ndr_print_ptr(ndr, "info1044", r->info1044);
2870 ndr->depth++;
2871 if (r->info1044) {
2872 ndr_print_wkssvc_NetWkstaInfo1044(ndr, "info1044", r->info1044);
2874 ndr->depth--;
2875 break;
2877 case 1045:
2878 ndr_print_ptr(ndr, "info1045", r->info1045);
2879 ndr->depth++;
2880 if (r->info1045) {
2881 ndr_print_wkssvc_NetWkstaInfo1045(ndr, "info1045", r->info1045);
2883 ndr->depth--;
2884 break;
2886 case 1046:
2887 ndr_print_ptr(ndr, "info1046", r->info1046);
2888 ndr->depth++;
2889 if (r->info1046) {
2890 ndr_print_wkssvc_NetWkstaInfo1046(ndr, "info1046", r->info1046);
2892 ndr->depth--;
2893 break;
2895 case 1047:
2896 ndr_print_ptr(ndr, "info1047", r->info1047);
2897 ndr->depth++;
2898 if (r->info1047) {
2899 ndr_print_wkssvc_NetWkstaInfo1047(ndr, "info1047", r->info1047);
2901 ndr->depth--;
2902 break;
2904 case 1048:
2905 ndr_print_ptr(ndr, "info1048", r->info1048);
2906 ndr->depth++;
2907 if (r->info1048) {
2908 ndr_print_wkssvc_NetWkstaInfo1048(ndr, "info1048", r->info1048);
2910 ndr->depth--;
2911 break;
2913 case 1049:
2914 ndr_print_ptr(ndr, "info1049", r->info1049);
2915 ndr->depth++;
2916 if (r->info1049) {
2917 ndr_print_wkssvc_NetWkstaInfo1049(ndr, "info1049", r->info1049);
2919 ndr->depth--;
2920 break;
2922 case 1050:
2923 ndr_print_ptr(ndr, "info1050", r->info1050);
2924 ndr->depth++;
2925 if (r->info1050) {
2926 ndr_print_wkssvc_NetWkstaInfo1050(ndr, "info1050", r->info1050);
2928 ndr->depth--;
2929 break;
2931 case 1051:
2932 ndr_print_ptr(ndr, "info1051", r->info1051);
2933 ndr->depth++;
2934 if (r->info1051) {
2935 ndr_print_wkssvc_NetWkstaInfo1051(ndr, "info1051", r->info1051);
2937 ndr->depth--;
2938 break;
2940 case 1052:
2941 ndr_print_ptr(ndr, "info1052", r->info1052);
2942 ndr->depth++;
2943 if (r->info1052) {
2944 ndr_print_wkssvc_NetWkstaInfo1052(ndr, "info1052", r->info1052);
2946 ndr->depth--;
2947 break;
2949 case 1053:
2950 ndr_print_ptr(ndr, "info1053", r->info1053);
2951 ndr->depth++;
2952 if (r->info1053) {
2953 ndr_print_wkssvc_NetWkstaInfo1053(ndr, "info1053", r->info1053);
2955 ndr->depth--;
2956 break;
2958 case 1054:
2959 ndr_print_ptr(ndr, "info1054", r->info1054);
2960 ndr->depth++;
2961 if (r->info1054) {
2962 ndr_print_wkssvc_NetWkstaInfo1054(ndr, "info1054", r->info1054);
2964 ndr->depth--;
2965 break;
2967 case 1055:
2968 ndr_print_ptr(ndr, "info1055", r->info1055);
2969 ndr->depth++;
2970 if (r->info1055) {
2971 ndr_print_wkssvc_NetWkstaInfo1055(ndr, "info1055", r->info1055);
2973 ndr->depth--;
2974 break;
2976 case 1056:
2977 ndr_print_ptr(ndr, "info1056", r->info1056);
2978 ndr->depth++;
2979 if (r->info1056) {
2980 ndr_print_wkssvc_NetWkstaInfo1056(ndr, "info1056", r->info1056);
2982 ndr->depth--;
2983 break;
2985 case 1057:
2986 ndr_print_ptr(ndr, "info1057", r->info1057);
2987 ndr->depth++;
2988 if (r->info1057) {
2989 ndr_print_wkssvc_NetWkstaInfo1057(ndr, "info1057", r->info1057);
2991 ndr->depth--;
2992 break;
2994 case 1058:
2995 ndr_print_ptr(ndr, "info1058", r->info1058);
2996 ndr->depth++;
2997 if (r->info1058) {
2998 ndr_print_wkssvc_NetWkstaInfo1058(ndr, "info1058", r->info1058);
3000 ndr->depth--;
3001 break;
3003 case 1059:
3004 ndr_print_ptr(ndr, "info1059", r->info1059);
3005 ndr->depth++;
3006 if (r->info1059) {
3007 ndr_print_wkssvc_NetWkstaInfo1059(ndr, "info1059", r->info1059);
3009 ndr->depth--;
3010 break;
3012 case 1060:
3013 ndr_print_ptr(ndr, "info1060", r->info1060);
3014 ndr->depth++;
3015 if (r->info1060) {
3016 ndr_print_wkssvc_NetWkstaInfo1060(ndr, "info1060", r->info1060);
3018 ndr->depth--;
3019 break;
3021 case 1061:
3022 ndr_print_ptr(ndr, "info1061", r->info1061);
3023 ndr->depth++;
3024 if (r->info1061) {
3025 ndr_print_wkssvc_NetWkstaInfo1061(ndr, "info1061", r->info1061);
3027 ndr->depth--;
3028 break;
3030 case 1062:
3031 ndr_print_ptr(ndr, "info1062", r->info1062);
3032 ndr->depth++;
3033 if (r->info1062) {
3034 ndr_print_wkssvc_NetWkstaInfo1062(ndr, "info1062", r->info1062);
3036 ndr->depth--;
3037 break;
3039 default:
3040 break;
3045 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWkstaUserInfo0 *r)
3047 if (ndr_flags & NDR_SCALARS) {
3048 NDR_CHECK(ndr_push_align(ndr, 5));
3049 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user_name));
3050 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3052 if (ndr_flags & NDR_BUFFERS) {
3053 if (r->user_name) {
3054 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
3055 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3056 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
3057 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user_name, ndr_charset_length(r->user_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3060 return NDR_ERR_SUCCESS;
3063 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWkstaUserInfo0 *r)
3065 uint32_t _ptr_user_name;
3066 uint32_t size_user_name_1 = 0;
3067 uint32_t length_user_name_1 = 0;
3068 TALLOC_CTX *_mem_save_user_name_0;
3069 if (ndr_flags & NDR_SCALARS) {
3070 NDR_CHECK(ndr_pull_align(ndr, 5));
3071 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
3072 if (_ptr_user_name) {
3073 NDR_PULL_ALLOC(ndr, r->user_name);
3074 } else {
3075 r->user_name = NULL;
3077 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3079 if (ndr_flags & NDR_BUFFERS) {
3080 if (r->user_name) {
3081 _mem_save_user_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
3082 NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
3083 NDR_CHECK(ndr_pull_array_size(ndr, &r->user_name));
3084 NDR_CHECK(ndr_pull_array_length(ndr, &r->user_name));
3085 size_user_name_1 = ndr_get_array_size(ndr, &r->user_name);
3086 length_user_name_1 = ndr_get_array_length(ndr, &r->user_name);
3087 if (length_user_name_1 > size_user_name_1) {
3088 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_user_name_1, length_user_name_1);
3090 NDR_CHECK(ndr_check_string_terminator(ndr, length_user_name_1, sizeof(uint16_t)));
3091 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user_name, length_user_name_1, sizeof(uint16_t), CH_UTF16));
3092 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
3095 return NDR_ERR_SUCCESS;
3098 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo0 *r)
3100 ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserInfo0");
3101 ndr->depth++;
3102 ndr_print_ptr(ndr, "user_name", r->user_name);
3103 ndr->depth++;
3104 if (r->user_name) {
3105 ndr_print_string(ndr, "user_name", r->user_name);
3107 ndr->depth--;
3108 ndr->depth--;
3111 static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersCtr0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaEnumUsersCtr0 *r)
3113 uint32_t cntr_user0_1;
3114 if (ndr_flags & NDR_SCALARS) {
3115 NDR_CHECK(ndr_push_align(ndr, 5));
3116 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->entries_read));
3117 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user0));
3118 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3120 if (ndr_flags & NDR_BUFFERS) {
3121 if (r->user0) {
3122 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->entries_read));
3123 for (cntr_user0_1 = 0; cntr_user0_1 < r->entries_read; cntr_user0_1++) {
3124 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS, &r->user0[cntr_user0_1]));
3126 for (cntr_user0_1 = 0; cntr_user0_1 < r->entries_read; cntr_user0_1++) {
3127 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo0(ndr, NDR_BUFFERS, &r->user0[cntr_user0_1]));
3131 return NDR_ERR_SUCCESS;
3134 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersCtr0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaEnumUsersCtr0 *r)
3136 uint32_t _ptr_user0;
3137 uint32_t size_user0_1 = 0;
3138 uint32_t cntr_user0_1;
3139 TALLOC_CTX *_mem_save_user0_0;
3140 TALLOC_CTX *_mem_save_user0_1;
3141 if (ndr_flags & NDR_SCALARS) {
3142 NDR_CHECK(ndr_pull_align(ndr, 5));
3143 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->entries_read));
3144 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user0));
3145 if (_ptr_user0) {
3146 NDR_PULL_ALLOC(ndr, r->user0);
3147 } else {
3148 r->user0 = NULL;
3150 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3152 if (ndr_flags & NDR_BUFFERS) {
3153 if (r->user0) {
3154 _mem_save_user0_0 = NDR_PULL_GET_MEM_CTX(ndr);
3155 NDR_PULL_SET_MEM_CTX(ndr, r->user0, 0);
3156 NDR_CHECK(ndr_pull_array_size(ndr, &r->user0));
3157 size_user0_1 = ndr_get_array_size(ndr, &r->user0);
3158 NDR_PULL_ALLOC_N(ndr, r->user0, size_user0_1);
3159 _mem_save_user0_1 = NDR_PULL_GET_MEM_CTX(ndr);
3160 NDR_PULL_SET_MEM_CTX(ndr, r->user0, 0);
3161 for (cntr_user0_1 = 0; cntr_user0_1 < size_user0_1; cntr_user0_1++) {
3162 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS, &r->user0[cntr_user0_1]));
3164 for (cntr_user0_1 = 0; cntr_user0_1 < size_user0_1; cntr_user0_1++) {
3165 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo0(ndr, NDR_BUFFERS, &r->user0[cntr_user0_1]));
3167 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user0_1, 0);
3168 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user0_0, 0);
3170 if (r->user0) {
3171 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->user0, r->entries_read));
3174 return NDR_ERR_SUCCESS;
3177 _PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersCtr0 *r)
3179 uint32_t cntr_user0_1;
3180 ndr_print_struct(ndr, name, "wkssvc_NetWkstaEnumUsersCtr0");
3181 ndr->depth++;
3182 ndr_print_uint32(ndr, "entries_read", r->entries_read);
3183 ndr_print_ptr(ndr, "user0", r->user0);
3184 ndr->depth++;
3185 if (r->user0) {
3186 ndr->print(ndr, "%s: ARRAY(%d)", "user0", (int)r->entries_read);
3187 ndr->depth++;
3188 for (cntr_user0_1=0;cntr_user0_1<r->entries_read;cntr_user0_1++) {
3189 char *idx_1=NULL;
3190 if (asprintf(&idx_1, "[%d]", cntr_user0_1) != -1) {
3191 ndr_print_wkssvc_NetrWkstaUserInfo0(ndr, "user0", &r->user0[cntr_user0_1]);
3192 free(idx_1);
3195 ndr->depth--;
3197 ndr->depth--;
3198 ndr->depth--;
3201 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWkstaUserInfo1 *r)
3203 if (ndr_flags & NDR_SCALARS) {
3204 NDR_CHECK(ndr_push_align(ndr, 5));
3205 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user_name));
3206 NDR_CHECK(ndr_push_unique_ptr(ndr, r->logon_domain));
3207 NDR_CHECK(ndr_push_unique_ptr(ndr, r->other_domains));
3208 NDR_CHECK(ndr_push_unique_ptr(ndr, r->logon_server));
3209 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3211 if (ndr_flags & NDR_BUFFERS) {
3212 if (r->user_name) {
3213 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
3214 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3215 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
3216 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user_name, ndr_charset_length(r->user_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3218 if (r->logon_domain) {
3219 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_domain, CH_UTF16)));
3220 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3221 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_domain, CH_UTF16)));
3222 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->logon_domain, ndr_charset_length(r->logon_domain, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3224 if (r->other_domains) {
3225 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->other_domains, CH_UTF16)));
3226 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3227 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->other_domains, CH_UTF16)));
3228 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->other_domains, ndr_charset_length(r->other_domains, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3230 if (r->logon_server) {
3231 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_server, CH_UTF16)));
3232 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3233 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_server, CH_UTF16)));
3234 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->logon_server, ndr_charset_length(r->logon_server, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3237 return NDR_ERR_SUCCESS;
3240 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWkstaUserInfo1 *r)
3242 uint32_t _ptr_user_name;
3243 uint32_t size_user_name_1 = 0;
3244 uint32_t length_user_name_1 = 0;
3245 TALLOC_CTX *_mem_save_user_name_0;
3246 uint32_t _ptr_logon_domain;
3247 uint32_t size_logon_domain_1 = 0;
3248 uint32_t length_logon_domain_1 = 0;
3249 TALLOC_CTX *_mem_save_logon_domain_0;
3250 uint32_t _ptr_other_domains;
3251 uint32_t size_other_domains_1 = 0;
3252 uint32_t length_other_domains_1 = 0;
3253 TALLOC_CTX *_mem_save_other_domains_0;
3254 uint32_t _ptr_logon_server;
3255 uint32_t size_logon_server_1 = 0;
3256 uint32_t length_logon_server_1 = 0;
3257 TALLOC_CTX *_mem_save_logon_server_0;
3258 if (ndr_flags & NDR_SCALARS) {
3259 NDR_CHECK(ndr_pull_align(ndr, 5));
3260 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
3261 if (_ptr_user_name) {
3262 NDR_PULL_ALLOC(ndr, r->user_name);
3263 } else {
3264 r->user_name = NULL;
3266 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_logon_domain));
3267 if (_ptr_logon_domain) {
3268 NDR_PULL_ALLOC(ndr, r->logon_domain);
3269 } else {
3270 r->logon_domain = NULL;
3272 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_other_domains));
3273 if (_ptr_other_domains) {
3274 NDR_PULL_ALLOC(ndr, r->other_domains);
3275 } else {
3276 r->other_domains = NULL;
3278 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_logon_server));
3279 if (_ptr_logon_server) {
3280 NDR_PULL_ALLOC(ndr, r->logon_server);
3281 } else {
3282 r->logon_server = NULL;
3284 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3286 if (ndr_flags & NDR_BUFFERS) {
3287 if (r->user_name) {
3288 _mem_save_user_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
3289 NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
3290 NDR_CHECK(ndr_pull_array_size(ndr, &r->user_name));
3291 NDR_CHECK(ndr_pull_array_length(ndr, &r->user_name));
3292 size_user_name_1 = ndr_get_array_size(ndr, &r->user_name);
3293 length_user_name_1 = ndr_get_array_length(ndr, &r->user_name);
3294 if (length_user_name_1 > size_user_name_1) {
3295 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_user_name_1, length_user_name_1);
3297 NDR_CHECK(ndr_check_string_terminator(ndr, length_user_name_1, sizeof(uint16_t)));
3298 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user_name, length_user_name_1, sizeof(uint16_t), CH_UTF16));
3299 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
3301 if (r->logon_domain) {
3302 _mem_save_logon_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
3303 NDR_PULL_SET_MEM_CTX(ndr, r->logon_domain, 0);
3304 NDR_CHECK(ndr_pull_array_size(ndr, &r->logon_domain));
3305 NDR_CHECK(ndr_pull_array_length(ndr, &r->logon_domain));
3306 size_logon_domain_1 = ndr_get_array_size(ndr, &r->logon_domain);
3307 length_logon_domain_1 = ndr_get_array_length(ndr, &r->logon_domain);
3308 if (length_logon_domain_1 > size_logon_domain_1) {
3309 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_logon_domain_1, length_logon_domain_1);
3311 NDR_CHECK(ndr_check_string_terminator(ndr, length_logon_domain_1, sizeof(uint16_t)));
3312 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->logon_domain, length_logon_domain_1, sizeof(uint16_t), CH_UTF16));
3313 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_logon_domain_0, 0);
3315 if (r->other_domains) {
3316 _mem_save_other_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
3317 NDR_PULL_SET_MEM_CTX(ndr, r->other_domains, 0);
3318 NDR_CHECK(ndr_pull_array_size(ndr, &r->other_domains));
3319 NDR_CHECK(ndr_pull_array_length(ndr, &r->other_domains));
3320 size_other_domains_1 = ndr_get_array_size(ndr, &r->other_domains);
3321 length_other_domains_1 = ndr_get_array_length(ndr, &r->other_domains);
3322 if (length_other_domains_1 > size_other_domains_1) {
3323 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_other_domains_1, length_other_domains_1);
3325 NDR_CHECK(ndr_check_string_terminator(ndr, length_other_domains_1, sizeof(uint16_t)));
3326 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->other_domains, length_other_domains_1, sizeof(uint16_t), CH_UTF16));
3327 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_other_domains_0, 0);
3329 if (r->logon_server) {
3330 _mem_save_logon_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
3331 NDR_PULL_SET_MEM_CTX(ndr, r->logon_server, 0);
3332 NDR_CHECK(ndr_pull_array_size(ndr, &r->logon_server));
3333 NDR_CHECK(ndr_pull_array_length(ndr, &r->logon_server));
3334 size_logon_server_1 = ndr_get_array_size(ndr, &r->logon_server);
3335 length_logon_server_1 = ndr_get_array_length(ndr, &r->logon_server);
3336 if (length_logon_server_1 > size_logon_server_1) {
3337 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_logon_server_1, length_logon_server_1);
3339 NDR_CHECK(ndr_check_string_terminator(ndr, length_logon_server_1, sizeof(uint16_t)));
3340 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->logon_server, length_logon_server_1, sizeof(uint16_t), CH_UTF16));
3341 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_logon_server_0, 0);
3344 return NDR_ERR_SUCCESS;
3347 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo1 *r)
3349 ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserInfo1");
3350 ndr->depth++;
3351 ndr_print_ptr(ndr, "user_name", r->user_name);
3352 ndr->depth++;
3353 if (r->user_name) {
3354 ndr_print_string(ndr, "user_name", r->user_name);
3356 ndr->depth--;
3357 ndr_print_ptr(ndr, "logon_domain", r->logon_domain);
3358 ndr->depth++;
3359 if (r->logon_domain) {
3360 ndr_print_string(ndr, "logon_domain", r->logon_domain);
3362 ndr->depth--;
3363 ndr_print_ptr(ndr, "other_domains", r->other_domains);
3364 ndr->depth++;
3365 if (r->other_domains) {
3366 ndr_print_string(ndr, "other_domains", r->other_domains);
3368 ndr->depth--;
3369 ndr_print_ptr(ndr, "logon_server", r->logon_server);
3370 ndr->depth++;
3371 if (r->logon_server) {
3372 ndr_print_string(ndr, "logon_server", r->logon_server);
3374 ndr->depth--;
3375 ndr->depth--;
3378 static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersCtr1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaEnumUsersCtr1 *r)
3380 uint32_t cntr_user1_1;
3381 if (ndr_flags & NDR_SCALARS) {
3382 NDR_CHECK(ndr_push_align(ndr, 5));
3383 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->entries_read));
3384 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user1));
3385 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3387 if (ndr_flags & NDR_BUFFERS) {
3388 if (r->user1) {
3389 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->entries_read));
3390 for (cntr_user1_1 = 0; cntr_user1_1 < r->entries_read; cntr_user1_1++) {
3391 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS, &r->user1[cntr_user1_1]));
3393 for (cntr_user1_1 = 0; cntr_user1_1 < r->entries_read; cntr_user1_1++) {
3394 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1(ndr, NDR_BUFFERS, &r->user1[cntr_user1_1]));
3398 return NDR_ERR_SUCCESS;
3401 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersCtr1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaEnumUsersCtr1 *r)
3403 uint32_t _ptr_user1;
3404 uint32_t size_user1_1 = 0;
3405 uint32_t cntr_user1_1;
3406 TALLOC_CTX *_mem_save_user1_0;
3407 TALLOC_CTX *_mem_save_user1_1;
3408 if (ndr_flags & NDR_SCALARS) {
3409 NDR_CHECK(ndr_pull_align(ndr, 5));
3410 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->entries_read));
3411 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user1));
3412 if (_ptr_user1) {
3413 NDR_PULL_ALLOC(ndr, r->user1);
3414 } else {
3415 r->user1 = NULL;
3417 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3419 if (ndr_flags & NDR_BUFFERS) {
3420 if (r->user1) {
3421 _mem_save_user1_0 = NDR_PULL_GET_MEM_CTX(ndr);
3422 NDR_PULL_SET_MEM_CTX(ndr, r->user1, 0);
3423 NDR_CHECK(ndr_pull_array_size(ndr, &r->user1));
3424 size_user1_1 = ndr_get_array_size(ndr, &r->user1);
3425 NDR_PULL_ALLOC_N(ndr, r->user1, size_user1_1);
3426 _mem_save_user1_1 = NDR_PULL_GET_MEM_CTX(ndr);
3427 NDR_PULL_SET_MEM_CTX(ndr, r->user1, 0);
3428 for (cntr_user1_1 = 0; cntr_user1_1 < size_user1_1; cntr_user1_1++) {
3429 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS, &r->user1[cntr_user1_1]));
3431 for (cntr_user1_1 = 0; cntr_user1_1 < size_user1_1; cntr_user1_1++) {
3432 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1(ndr, NDR_BUFFERS, &r->user1[cntr_user1_1]));
3434 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user1_1, 0);
3435 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user1_0, 0);
3437 if (r->user1) {
3438 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->user1, r->entries_read));
3441 return NDR_ERR_SUCCESS;
3444 _PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersCtr1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersCtr1 *r)
3446 uint32_t cntr_user1_1;
3447 ndr_print_struct(ndr, name, "wkssvc_NetWkstaEnumUsersCtr1");
3448 ndr->depth++;
3449 ndr_print_uint32(ndr, "entries_read", r->entries_read);
3450 ndr_print_ptr(ndr, "user1", r->user1);
3451 ndr->depth++;
3452 if (r->user1) {
3453 ndr->print(ndr, "%s: ARRAY(%d)", "user1", (int)r->entries_read);
3454 ndr->depth++;
3455 for (cntr_user1_1=0;cntr_user1_1<r->entries_read;cntr_user1_1++) {
3456 char *idx_1=NULL;
3457 if (asprintf(&idx_1, "[%d]", cntr_user1_1) != -1) {
3458 ndr_print_wkssvc_NetrWkstaUserInfo1(ndr, "user1", &r->user1[cntr_user1_1]);
3459 free(idx_1);
3462 ndr->depth--;
3464 ndr->depth--;
3465 ndr->depth--;
3468 static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersCtr(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetWkstaEnumUsersCtr *r)
3470 if (ndr_flags & NDR_SCALARS) {
3471 int level = ndr_push_get_switch_value(ndr, r);
3472 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
3473 NDR_CHECK(ndr_push_union_align(ndr, 5));
3474 switch (level) {
3475 case 0: {
3476 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user0));
3477 break; }
3479 case 1: {
3480 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user1));
3481 break; }
3483 default:
3484 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3487 if (ndr_flags & NDR_BUFFERS) {
3488 int level = ndr_push_get_switch_value(ndr, r);
3489 switch (level) {
3490 case 0:
3491 if (r->user0) {
3492 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->user0));
3494 break;
3496 case 1:
3497 if (r->user1) {
3498 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->user1));
3500 break;
3502 default:
3503 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3506 return NDR_ERR_SUCCESS;
3509 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersCtr(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetWkstaEnumUsersCtr *r)
3511 int level;
3512 uint32_t _level;
3513 TALLOC_CTX *_mem_save_user0_0;
3514 uint32_t _ptr_user0;
3515 TALLOC_CTX *_mem_save_user1_0;
3516 uint32_t _ptr_user1;
3517 level = ndr_pull_get_switch_value(ndr, r);
3518 if (ndr_flags & NDR_SCALARS) {
3519 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
3520 if (_level != level) {
3521 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
3523 NDR_CHECK(ndr_pull_union_align(ndr, 5));
3524 switch (level) {
3525 case 0: {
3526 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user0));
3527 if (_ptr_user0) {
3528 NDR_PULL_ALLOC(ndr, r->user0);
3529 } else {
3530 r->user0 = NULL;
3532 break; }
3534 case 1: {
3535 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user1));
3536 if (_ptr_user1) {
3537 NDR_PULL_ALLOC(ndr, r->user1);
3538 } else {
3539 r->user1 = NULL;
3541 break; }
3543 default:
3544 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3547 if (ndr_flags & NDR_BUFFERS) {
3548 switch (level) {
3549 case 0:
3550 if (r->user0) {
3551 _mem_save_user0_0 = NDR_PULL_GET_MEM_CTX(ndr);
3552 NDR_PULL_SET_MEM_CTX(ndr, r->user0, 0);
3553 NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->user0));
3554 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user0_0, 0);
3556 break;
3558 case 1:
3559 if (r->user1) {
3560 _mem_save_user1_0 = NDR_PULL_GET_MEM_CTX(ndr);
3561 NDR_PULL_SET_MEM_CTX(ndr, r->user1, 0);
3562 NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->user1));
3563 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user1_0, 0);
3565 break;
3567 default:
3568 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3571 return NDR_ERR_SUCCESS;
3574 _PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetWkstaEnumUsersCtr *r)
3576 int level;
3577 level = ndr_print_get_switch_value(ndr, r);
3578 ndr_print_union(ndr, name, level, "wkssvc_NetWkstaEnumUsersCtr");
3579 switch (level) {
3580 case 0:
3581 ndr_print_ptr(ndr, "user0", r->user0);
3582 ndr->depth++;
3583 if (r->user0) {
3584 ndr_print_wkssvc_NetWkstaEnumUsersCtr0(ndr, "user0", r->user0);
3586 ndr->depth--;
3587 break;
3589 case 1:
3590 ndr_print_ptr(ndr, "user1", r->user1);
3591 ndr->depth++;
3592 if (r->user1) {
3593 ndr_print_wkssvc_NetWkstaEnumUsersCtr1(ndr, "user1", r->user1);
3595 ndr->depth--;
3596 break;
3598 default:
3599 ndr_print_bad_level(ndr, name, level);
3603 static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsersInfo(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaEnumUsersInfo *r)
3605 if (ndr_flags & NDR_SCALARS) {
3606 NDR_CHECK(ndr_push_align(ndr, 5));
3607 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
3608 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
3609 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_SCALARS, &r->ctr));
3610 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3612 if (ndr_flags & NDR_BUFFERS) {
3613 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_BUFFERS, &r->ctr));
3615 return NDR_ERR_SUCCESS;
3618 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsersInfo(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaEnumUsersInfo *r)
3620 if (ndr_flags & NDR_SCALARS) {
3621 NDR_CHECK(ndr_pull_align(ndr, 5));
3622 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
3623 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
3624 NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_SCALARS, &r->ctr));
3625 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3627 if (ndr_flags & NDR_BUFFERS) {
3628 NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersCtr(ndr, NDR_BUFFERS, &r->ctr));
3630 return NDR_ERR_SUCCESS;
3633 _PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsersInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaEnumUsersInfo *r)
3635 ndr_print_struct(ndr, name, "wkssvc_NetWkstaEnumUsersInfo");
3636 ndr->depth++;
3637 ndr_print_uint32(ndr, "level", r->level);
3638 ndr_print_set_switch_value(ndr, &r->ctr, r->level);
3639 ndr_print_wkssvc_NetWkstaEnumUsersCtr(ndr, "ctr", &r->ctr);
3640 ndr->depth--;
3643 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo1101(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWkstaUserInfo1101 *r)
3645 if (ndr_flags & NDR_SCALARS) {
3646 NDR_CHECK(ndr_push_align(ndr, 5));
3647 NDR_CHECK(ndr_push_unique_ptr(ndr, r->other_domains));
3648 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3650 if (ndr_flags & NDR_BUFFERS) {
3651 if (r->other_domains) {
3652 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->other_domains, CH_UTF16)));
3653 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3654 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->other_domains, CH_UTF16)));
3655 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->other_domains, ndr_charset_length(r->other_domains, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3658 return NDR_ERR_SUCCESS;
3661 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo1101(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWkstaUserInfo1101 *r)
3663 uint32_t _ptr_other_domains;
3664 uint32_t size_other_domains_1 = 0;
3665 uint32_t length_other_domains_1 = 0;
3666 TALLOC_CTX *_mem_save_other_domains_0;
3667 if (ndr_flags & NDR_SCALARS) {
3668 NDR_CHECK(ndr_pull_align(ndr, 5));
3669 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_other_domains));
3670 if (_ptr_other_domains) {
3671 NDR_PULL_ALLOC(ndr, r->other_domains);
3672 } else {
3673 r->other_domains = NULL;
3675 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3677 if (ndr_flags & NDR_BUFFERS) {
3678 if (r->other_domains) {
3679 _mem_save_other_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
3680 NDR_PULL_SET_MEM_CTX(ndr, r->other_domains, 0);
3681 NDR_CHECK(ndr_pull_array_size(ndr, &r->other_domains));
3682 NDR_CHECK(ndr_pull_array_length(ndr, &r->other_domains));
3683 size_other_domains_1 = ndr_get_array_size(ndr, &r->other_domains);
3684 length_other_domains_1 = ndr_get_array_length(ndr, &r->other_domains);
3685 if (length_other_domains_1 > size_other_domains_1) {
3686 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_other_domains_1, length_other_domains_1);
3688 NDR_CHECK(ndr_check_string_terminator(ndr, length_other_domains_1, sizeof(uint16_t)));
3689 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->other_domains, length_other_domains_1, sizeof(uint16_t), CH_UTF16));
3690 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_other_domains_0, 0);
3693 return NDR_ERR_SUCCESS;
3696 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo1101(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWkstaUserInfo1101 *r)
3698 ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserInfo1101");
3699 ndr->depth++;
3700 ndr_print_ptr(ndr, "other_domains", r->other_domains);
3701 ndr->depth++;
3702 if (r->other_domains) {
3703 ndr_print_string(ndr, "other_domains", r->other_domains);
3705 ndr->depth--;
3706 ndr->depth--;
3709 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserInfo(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetrWkstaUserInfo *r)
3711 if (ndr_flags & NDR_SCALARS) {
3712 int level = ndr_push_get_switch_value(ndr, r);
3713 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
3714 NDR_CHECK(ndr_push_union_align(ndr, 5));
3715 switch (level) {
3716 case 0: {
3717 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
3718 break; }
3720 case 1: {
3721 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
3722 break; }
3724 case 1101: {
3725 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1101));
3726 break; }
3728 default:
3729 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3732 if (ndr_flags & NDR_BUFFERS) {
3733 int level = ndr_push_get_switch_value(ndr, r);
3734 switch (level) {
3735 case 0:
3736 if (r->info0) {
3737 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
3739 break;
3741 case 1:
3742 if (r->info1) {
3743 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
3745 break;
3747 case 1101:
3748 if (r->info1101) {
3749 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1101));
3751 break;
3753 default:
3754 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3757 return NDR_ERR_SUCCESS;
3760 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserInfo(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetrWkstaUserInfo *r)
3762 int level;
3763 uint32_t _level;
3764 TALLOC_CTX *_mem_save_info0_0;
3765 uint32_t _ptr_info0;
3766 TALLOC_CTX *_mem_save_info1_0;
3767 uint32_t _ptr_info1;
3768 TALLOC_CTX *_mem_save_info1101_0;
3769 uint32_t _ptr_info1101;
3770 level = ndr_pull_get_switch_value(ndr, r);
3771 if (ndr_flags & NDR_SCALARS) {
3772 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
3773 if (_level != level) {
3774 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
3776 NDR_CHECK(ndr_pull_union_align(ndr, 5));
3777 switch (level) {
3778 case 0: {
3779 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
3780 if (_ptr_info0) {
3781 NDR_PULL_ALLOC(ndr, r->info0);
3782 } else {
3783 r->info0 = NULL;
3785 break; }
3787 case 1: {
3788 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
3789 if (_ptr_info1) {
3790 NDR_PULL_ALLOC(ndr, r->info1);
3791 } else {
3792 r->info1 = NULL;
3794 break; }
3796 case 1101: {
3797 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1101));
3798 if (_ptr_info1101) {
3799 NDR_PULL_ALLOC(ndr, r->info1101);
3800 } else {
3801 r->info1101 = NULL;
3803 break; }
3805 default:
3806 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3809 if (ndr_flags & NDR_BUFFERS) {
3810 switch (level) {
3811 case 0:
3812 if (r->info0) {
3813 _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
3814 NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
3815 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
3816 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
3818 break;
3820 case 1:
3821 if (r->info1) {
3822 _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
3823 NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
3824 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
3825 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
3827 break;
3829 case 1101:
3830 if (r->info1101) {
3831 _mem_save_info1101_0 = NDR_PULL_GET_MEM_CTX(ndr);
3832 NDR_PULL_SET_MEM_CTX(ndr, r->info1101, 0);
3833 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo1101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1101));
3834 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1101_0, 0);
3836 break;
3838 default:
3839 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
3842 return NDR_ERR_SUCCESS;
3845 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserInfo(struct ndr_print *ndr, const char *name, const union wkssvc_NetrWkstaUserInfo *r)
3847 int level;
3848 level = ndr_print_get_switch_value(ndr, r);
3849 ndr_print_union(ndr, name, level, "wkssvc_NetrWkstaUserInfo");
3850 switch (level) {
3851 case 0:
3852 ndr_print_ptr(ndr, "info0", r->info0);
3853 ndr->depth++;
3854 if (r->info0) {
3855 ndr_print_wkssvc_NetrWkstaUserInfo0(ndr, "info0", r->info0);
3857 ndr->depth--;
3858 break;
3860 case 1:
3861 ndr_print_ptr(ndr, "info1", r->info1);
3862 ndr->depth++;
3863 if (r->info1) {
3864 ndr_print_wkssvc_NetrWkstaUserInfo1(ndr, "info1", r->info1);
3866 ndr->depth--;
3867 break;
3869 case 1101:
3870 ndr_print_ptr(ndr, "info1101", r->info1101);
3871 ndr->depth++;
3872 if (r->info1101) {
3873 ndr_print_wkssvc_NetrWkstaUserInfo1101(ndr, "info1101", r->info1101);
3875 ndr->depth--;
3876 break;
3878 default:
3879 ndr_print_bad_level(ndr, name, level);
3883 static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportInfo0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaTransportInfo0 *r)
3885 if (ndr_flags & NDR_SCALARS) {
3886 NDR_CHECK(ndr_push_align(ndr, 5));
3887 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->quality_of_service));
3888 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->vc_count));
3889 NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
3890 NDR_CHECK(ndr_push_unique_ptr(ndr, r->address));
3891 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->wan_link));
3892 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
3894 if (ndr_flags & NDR_BUFFERS) {
3895 if (r->name) {
3896 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
3897 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3898 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
3899 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3901 if (r->address) {
3902 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->address, CH_UTF16)));
3903 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
3904 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->address, CH_UTF16)));
3905 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->address, ndr_charset_length(r->address, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3908 return NDR_ERR_SUCCESS;
3911 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportInfo0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaTransportInfo0 *r)
3913 uint32_t _ptr_name;
3914 uint32_t size_name_1 = 0;
3915 uint32_t length_name_1 = 0;
3916 TALLOC_CTX *_mem_save_name_0;
3917 uint32_t _ptr_address;
3918 uint32_t size_address_1 = 0;
3919 uint32_t length_address_1 = 0;
3920 TALLOC_CTX *_mem_save_address_0;
3921 if (ndr_flags & NDR_SCALARS) {
3922 NDR_CHECK(ndr_pull_align(ndr, 5));
3923 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->quality_of_service));
3924 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->vc_count));
3925 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
3926 if (_ptr_name) {
3927 NDR_PULL_ALLOC(ndr, r->name);
3928 } else {
3929 r->name = NULL;
3931 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_address));
3932 if (_ptr_address) {
3933 NDR_PULL_ALLOC(ndr, r->address);
3934 } else {
3935 r->address = NULL;
3937 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->wan_link));
3938 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
3940 if (ndr_flags & NDR_BUFFERS) {
3941 if (r->name) {
3942 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
3943 NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
3944 NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
3945 NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
3946 size_name_1 = ndr_get_array_size(ndr, &r->name);
3947 length_name_1 = ndr_get_array_length(ndr, &r->name);
3948 if (length_name_1 > size_name_1) {
3949 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_1, length_name_1);
3951 NDR_CHECK(ndr_check_string_terminator(ndr, length_name_1, sizeof(uint16_t)));
3952 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, length_name_1, sizeof(uint16_t), CH_UTF16));
3953 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
3955 if (r->address) {
3956 _mem_save_address_0 = NDR_PULL_GET_MEM_CTX(ndr);
3957 NDR_PULL_SET_MEM_CTX(ndr, r->address, 0);
3958 NDR_CHECK(ndr_pull_array_size(ndr, &r->address));
3959 NDR_CHECK(ndr_pull_array_length(ndr, &r->address));
3960 size_address_1 = ndr_get_array_size(ndr, &r->address);
3961 length_address_1 = ndr_get_array_length(ndr, &r->address);
3962 if (length_address_1 > size_address_1) {
3963 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_address_1, length_address_1);
3965 NDR_CHECK(ndr_check_string_terminator(ndr, length_address_1, sizeof(uint16_t)));
3966 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->address, length_address_1, sizeof(uint16_t), CH_UTF16));
3967 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_address_0, 0);
3970 return NDR_ERR_SUCCESS;
3973 _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaTransportInfo0 *r)
3975 ndr_print_struct(ndr, name, "wkssvc_NetWkstaTransportInfo0");
3976 ndr->depth++;
3977 ndr_print_uint32(ndr, "quality_of_service", r->quality_of_service);
3978 ndr_print_uint32(ndr, "vc_count", r->vc_count);
3979 ndr_print_ptr(ndr, "name", r->name);
3980 ndr->depth++;
3981 if (r->name) {
3982 ndr_print_string(ndr, "name", r->name);
3984 ndr->depth--;
3985 ndr_print_ptr(ndr, "address", r->address);
3986 ndr->depth++;
3987 if (r->address) {
3988 ndr_print_string(ndr, "address", r->address);
3990 ndr->depth--;
3991 ndr_print_uint32(ndr, "wan_link", r->wan_link);
3992 ndr->depth--;
3995 static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportCtr0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaTransportCtr0 *r)
3997 uint32_t cntr_array_1;
3998 if (ndr_flags & NDR_SCALARS) {
3999 NDR_CHECK(ndr_push_align(ndr, 5));
4000 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4001 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
4002 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4004 if (ndr_flags & NDR_BUFFERS) {
4005 if (r->array) {
4006 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
4007 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
4008 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
4010 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
4011 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
4015 return NDR_ERR_SUCCESS;
4018 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportCtr0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaTransportCtr0 *r)
4020 uint32_t _ptr_array;
4021 uint32_t size_array_1 = 0;
4022 uint32_t cntr_array_1;
4023 TALLOC_CTX *_mem_save_array_0;
4024 TALLOC_CTX *_mem_save_array_1;
4025 if (ndr_flags & NDR_SCALARS) {
4026 NDR_CHECK(ndr_pull_align(ndr, 5));
4027 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4028 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
4029 if (_ptr_array) {
4030 NDR_PULL_ALLOC(ndr, r->array);
4031 } else {
4032 r->array = NULL;
4034 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4036 if (ndr_flags & NDR_BUFFERS) {
4037 if (r->array) {
4038 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
4039 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
4040 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
4041 size_array_1 = ndr_get_array_size(ndr, &r->array);
4042 NDR_PULL_ALLOC_N(ndr, r->array, size_array_1);
4043 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
4044 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
4045 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
4046 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
4048 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
4049 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
4051 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
4052 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
4054 if (r->array) {
4055 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
4058 return NDR_ERR_SUCCESS;
4061 _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaTransportCtr0 *r)
4063 uint32_t cntr_array_1;
4064 ndr_print_struct(ndr, name, "wkssvc_NetWkstaTransportCtr0");
4065 ndr->depth++;
4066 ndr_print_uint32(ndr, "count", r->count);
4067 ndr_print_ptr(ndr, "array", r->array);
4068 ndr->depth++;
4069 if (r->array) {
4070 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
4071 ndr->depth++;
4072 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
4073 char *idx_1=NULL;
4074 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
4075 ndr_print_wkssvc_NetWkstaTransportInfo0(ndr, "array", &r->array[cntr_array_1]);
4076 free(idx_1);
4079 ndr->depth--;
4081 ndr->depth--;
4082 ndr->depth--;
4085 static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportCtr(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetWkstaTransportCtr *r)
4087 if (ndr_flags & NDR_SCALARS) {
4088 int level = ndr_push_get_switch_value(ndr, r);
4089 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
4090 NDR_CHECK(ndr_push_union_align(ndr, 5));
4091 switch (level) {
4092 case 0: {
4093 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
4094 break; }
4096 default:
4097 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4100 if (ndr_flags & NDR_BUFFERS) {
4101 int level = ndr_push_get_switch_value(ndr, r);
4102 switch (level) {
4103 case 0:
4104 if (r->ctr0) {
4105 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
4107 break;
4109 default:
4110 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4113 return NDR_ERR_SUCCESS;
4116 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportCtr(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetWkstaTransportCtr *r)
4118 int level;
4119 uint32_t _level;
4120 TALLOC_CTX *_mem_save_ctr0_0;
4121 uint32_t _ptr_ctr0;
4122 level = ndr_pull_get_switch_value(ndr, r);
4123 if (ndr_flags & NDR_SCALARS) {
4124 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
4125 if (_level != level) {
4126 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
4128 NDR_CHECK(ndr_pull_union_align(ndr, 5));
4129 switch (level) {
4130 case 0: {
4131 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
4132 if (_ptr_ctr0) {
4133 NDR_PULL_ALLOC(ndr, r->ctr0);
4134 } else {
4135 r->ctr0 = NULL;
4137 break; }
4139 default:
4140 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4143 if (ndr_flags & NDR_BUFFERS) {
4144 switch (level) {
4145 case 0:
4146 if (r->ctr0) {
4147 _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
4148 NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
4149 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
4150 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
4152 break;
4154 default:
4155 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4158 return NDR_ERR_SUCCESS;
4161 _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetWkstaTransportCtr *r)
4163 int level;
4164 level = ndr_print_get_switch_value(ndr, r);
4165 ndr_print_union(ndr, name, level, "wkssvc_NetWkstaTransportCtr");
4166 switch (level) {
4167 case 0:
4168 ndr_print_ptr(ndr, "ctr0", r->ctr0);
4169 ndr->depth++;
4170 if (r->ctr0) {
4171 ndr_print_wkssvc_NetWkstaTransportCtr0(ndr, "ctr0", r->ctr0);
4173 ndr->depth--;
4174 break;
4176 default:
4177 ndr_print_bad_level(ndr, name, level);
4181 static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportInfo(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetWkstaTransportInfo *r)
4183 if (ndr_flags & NDR_SCALARS) {
4184 NDR_CHECK(ndr_push_align(ndr, 5));
4185 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
4186 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
4187 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS, &r->ctr));
4188 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4190 if (ndr_flags & NDR_BUFFERS) {
4191 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr(ndr, NDR_BUFFERS, &r->ctr));
4193 return NDR_ERR_SUCCESS;
4196 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportInfo(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetWkstaTransportInfo *r)
4198 if (ndr_flags & NDR_SCALARS) {
4199 NDR_CHECK(ndr_pull_align(ndr, 5));
4200 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
4201 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
4202 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportCtr(ndr, NDR_SCALARS, &r->ctr));
4203 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4205 if (ndr_flags & NDR_BUFFERS) {
4206 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportCtr(ndr, NDR_BUFFERS, &r->ctr));
4208 return NDR_ERR_SUCCESS;
4211 _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetWkstaTransportInfo *r)
4213 ndr_print_struct(ndr, name, "wkssvc_NetWkstaTransportInfo");
4214 ndr->depth++;
4215 ndr_print_uint32(ndr, "level", r->level);
4216 ndr_print_set_switch_value(ndr, &r->ctr, r->level);
4217 ndr_print_wkssvc_NetWkstaTransportCtr(ndr, "ctr", &r->ctr);
4218 ndr->depth--;
4221 static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo3(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo3 *r)
4223 if (ndr_flags & NDR_SCALARS) {
4224 NDR_CHECK(ndr_push_align(ndr, 5));
4225 NDR_CHECK(ndr_push_unique_ptr(ndr, r->unknown1));
4226 NDR_CHECK(ndr_push_unique_ptr(ndr, r->unknown2));
4227 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4229 if (ndr_flags & NDR_BUFFERS) {
4230 if (r->unknown1) {
4231 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->unknown1, CH_UTF16)));
4232 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4233 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->unknown1, CH_UTF16)));
4234 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->unknown1, ndr_charset_length(r->unknown1, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4236 if (r->unknown2) {
4237 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->unknown2, CH_UTF16)));
4238 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4239 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->unknown2, CH_UTF16)));
4240 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->unknown2, ndr_charset_length(r->unknown2, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4243 return NDR_ERR_SUCCESS;
4246 static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo3(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo3 *r)
4248 uint32_t _ptr_unknown1;
4249 uint32_t size_unknown1_1 = 0;
4250 uint32_t length_unknown1_1 = 0;
4251 TALLOC_CTX *_mem_save_unknown1_0;
4252 uint32_t _ptr_unknown2;
4253 uint32_t size_unknown2_1 = 0;
4254 uint32_t length_unknown2_1 = 0;
4255 TALLOC_CTX *_mem_save_unknown2_0;
4256 if (ndr_flags & NDR_SCALARS) {
4257 NDR_CHECK(ndr_pull_align(ndr, 5));
4258 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown1));
4259 if (_ptr_unknown1) {
4260 NDR_PULL_ALLOC(ndr, r->unknown1);
4261 } else {
4262 r->unknown1 = NULL;
4264 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
4265 if (_ptr_unknown2) {
4266 NDR_PULL_ALLOC(ndr, r->unknown2);
4267 } else {
4268 r->unknown2 = NULL;
4270 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4272 if (ndr_flags & NDR_BUFFERS) {
4273 if (r->unknown1) {
4274 _mem_save_unknown1_0 = NDR_PULL_GET_MEM_CTX(ndr);
4275 NDR_PULL_SET_MEM_CTX(ndr, r->unknown1, 0);
4276 NDR_CHECK(ndr_pull_array_size(ndr, &r->unknown1));
4277 NDR_CHECK(ndr_pull_array_length(ndr, &r->unknown1));
4278 size_unknown1_1 = ndr_get_array_size(ndr, &r->unknown1);
4279 length_unknown1_1 = ndr_get_array_length(ndr, &r->unknown1);
4280 if (length_unknown1_1 > size_unknown1_1) {
4281 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_unknown1_1, length_unknown1_1);
4283 NDR_CHECK(ndr_check_string_terminator(ndr, length_unknown1_1, sizeof(uint16_t)));
4284 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->unknown1, length_unknown1_1, sizeof(uint16_t), CH_UTF16));
4285 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown1_0, 0);
4287 if (r->unknown2) {
4288 _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
4289 NDR_PULL_SET_MEM_CTX(ndr, r->unknown2, 0);
4290 NDR_CHECK(ndr_pull_array_size(ndr, &r->unknown2));
4291 NDR_CHECK(ndr_pull_array_length(ndr, &r->unknown2));
4292 size_unknown2_1 = ndr_get_array_size(ndr, &r->unknown2);
4293 length_unknown2_1 = ndr_get_array_length(ndr, &r->unknown2);
4294 if (length_unknown2_1 > size_unknown2_1) {
4295 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_unknown2_1, length_unknown2_1);
4297 NDR_CHECK(ndr_check_string_terminator(ndr, length_unknown2_1, sizeof(uint16_t)));
4298 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->unknown2, length_unknown2_1, sizeof(uint16_t), CH_UTF16));
4299 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, 0);
4302 return NDR_ERR_SUCCESS;
4305 _PUBLIC_ void ndr_print_wkssvc_NetrUseInfo3(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo3 *r)
4307 ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo3");
4308 ndr->depth++;
4309 ndr_print_ptr(ndr, "unknown1", r->unknown1);
4310 ndr->depth++;
4311 if (r->unknown1) {
4312 ndr_print_string(ndr, "unknown1", r->unknown1);
4314 ndr->depth--;
4315 ndr_print_ptr(ndr, "unknown2", r->unknown2);
4316 ndr->depth++;
4317 if (r->unknown2) {
4318 ndr_print_string(ndr, "unknown2", r->unknown2);
4320 ndr->depth--;
4321 ndr->depth--;
4324 static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo2(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo2 *r)
4326 if (ndr_flags & NDR_SCALARS) {
4327 NDR_CHECK(ndr_push_align(ndr, 5));
4328 NDR_CHECK(ndr_push_unique_ptr(ndr, r->local));
4329 NDR_CHECK(ndr_push_unique_ptr(ndr, r->remote));
4330 NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
4331 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->status));
4332 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->asg_type));
4333 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ref_count));
4334 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_count));
4335 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user_name));
4336 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
4337 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4339 if (ndr_flags & NDR_BUFFERS) {
4340 if (r->local) {
4341 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
4342 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4343 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
4344 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->local, ndr_charset_length(r->local, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4346 if (r->remote) {
4347 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
4348 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4349 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
4350 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->remote, ndr_charset_length(r->remote, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4352 if (r->password) {
4353 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
4354 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4355 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
4356 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->password, ndr_charset_length(r->password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4358 if (r->user_name) {
4359 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
4360 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4361 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_name, CH_UTF16)));
4362 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user_name, ndr_charset_length(r->user_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4364 if (r->domain_name) {
4365 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
4366 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4367 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF16)));
4368 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain_name, ndr_charset_length(r->domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4371 return NDR_ERR_SUCCESS;
4374 static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo2(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo2 *r)
4376 uint32_t _ptr_local;
4377 uint32_t size_local_1 = 0;
4378 uint32_t length_local_1 = 0;
4379 TALLOC_CTX *_mem_save_local_0;
4380 uint32_t _ptr_remote;
4381 uint32_t size_remote_1 = 0;
4382 uint32_t length_remote_1 = 0;
4383 TALLOC_CTX *_mem_save_remote_0;
4384 uint32_t _ptr_password;
4385 uint32_t size_password_1 = 0;
4386 uint32_t length_password_1 = 0;
4387 TALLOC_CTX *_mem_save_password_0;
4388 uint32_t _ptr_user_name;
4389 uint32_t size_user_name_1 = 0;
4390 uint32_t length_user_name_1 = 0;
4391 TALLOC_CTX *_mem_save_user_name_0;
4392 uint32_t _ptr_domain_name;
4393 uint32_t size_domain_name_1 = 0;
4394 uint32_t length_domain_name_1 = 0;
4395 TALLOC_CTX *_mem_save_domain_name_0;
4396 if (ndr_flags & NDR_SCALARS) {
4397 NDR_CHECK(ndr_pull_align(ndr, 5));
4398 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_local));
4399 if (_ptr_local) {
4400 NDR_PULL_ALLOC(ndr, r->local);
4401 } else {
4402 r->local = NULL;
4404 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_remote));
4405 if (_ptr_remote) {
4406 NDR_PULL_ALLOC(ndr, r->remote);
4407 } else {
4408 r->remote = NULL;
4410 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
4411 if (_ptr_password) {
4412 NDR_PULL_ALLOC(ndr, r->password);
4413 } else {
4414 r->password = NULL;
4416 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->status));
4417 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->asg_type));
4418 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ref_count));
4419 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_count));
4420 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
4421 if (_ptr_user_name) {
4422 NDR_PULL_ALLOC(ndr, r->user_name);
4423 } else {
4424 r->user_name = NULL;
4426 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
4427 if (_ptr_domain_name) {
4428 NDR_PULL_ALLOC(ndr, r->domain_name);
4429 } else {
4430 r->domain_name = NULL;
4432 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4434 if (ndr_flags & NDR_BUFFERS) {
4435 if (r->local) {
4436 _mem_save_local_0 = NDR_PULL_GET_MEM_CTX(ndr);
4437 NDR_PULL_SET_MEM_CTX(ndr, r->local, 0);
4438 NDR_CHECK(ndr_pull_array_size(ndr, &r->local));
4439 NDR_CHECK(ndr_pull_array_length(ndr, &r->local));
4440 size_local_1 = ndr_get_array_size(ndr, &r->local);
4441 length_local_1 = ndr_get_array_length(ndr, &r->local);
4442 if (length_local_1 > size_local_1) {
4443 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_local_1, length_local_1);
4445 NDR_CHECK(ndr_check_string_terminator(ndr, length_local_1, sizeof(uint16_t)));
4446 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->local, length_local_1, sizeof(uint16_t), CH_UTF16));
4447 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_local_0, 0);
4449 if (r->remote) {
4450 _mem_save_remote_0 = NDR_PULL_GET_MEM_CTX(ndr);
4451 NDR_PULL_SET_MEM_CTX(ndr, r->remote, 0);
4452 NDR_CHECK(ndr_pull_array_size(ndr, &r->remote));
4453 NDR_CHECK(ndr_pull_array_length(ndr, &r->remote));
4454 size_remote_1 = ndr_get_array_size(ndr, &r->remote);
4455 length_remote_1 = ndr_get_array_length(ndr, &r->remote);
4456 if (length_remote_1 > size_remote_1) {
4457 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_remote_1, length_remote_1);
4459 NDR_CHECK(ndr_check_string_terminator(ndr, length_remote_1, sizeof(uint16_t)));
4460 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->remote, length_remote_1, sizeof(uint16_t), CH_UTF16));
4461 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_remote_0, 0);
4463 if (r->password) {
4464 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
4465 NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
4466 NDR_CHECK(ndr_pull_array_size(ndr, &r->password));
4467 NDR_CHECK(ndr_pull_array_length(ndr, &r->password));
4468 size_password_1 = ndr_get_array_size(ndr, &r->password);
4469 length_password_1 = ndr_get_array_length(ndr, &r->password);
4470 if (length_password_1 > size_password_1) {
4471 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_password_1, length_password_1);
4473 NDR_CHECK(ndr_check_string_terminator(ndr, length_password_1, sizeof(uint16_t)));
4474 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->password, length_password_1, sizeof(uint16_t), CH_UTF16));
4475 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
4477 if (r->user_name) {
4478 _mem_save_user_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
4479 NDR_PULL_SET_MEM_CTX(ndr, r->user_name, 0);
4480 NDR_CHECK(ndr_pull_array_size(ndr, &r->user_name));
4481 NDR_CHECK(ndr_pull_array_length(ndr, &r->user_name));
4482 size_user_name_1 = ndr_get_array_size(ndr, &r->user_name);
4483 length_user_name_1 = ndr_get_array_length(ndr, &r->user_name);
4484 if (length_user_name_1 > size_user_name_1) {
4485 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_user_name_1, length_user_name_1);
4487 NDR_CHECK(ndr_check_string_terminator(ndr, length_user_name_1, sizeof(uint16_t)));
4488 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user_name, length_user_name_1, sizeof(uint16_t), CH_UTF16));
4489 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_name_0, 0);
4491 if (r->domain_name) {
4492 _mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
4493 NDR_PULL_SET_MEM_CTX(ndr, r->domain_name, 0);
4494 NDR_CHECK(ndr_pull_array_size(ndr, &r->domain_name));
4495 NDR_CHECK(ndr_pull_array_length(ndr, &r->domain_name));
4496 size_domain_name_1 = ndr_get_array_size(ndr, &r->domain_name);
4497 length_domain_name_1 = ndr_get_array_length(ndr, &r->domain_name);
4498 if (length_domain_name_1 > size_domain_name_1) {
4499 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
4501 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
4502 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
4503 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
4506 return NDR_ERR_SUCCESS;
4509 _PUBLIC_ void ndr_print_wkssvc_NetrUseInfo2(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo2 *r)
4511 ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo2");
4512 ndr->depth++;
4513 ndr_print_ptr(ndr, "local", r->local);
4514 ndr->depth++;
4515 if (r->local) {
4516 ndr_print_string(ndr, "local", r->local);
4518 ndr->depth--;
4519 ndr_print_ptr(ndr, "remote", r->remote);
4520 ndr->depth++;
4521 if (r->remote) {
4522 ndr_print_string(ndr, "remote", r->remote);
4524 ndr->depth--;
4525 ndr_print_ptr(ndr, "password", r->password);
4526 ndr->depth++;
4527 if (r->password) {
4528 ndr_print_string(ndr, "password", r->password);
4530 ndr->depth--;
4531 ndr_print_uint32(ndr, "status", r->status);
4532 ndr_print_uint32(ndr, "asg_type", r->asg_type);
4533 ndr_print_uint32(ndr, "ref_count", r->ref_count);
4534 ndr_print_uint32(ndr, "use_count", r->use_count);
4535 ndr_print_ptr(ndr, "user_name", r->user_name);
4536 ndr->depth++;
4537 if (r->user_name) {
4538 ndr_print_string(ndr, "user_name", r->user_name);
4540 ndr->depth--;
4541 ndr_print_ptr(ndr, "domain_name", r->domain_name);
4542 ndr->depth++;
4543 if (r->domain_name) {
4544 ndr_print_string(ndr, "domain_name", r->domain_name);
4546 ndr->depth--;
4547 ndr->depth--;
4550 static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo1 *r)
4552 if (ndr_flags & NDR_SCALARS) {
4553 NDR_CHECK(ndr_push_align(ndr, 5));
4554 NDR_CHECK(ndr_push_unique_ptr(ndr, r->local));
4555 NDR_CHECK(ndr_push_unique_ptr(ndr, r->remote));
4556 NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
4557 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->status));
4558 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->asg_type));
4559 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ref_count));
4560 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->use_count));
4561 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4563 if (ndr_flags & NDR_BUFFERS) {
4564 if (r->local) {
4565 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
4566 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4567 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
4568 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->local, ndr_charset_length(r->local, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4570 if (r->remote) {
4571 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
4572 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4573 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
4574 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->remote, ndr_charset_length(r->remote, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4576 if (r->password) {
4577 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
4578 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4579 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
4580 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->password, ndr_charset_length(r->password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4583 return NDR_ERR_SUCCESS;
4586 static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo1 *r)
4588 uint32_t _ptr_local;
4589 uint32_t size_local_1 = 0;
4590 uint32_t length_local_1 = 0;
4591 TALLOC_CTX *_mem_save_local_0;
4592 uint32_t _ptr_remote;
4593 uint32_t size_remote_1 = 0;
4594 uint32_t length_remote_1 = 0;
4595 TALLOC_CTX *_mem_save_remote_0;
4596 uint32_t _ptr_password;
4597 uint32_t size_password_1 = 0;
4598 uint32_t length_password_1 = 0;
4599 TALLOC_CTX *_mem_save_password_0;
4600 if (ndr_flags & NDR_SCALARS) {
4601 NDR_CHECK(ndr_pull_align(ndr, 5));
4602 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_local));
4603 if (_ptr_local) {
4604 NDR_PULL_ALLOC(ndr, r->local);
4605 } else {
4606 r->local = NULL;
4608 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_remote));
4609 if (_ptr_remote) {
4610 NDR_PULL_ALLOC(ndr, r->remote);
4611 } else {
4612 r->remote = NULL;
4614 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
4615 if (_ptr_password) {
4616 NDR_PULL_ALLOC(ndr, r->password);
4617 } else {
4618 r->password = NULL;
4620 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->status));
4621 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->asg_type));
4622 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ref_count));
4623 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->use_count));
4624 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4626 if (ndr_flags & NDR_BUFFERS) {
4627 if (r->local) {
4628 _mem_save_local_0 = NDR_PULL_GET_MEM_CTX(ndr);
4629 NDR_PULL_SET_MEM_CTX(ndr, r->local, 0);
4630 NDR_CHECK(ndr_pull_array_size(ndr, &r->local));
4631 NDR_CHECK(ndr_pull_array_length(ndr, &r->local));
4632 size_local_1 = ndr_get_array_size(ndr, &r->local);
4633 length_local_1 = ndr_get_array_length(ndr, &r->local);
4634 if (length_local_1 > size_local_1) {
4635 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_local_1, length_local_1);
4637 NDR_CHECK(ndr_check_string_terminator(ndr, length_local_1, sizeof(uint16_t)));
4638 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->local, length_local_1, sizeof(uint16_t), CH_UTF16));
4639 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_local_0, 0);
4641 if (r->remote) {
4642 _mem_save_remote_0 = NDR_PULL_GET_MEM_CTX(ndr);
4643 NDR_PULL_SET_MEM_CTX(ndr, r->remote, 0);
4644 NDR_CHECK(ndr_pull_array_size(ndr, &r->remote));
4645 NDR_CHECK(ndr_pull_array_length(ndr, &r->remote));
4646 size_remote_1 = ndr_get_array_size(ndr, &r->remote);
4647 length_remote_1 = ndr_get_array_length(ndr, &r->remote);
4648 if (length_remote_1 > size_remote_1) {
4649 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_remote_1, length_remote_1);
4651 NDR_CHECK(ndr_check_string_terminator(ndr, length_remote_1, sizeof(uint16_t)));
4652 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->remote, length_remote_1, sizeof(uint16_t), CH_UTF16));
4653 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_remote_0, 0);
4655 if (r->password) {
4656 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
4657 NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
4658 NDR_CHECK(ndr_pull_array_size(ndr, &r->password));
4659 NDR_CHECK(ndr_pull_array_length(ndr, &r->password));
4660 size_password_1 = ndr_get_array_size(ndr, &r->password);
4661 length_password_1 = ndr_get_array_length(ndr, &r->password);
4662 if (length_password_1 > size_password_1) {
4663 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_password_1, length_password_1);
4665 NDR_CHECK(ndr_check_string_terminator(ndr, length_password_1, sizeof(uint16_t)));
4666 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->password, length_password_1, sizeof(uint16_t), CH_UTF16));
4667 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
4670 return NDR_ERR_SUCCESS;
4673 _PUBLIC_ void ndr_print_wkssvc_NetrUseInfo1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo1 *r)
4675 ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo1");
4676 ndr->depth++;
4677 ndr_print_ptr(ndr, "local", r->local);
4678 ndr->depth++;
4679 if (r->local) {
4680 ndr_print_string(ndr, "local", r->local);
4682 ndr->depth--;
4683 ndr_print_ptr(ndr, "remote", r->remote);
4684 ndr->depth++;
4685 if (r->remote) {
4686 ndr_print_string(ndr, "remote", r->remote);
4688 ndr->depth--;
4689 ndr_print_ptr(ndr, "password", r->password);
4690 ndr->depth++;
4691 if (r->password) {
4692 ndr_print_string(ndr, "password", r->password);
4694 ndr->depth--;
4695 ndr_print_uint32(ndr, "status", r->status);
4696 ndr_print_uint32(ndr, "asg_type", r->asg_type);
4697 ndr_print_uint32(ndr, "ref_count", r->ref_count);
4698 ndr_print_uint32(ndr, "use_count", r->use_count);
4699 ndr->depth--;
4702 static enum ndr_err_code ndr_push_wkssvc_NetrUseInfo0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseInfo0 *r)
4704 if (ndr_flags & NDR_SCALARS) {
4705 NDR_CHECK(ndr_push_align(ndr, 5));
4706 NDR_CHECK(ndr_push_unique_ptr(ndr, r->local));
4707 NDR_CHECK(ndr_push_unique_ptr(ndr, r->remote));
4708 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
4710 if (ndr_flags & NDR_BUFFERS) {
4711 if (r->local) {
4712 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
4713 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4714 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->local, CH_UTF16)));
4715 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->local, ndr_charset_length(r->local, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4717 if (r->remote) {
4718 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
4719 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
4720 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->remote, CH_UTF16)));
4721 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->remote, ndr_charset_length(r->remote, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4724 return NDR_ERR_SUCCESS;
4727 static enum ndr_err_code ndr_pull_wkssvc_NetrUseInfo0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseInfo0 *r)
4729 uint32_t _ptr_local;
4730 uint32_t size_local_1 = 0;
4731 uint32_t length_local_1 = 0;
4732 TALLOC_CTX *_mem_save_local_0;
4733 uint32_t _ptr_remote;
4734 uint32_t size_remote_1 = 0;
4735 uint32_t length_remote_1 = 0;
4736 TALLOC_CTX *_mem_save_remote_0;
4737 if (ndr_flags & NDR_SCALARS) {
4738 NDR_CHECK(ndr_pull_align(ndr, 5));
4739 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_local));
4740 if (_ptr_local) {
4741 NDR_PULL_ALLOC(ndr, r->local);
4742 } else {
4743 r->local = NULL;
4745 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_remote));
4746 if (_ptr_remote) {
4747 NDR_PULL_ALLOC(ndr, r->remote);
4748 } else {
4749 r->remote = NULL;
4751 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
4753 if (ndr_flags & NDR_BUFFERS) {
4754 if (r->local) {
4755 _mem_save_local_0 = NDR_PULL_GET_MEM_CTX(ndr);
4756 NDR_PULL_SET_MEM_CTX(ndr, r->local, 0);
4757 NDR_CHECK(ndr_pull_array_size(ndr, &r->local));
4758 NDR_CHECK(ndr_pull_array_length(ndr, &r->local));
4759 size_local_1 = ndr_get_array_size(ndr, &r->local);
4760 length_local_1 = ndr_get_array_length(ndr, &r->local);
4761 if (length_local_1 > size_local_1) {
4762 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_local_1, length_local_1);
4764 NDR_CHECK(ndr_check_string_terminator(ndr, length_local_1, sizeof(uint16_t)));
4765 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->local, length_local_1, sizeof(uint16_t), CH_UTF16));
4766 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_local_0, 0);
4768 if (r->remote) {
4769 _mem_save_remote_0 = NDR_PULL_GET_MEM_CTX(ndr);
4770 NDR_PULL_SET_MEM_CTX(ndr, r->remote, 0);
4771 NDR_CHECK(ndr_pull_array_size(ndr, &r->remote));
4772 NDR_CHECK(ndr_pull_array_length(ndr, &r->remote));
4773 size_remote_1 = ndr_get_array_size(ndr, &r->remote);
4774 length_remote_1 = ndr_get_array_length(ndr, &r->remote);
4775 if (length_remote_1 > size_remote_1) {
4776 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_remote_1, length_remote_1);
4778 NDR_CHECK(ndr_check_string_terminator(ndr, length_remote_1, sizeof(uint16_t)));
4779 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->remote, length_remote_1, sizeof(uint16_t), CH_UTF16));
4780 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_remote_0, 0);
4783 return NDR_ERR_SUCCESS;
4786 _PUBLIC_ void ndr_print_wkssvc_NetrUseInfo0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseInfo0 *r)
4788 ndr_print_struct(ndr, name, "wkssvc_NetrUseInfo0");
4789 ndr->depth++;
4790 ndr_print_ptr(ndr, "local", r->local);
4791 ndr->depth++;
4792 if (r->local) {
4793 ndr_print_string(ndr, "local", r->local);
4795 ndr->depth--;
4796 ndr_print_ptr(ndr, "remote", r->remote);
4797 ndr->depth++;
4798 if (r->remote) {
4799 ndr_print_string(ndr, "remote", r->remote);
4801 ndr->depth--;
4802 ndr->depth--;
4805 static enum ndr_err_code ndr_push_wkssvc_NetrUseGetInfoCtr(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetrUseGetInfoCtr *r)
4807 if (ndr_flags & NDR_SCALARS) {
4808 int level = ndr_push_get_switch_value(ndr, r);
4809 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
4810 NDR_CHECK(ndr_push_union_align(ndr, 5));
4811 switch (level) {
4812 case 0: {
4813 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
4814 break; }
4816 case 1: {
4817 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
4818 break; }
4820 case 2: {
4821 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info2));
4822 break; }
4824 case 3: {
4825 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info3));
4826 break; }
4828 default:
4829 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4832 if (ndr_flags & NDR_BUFFERS) {
4833 int level = ndr_push_get_switch_value(ndr, r);
4834 switch (level) {
4835 case 0:
4836 if (r->info0) {
4837 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
4839 break;
4841 case 1:
4842 if (r->info1) {
4843 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
4845 break;
4847 case 2:
4848 if (r->info2) {
4849 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
4851 break;
4853 case 3:
4854 if (r->info3) {
4855 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
4857 break;
4859 default:
4860 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4863 return NDR_ERR_SUCCESS;
4866 static enum ndr_err_code ndr_pull_wkssvc_NetrUseGetInfoCtr(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetrUseGetInfoCtr *r)
4868 int level;
4869 uint32_t _level;
4870 TALLOC_CTX *_mem_save_info0_0;
4871 uint32_t _ptr_info0;
4872 TALLOC_CTX *_mem_save_info1_0;
4873 uint32_t _ptr_info1;
4874 TALLOC_CTX *_mem_save_info2_0;
4875 uint32_t _ptr_info2;
4876 TALLOC_CTX *_mem_save_info3_0;
4877 uint32_t _ptr_info3;
4878 level = ndr_pull_get_switch_value(ndr, r);
4879 if (ndr_flags & NDR_SCALARS) {
4880 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
4881 if (_level != level) {
4882 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
4884 NDR_CHECK(ndr_pull_union_align(ndr, 5));
4885 switch (level) {
4886 case 0: {
4887 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
4888 if (_ptr_info0) {
4889 NDR_PULL_ALLOC(ndr, r->info0);
4890 } else {
4891 r->info0 = NULL;
4893 break; }
4895 case 1: {
4896 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
4897 if (_ptr_info1) {
4898 NDR_PULL_ALLOC(ndr, r->info1);
4899 } else {
4900 r->info1 = NULL;
4902 break; }
4904 case 2: {
4905 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info2));
4906 if (_ptr_info2) {
4907 NDR_PULL_ALLOC(ndr, r->info2);
4908 } else {
4909 r->info2 = NULL;
4911 break; }
4913 case 3: {
4914 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info3));
4915 if (_ptr_info3) {
4916 NDR_PULL_ALLOC(ndr, r->info3);
4917 } else {
4918 r->info3 = NULL;
4920 break; }
4922 default:
4923 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4926 if (ndr_flags & NDR_BUFFERS) {
4927 switch (level) {
4928 case 0:
4929 if (r->info0) {
4930 _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
4931 NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
4932 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
4933 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
4935 break;
4937 case 1:
4938 if (r->info1) {
4939 _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
4940 NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
4941 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
4942 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
4944 break;
4946 case 2:
4947 if (r->info2) {
4948 _mem_save_info2_0 = NDR_PULL_GET_MEM_CTX(ndr);
4949 NDR_PULL_SET_MEM_CTX(ndr, r->info2, 0);
4950 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
4951 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info2_0, 0);
4953 break;
4955 case 3:
4956 if (r->info3) {
4957 _mem_save_info3_0 = NDR_PULL_GET_MEM_CTX(ndr);
4958 NDR_PULL_SET_MEM_CTX(ndr, r->info3, 0);
4959 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
4960 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info3_0, 0);
4962 break;
4964 default:
4965 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
4968 return NDR_ERR_SUCCESS;
4971 _PUBLIC_ void ndr_print_wkssvc_NetrUseGetInfoCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetrUseGetInfoCtr *r)
4973 int level;
4974 level = ndr_print_get_switch_value(ndr, r);
4975 ndr_print_union(ndr, name, level, "wkssvc_NetrUseGetInfoCtr");
4976 switch (level) {
4977 case 0:
4978 ndr_print_ptr(ndr, "info0", r->info0);
4979 ndr->depth++;
4980 if (r->info0) {
4981 ndr_print_wkssvc_NetrUseInfo0(ndr, "info0", r->info0);
4983 ndr->depth--;
4984 break;
4986 case 1:
4987 ndr_print_ptr(ndr, "info1", r->info1);
4988 ndr->depth++;
4989 if (r->info1) {
4990 ndr_print_wkssvc_NetrUseInfo1(ndr, "info1", r->info1);
4992 ndr->depth--;
4993 break;
4995 case 2:
4996 ndr_print_ptr(ndr, "info2", r->info2);
4997 ndr->depth++;
4998 if (r->info2) {
4999 ndr_print_wkssvc_NetrUseInfo2(ndr, "info2", r->info2);
5001 ndr->depth--;
5002 break;
5004 case 3:
5005 ndr_print_ptr(ndr, "info3", r->info3);
5006 ndr->depth++;
5007 if (r->info3) {
5008 ndr_print_wkssvc_NetrUseInfo3(ndr, "info3", r->info3);
5010 ndr->depth--;
5011 break;
5013 default:
5014 ndr_print_bad_level(ndr, name, level);
5018 static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr2(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumCtr2 *r)
5020 uint32_t cntr_array_1;
5021 if (ndr_flags & NDR_SCALARS) {
5022 NDR_CHECK(ndr_push_align(ndr, 5));
5023 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
5024 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
5025 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
5027 if (ndr_flags & NDR_BUFFERS) {
5028 if (r->array) {
5029 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
5030 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
5031 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
5033 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
5034 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
5038 return NDR_ERR_SUCCESS;
5041 static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr2(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumCtr2 *r)
5043 uint32_t _ptr_array;
5044 uint32_t size_array_1 = 0;
5045 uint32_t cntr_array_1;
5046 TALLOC_CTX *_mem_save_array_0;
5047 TALLOC_CTX *_mem_save_array_1;
5048 if (ndr_flags & NDR_SCALARS) {
5049 NDR_CHECK(ndr_pull_align(ndr, 5));
5050 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
5051 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
5052 if (_ptr_array) {
5053 NDR_PULL_ALLOC(ndr, r->array);
5054 } else {
5055 r->array = NULL;
5057 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
5059 if (ndr_flags & NDR_BUFFERS) {
5060 if (r->array) {
5061 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
5062 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
5063 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
5064 size_array_1 = ndr_get_array_size(ndr, &r->array);
5065 NDR_PULL_ALLOC_N(ndr, r->array, size_array_1);
5066 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
5067 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
5068 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
5069 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
5071 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
5072 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
5074 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
5075 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
5077 if (r->array) {
5078 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
5081 return NDR_ERR_SUCCESS;
5084 _PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr2(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr2 *r)
5086 uint32_t cntr_array_1;
5087 ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumCtr2");
5088 ndr->depth++;
5089 ndr_print_uint32(ndr, "count", r->count);
5090 ndr_print_ptr(ndr, "array", r->array);
5091 ndr->depth++;
5092 if (r->array) {
5093 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
5094 ndr->depth++;
5095 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
5096 char *idx_1=NULL;
5097 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
5098 ndr_print_wkssvc_NetrUseInfo2(ndr, "array", &r->array[cntr_array_1]);
5099 free(idx_1);
5102 ndr->depth--;
5104 ndr->depth--;
5105 ndr->depth--;
5108 static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr1(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumCtr1 *r)
5110 uint32_t cntr_array_1;
5111 if (ndr_flags & NDR_SCALARS) {
5112 NDR_CHECK(ndr_push_align(ndr, 5));
5113 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
5114 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
5115 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
5117 if (ndr_flags & NDR_BUFFERS) {
5118 if (r->array) {
5119 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
5120 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
5121 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
5123 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
5124 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
5128 return NDR_ERR_SUCCESS;
5131 static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr1(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumCtr1 *r)
5133 uint32_t _ptr_array;
5134 uint32_t size_array_1 = 0;
5135 uint32_t cntr_array_1;
5136 TALLOC_CTX *_mem_save_array_0;
5137 TALLOC_CTX *_mem_save_array_1;
5138 if (ndr_flags & NDR_SCALARS) {
5139 NDR_CHECK(ndr_pull_align(ndr, 5));
5140 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
5141 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
5142 if (_ptr_array) {
5143 NDR_PULL_ALLOC(ndr, r->array);
5144 } else {
5145 r->array = NULL;
5147 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
5149 if (ndr_flags & NDR_BUFFERS) {
5150 if (r->array) {
5151 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
5152 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
5153 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
5154 size_array_1 = ndr_get_array_size(ndr, &r->array);
5155 NDR_PULL_ALLOC_N(ndr, r->array, size_array_1);
5156 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
5157 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
5158 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
5159 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
5161 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
5162 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
5164 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
5165 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
5167 if (r->array) {
5168 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
5171 return NDR_ERR_SUCCESS;
5174 _PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr1(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr1 *r)
5176 uint32_t cntr_array_1;
5177 ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumCtr1");
5178 ndr->depth++;
5179 ndr_print_uint32(ndr, "count", r->count);
5180 ndr_print_ptr(ndr, "array", r->array);
5181 ndr->depth++;
5182 if (r->array) {
5183 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
5184 ndr->depth++;
5185 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
5186 char *idx_1=NULL;
5187 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
5188 ndr_print_wkssvc_NetrUseInfo1(ndr, "array", &r->array[cntr_array_1]);
5189 free(idx_1);
5192 ndr->depth--;
5194 ndr->depth--;
5195 ndr->depth--;
5198 static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr0(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumCtr0 *r)
5200 uint32_t cntr_array_1;
5201 if (ndr_flags & NDR_SCALARS) {
5202 NDR_CHECK(ndr_push_align(ndr, 5));
5203 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
5204 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
5205 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
5207 if (ndr_flags & NDR_BUFFERS) {
5208 if (r->array) {
5209 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
5210 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
5211 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
5213 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
5214 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
5218 return NDR_ERR_SUCCESS;
5221 static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr0(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumCtr0 *r)
5223 uint32_t _ptr_array;
5224 uint32_t size_array_1 = 0;
5225 uint32_t cntr_array_1;
5226 TALLOC_CTX *_mem_save_array_0;
5227 TALLOC_CTX *_mem_save_array_1;
5228 if (ndr_flags & NDR_SCALARS) {
5229 NDR_CHECK(ndr_pull_align(ndr, 5));
5230 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
5231 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
5232 if (_ptr_array) {
5233 NDR_PULL_ALLOC(ndr, r->array);
5234 } else {
5235 r->array = NULL;
5237 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
5239 if (ndr_flags & NDR_BUFFERS) {
5240 if (r->array) {
5241 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
5242 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
5243 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
5244 size_array_1 = ndr_get_array_size(ndr, &r->array);
5245 NDR_PULL_ALLOC_N(ndr, r->array, size_array_1);
5246 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
5247 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
5248 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
5249 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
5251 for (cntr_array_1 = 0; cntr_array_1 < size_array_1; cntr_array_1++) {
5252 NDR_CHECK(ndr_pull_wkssvc_NetrUseInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
5254 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
5255 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
5257 if (r->array) {
5258 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
5261 return NDR_ERR_SUCCESS;
5264 _PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr0(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumCtr0 *r)
5266 uint32_t cntr_array_1;
5267 ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumCtr0");
5268 ndr->depth++;
5269 ndr_print_uint32(ndr, "count", r->count);
5270 ndr_print_ptr(ndr, "array", r->array);
5271 ndr->depth++;
5272 if (r->array) {
5273 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
5274 ndr->depth++;
5275 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
5276 char *idx_1=NULL;
5277 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
5278 ndr_print_wkssvc_NetrUseInfo0(ndr, "array", &r->array[cntr_array_1]);
5279 free(idx_1);
5282 ndr->depth--;
5284 ndr->depth--;
5285 ndr->depth--;
5288 static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumCtr(struct ndr_push *ndr, int ndr_flags, const union wkssvc_NetrUseEnumCtr *r)
5290 if (ndr_flags & NDR_SCALARS) {
5291 int level = ndr_push_get_switch_value(ndr, r);
5292 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
5293 NDR_CHECK(ndr_push_union_align(ndr, 5));
5294 switch (level) {
5295 case 0: {
5296 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
5297 break; }
5299 case 1: {
5300 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
5301 break; }
5303 case 2: {
5304 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr2));
5305 break; }
5307 default:
5308 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5311 if (ndr_flags & NDR_BUFFERS) {
5312 int level = ndr_push_get_switch_value(ndr, r);
5313 switch (level) {
5314 case 0:
5315 if (r->ctr0) {
5316 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
5318 break;
5320 case 1:
5321 if (r->ctr1) {
5322 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
5324 break;
5326 case 2:
5327 if (r->ctr2) {
5328 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
5330 break;
5332 default:
5333 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5336 return NDR_ERR_SUCCESS;
5339 static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumCtr(struct ndr_pull *ndr, int ndr_flags, union wkssvc_NetrUseEnumCtr *r)
5341 int level;
5342 uint32_t _level;
5343 TALLOC_CTX *_mem_save_ctr0_0;
5344 uint32_t _ptr_ctr0;
5345 TALLOC_CTX *_mem_save_ctr1_0;
5346 uint32_t _ptr_ctr1;
5347 TALLOC_CTX *_mem_save_ctr2_0;
5348 uint32_t _ptr_ctr2;
5349 level = ndr_pull_get_switch_value(ndr, r);
5350 if (ndr_flags & NDR_SCALARS) {
5351 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
5352 if (_level != level) {
5353 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r at %s", _level, __location__);
5355 NDR_CHECK(ndr_pull_union_align(ndr, 5));
5356 switch (level) {
5357 case 0: {
5358 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
5359 if (_ptr_ctr0) {
5360 NDR_PULL_ALLOC(ndr, r->ctr0);
5361 } else {
5362 r->ctr0 = NULL;
5364 break; }
5366 case 1: {
5367 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
5368 if (_ptr_ctr1) {
5369 NDR_PULL_ALLOC(ndr, r->ctr1);
5370 } else {
5371 r->ctr1 = NULL;
5373 break; }
5375 case 2: {
5376 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr2));
5377 if (_ptr_ctr2) {
5378 NDR_PULL_ALLOC(ndr, r->ctr2);
5379 } else {
5380 r->ctr2 = NULL;
5382 break; }
5384 default:
5385 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5388 if (ndr_flags & NDR_BUFFERS) {
5389 switch (level) {
5390 case 0:
5391 if (r->ctr0) {
5392 _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
5393 NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
5394 NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
5395 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
5397 break;
5399 case 1:
5400 if (r->ctr1) {
5401 _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
5402 NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
5403 NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
5404 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
5406 break;
5408 case 2:
5409 if (r->ctr2) {
5410 _mem_save_ctr2_0 = NDR_PULL_GET_MEM_CTX(ndr);
5411 NDR_PULL_SET_MEM_CTX(ndr, r->ctr2, 0);
5412 NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
5413 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr2_0, 0);
5415 break;
5417 default:
5418 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u at %s", level, __location__);
5421 return NDR_ERR_SUCCESS;
5424 _PUBLIC_ void ndr_print_wkssvc_NetrUseEnumCtr(struct ndr_print *ndr, const char *name, const union wkssvc_NetrUseEnumCtr *r)
5426 int level;
5427 level = ndr_print_get_switch_value(ndr, r);
5428 ndr_print_union(ndr, name, level, "wkssvc_NetrUseEnumCtr");
5429 switch (level) {
5430 case 0:
5431 ndr_print_ptr(ndr, "ctr0", r->ctr0);
5432 ndr->depth++;
5433 if (r->ctr0) {
5434 ndr_print_wkssvc_NetrUseEnumCtr0(ndr, "ctr0", r->ctr0);
5436 ndr->depth--;
5437 break;
5439 case 1:
5440 ndr_print_ptr(ndr, "ctr1", r->ctr1);
5441 ndr->depth++;
5442 if (r->ctr1) {
5443 ndr_print_wkssvc_NetrUseEnumCtr1(ndr, "ctr1", r->ctr1);
5445 ndr->depth--;
5446 break;
5448 case 2:
5449 ndr_print_ptr(ndr, "ctr2", r->ctr2);
5450 ndr->depth++;
5451 if (r->ctr2) {
5452 ndr_print_wkssvc_NetrUseEnumCtr2(ndr, "ctr2", r->ctr2);
5454 ndr->depth--;
5455 break;
5457 default:
5458 ndr_print_bad_level(ndr, name, level);
5462 static enum ndr_err_code ndr_push_wkssvc_NetrUseEnumInfo(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrUseEnumInfo *r)
5464 if (ndr_flags & NDR_SCALARS) {
5465 NDR_CHECK(ndr_push_align(ndr, 5));
5466 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
5467 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
5468 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr(ndr, NDR_SCALARS, &r->ctr));
5469 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
5471 if (ndr_flags & NDR_BUFFERS) {
5472 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr(ndr, NDR_BUFFERS, &r->ctr));
5474 return NDR_ERR_SUCCESS;
5477 static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnumInfo(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrUseEnumInfo *r)
5479 if (ndr_flags & NDR_SCALARS) {
5480 NDR_CHECK(ndr_pull_align(ndr, 5));
5481 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
5482 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
5483 NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr(ndr, NDR_SCALARS, &r->ctr));
5484 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
5486 if (ndr_flags & NDR_BUFFERS) {
5487 NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumCtr(ndr, NDR_BUFFERS, &r->ctr));
5489 return NDR_ERR_SUCCESS;
5492 _PUBLIC_ void ndr_print_wkssvc_NetrUseEnumInfo(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrUseEnumInfo *r)
5494 ndr_print_struct(ndr, name, "wkssvc_NetrUseEnumInfo");
5495 ndr->depth++;
5496 ndr_print_uint32(ndr, "level", r->level);
5497 ndr_print_set_switch_value(ndr, &r->ctr, r->level);
5498 ndr_print_wkssvc_NetrUseEnumCtr(ndr, "ctr", &r->ctr);
5499 ndr->depth--;
5502 static enum ndr_err_code ndr_push_wkssvc_NetrWorkstationStatistics(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_NetrWorkstationStatistics *r)
5504 if (ndr_flags & NDR_SCALARS) {
5505 NDR_CHECK(ndr_push_align(ndr, 8));
5506 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown1));
5507 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown2));
5508 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown3));
5509 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown4));
5510 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown5));
5511 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown6));
5512 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown7));
5513 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown8));
5514 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown9));
5515 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown10));
5516 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown11));
5517 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown12));
5518 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown13));
5519 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown14));
5520 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown15));
5521 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown16));
5522 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown17));
5523 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown18));
5524 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown19));
5525 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown20));
5526 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown21));
5527 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown22));
5528 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown23));
5529 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown24));
5530 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown25));
5531 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown26));
5532 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown27));
5533 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown28));
5534 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown29));
5535 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown30));
5536 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown31));
5537 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown32));
5538 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown33));
5539 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown34));
5540 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown35));
5541 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown36));
5542 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown37));
5543 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown38));
5544 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown39));
5545 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown40));
5546 NDR_CHECK(ndr_push_trailer_align(ndr, 8));
5548 if (ndr_flags & NDR_BUFFERS) {
5550 return NDR_ERR_SUCCESS;
5553 static enum ndr_err_code ndr_pull_wkssvc_NetrWorkstationStatistics(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_NetrWorkstationStatistics *r)
5555 if (ndr_flags & NDR_SCALARS) {
5556 NDR_CHECK(ndr_pull_align(ndr, 8));
5557 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown1));
5558 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown2));
5559 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown3));
5560 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown4));
5561 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown5));
5562 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown6));
5563 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown7));
5564 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown8));
5565 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown9));
5566 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown10));
5567 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown11));
5568 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown12));
5569 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown13));
5570 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown14));
5571 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown15));
5572 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown16));
5573 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown17));
5574 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown18));
5575 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown19));
5576 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown20));
5577 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown21));
5578 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown22));
5579 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown23));
5580 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown24));
5581 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown25));
5582 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown26));
5583 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown27));
5584 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown28));
5585 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown29));
5586 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown30));
5587 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown31));
5588 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown32));
5589 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown33));
5590 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown34));
5591 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown35));
5592 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown36));
5593 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown37));
5594 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown38));
5595 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown39));
5596 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown40));
5597 NDR_CHECK(ndr_pull_trailer_align(ndr, 8));
5599 if (ndr_flags & NDR_BUFFERS) {
5601 return NDR_ERR_SUCCESS;
5604 _PUBLIC_ void ndr_print_wkssvc_NetrWorkstationStatistics(struct ndr_print *ndr, const char *name, const struct wkssvc_NetrWorkstationStatistics *r)
5606 ndr_print_struct(ndr, name, "wkssvc_NetrWorkstationStatistics");
5607 ndr->depth++;
5608 ndr_print_hyper(ndr, "unknown1", r->unknown1);
5609 ndr_print_hyper(ndr, "unknown2", r->unknown2);
5610 ndr_print_hyper(ndr, "unknown3", r->unknown3);
5611 ndr_print_hyper(ndr, "unknown4", r->unknown4);
5612 ndr_print_hyper(ndr, "unknown5", r->unknown5);
5613 ndr_print_hyper(ndr, "unknown6", r->unknown6);
5614 ndr_print_hyper(ndr, "unknown7", r->unknown7);
5615 ndr_print_hyper(ndr, "unknown8", r->unknown8);
5616 ndr_print_hyper(ndr, "unknown9", r->unknown9);
5617 ndr_print_hyper(ndr, "unknown10", r->unknown10);
5618 ndr_print_hyper(ndr, "unknown11", r->unknown11);
5619 ndr_print_hyper(ndr, "unknown12", r->unknown12);
5620 ndr_print_hyper(ndr, "unknown13", r->unknown13);
5621 ndr_print_uint32(ndr, "unknown14", r->unknown14);
5622 ndr_print_uint32(ndr, "unknown15", r->unknown15);
5623 ndr_print_uint32(ndr, "unknown16", r->unknown16);
5624 ndr_print_uint32(ndr, "unknown17", r->unknown17);
5625 ndr_print_uint32(ndr, "unknown18", r->unknown18);
5626 ndr_print_uint32(ndr, "unknown19", r->unknown19);
5627 ndr_print_uint32(ndr, "unknown20", r->unknown20);
5628 ndr_print_uint32(ndr, "unknown21", r->unknown21);
5629 ndr_print_uint32(ndr, "unknown22", r->unknown22);
5630 ndr_print_uint32(ndr, "unknown23", r->unknown23);
5631 ndr_print_uint32(ndr, "unknown24", r->unknown24);
5632 ndr_print_uint32(ndr, "unknown25", r->unknown25);
5633 ndr_print_uint32(ndr, "unknown26", r->unknown26);
5634 ndr_print_uint32(ndr, "unknown27", r->unknown27);
5635 ndr_print_uint32(ndr, "unknown28", r->unknown28);
5636 ndr_print_uint32(ndr, "unknown29", r->unknown29);
5637 ndr_print_uint32(ndr, "unknown30", r->unknown30);
5638 ndr_print_uint32(ndr, "unknown31", r->unknown31);
5639 ndr_print_uint32(ndr, "unknown32", r->unknown32);
5640 ndr_print_uint32(ndr, "unknown33", r->unknown33);
5641 ndr_print_uint32(ndr, "unknown34", r->unknown34);
5642 ndr_print_uint32(ndr, "unknown35", r->unknown35);
5643 ndr_print_uint32(ndr, "unknown36", r->unknown36);
5644 ndr_print_uint32(ndr, "unknown37", r->unknown37);
5645 ndr_print_uint32(ndr, "unknown38", r->unknown38);
5646 ndr_print_uint32(ndr, "unknown39", r->unknown39);
5647 ndr_print_uint32(ndr, "unknown40", r->unknown40);
5648 ndr->depth--;
5651 static enum ndr_err_code ndr_push_wkssvc_renameflags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
5653 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
5654 return NDR_ERR_SUCCESS;
5657 static enum ndr_err_code ndr_pull_wkssvc_renameflags(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
5659 uint32_t v;
5660 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
5661 *r = v;
5662 return NDR_ERR_SUCCESS;
5665 _PUBLIC_ void ndr_print_wkssvc_renameflags(struct ndr_print *ndr, const char *name, uint32_t r)
5667 ndr_print_uint32(ndr, name, r);
5668 ndr->depth++;
5669 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE", WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, r);
5670 ndr->depth--;
5673 static enum ndr_err_code ndr_push_wkssvc_NetValidateNameType(struct ndr_push *ndr, int ndr_flags, enum wkssvc_NetValidateNameType r)
5675 NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
5676 return NDR_ERR_SUCCESS;
5679 static enum ndr_err_code ndr_pull_wkssvc_NetValidateNameType(struct ndr_pull *ndr, int ndr_flags, enum wkssvc_NetValidateNameType *r)
5681 uint16_t v;
5682 NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
5683 *r = v;
5684 return NDR_ERR_SUCCESS;
5687 _PUBLIC_ void ndr_print_wkssvc_NetValidateNameType(struct ndr_print *ndr, const char *name, enum wkssvc_NetValidateNameType r)
5689 const char *val = NULL;
5691 switch (r) {
5692 case NetSetupUnknown: val = "NetSetupUnknown"; break;
5693 case NetSetupMachine: val = "NetSetupMachine"; break;
5694 case NetSetupWorkgroup: val = "NetSetupWorkgroup"; break;
5695 case NetSetupDomain: val = "NetSetupDomain"; break;
5696 case NetSetupNonExistentDomain: val = "NetSetupNonExistentDomain"; break;
5697 case NetSetupDnsMachine: val = "NetSetupDnsMachine"; break;
5699 ndr_print_enum(ndr, name, "ENUM", val, r);
5702 static enum ndr_err_code ndr_push_wkssvc_NetJoinStatus(struct ndr_push *ndr, int ndr_flags, enum wkssvc_NetJoinStatus r)
5704 NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
5705 return NDR_ERR_SUCCESS;
5708 static enum ndr_err_code ndr_pull_wkssvc_NetJoinStatus(struct ndr_pull *ndr, int ndr_flags, enum wkssvc_NetJoinStatus *r)
5710 uint16_t v;
5711 NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
5712 *r = v;
5713 return NDR_ERR_SUCCESS;
5716 _PUBLIC_ void ndr_print_wkssvc_NetJoinStatus(struct ndr_print *ndr, const char *name, enum wkssvc_NetJoinStatus r)
5718 const char *val = NULL;
5720 switch (r) {
5721 case NET_SETUP_UNKNOWN_STATUS: val = "NET_SETUP_UNKNOWN_STATUS"; break;
5722 case NET_SETUP_UNJOINED: val = "NET_SETUP_UNJOINED"; break;
5723 case NET_SETUP_WORKGROUP_NAME: val = "NET_SETUP_WORKGROUP_NAME"; break;
5724 case NET_SETUP_DOMAIN_NAME: val = "NET_SETUP_DOMAIN_NAME"; break;
5726 ndr_print_enum(ndr, name, "ENUM", val, r);
5729 static enum ndr_err_code ndr_push_wkssvc_PasswordBuffer(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_PasswordBuffer *r)
5732 uint32_t _flags_save_STRUCT = ndr->flags;
5733 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
5734 if (ndr_flags & NDR_SCALARS) {
5735 NDR_CHECK(ndr_push_align(ndr, 1));
5736 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, 524));
5737 NDR_CHECK(ndr_push_trailer_align(ndr, 1));
5739 if (ndr_flags & NDR_BUFFERS) {
5741 ndr->flags = _flags_save_STRUCT;
5743 return NDR_ERR_SUCCESS;
5746 static enum ndr_err_code ndr_pull_wkssvc_PasswordBuffer(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_PasswordBuffer *r)
5748 uint32_t size_data_0 = 0;
5750 uint32_t _flags_save_STRUCT = ndr->flags;
5751 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
5752 if (ndr_flags & NDR_SCALARS) {
5753 NDR_CHECK(ndr_pull_align(ndr, 1));
5754 size_data_0 = 524;
5755 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, size_data_0));
5756 NDR_CHECK(ndr_pull_trailer_align(ndr, 1));
5758 if (ndr_flags & NDR_BUFFERS) {
5760 ndr->flags = _flags_save_STRUCT;
5762 return NDR_ERR_SUCCESS;
5765 _PUBLIC_ void ndr_print_wkssvc_PasswordBuffer(struct ndr_print *ndr, const char *name, const struct wkssvc_PasswordBuffer *r)
5767 ndr_print_struct(ndr, name, "wkssvc_PasswordBuffer");
5769 uint32_t _flags_save_STRUCT = ndr->flags;
5770 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
5771 ndr->depth++;
5772 ndr_print_array_uint8(ndr, "data", r->data, 524);
5773 ndr->depth--;
5774 ndr->flags = _flags_save_STRUCT;
5778 static enum ndr_err_code ndr_push_wkssvc_joinflags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
5780 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
5781 return NDR_ERR_SUCCESS;
5784 static enum ndr_err_code ndr_pull_wkssvc_joinflags(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
5786 uint32_t v;
5787 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
5788 *r = v;
5789 return NDR_ERR_SUCCESS;
5792 _PUBLIC_ void ndr_print_wkssvc_joinflags(struct ndr_print *ndr, const char *name, uint32_t r)
5794 ndr_print_uint32(ndr, name, r);
5795 ndr->depth++;
5796 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS", WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS, r);
5797 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME", WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME, r);
5798 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT", WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT, r);
5799 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_DEFER_SPN", WKSSVC_JOIN_FLAGS_DEFER_SPN, r);
5800 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED", WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED, r);
5801 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_UNSECURE", WKSSVC_JOIN_FLAGS_JOIN_UNSECURE, r);
5802 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED", WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED, r);
5803 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE", WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE, r);
5804 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE", WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE, r);
5805 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE", WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, r);
5806 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_JOIN_TYPE", WKSSVC_JOIN_FLAGS_JOIN_TYPE, r);
5807 ndr->depth--;
5810 static enum ndr_err_code ndr_push_wkssvc_ComputerNameType(struct ndr_push *ndr, int ndr_flags, enum wkssvc_ComputerNameType r)
5812 NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
5813 return NDR_ERR_SUCCESS;
5816 static enum ndr_err_code ndr_pull_wkssvc_ComputerNameType(struct ndr_pull *ndr, int ndr_flags, enum wkssvc_ComputerNameType *r)
5818 uint16_t v;
5819 NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
5820 *r = v;
5821 return NDR_ERR_SUCCESS;
5824 _PUBLIC_ void ndr_print_wkssvc_ComputerNameType(struct ndr_print *ndr, const char *name, enum wkssvc_ComputerNameType r)
5826 const char *val = NULL;
5828 switch (r) {
5829 case NetPrimaryComputerName: val = "NetPrimaryComputerName"; break;
5830 case NetAlternateComputerNames: val = "NetAlternateComputerNames"; break;
5831 case NetAllComputerNames: val = "NetAllComputerNames"; break;
5832 case NetComputerNameTypeMax: val = "NetComputerNameTypeMax"; break;
5834 ndr_print_enum(ndr, name, "ENUM", val, r);
5837 static enum ndr_err_code ndr_push_wkssvc_ComputerNamesCtr(struct ndr_push *ndr, int ndr_flags, const struct wkssvc_ComputerNamesCtr *r)
5839 uint32_t cntr_computer_name_1;
5840 if (ndr_flags & NDR_SCALARS) {
5841 NDR_CHECK(ndr_push_align(ndr, 5));
5842 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
5843 NDR_CHECK(ndr_push_unique_ptr(ndr, r->computer_name));
5844 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
5846 if (ndr_flags & NDR_BUFFERS) {
5847 if (r->computer_name) {
5848 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->count));
5849 for (cntr_computer_name_1 = 0; cntr_computer_name_1 < r->count; cntr_computer_name_1++) {
5850 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->computer_name[cntr_computer_name_1]));
5852 for (cntr_computer_name_1 = 0; cntr_computer_name_1 < r->count; cntr_computer_name_1++) {
5853 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->computer_name[cntr_computer_name_1]));
5857 return NDR_ERR_SUCCESS;
5860 static enum ndr_err_code ndr_pull_wkssvc_ComputerNamesCtr(struct ndr_pull *ndr, int ndr_flags, struct wkssvc_ComputerNamesCtr *r)
5862 uint32_t _ptr_computer_name;
5863 uint32_t size_computer_name_1 = 0;
5864 uint32_t cntr_computer_name_1;
5865 TALLOC_CTX *_mem_save_computer_name_0;
5866 TALLOC_CTX *_mem_save_computer_name_1;
5867 if (ndr_flags & NDR_SCALARS) {
5868 NDR_CHECK(ndr_pull_align(ndr, 5));
5869 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
5870 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_computer_name));
5871 if (_ptr_computer_name) {
5872 NDR_PULL_ALLOC(ndr, r->computer_name);
5873 } else {
5874 r->computer_name = NULL;
5876 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
5878 if (ndr_flags & NDR_BUFFERS) {
5879 if (r->computer_name) {
5880 _mem_save_computer_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
5881 NDR_PULL_SET_MEM_CTX(ndr, r->computer_name, 0);
5882 NDR_CHECK(ndr_pull_array_size(ndr, &r->computer_name));
5883 size_computer_name_1 = ndr_get_array_size(ndr, &r->computer_name);
5884 NDR_PULL_ALLOC_N(ndr, r->computer_name, size_computer_name_1);
5885 _mem_save_computer_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
5886 NDR_PULL_SET_MEM_CTX(ndr, r->computer_name, 0);
5887 for (cntr_computer_name_1 = 0; cntr_computer_name_1 < size_computer_name_1; cntr_computer_name_1++) {
5888 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->computer_name[cntr_computer_name_1]));
5890 for (cntr_computer_name_1 = 0; cntr_computer_name_1 < size_computer_name_1; cntr_computer_name_1++) {
5891 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->computer_name[cntr_computer_name_1]));
5893 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_computer_name_1, 0);
5894 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_computer_name_0, 0);
5896 if (r->computer_name) {
5897 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->computer_name, r->count));
5900 return NDR_ERR_SUCCESS;
5903 _PUBLIC_ void ndr_print_wkssvc_ComputerNamesCtr(struct ndr_print *ndr, const char *name, const struct wkssvc_ComputerNamesCtr *r)
5905 uint32_t cntr_computer_name_1;
5906 ndr_print_struct(ndr, name, "wkssvc_ComputerNamesCtr");
5907 ndr->depth++;
5908 ndr_print_uint32(ndr, "count", r->count);
5909 ndr_print_ptr(ndr, "computer_name", r->computer_name);
5910 ndr->depth++;
5911 if (r->computer_name) {
5912 ndr->print(ndr, "%s: ARRAY(%d)", "computer_name", (int)r->count);
5913 ndr->depth++;
5914 for (cntr_computer_name_1=0;cntr_computer_name_1<r->count;cntr_computer_name_1++) {
5915 char *idx_1=NULL;
5916 if (asprintf(&idx_1, "[%d]", cntr_computer_name_1) != -1) {
5917 ndr_print_lsa_String(ndr, "computer_name", &r->computer_name[cntr_computer_name_1]);
5918 free(idx_1);
5921 ndr->depth--;
5923 ndr->depth--;
5924 ndr->depth--;
5927 static enum ndr_err_code ndr_push_wkssvc_NetWkstaGetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetWkstaGetInfo *r)
5929 if (flags & NDR_IN) {
5930 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
5931 if (r->in.server_name) {
5932 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
5933 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
5934 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
5935 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
5937 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
5939 if (flags & NDR_OUT) {
5940 if (r->out.info == NULL) {
5941 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5943 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
5944 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
5945 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
5947 return NDR_ERR_SUCCESS;
5950 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaGetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetWkstaGetInfo *r)
5952 uint32_t _ptr_server_name;
5953 uint32_t size_server_name_1 = 0;
5954 uint32_t length_server_name_1 = 0;
5955 TALLOC_CTX *_mem_save_server_name_0;
5956 TALLOC_CTX *_mem_save_info_0;
5957 if (flags & NDR_IN) {
5958 ZERO_STRUCT(r->out);
5960 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
5961 if (_ptr_server_name) {
5962 NDR_PULL_ALLOC(ndr, r->in.server_name);
5963 } else {
5964 r->in.server_name = NULL;
5966 if (r->in.server_name) {
5967 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
5968 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
5969 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
5970 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
5971 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
5972 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
5973 if (length_server_name_1 > size_server_name_1) {
5974 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
5976 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
5977 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
5978 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
5980 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
5981 NDR_PULL_ALLOC(ndr, r->out.info);
5982 ZERO_STRUCTP(r->out.info);
5984 if (flags & NDR_OUT) {
5985 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5986 NDR_PULL_ALLOC(ndr, r->out.info);
5988 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5989 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
5990 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
5991 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
5992 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
5993 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
5995 return NDR_ERR_SUCCESS;
5998 _PUBLIC_ void ndr_print_wkssvc_NetWkstaGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaGetInfo *r)
6000 ndr_print_struct(ndr, name, "wkssvc_NetWkstaGetInfo");
6001 ndr->depth++;
6002 if (flags & NDR_SET_VALUES) {
6003 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6005 if (flags & NDR_IN) {
6006 ndr_print_struct(ndr, "in", "wkssvc_NetWkstaGetInfo");
6007 ndr->depth++;
6008 ndr_print_ptr(ndr, "server_name", r->in.server_name);
6009 ndr->depth++;
6010 if (r->in.server_name) {
6011 ndr_print_string(ndr, "server_name", r->in.server_name);
6013 ndr->depth--;
6014 ndr_print_uint32(ndr, "level", r->in.level);
6015 ndr->depth--;
6017 if (flags & NDR_OUT) {
6018 ndr_print_struct(ndr, "out", "wkssvc_NetWkstaGetInfo");
6019 ndr->depth++;
6020 ndr_print_ptr(ndr, "info", r->out.info);
6021 ndr->depth++;
6022 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
6023 ndr_print_wkssvc_NetWkstaInfo(ndr, "info", r->out.info);
6024 ndr->depth--;
6025 ndr_print_WERROR(ndr, "result", r->out.result);
6026 ndr->depth--;
6028 ndr->depth--;
6031 static enum ndr_err_code ndr_push_wkssvc_NetWkstaSetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetWkstaSetInfo *r)
6033 if (flags & NDR_IN) {
6034 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
6035 if (r->in.server_name) {
6036 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6037 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6038 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6039 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6041 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
6042 if (r->in.info == NULL) {
6043 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6045 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
6046 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6047 if (r->in.parm_error == NULL) {
6048 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6050 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_error));
6052 if (flags & NDR_OUT) {
6053 if (r->out.parm_error == NULL) {
6054 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6056 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_error));
6057 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
6059 return NDR_ERR_SUCCESS;
6062 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaSetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetWkstaSetInfo *r)
6064 uint32_t _ptr_server_name;
6065 uint32_t size_server_name_1 = 0;
6066 uint32_t length_server_name_1 = 0;
6067 TALLOC_CTX *_mem_save_server_name_0;
6068 TALLOC_CTX *_mem_save_info_0;
6069 TALLOC_CTX *_mem_save_parm_error_0;
6070 if (flags & NDR_IN) {
6071 ZERO_STRUCT(r->out);
6073 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
6074 if (_ptr_server_name) {
6075 NDR_PULL_ALLOC(ndr, r->in.server_name);
6076 } else {
6077 r->in.server_name = NULL;
6079 if (r->in.server_name) {
6080 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6081 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
6082 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
6083 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
6084 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
6085 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
6086 if (length_server_name_1 > size_server_name_1) {
6087 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
6089 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
6090 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
6091 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
6093 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
6094 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6095 NDR_PULL_ALLOC(ndr, r->in.info);
6097 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6098 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
6099 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
6100 NDR_CHECK(ndr_pull_wkssvc_NetWkstaInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6101 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6102 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6103 NDR_PULL_ALLOC(ndr, r->in.parm_error);
6105 _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
6106 NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_error, LIBNDR_FLAG_REF_ALLOC);
6107 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_error));
6108 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, LIBNDR_FLAG_REF_ALLOC);
6109 NDR_PULL_ALLOC(ndr, r->out.parm_error);
6110 *r->out.parm_error = *r->in.parm_error;
6112 if (flags & NDR_OUT) {
6113 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6114 NDR_PULL_ALLOC(ndr, r->out.parm_error);
6116 _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
6117 NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_error, LIBNDR_FLAG_REF_ALLOC);
6118 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_error));
6119 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, LIBNDR_FLAG_REF_ALLOC);
6120 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
6122 return NDR_ERR_SUCCESS;
6125 _PUBLIC_ void ndr_print_wkssvc_NetWkstaSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaSetInfo *r)
6127 ndr_print_struct(ndr, name, "wkssvc_NetWkstaSetInfo");
6128 ndr->depth++;
6129 if (flags & NDR_SET_VALUES) {
6130 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6132 if (flags & NDR_IN) {
6133 ndr_print_struct(ndr, "in", "wkssvc_NetWkstaSetInfo");
6134 ndr->depth++;
6135 ndr_print_ptr(ndr, "server_name", r->in.server_name);
6136 ndr->depth++;
6137 if (r->in.server_name) {
6138 ndr_print_string(ndr, "server_name", r->in.server_name);
6140 ndr->depth--;
6141 ndr_print_uint32(ndr, "level", r->in.level);
6142 ndr_print_ptr(ndr, "info", r->in.info);
6143 ndr->depth++;
6144 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
6145 ndr_print_wkssvc_NetWkstaInfo(ndr, "info", r->in.info);
6146 ndr->depth--;
6147 ndr_print_ptr(ndr, "parm_error", r->in.parm_error);
6148 ndr->depth++;
6149 ndr_print_uint32(ndr, "parm_error", *r->in.parm_error);
6150 ndr->depth--;
6151 ndr->depth--;
6153 if (flags & NDR_OUT) {
6154 ndr_print_struct(ndr, "out", "wkssvc_NetWkstaSetInfo");
6155 ndr->depth++;
6156 ndr_print_ptr(ndr, "parm_error", r->out.parm_error);
6157 ndr->depth++;
6158 ndr_print_uint32(ndr, "parm_error", *r->out.parm_error);
6159 ndr->depth--;
6160 ndr_print_WERROR(ndr, "result", r->out.result);
6161 ndr->depth--;
6163 ndr->depth--;
6166 static enum ndr_err_code ndr_push_wkssvc_NetWkstaEnumUsers(struct ndr_push *ndr, int flags, const struct wkssvc_NetWkstaEnumUsers *r)
6168 if (flags & NDR_IN) {
6169 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
6170 if (r->in.server_name) {
6171 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6172 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6173 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6174 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6176 if (r->in.info == NULL) {
6177 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6179 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6180 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.prefmaxlen));
6181 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
6182 if (r->in.resume_handle) {
6183 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6186 if (flags & NDR_OUT) {
6187 if (r->out.info == NULL) {
6188 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6190 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6191 if (r->out.entries_read == NULL) {
6192 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6194 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.entries_read));
6195 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
6196 if (r->out.resume_handle) {
6197 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6199 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
6201 return NDR_ERR_SUCCESS;
6204 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaEnumUsers(struct ndr_pull *ndr, int flags, struct wkssvc_NetWkstaEnumUsers *r)
6206 uint32_t _ptr_server_name;
6207 uint32_t size_server_name_1 = 0;
6208 uint32_t length_server_name_1 = 0;
6209 uint32_t _ptr_resume_handle;
6210 TALLOC_CTX *_mem_save_server_name_0;
6211 TALLOC_CTX *_mem_save_info_0;
6212 TALLOC_CTX *_mem_save_entries_read_0;
6213 TALLOC_CTX *_mem_save_resume_handle_0;
6214 if (flags & NDR_IN) {
6215 ZERO_STRUCT(r->out);
6217 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
6218 if (_ptr_server_name) {
6219 NDR_PULL_ALLOC(ndr, r->in.server_name);
6220 } else {
6221 r->in.server_name = NULL;
6223 if (r->in.server_name) {
6224 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6225 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
6226 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
6227 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
6228 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
6229 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
6230 if (length_server_name_1 > size_server_name_1) {
6231 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
6233 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
6234 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
6235 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
6237 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6238 NDR_PULL_ALLOC(ndr, r->in.info);
6240 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6241 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
6242 NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6243 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6244 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.prefmaxlen));
6245 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
6246 if (_ptr_resume_handle) {
6247 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6248 } else {
6249 r->in.resume_handle = NULL;
6251 if (r->in.resume_handle) {
6252 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6253 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
6254 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6255 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
6257 NDR_PULL_ALLOC(ndr, r->out.info);
6258 *r->out.info = *r->in.info;
6259 NDR_PULL_ALLOC(ndr, r->out.entries_read);
6260 ZERO_STRUCTP(r->out.entries_read);
6262 if (flags & NDR_OUT) {
6263 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6264 NDR_PULL_ALLOC(ndr, r->out.info);
6266 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6267 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
6268 NDR_CHECK(ndr_pull_wkssvc_NetWkstaEnumUsersInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6269 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6270 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6271 NDR_PULL_ALLOC(ndr, r->out.entries_read);
6273 _mem_save_entries_read_0 = NDR_PULL_GET_MEM_CTX(ndr);
6274 NDR_PULL_SET_MEM_CTX(ndr, r->out.entries_read, LIBNDR_FLAG_REF_ALLOC);
6275 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.entries_read));
6276 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_read_0, LIBNDR_FLAG_REF_ALLOC);
6277 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
6278 if (_ptr_resume_handle) {
6279 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6280 } else {
6281 r->out.resume_handle = NULL;
6283 if (r->out.resume_handle) {
6284 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6285 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
6286 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6287 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
6289 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
6291 return NDR_ERR_SUCCESS;
6294 _PUBLIC_ void ndr_print_wkssvc_NetWkstaEnumUsers(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaEnumUsers *r)
6296 ndr_print_struct(ndr, name, "wkssvc_NetWkstaEnumUsers");
6297 ndr->depth++;
6298 if (flags & NDR_SET_VALUES) {
6299 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6301 if (flags & NDR_IN) {
6302 ndr_print_struct(ndr, "in", "wkssvc_NetWkstaEnumUsers");
6303 ndr->depth++;
6304 ndr_print_ptr(ndr, "server_name", r->in.server_name);
6305 ndr->depth++;
6306 if (r->in.server_name) {
6307 ndr_print_string(ndr, "server_name", r->in.server_name);
6309 ndr->depth--;
6310 ndr_print_ptr(ndr, "info", r->in.info);
6311 ndr->depth++;
6312 ndr_print_wkssvc_NetWkstaEnumUsersInfo(ndr, "info", r->in.info);
6313 ndr->depth--;
6314 ndr_print_uint32(ndr, "prefmaxlen", r->in.prefmaxlen);
6315 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6316 ndr->depth++;
6317 if (r->in.resume_handle) {
6318 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6320 ndr->depth--;
6321 ndr->depth--;
6323 if (flags & NDR_OUT) {
6324 ndr_print_struct(ndr, "out", "wkssvc_NetWkstaEnumUsers");
6325 ndr->depth++;
6326 ndr_print_ptr(ndr, "info", r->out.info);
6327 ndr->depth++;
6328 ndr_print_wkssvc_NetWkstaEnumUsersInfo(ndr, "info", r->out.info);
6329 ndr->depth--;
6330 ndr_print_ptr(ndr, "entries_read", r->out.entries_read);
6331 ndr->depth++;
6332 ndr_print_uint32(ndr, "entries_read", *r->out.entries_read);
6333 ndr->depth--;
6334 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6335 ndr->depth++;
6336 if (r->out.resume_handle) {
6337 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6339 ndr->depth--;
6340 ndr_print_WERROR(ndr, "result", r->out.result);
6341 ndr->depth--;
6343 ndr->depth--;
6346 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserGetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaUserGetInfo *r)
6348 if (flags & NDR_IN) {
6349 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown));
6350 if (r->in.unknown) {
6351 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
6352 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6353 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
6354 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown, ndr_charset_length(r->in.unknown, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6356 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
6358 if (flags & NDR_OUT) {
6359 if (r->out.info == NULL) {
6360 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6362 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
6363 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6364 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
6366 return NDR_ERR_SUCCESS;
6369 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserGetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaUserGetInfo *r)
6371 uint32_t _ptr_unknown;
6372 uint32_t size_unknown_1 = 0;
6373 uint32_t length_unknown_1 = 0;
6374 TALLOC_CTX *_mem_save_unknown_0;
6375 TALLOC_CTX *_mem_save_info_0;
6376 if (flags & NDR_IN) {
6377 ZERO_STRUCT(r->out);
6379 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
6380 if (_ptr_unknown) {
6381 NDR_PULL_ALLOC(ndr, r->in.unknown);
6382 } else {
6383 r->in.unknown = NULL;
6385 if (r->in.unknown) {
6386 _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
6387 NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown, 0);
6388 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown));
6389 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown));
6390 size_unknown_1 = ndr_get_array_size(ndr, &r->in.unknown);
6391 length_unknown_1 = ndr_get_array_length(ndr, &r->in.unknown);
6392 if (length_unknown_1 > size_unknown_1) {
6393 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_unknown_1, length_unknown_1);
6395 NDR_CHECK(ndr_check_string_terminator(ndr, length_unknown_1, sizeof(uint16_t)));
6396 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown, length_unknown_1, sizeof(uint16_t), CH_UTF16));
6397 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
6399 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
6400 NDR_PULL_ALLOC(ndr, r->out.info);
6401 ZERO_STRUCTP(r->out.info);
6403 if (flags & NDR_OUT) {
6404 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6405 NDR_PULL_ALLOC(ndr, r->out.info);
6407 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6408 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
6409 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
6410 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6411 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6412 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
6414 return NDR_ERR_SUCCESS;
6417 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaUserGetInfo *r)
6419 ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserGetInfo");
6420 ndr->depth++;
6421 if (flags & NDR_SET_VALUES) {
6422 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6424 if (flags & NDR_IN) {
6425 ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaUserGetInfo");
6426 ndr->depth++;
6427 ndr_print_ptr(ndr, "unknown", r->in.unknown);
6428 ndr->depth++;
6429 if (r->in.unknown) {
6430 ndr_print_string(ndr, "unknown", r->in.unknown);
6432 ndr->depth--;
6433 ndr_print_uint32(ndr, "level", r->in.level);
6434 ndr->depth--;
6436 if (flags & NDR_OUT) {
6437 ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaUserGetInfo");
6438 ndr->depth++;
6439 ndr_print_ptr(ndr, "info", r->out.info);
6440 ndr->depth++;
6441 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
6442 ndr_print_wkssvc_NetrWkstaUserInfo(ndr, "info", r->out.info);
6443 ndr->depth--;
6444 ndr_print_WERROR(ndr, "result", r->out.result);
6445 ndr->depth--;
6447 ndr->depth--;
6450 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaUserSetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaUserSetInfo *r)
6452 if (flags & NDR_IN) {
6453 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown));
6454 if (r->in.unknown) {
6455 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
6456 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6457 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
6458 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown, ndr_charset_length(r->in.unknown, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6460 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
6461 if (r->in.info == NULL) {
6462 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6464 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
6465 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6466 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_err));
6467 if (r->in.parm_err) {
6468 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_err));
6471 if (flags & NDR_OUT) {
6472 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_err));
6473 if (r->out.parm_err) {
6474 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_err));
6476 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
6478 return NDR_ERR_SUCCESS;
6481 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaUserSetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaUserSetInfo *r)
6483 uint32_t _ptr_unknown;
6484 uint32_t size_unknown_1 = 0;
6485 uint32_t length_unknown_1 = 0;
6486 uint32_t _ptr_parm_err;
6487 TALLOC_CTX *_mem_save_unknown_0;
6488 TALLOC_CTX *_mem_save_info_0;
6489 TALLOC_CTX *_mem_save_parm_err_0;
6490 if (flags & NDR_IN) {
6491 ZERO_STRUCT(r->out);
6493 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
6494 if (_ptr_unknown) {
6495 NDR_PULL_ALLOC(ndr, r->in.unknown);
6496 } else {
6497 r->in.unknown = NULL;
6499 if (r->in.unknown) {
6500 _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
6501 NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown, 0);
6502 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown));
6503 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown));
6504 size_unknown_1 = ndr_get_array_size(ndr, &r->in.unknown);
6505 length_unknown_1 = ndr_get_array_length(ndr, &r->in.unknown);
6506 if (length_unknown_1 > size_unknown_1) {
6507 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_unknown_1, length_unknown_1);
6509 NDR_CHECK(ndr_check_string_terminator(ndr, length_unknown_1, sizeof(uint16_t)));
6510 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown, length_unknown_1, sizeof(uint16_t), CH_UTF16));
6511 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
6513 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
6514 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6515 NDR_PULL_ALLOC(ndr, r->in.info);
6517 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6518 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
6519 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
6520 NDR_CHECK(ndr_pull_wkssvc_NetrWkstaUserInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6521 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6522 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
6523 if (_ptr_parm_err) {
6524 NDR_PULL_ALLOC(ndr, r->in.parm_err);
6525 } else {
6526 r->in.parm_err = NULL;
6528 if (r->in.parm_err) {
6529 _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
6530 NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_err, 0);
6531 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_err));
6532 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
6535 if (flags & NDR_OUT) {
6536 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
6537 if (_ptr_parm_err) {
6538 NDR_PULL_ALLOC(ndr, r->out.parm_err);
6539 } else {
6540 r->out.parm_err = NULL;
6542 if (r->out.parm_err) {
6543 _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
6544 NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_err, 0);
6545 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_err));
6546 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
6548 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
6550 return NDR_ERR_SUCCESS;
6553 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaUserSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaUserSetInfo *r)
6555 ndr_print_struct(ndr, name, "wkssvc_NetrWkstaUserSetInfo");
6556 ndr->depth++;
6557 if (flags & NDR_SET_VALUES) {
6558 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6560 if (flags & NDR_IN) {
6561 ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaUserSetInfo");
6562 ndr->depth++;
6563 ndr_print_ptr(ndr, "unknown", r->in.unknown);
6564 ndr->depth++;
6565 if (r->in.unknown) {
6566 ndr_print_string(ndr, "unknown", r->in.unknown);
6568 ndr->depth--;
6569 ndr_print_uint32(ndr, "level", r->in.level);
6570 ndr_print_ptr(ndr, "info", r->in.info);
6571 ndr->depth++;
6572 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
6573 ndr_print_wkssvc_NetrWkstaUserInfo(ndr, "info", r->in.info);
6574 ndr->depth--;
6575 ndr_print_ptr(ndr, "parm_err", r->in.parm_err);
6576 ndr->depth++;
6577 if (r->in.parm_err) {
6578 ndr_print_uint32(ndr, "parm_err", *r->in.parm_err);
6580 ndr->depth--;
6581 ndr->depth--;
6583 if (flags & NDR_OUT) {
6584 ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaUserSetInfo");
6585 ndr->depth++;
6586 ndr_print_ptr(ndr, "parm_err", r->out.parm_err);
6587 ndr->depth++;
6588 if (r->out.parm_err) {
6589 ndr_print_uint32(ndr, "parm_err", *r->out.parm_err);
6591 ndr->depth--;
6592 ndr_print_WERROR(ndr, "result", r->out.result);
6593 ndr->depth--;
6595 ndr->depth--;
6598 static enum ndr_err_code ndr_push_wkssvc_NetWkstaTransportEnum(struct ndr_push *ndr, int flags, const struct wkssvc_NetWkstaTransportEnum *r)
6600 if (flags & NDR_IN) {
6601 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
6602 if (r->in.server_name) {
6603 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6604 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6605 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6606 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6608 if (r->in.info == NULL) {
6609 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6611 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6612 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
6613 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
6614 if (r->in.resume_handle) {
6615 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
6618 if (flags & NDR_OUT) {
6619 if (r->out.info == NULL) {
6620 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6622 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6623 if (r->out.total_entries == NULL) {
6624 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6626 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total_entries));
6627 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
6628 if (r->out.resume_handle) {
6629 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
6631 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
6633 return NDR_ERR_SUCCESS;
6636 static enum ndr_err_code ndr_pull_wkssvc_NetWkstaTransportEnum(struct ndr_pull *ndr, int flags, struct wkssvc_NetWkstaTransportEnum *r)
6638 uint32_t _ptr_server_name;
6639 uint32_t size_server_name_1 = 0;
6640 uint32_t length_server_name_1 = 0;
6641 uint32_t _ptr_resume_handle;
6642 TALLOC_CTX *_mem_save_server_name_0;
6643 TALLOC_CTX *_mem_save_info_0;
6644 TALLOC_CTX *_mem_save_total_entries_0;
6645 TALLOC_CTX *_mem_save_resume_handle_0;
6646 if (flags & NDR_IN) {
6647 ZERO_STRUCT(r->out);
6649 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
6650 if (_ptr_server_name) {
6651 NDR_PULL_ALLOC(ndr, r->in.server_name);
6652 } else {
6653 r->in.server_name = NULL;
6655 if (r->in.server_name) {
6656 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6657 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
6658 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
6659 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
6660 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
6661 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
6662 if (length_server_name_1 > size_server_name_1) {
6663 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
6665 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
6666 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
6667 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
6669 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6670 NDR_PULL_ALLOC(ndr, r->in.info);
6672 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6673 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
6674 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
6675 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6676 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
6677 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
6678 if (_ptr_resume_handle) {
6679 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
6680 } else {
6681 r->in.resume_handle = NULL;
6683 if (r->in.resume_handle) {
6684 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6685 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
6686 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
6687 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
6689 NDR_PULL_ALLOC(ndr, r->out.info);
6690 *r->out.info = *r->in.info;
6691 NDR_PULL_ALLOC(ndr, r->out.total_entries);
6692 ZERO_STRUCTP(r->out.total_entries);
6694 if (flags & NDR_OUT) {
6695 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6696 NDR_PULL_ALLOC(ndr, r->out.info);
6698 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6699 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
6700 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6701 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
6702 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6703 NDR_PULL_ALLOC(ndr, r->out.total_entries);
6705 _mem_save_total_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
6706 NDR_PULL_SET_MEM_CTX(ndr, r->out.total_entries, LIBNDR_FLAG_REF_ALLOC);
6707 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total_entries));
6708 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_entries_0, LIBNDR_FLAG_REF_ALLOC);
6709 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
6710 if (_ptr_resume_handle) {
6711 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
6712 } else {
6713 r->out.resume_handle = NULL;
6715 if (r->out.resume_handle) {
6716 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6717 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
6718 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
6719 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
6721 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
6723 return NDR_ERR_SUCCESS;
6726 _PUBLIC_ void ndr_print_wkssvc_NetWkstaTransportEnum(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetWkstaTransportEnum *r)
6728 ndr_print_struct(ndr, name, "wkssvc_NetWkstaTransportEnum");
6729 ndr->depth++;
6730 if (flags & NDR_SET_VALUES) {
6731 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6733 if (flags & NDR_IN) {
6734 ndr_print_struct(ndr, "in", "wkssvc_NetWkstaTransportEnum");
6735 ndr->depth++;
6736 ndr_print_ptr(ndr, "server_name", r->in.server_name);
6737 ndr->depth++;
6738 if (r->in.server_name) {
6739 ndr_print_string(ndr, "server_name", r->in.server_name);
6741 ndr->depth--;
6742 ndr_print_ptr(ndr, "info", r->in.info);
6743 ndr->depth++;
6744 ndr_print_wkssvc_NetWkstaTransportInfo(ndr, "info", r->in.info);
6745 ndr->depth--;
6746 ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
6747 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
6748 ndr->depth++;
6749 if (r->in.resume_handle) {
6750 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
6752 ndr->depth--;
6753 ndr->depth--;
6755 if (flags & NDR_OUT) {
6756 ndr_print_struct(ndr, "out", "wkssvc_NetWkstaTransportEnum");
6757 ndr->depth++;
6758 ndr_print_ptr(ndr, "info", r->out.info);
6759 ndr->depth++;
6760 ndr_print_wkssvc_NetWkstaTransportInfo(ndr, "info", r->out.info);
6761 ndr->depth--;
6762 ndr_print_ptr(ndr, "total_entries", r->out.total_entries);
6763 ndr->depth++;
6764 ndr_print_uint32(ndr, "total_entries", *r->out.total_entries);
6765 ndr->depth--;
6766 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
6767 ndr->depth++;
6768 if (r->out.resume_handle) {
6769 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
6771 ndr->depth--;
6772 ndr_print_WERROR(ndr, "result", r->out.result);
6773 ndr->depth--;
6775 ndr->depth--;
6778 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaTransportAdd(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaTransportAdd *r)
6780 if (flags & NDR_IN) {
6781 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
6782 if (r->in.server_name) {
6783 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6784 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6785 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6786 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6788 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
6789 if (r->in.info0 == NULL) {
6790 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6792 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info0));
6793 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_err));
6794 if (r->in.parm_err) {
6795 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_err));
6798 if (flags & NDR_OUT) {
6799 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_err));
6800 if (r->out.parm_err) {
6801 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_err));
6803 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
6805 return NDR_ERR_SUCCESS;
6808 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaTransportAdd(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaTransportAdd *r)
6810 uint32_t _ptr_server_name;
6811 uint32_t size_server_name_1 = 0;
6812 uint32_t length_server_name_1 = 0;
6813 uint32_t _ptr_parm_err;
6814 TALLOC_CTX *_mem_save_server_name_0;
6815 TALLOC_CTX *_mem_save_info0_0;
6816 TALLOC_CTX *_mem_save_parm_err_0;
6817 if (flags & NDR_IN) {
6818 ZERO_STRUCT(r->out);
6820 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
6821 if (_ptr_server_name) {
6822 NDR_PULL_ALLOC(ndr, r->in.server_name);
6823 } else {
6824 r->in.server_name = NULL;
6826 if (r->in.server_name) {
6827 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6828 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
6829 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
6830 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
6831 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
6832 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
6833 if (length_server_name_1 > size_server_name_1) {
6834 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
6836 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
6837 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
6838 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
6840 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
6841 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6842 NDR_PULL_ALLOC(ndr, r->in.info0);
6844 _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
6845 NDR_PULL_SET_MEM_CTX(ndr, r->in.info0, LIBNDR_FLAG_REF_ALLOC);
6846 NDR_CHECK(ndr_pull_wkssvc_NetWkstaTransportInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info0));
6847 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, LIBNDR_FLAG_REF_ALLOC);
6848 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
6849 if (_ptr_parm_err) {
6850 NDR_PULL_ALLOC(ndr, r->in.parm_err);
6851 } else {
6852 r->in.parm_err = NULL;
6854 if (r->in.parm_err) {
6855 _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
6856 NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_err, 0);
6857 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_err));
6858 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
6861 if (flags & NDR_OUT) {
6862 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
6863 if (_ptr_parm_err) {
6864 NDR_PULL_ALLOC(ndr, r->out.parm_err);
6865 } else {
6866 r->out.parm_err = NULL;
6868 if (r->out.parm_err) {
6869 _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
6870 NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_err, 0);
6871 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_err));
6872 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
6874 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
6876 return NDR_ERR_SUCCESS;
6879 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaTransportAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaTransportAdd *r)
6881 ndr_print_struct(ndr, name, "wkssvc_NetrWkstaTransportAdd");
6882 ndr->depth++;
6883 if (flags & NDR_SET_VALUES) {
6884 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6886 if (flags & NDR_IN) {
6887 ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaTransportAdd");
6888 ndr->depth++;
6889 ndr_print_ptr(ndr, "server_name", r->in.server_name);
6890 ndr->depth++;
6891 if (r->in.server_name) {
6892 ndr_print_string(ndr, "server_name", r->in.server_name);
6894 ndr->depth--;
6895 ndr_print_uint32(ndr, "level", r->in.level);
6896 ndr_print_ptr(ndr, "info0", r->in.info0);
6897 ndr->depth++;
6898 ndr_print_wkssvc_NetWkstaTransportInfo0(ndr, "info0", r->in.info0);
6899 ndr->depth--;
6900 ndr_print_ptr(ndr, "parm_err", r->in.parm_err);
6901 ndr->depth++;
6902 if (r->in.parm_err) {
6903 ndr_print_uint32(ndr, "parm_err", *r->in.parm_err);
6905 ndr->depth--;
6906 ndr->depth--;
6908 if (flags & NDR_OUT) {
6909 ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaTransportAdd");
6910 ndr->depth++;
6911 ndr_print_ptr(ndr, "parm_err", r->out.parm_err);
6912 ndr->depth++;
6913 if (r->out.parm_err) {
6914 ndr_print_uint32(ndr, "parm_err", *r->out.parm_err);
6916 ndr->depth--;
6917 ndr_print_WERROR(ndr, "result", r->out.result);
6918 ndr->depth--;
6920 ndr->depth--;
6923 static enum ndr_err_code ndr_push_wkssvc_NetrWkstaTransportDel(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWkstaTransportDel *r)
6925 if (flags & NDR_IN) {
6926 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
6927 if (r->in.server_name) {
6928 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6929 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6930 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
6931 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6933 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.transport_name));
6934 if (r->in.transport_name) {
6935 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport_name, CH_UTF16)));
6936 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
6937 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport_name, CH_UTF16)));
6938 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.transport_name, ndr_charset_length(r->in.transport_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
6940 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown3));
6942 if (flags & NDR_OUT) {
6943 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
6945 return NDR_ERR_SUCCESS;
6948 static enum ndr_err_code ndr_pull_wkssvc_NetrWkstaTransportDel(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWkstaTransportDel *r)
6950 uint32_t _ptr_server_name;
6951 uint32_t size_server_name_1 = 0;
6952 uint32_t length_server_name_1 = 0;
6953 uint32_t _ptr_transport_name;
6954 uint32_t size_transport_name_1 = 0;
6955 uint32_t length_transport_name_1 = 0;
6956 TALLOC_CTX *_mem_save_server_name_0;
6957 TALLOC_CTX *_mem_save_transport_name_0;
6958 if (flags & NDR_IN) {
6959 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
6960 if (_ptr_server_name) {
6961 NDR_PULL_ALLOC(ndr, r->in.server_name);
6962 } else {
6963 r->in.server_name = NULL;
6965 if (r->in.server_name) {
6966 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6967 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
6968 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
6969 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
6970 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
6971 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
6972 if (length_server_name_1 > size_server_name_1) {
6973 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
6975 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
6976 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
6977 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
6979 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_transport_name));
6980 if (_ptr_transport_name) {
6981 NDR_PULL_ALLOC(ndr, r->in.transport_name);
6982 } else {
6983 r->in.transport_name = NULL;
6985 if (r->in.transport_name) {
6986 _mem_save_transport_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6987 NDR_PULL_SET_MEM_CTX(ndr, r->in.transport_name, 0);
6988 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.transport_name));
6989 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.transport_name));
6990 size_transport_name_1 = ndr_get_array_size(ndr, &r->in.transport_name);
6991 length_transport_name_1 = ndr_get_array_length(ndr, &r->in.transport_name);
6992 if (length_transport_name_1 > size_transport_name_1) {
6993 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_transport_name_1, length_transport_name_1);
6995 NDR_CHECK(ndr_check_string_terminator(ndr, length_transport_name_1, sizeof(uint16_t)));
6996 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.transport_name, length_transport_name_1, sizeof(uint16_t), CH_UTF16));
6997 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_transport_name_0, 0);
6999 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown3));
7001 if (flags & NDR_OUT) {
7002 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7004 return NDR_ERR_SUCCESS;
7007 _PUBLIC_ void ndr_print_wkssvc_NetrWkstaTransportDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWkstaTransportDel *r)
7009 ndr_print_struct(ndr, name, "wkssvc_NetrWkstaTransportDel");
7010 ndr->depth++;
7011 if (flags & NDR_SET_VALUES) {
7012 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7014 if (flags & NDR_IN) {
7015 ndr_print_struct(ndr, "in", "wkssvc_NetrWkstaTransportDel");
7016 ndr->depth++;
7017 ndr_print_ptr(ndr, "server_name", r->in.server_name);
7018 ndr->depth++;
7019 if (r->in.server_name) {
7020 ndr_print_string(ndr, "server_name", r->in.server_name);
7022 ndr->depth--;
7023 ndr_print_ptr(ndr, "transport_name", r->in.transport_name);
7024 ndr->depth++;
7025 if (r->in.transport_name) {
7026 ndr_print_string(ndr, "transport_name", r->in.transport_name);
7028 ndr->depth--;
7029 ndr_print_uint32(ndr, "unknown3", r->in.unknown3);
7030 ndr->depth--;
7032 if (flags & NDR_OUT) {
7033 ndr_print_struct(ndr, "out", "wkssvc_NetrWkstaTransportDel");
7034 ndr->depth++;
7035 ndr_print_WERROR(ndr, "result", r->out.result);
7036 ndr->depth--;
7038 ndr->depth--;
7041 static enum ndr_err_code ndr_push_wkssvc_NetrUseAdd(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseAdd *r)
7043 if (flags & NDR_IN) {
7044 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
7045 if (r->in.server_name) {
7046 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7047 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7048 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7049 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7051 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
7052 if (r->in.ctr == NULL) {
7053 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7055 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.ctr, r->in.level));
7056 NDR_CHECK(ndr_push_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.ctr));
7057 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_err));
7058 if (r->in.parm_err) {
7059 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_err));
7062 if (flags & NDR_OUT) {
7063 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_err));
7064 if (r->out.parm_err) {
7065 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_err));
7067 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7069 return NDR_ERR_SUCCESS;
7072 static enum ndr_err_code ndr_pull_wkssvc_NetrUseAdd(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseAdd *r)
7074 uint32_t _ptr_server_name;
7075 uint32_t size_server_name_1 = 0;
7076 uint32_t length_server_name_1 = 0;
7077 uint32_t _ptr_parm_err;
7078 TALLOC_CTX *_mem_save_server_name_0;
7079 TALLOC_CTX *_mem_save_ctr_0;
7080 TALLOC_CTX *_mem_save_parm_err_0;
7081 if (flags & NDR_IN) {
7082 ZERO_STRUCT(r->out);
7084 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
7085 if (_ptr_server_name) {
7086 NDR_PULL_ALLOC(ndr, r->in.server_name);
7087 } else {
7088 r->in.server_name = NULL;
7090 if (r->in.server_name) {
7091 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7092 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
7093 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
7094 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
7095 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
7096 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
7097 if (length_server_name_1 > size_server_name_1) {
7098 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
7100 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
7101 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
7102 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
7104 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
7105 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7106 NDR_PULL_ALLOC(ndr, r->in.ctr);
7108 _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
7109 NDR_PULL_SET_MEM_CTX(ndr, r->in.ctr, LIBNDR_FLAG_REF_ALLOC);
7110 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.ctr, r->in.level));
7111 NDR_CHECK(ndr_pull_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.ctr));
7112 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
7113 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
7114 if (_ptr_parm_err) {
7115 NDR_PULL_ALLOC(ndr, r->in.parm_err);
7116 } else {
7117 r->in.parm_err = NULL;
7119 if (r->in.parm_err) {
7120 _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
7121 NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_err, 0);
7122 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_err));
7123 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
7126 if (flags & NDR_OUT) {
7127 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_err));
7128 if (_ptr_parm_err) {
7129 NDR_PULL_ALLOC(ndr, r->out.parm_err);
7130 } else {
7131 r->out.parm_err = NULL;
7133 if (r->out.parm_err) {
7134 _mem_save_parm_err_0 = NDR_PULL_GET_MEM_CTX(ndr);
7135 NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_err, 0);
7136 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_err));
7137 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_err_0, 0);
7139 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7141 return NDR_ERR_SUCCESS;
7144 _PUBLIC_ void ndr_print_wkssvc_NetrUseAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseAdd *r)
7146 ndr_print_struct(ndr, name, "wkssvc_NetrUseAdd");
7147 ndr->depth++;
7148 if (flags & NDR_SET_VALUES) {
7149 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7151 if (flags & NDR_IN) {
7152 ndr_print_struct(ndr, "in", "wkssvc_NetrUseAdd");
7153 ndr->depth++;
7154 ndr_print_ptr(ndr, "server_name", r->in.server_name);
7155 ndr->depth++;
7156 if (r->in.server_name) {
7157 ndr_print_string(ndr, "server_name", r->in.server_name);
7159 ndr->depth--;
7160 ndr_print_uint32(ndr, "level", r->in.level);
7161 ndr_print_ptr(ndr, "ctr", r->in.ctr);
7162 ndr->depth++;
7163 ndr_print_set_switch_value(ndr, r->in.ctr, r->in.level);
7164 ndr_print_wkssvc_NetrUseGetInfoCtr(ndr, "ctr", r->in.ctr);
7165 ndr->depth--;
7166 ndr_print_ptr(ndr, "parm_err", r->in.parm_err);
7167 ndr->depth++;
7168 if (r->in.parm_err) {
7169 ndr_print_uint32(ndr, "parm_err", *r->in.parm_err);
7171 ndr->depth--;
7172 ndr->depth--;
7174 if (flags & NDR_OUT) {
7175 ndr_print_struct(ndr, "out", "wkssvc_NetrUseAdd");
7176 ndr->depth++;
7177 ndr_print_ptr(ndr, "parm_err", r->out.parm_err);
7178 ndr->depth++;
7179 if (r->out.parm_err) {
7180 ndr_print_uint32(ndr, "parm_err", *r->out.parm_err);
7182 ndr->depth--;
7183 ndr_print_WERROR(ndr, "result", r->out.result);
7184 ndr->depth--;
7186 ndr->depth--;
7189 static enum ndr_err_code ndr_push_wkssvc_NetrUseGetInfo(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseGetInfo *r)
7191 if (flags & NDR_IN) {
7192 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
7193 if (r->in.server_name) {
7194 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7195 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7196 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7197 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7199 if (r->in.use_name == NULL) {
7200 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7202 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
7203 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7204 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
7205 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.use_name, ndr_charset_length(r->in.use_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7206 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
7208 if (flags & NDR_OUT) {
7209 if (r->out.ctr == NULL) {
7210 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7212 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.ctr, r->in.level));
7213 NDR_CHECK(ndr_push_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ctr));
7214 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7216 return NDR_ERR_SUCCESS;
7219 static enum ndr_err_code ndr_pull_wkssvc_NetrUseGetInfo(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseGetInfo *r)
7221 uint32_t _ptr_server_name;
7222 uint32_t size_server_name_1 = 0;
7223 uint32_t length_server_name_1 = 0;
7224 uint32_t size_use_name_1 = 0;
7225 uint32_t length_use_name_1 = 0;
7226 TALLOC_CTX *_mem_save_server_name_0;
7227 TALLOC_CTX *_mem_save_ctr_0;
7228 if (flags & NDR_IN) {
7229 ZERO_STRUCT(r->out);
7231 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
7232 if (_ptr_server_name) {
7233 NDR_PULL_ALLOC(ndr, r->in.server_name);
7234 } else {
7235 r->in.server_name = NULL;
7237 if (r->in.server_name) {
7238 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7239 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
7240 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
7241 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
7242 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
7243 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
7244 if (length_server_name_1 > size_server_name_1) {
7245 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
7247 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
7248 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
7249 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
7251 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.use_name));
7252 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.use_name));
7253 size_use_name_1 = ndr_get_array_size(ndr, &r->in.use_name);
7254 length_use_name_1 = ndr_get_array_length(ndr, &r->in.use_name);
7255 if (length_use_name_1 > size_use_name_1) {
7256 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_use_name_1, length_use_name_1);
7258 NDR_CHECK(ndr_check_string_terminator(ndr, length_use_name_1, sizeof(uint16_t)));
7259 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.use_name, length_use_name_1, sizeof(uint16_t), CH_UTF16));
7260 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
7261 NDR_PULL_ALLOC(ndr, r->out.ctr);
7262 ZERO_STRUCTP(r->out.ctr);
7264 if (flags & NDR_OUT) {
7265 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7266 NDR_PULL_ALLOC(ndr, r->out.ctr);
7268 _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
7269 NDR_PULL_SET_MEM_CTX(ndr, r->out.ctr, LIBNDR_FLAG_REF_ALLOC);
7270 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.ctr, r->in.level));
7271 NDR_CHECK(ndr_pull_wkssvc_NetrUseGetInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ctr));
7272 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
7273 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7275 return NDR_ERR_SUCCESS;
7278 _PUBLIC_ void ndr_print_wkssvc_NetrUseGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseGetInfo *r)
7280 ndr_print_struct(ndr, name, "wkssvc_NetrUseGetInfo");
7281 ndr->depth++;
7282 if (flags & NDR_SET_VALUES) {
7283 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7285 if (flags & NDR_IN) {
7286 ndr_print_struct(ndr, "in", "wkssvc_NetrUseGetInfo");
7287 ndr->depth++;
7288 ndr_print_ptr(ndr, "server_name", r->in.server_name);
7289 ndr->depth++;
7290 if (r->in.server_name) {
7291 ndr_print_string(ndr, "server_name", r->in.server_name);
7293 ndr->depth--;
7294 ndr_print_ptr(ndr, "use_name", r->in.use_name);
7295 ndr->depth++;
7296 ndr_print_string(ndr, "use_name", r->in.use_name);
7297 ndr->depth--;
7298 ndr_print_uint32(ndr, "level", r->in.level);
7299 ndr->depth--;
7301 if (flags & NDR_OUT) {
7302 ndr_print_struct(ndr, "out", "wkssvc_NetrUseGetInfo");
7303 ndr->depth++;
7304 ndr_print_ptr(ndr, "ctr", r->out.ctr);
7305 ndr->depth++;
7306 ndr_print_set_switch_value(ndr, r->out.ctr, r->in.level);
7307 ndr_print_wkssvc_NetrUseGetInfoCtr(ndr, "ctr", r->out.ctr);
7308 ndr->depth--;
7309 ndr_print_WERROR(ndr, "result", r->out.result);
7310 ndr->depth--;
7312 ndr->depth--;
7315 static enum ndr_err_code ndr_push_wkssvc_NetrUseDel(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseDel *r)
7317 if (flags & NDR_IN) {
7318 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
7319 if (r->in.server_name) {
7320 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7321 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7322 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7323 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7325 if (r->in.use_name == NULL) {
7326 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7328 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
7329 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7330 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.use_name, CH_UTF16)));
7331 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.use_name, ndr_charset_length(r->in.use_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7332 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.force_cond));
7334 if (flags & NDR_OUT) {
7335 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7337 return NDR_ERR_SUCCESS;
7340 static enum ndr_err_code ndr_pull_wkssvc_NetrUseDel(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseDel *r)
7342 uint32_t _ptr_server_name;
7343 uint32_t size_server_name_1 = 0;
7344 uint32_t length_server_name_1 = 0;
7345 uint32_t size_use_name_1 = 0;
7346 uint32_t length_use_name_1 = 0;
7347 TALLOC_CTX *_mem_save_server_name_0;
7348 if (flags & NDR_IN) {
7349 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
7350 if (_ptr_server_name) {
7351 NDR_PULL_ALLOC(ndr, r->in.server_name);
7352 } else {
7353 r->in.server_name = NULL;
7355 if (r->in.server_name) {
7356 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7357 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
7358 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
7359 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
7360 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
7361 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
7362 if (length_server_name_1 > size_server_name_1) {
7363 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
7365 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
7366 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
7367 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
7369 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.use_name));
7370 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.use_name));
7371 size_use_name_1 = ndr_get_array_size(ndr, &r->in.use_name);
7372 length_use_name_1 = ndr_get_array_length(ndr, &r->in.use_name);
7373 if (length_use_name_1 > size_use_name_1) {
7374 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_use_name_1, length_use_name_1);
7376 NDR_CHECK(ndr_check_string_terminator(ndr, length_use_name_1, sizeof(uint16_t)));
7377 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.use_name, length_use_name_1, sizeof(uint16_t), CH_UTF16));
7378 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.force_cond));
7380 if (flags & NDR_OUT) {
7381 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7383 return NDR_ERR_SUCCESS;
7386 _PUBLIC_ void ndr_print_wkssvc_NetrUseDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseDel *r)
7388 ndr_print_struct(ndr, name, "wkssvc_NetrUseDel");
7389 ndr->depth++;
7390 if (flags & NDR_SET_VALUES) {
7391 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7393 if (flags & NDR_IN) {
7394 ndr_print_struct(ndr, "in", "wkssvc_NetrUseDel");
7395 ndr->depth++;
7396 ndr_print_ptr(ndr, "server_name", r->in.server_name);
7397 ndr->depth++;
7398 if (r->in.server_name) {
7399 ndr_print_string(ndr, "server_name", r->in.server_name);
7401 ndr->depth--;
7402 ndr_print_ptr(ndr, "use_name", r->in.use_name);
7403 ndr->depth++;
7404 ndr_print_string(ndr, "use_name", r->in.use_name);
7405 ndr->depth--;
7406 ndr_print_uint32(ndr, "force_cond", r->in.force_cond);
7407 ndr->depth--;
7409 if (flags & NDR_OUT) {
7410 ndr_print_struct(ndr, "out", "wkssvc_NetrUseDel");
7411 ndr->depth++;
7412 ndr_print_WERROR(ndr, "result", r->out.result);
7413 ndr->depth--;
7415 ndr->depth--;
7418 static enum ndr_err_code ndr_push_wkssvc_NetrUseEnum(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUseEnum *r)
7420 if (flags & NDR_IN) {
7421 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
7422 if (r->in.server_name) {
7423 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7424 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7425 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7426 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7428 if (r->in.info == NULL) {
7429 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7431 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7432 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.prefmaxlen));
7433 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
7434 if (r->in.resume_handle) {
7435 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
7438 if (flags & NDR_OUT) {
7439 if (r->out.info == NULL) {
7440 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7442 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
7443 if (r->out.entries_read == NULL) {
7444 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7446 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.entries_read));
7447 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
7448 if (r->out.resume_handle) {
7449 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
7451 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7453 return NDR_ERR_SUCCESS;
7456 static enum ndr_err_code ndr_pull_wkssvc_NetrUseEnum(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUseEnum *r)
7458 uint32_t _ptr_server_name;
7459 uint32_t size_server_name_1 = 0;
7460 uint32_t length_server_name_1 = 0;
7461 uint32_t _ptr_resume_handle;
7462 TALLOC_CTX *_mem_save_server_name_0;
7463 TALLOC_CTX *_mem_save_info_0;
7464 TALLOC_CTX *_mem_save_entries_read_0;
7465 TALLOC_CTX *_mem_save_resume_handle_0;
7466 if (flags & NDR_IN) {
7467 ZERO_STRUCT(r->out);
7469 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
7470 if (_ptr_server_name) {
7471 NDR_PULL_ALLOC(ndr, r->in.server_name);
7472 } else {
7473 r->in.server_name = NULL;
7475 if (r->in.server_name) {
7476 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7477 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
7478 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
7479 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
7480 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
7481 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
7482 if (length_server_name_1 > size_server_name_1) {
7483 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
7485 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
7486 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
7487 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
7489 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7490 NDR_PULL_ALLOC(ndr, r->in.info);
7492 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7493 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
7494 NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
7495 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7496 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.prefmaxlen));
7497 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
7498 if (_ptr_resume_handle) {
7499 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
7500 } else {
7501 r->in.resume_handle = NULL;
7503 if (r->in.resume_handle) {
7504 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7505 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
7506 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
7507 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
7509 NDR_PULL_ALLOC(ndr, r->out.info);
7510 *r->out.info = *r->in.info;
7511 NDR_PULL_ALLOC(ndr, r->out.entries_read);
7512 ZERO_STRUCTP(r->out.entries_read);
7514 if (flags & NDR_OUT) {
7515 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7516 NDR_PULL_ALLOC(ndr, r->out.info);
7518 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7519 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
7520 NDR_CHECK(ndr_pull_wkssvc_NetrUseEnumInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
7521 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7522 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7523 NDR_PULL_ALLOC(ndr, r->out.entries_read);
7525 _mem_save_entries_read_0 = NDR_PULL_GET_MEM_CTX(ndr);
7526 NDR_PULL_SET_MEM_CTX(ndr, r->out.entries_read, LIBNDR_FLAG_REF_ALLOC);
7527 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.entries_read));
7528 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_read_0, LIBNDR_FLAG_REF_ALLOC);
7529 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
7530 if (_ptr_resume_handle) {
7531 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
7532 } else {
7533 r->out.resume_handle = NULL;
7535 if (r->out.resume_handle) {
7536 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7537 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
7538 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
7539 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
7541 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7543 return NDR_ERR_SUCCESS;
7546 _PUBLIC_ void ndr_print_wkssvc_NetrUseEnum(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUseEnum *r)
7548 ndr_print_struct(ndr, name, "wkssvc_NetrUseEnum");
7549 ndr->depth++;
7550 if (flags & NDR_SET_VALUES) {
7551 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7553 if (flags & NDR_IN) {
7554 ndr_print_struct(ndr, "in", "wkssvc_NetrUseEnum");
7555 ndr->depth++;
7556 ndr_print_ptr(ndr, "server_name", r->in.server_name);
7557 ndr->depth++;
7558 if (r->in.server_name) {
7559 ndr_print_string(ndr, "server_name", r->in.server_name);
7561 ndr->depth--;
7562 ndr_print_ptr(ndr, "info", r->in.info);
7563 ndr->depth++;
7564 ndr_print_wkssvc_NetrUseEnumInfo(ndr, "info", r->in.info);
7565 ndr->depth--;
7566 ndr_print_uint32(ndr, "prefmaxlen", r->in.prefmaxlen);
7567 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
7568 ndr->depth++;
7569 if (r->in.resume_handle) {
7570 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
7572 ndr->depth--;
7573 ndr->depth--;
7575 if (flags & NDR_OUT) {
7576 ndr_print_struct(ndr, "out", "wkssvc_NetrUseEnum");
7577 ndr->depth++;
7578 ndr_print_ptr(ndr, "info", r->out.info);
7579 ndr->depth++;
7580 ndr_print_wkssvc_NetrUseEnumInfo(ndr, "info", r->out.info);
7581 ndr->depth--;
7582 ndr_print_ptr(ndr, "entries_read", r->out.entries_read);
7583 ndr->depth++;
7584 ndr_print_uint32(ndr, "entries_read", *r->out.entries_read);
7585 ndr->depth--;
7586 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
7587 ndr->depth++;
7588 if (r->out.resume_handle) {
7589 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
7591 ndr->depth--;
7592 ndr_print_WERROR(ndr, "result", r->out.result);
7593 ndr->depth--;
7595 ndr->depth--;
7598 static enum ndr_err_code ndr_push_wkssvc_NetrMessageBufferSend(struct ndr_push *ndr, int flags, const struct wkssvc_NetrMessageBufferSend *r)
7600 if (flags & NDR_IN) {
7601 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
7602 if (r->in.server_name) {
7603 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7604 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7605 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7606 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7608 if (r->in.message_name == NULL) {
7609 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7611 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_name, CH_UTF16)));
7612 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7613 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_name, CH_UTF16)));
7614 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.message_name, ndr_charset_length(r->in.message_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7615 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.message_sender_name));
7616 if (r->in.message_sender_name) {
7617 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_sender_name, CH_UTF16)));
7618 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7619 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.message_sender_name, CH_UTF16)));
7620 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.message_sender_name, ndr_charset_length(r->in.message_sender_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7622 if (r->in.message_buffer == NULL) {
7623 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7625 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.message_size));
7626 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->in.message_buffer, r->in.message_size));
7627 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.message_size));
7629 if (flags & NDR_OUT) {
7630 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7632 return NDR_ERR_SUCCESS;
7635 static enum ndr_err_code ndr_pull_wkssvc_NetrMessageBufferSend(struct ndr_pull *ndr, int flags, struct wkssvc_NetrMessageBufferSend *r)
7637 uint32_t _ptr_server_name;
7638 uint32_t size_server_name_1 = 0;
7639 uint32_t length_server_name_1 = 0;
7640 uint32_t size_message_name_1 = 0;
7641 uint32_t length_message_name_1 = 0;
7642 uint32_t _ptr_message_sender_name;
7643 uint32_t size_message_sender_name_1 = 0;
7644 uint32_t length_message_sender_name_1 = 0;
7645 uint32_t size_message_buffer_1 = 0;
7646 TALLOC_CTX *_mem_save_server_name_0;
7647 TALLOC_CTX *_mem_save_message_sender_name_0;
7648 if (flags & NDR_IN) {
7649 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
7650 if (_ptr_server_name) {
7651 NDR_PULL_ALLOC(ndr, r->in.server_name);
7652 } else {
7653 r->in.server_name = NULL;
7655 if (r->in.server_name) {
7656 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7657 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
7658 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
7659 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
7660 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
7661 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
7662 if (length_server_name_1 > size_server_name_1) {
7663 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
7665 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
7666 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
7667 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
7669 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.message_name));
7670 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.message_name));
7671 size_message_name_1 = ndr_get_array_size(ndr, &r->in.message_name);
7672 length_message_name_1 = ndr_get_array_length(ndr, &r->in.message_name);
7673 if (length_message_name_1 > size_message_name_1) {
7674 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_message_name_1, length_message_name_1);
7676 NDR_CHECK(ndr_check_string_terminator(ndr, length_message_name_1, sizeof(uint16_t)));
7677 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.message_name, length_message_name_1, sizeof(uint16_t), CH_UTF16));
7678 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_message_sender_name));
7679 if (_ptr_message_sender_name) {
7680 NDR_PULL_ALLOC(ndr, r->in.message_sender_name);
7681 } else {
7682 r->in.message_sender_name = NULL;
7684 if (r->in.message_sender_name) {
7685 _mem_save_message_sender_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7686 NDR_PULL_SET_MEM_CTX(ndr, r->in.message_sender_name, 0);
7687 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.message_sender_name));
7688 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.message_sender_name));
7689 size_message_sender_name_1 = ndr_get_array_size(ndr, &r->in.message_sender_name);
7690 length_message_sender_name_1 = ndr_get_array_length(ndr, &r->in.message_sender_name);
7691 if (length_message_sender_name_1 > size_message_sender_name_1) {
7692 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_message_sender_name_1, length_message_sender_name_1);
7694 NDR_CHECK(ndr_check_string_terminator(ndr, length_message_sender_name_1, sizeof(uint16_t)));
7695 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.message_sender_name, length_message_sender_name_1, sizeof(uint16_t), CH_UTF16));
7696 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_message_sender_name_0, 0);
7698 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.message_buffer));
7699 size_message_buffer_1 = ndr_get_array_size(ndr, &r->in.message_buffer);
7700 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7701 NDR_PULL_ALLOC_N(ndr, r->in.message_buffer, size_message_buffer_1);
7703 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->in.message_buffer, size_message_buffer_1));
7704 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.message_size));
7705 if (r->in.message_buffer) {
7706 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.message_buffer, r->in.message_size));
7709 if (flags & NDR_OUT) {
7710 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7712 return NDR_ERR_SUCCESS;
7715 _PUBLIC_ void ndr_print_wkssvc_NetrMessageBufferSend(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrMessageBufferSend *r)
7717 ndr_print_struct(ndr, name, "wkssvc_NetrMessageBufferSend");
7718 ndr->depth++;
7719 if (flags & NDR_SET_VALUES) {
7720 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7722 if (flags & NDR_IN) {
7723 ndr_print_struct(ndr, "in", "wkssvc_NetrMessageBufferSend");
7724 ndr->depth++;
7725 ndr_print_ptr(ndr, "server_name", r->in.server_name);
7726 ndr->depth++;
7727 if (r->in.server_name) {
7728 ndr_print_string(ndr, "server_name", r->in.server_name);
7730 ndr->depth--;
7731 ndr_print_ptr(ndr, "message_name", r->in.message_name);
7732 ndr->depth++;
7733 ndr_print_string(ndr, "message_name", r->in.message_name);
7734 ndr->depth--;
7735 ndr_print_ptr(ndr, "message_sender_name", r->in.message_sender_name);
7736 ndr->depth++;
7737 if (r->in.message_sender_name) {
7738 ndr_print_string(ndr, "message_sender_name", r->in.message_sender_name);
7740 ndr->depth--;
7741 ndr_print_ptr(ndr, "message_buffer", r->in.message_buffer);
7742 ndr->depth++;
7743 ndr_print_array_uint8(ndr, "message_buffer", r->in.message_buffer, r->in.message_size);
7744 ndr->depth--;
7745 ndr_print_uint32(ndr, "message_size", r->in.message_size);
7746 ndr->depth--;
7748 if (flags & NDR_OUT) {
7749 ndr_print_struct(ndr, "out", "wkssvc_NetrMessageBufferSend");
7750 ndr->depth++;
7751 ndr_print_WERROR(ndr, "result", r->out.result);
7752 ndr->depth--;
7754 ndr->depth--;
7757 static enum ndr_err_code ndr_push_wkssvc_NetrWorkstationStatisticsGet(struct ndr_push *ndr, int flags, const struct wkssvc_NetrWorkstationStatisticsGet *r)
7759 if (flags & NDR_IN) {
7760 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
7761 if (r->in.server_name) {
7762 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7763 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7764 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
7765 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7767 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown2));
7768 if (r->in.unknown2) {
7769 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown2, CH_UTF16)));
7770 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7771 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown2, CH_UTF16)));
7772 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown2, ndr_charset_length(r->in.unknown2, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7774 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown3));
7775 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown4));
7777 if (flags & NDR_OUT) {
7778 if (r->out.info == NULL) {
7779 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7781 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
7782 if (*r->out.info) {
7783 NDR_CHECK(ndr_push_wkssvc_NetrWorkstationStatistics(ndr, NDR_SCALARS, *r->out.info));
7785 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7787 return NDR_ERR_SUCCESS;
7790 static enum ndr_err_code ndr_pull_wkssvc_NetrWorkstationStatisticsGet(struct ndr_pull *ndr, int flags, struct wkssvc_NetrWorkstationStatisticsGet *r)
7792 uint32_t _ptr_server_name;
7793 uint32_t size_server_name_1 = 0;
7794 uint32_t length_server_name_1 = 0;
7795 uint32_t _ptr_unknown2;
7796 uint32_t size_unknown2_1 = 0;
7797 uint32_t length_unknown2_1 = 0;
7798 uint32_t _ptr_info;
7799 TALLOC_CTX *_mem_save_server_name_0;
7800 TALLOC_CTX *_mem_save_unknown2_0;
7801 TALLOC_CTX *_mem_save_info_0;
7802 TALLOC_CTX *_mem_save_info_1;
7803 if (flags & NDR_IN) {
7804 ZERO_STRUCT(r->out);
7806 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
7807 if (_ptr_server_name) {
7808 NDR_PULL_ALLOC(ndr, r->in.server_name);
7809 } else {
7810 r->in.server_name = NULL;
7812 if (r->in.server_name) {
7813 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7814 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
7815 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
7816 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
7817 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
7818 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
7819 if (length_server_name_1 > size_server_name_1) {
7820 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
7822 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
7823 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
7824 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
7826 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
7827 if (_ptr_unknown2) {
7828 NDR_PULL_ALLOC(ndr, r->in.unknown2);
7829 } else {
7830 r->in.unknown2 = NULL;
7832 if (r->in.unknown2) {
7833 _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
7834 NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown2, 0);
7835 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown2));
7836 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown2));
7837 size_unknown2_1 = ndr_get_array_size(ndr, &r->in.unknown2);
7838 length_unknown2_1 = ndr_get_array_length(ndr, &r->in.unknown2);
7839 if (length_unknown2_1 > size_unknown2_1) {
7840 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_unknown2_1, length_unknown2_1);
7842 NDR_CHECK(ndr_check_string_terminator(ndr, length_unknown2_1, sizeof(uint16_t)));
7843 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown2, length_unknown2_1, sizeof(uint16_t), CH_UTF16));
7844 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, 0);
7846 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown3));
7847 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown4));
7848 NDR_PULL_ALLOC(ndr, r->out.info);
7849 ZERO_STRUCTP(r->out.info);
7851 if (flags & NDR_OUT) {
7852 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7853 NDR_PULL_ALLOC(ndr, r->out.info);
7855 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7856 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
7857 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
7858 if (_ptr_info) {
7859 NDR_PULL_ALLOC(ndr, *r->out.info);
7860 } else {
7861 *r->out.info = NULL;
7863 if (*r->out.info) {
7864 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
7865 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
7866 NDR_CHECK(ndr_pull_wkssvc_NetrWorkstationStatistics(ndr, NDR_SCALARS, *r->out.info));
7867 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
7869 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
7870 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7872 return NDR_ERR_SUCCESS;
7875 _PUBLIC_ void ndr_print_wkssvc_NetrWorkstationStatisticsGet(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrWorkstationStatisticsGet *r)
7877 ndr_print_struct(ndr, name, "wkssvc_NetrWorkstationStatisticsGet");
7878 ndr->depth++;
7879 if (flags & NDR_SET_VALUES) {
7880 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7882 if (flags & NDR_IN) {
7883 ndr_print_struct(ndr, "in", "wkssvc_NetrWorkstationStatisticsGet");
7884 ndr->depth++;
7885 ndr_print_ptr(ndr, "server_name", r->in.server_name);
7886 ndr->depth++;
7887 if (r->in.server_name) {
7888 ndr_print_string(ndr, "server_name", r->in.server_name);
7890 ndr->depth--;
7891 ndr_print_ptr(ndr, "unknown2", r->in.unknown2);
7892 ndr->depth++;
7893 if (r->in.unknown2) {
7894 ndr_print_string(ndr, "unknown2", r->in.unknown2);
7896 ndr->depth--;
7897 ndr_print_uint32(ndr, "unknown3", r->in.unknown3);
7898 ndr_print_uint32(ndr, "unknown4", r->in.unknown4);
7899 ndr->depth--;
7901 if (flags & NDR_OUT) {
7902 ndr_print_struct(ndr, "out", "wkssvc_NetrWorkstationStatisticsGet");
7903 ndr->depth++;
7904 ndr_print_ptr(ndr, "info", r->out.info);
7905 ndr->depth++;
7906 ndr_print_ptr(ndr, "info", *r->out.info);
7907 ndr->depth++;
7908 if (*r->out.info) {
7909 ndr_print_wkssvc_NetrWorkstationStatistics(ndr, "info", *r->out.info);
7911 ndr->depth--;
7912 ndr->depth--;
7913 ndr_print_WERROR(ndr, "result", r->out.result);
7914 ndr->depth--;
7916 ndr->depth--;
7919 static enum ndr_err_code ndr_push_wkssvc_NetrLogonDomainNameAdd(struct ndr_push *ndr, int flags, const struct wkssvc_NetrLogonDomainNameAdd *r)
7921 if (flags & NDR_IN) {
7922 if (r->in.domain_name == NULL) {
7923 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7925 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
7926 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7927 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
7928 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7930 if (flags & NDR_OUT) {
7931 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7933 return NDR_ERR_SUCCESS;
7936 static enum ndr_err_code ndr_pull_wkssvc_NetrLogonDomainNameAdd(struct ndr_pull *ndr, int flags, struct wkssvc_NetrLogonDomainNameAdd *r)
7938 uint32_t size_domain_name_1 = 0;
7939 uint32_t length_domain_name_1 = 0;
7940 if (flags & NDR_IN) {
7941 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
7942 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
7943 size_domain_name_1 = ndr_get_array_size(ndr, &r->in.domain_name);
7944 length_domain_name_1 = ndr_get_array_length(ndr, &r->in.domain_name);
7945 if (length_domain_name_1 > size_domain_name_1) {
7946 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
7948 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
7949 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
7951 if (flags & NDR_OUT) {
7952 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
7954 return NDR_ERR_SUCCESS;
7957 _PUBLIC_ void ndr_print_wkssvc_NetrLogonDomainNameAdd(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrLogonDomainNameAdd *r)
7959 ndr_print_struct(ndr, name, "wkssvc_NetrLogonDomainNameAdd");
7960 ndr->depth++;
7961 if (flags & NDR_SET_VALUES) {
7962 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7964 if (flags & NDR_IN) {
7965 ndr_print_struct(ndr, "in", "wkssvc_NetrLogonDomainNameAdd");
7966 ndr->depth++;
7967 ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
7968 ndr->depth++;
7969 ndr_print_string(ndr, "domain_name", r->in.domain_name);
7970 ndr->depth--;
7971 ndr->depth--;
7973 if (flags & NDR_OUT) {
7974 ndr_print_struct(ndr, "out", "wkssvc_NetrLogonDomainNameAdd");
7975 ndr->depth++;
7976 ndr_print_WERROR(ndr, "result", r->out.result);
7977 ndr->depth--;
7979 ndr->depth--;
7982 static enum ndr_err_code ndr_push_wkssvc_NetrLogonDomainNameDel(struct ndr_push *ndr, int flags, const struct wkssvc_NetrLogonDomainNameDel *r)
7984 if (flags & NDR_IN) {
7985 if (r->in.domain_name == NULL) {
7986 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7988 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
7989 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
7990 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
7991 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
7993 if (flags & NDR_OUT) {
7994 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
7996 return NDR_ERR_SUCCESS;
7999 static enum ndr_err_code ndr_pull_wkssvc_NetrLogonDomainNameDel(struct ndr_pull *ndr, int flags, struct wkssvc_NetrLogonDomainNameDel *r)
8001 uint32_t size_domain_name_1 = 0;
8002 uint32_t length_domain_name_1 = 0;
8003 if (flags & NDR_IN) {
8004 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
8005 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
8006 size_domain_name_1 = ndr_get_array_size(ndr, &r->in.domain_name);
8007 length_domain_name_1 = ndr_get_array_length(ndr, &r->in.domain_name);
8008 if (length_domain_name_1 > size_domain_name_1) {
8009 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
8011 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
8012 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
8014 if (flags & NDR_OUT) {
8015 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
8017 return NDR_ERR_SUCCESS;
8020 _PUBLIC_ void ndr_print_wkssvc_NetrLogonDomainNameDel(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrLogonDomainNameDel *r)
8022 ndr_print_struct(ndr, name, "wkssvc_NetrLogonDomainNameDel");
8023 ndr->depth++;
8024 if (flags & NDR_SET_VALUES) {
8025 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8027 if (flags & NDR_IN) {
8028 ndr_print_struct(ndr, "in", "wkssvc_NetrLogonDomainNameDel");
8029 ndr->depth++;
8030 ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
8031 ndr->depth++;
8032 ndr_print_string(ndr, "domain_name", r->in.domain_name);
8033 ndr->depth--;
8034 ndr->depth--;
8036 if (flags & NDR_OUT) {
8037 ndr_print_struct(ndr, "out", "wkssvc_NetrLogonDomainNameDel");
8038 ndr->depth++;
8039 ndr_print_WERROR(ndr, "result", r->out.result);
8040 ndr->depth--;
8042 ndr->depth--;
8045 static enum ndr_err_code ndr_push_wkssvc_NetrJoinDomain(struct ndr_push *ndr, int flags, const struct wkssvc_NetrJoinDomain *r)
8047 if (flags & NDR_IN) {
8048 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
8049 if (r->in.server_name) {
8050 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8051 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8052 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8053 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8055 if (r->in.domain_name == NULL) {
8056 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8058 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
8059 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8060 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
8061 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8062 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account_ou));
8063 if (r->in.account_ou) {
8064 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
8065 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8066 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
8067 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.account_ou, ndr_charset_length(r->in.account_ou, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8069 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
8070 if (r->in.Account) {
8071 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8072 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8073 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8074 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8076 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
8077 if (r->in.password) {
8078 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
8079 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8080 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
8081 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.password, ndr_charset_length(r->in.password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8083 NDR_CHECK(ndr_push_wkssvc_joinflags(ndr, NDR_SCALARS, r->in.join_flags));
8085 if (flags & NDR_OUT) {
8086 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
8088 return NDR_ERR_SUCCESS;
8091 static enum ndr_err_code ndr_pull_wkssvc_NetrJoinDomain(struct ndr_pull *ndr, int flags, struct wkssvc_NetrJoinDomain *r)
8093 uint32_t _ptr_server_name;
8094 uint32_t size_server_name_1 = 0;
8095 uint32_t length_server_name_1 = 0;
8096 uint32_t size_domain_name_1 = 0;
8097 uint32_t length_domain_name_1 = 0;
8098 uint32_t _ptr_account_ou;
8099 uint32_t size_account_ou_1 = 0;
8100 uint32_t length_account_ou_1 = 0;
8101 uint32_t _ptr_Account;
8102 uint32_t size_Account_1 = 0;
8103 uint32_t length_Account_1 = 0;
8104 uint32_t _ptr_password;
8105 uint32_t size_password_1 = 0;
8106 uint32_t length_password_1 = 0;
8107 TALLOC_CTX *_mem_save_server_name_0;
8108 TALLOC_CTX *_mem_save_account_ou_0;
8109 TALLOC_CTX *_mem_save_Account_0;
8110 TALLOC_CTX *_mem_save_password_0;
8111 if (flags & NDR_IN) {
8112 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
8113 if (_ptr_server_name) {
8114 NDR_PULL_ALLOC(ndr, r->in.server_name);
8115 } else {
8116 r->in.server_name = NULL;
8118 if (r->in.server_name) {
8119 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8120 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
8121 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
8122 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
8123 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
8124 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
8125 if (length_server_name_1 > size_server_name_1) {
8126 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
8128 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
8129 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
8130 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
8132 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
8133 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
8134 size_domain_name_1 = ndr_get_array_size(ndr, &r->in.domain_name);
8135 length_domain_name_1 = ndr_get_array_length(ndr, &r->in.domain_name);
8136 if (length_domain_name_1 > size_domain_name_1) {
8137 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
8139 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
8140 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
8141 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_ou));
8142 if (_ptr_account_ou) {
8143 NDR_PULL_ALLOC(ndr, r->in.account_ou);
8144 } else {
8145 r->in.account_ou = NULL;
8147 if (r->in.account_ou) {
8148 _mem_save_account_ou_0 = NDR_PULL_GET_MEM_CTX(ndr);
8149 NDR_PULL_SET_MEM_CTX(ndr, r->in.account_ou, 0);
8150 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.account_ou));
8151 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.account_ou));
8152 size_account_ou_1 = ndr_get_array_size(ndr, &r->in.account_ou);
8153 length_account_ou_1 = ndr_get_array_length(ndr, &r->in.account_ou);
8154 if (length_account_ou_1 > size_account_ou_1) {
8155 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_account_ou_1, length_account_ou_1);
8157 NDR_CHECK(ndr_check_string_terminator(ndr, length_account_ou_1, sizeof(uint16_t)));
8158 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.account_ou, length_account_ou_1, sizeof(uint16_t), CH_UTF16));
8159 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_ou_0, 0);
8161 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
8162 if (_ptr_Account) {
8163 NDR_PULL_ALLOC(ndr, r->in.Account);
8164 } else {
8165 r->in.Account = NULL;
8167 if (r->in.Account) {
8168 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
8169 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
8170 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
8171 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
8172 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
8173 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
8174 if (length_Account_1 > size_Account_1) {
8175 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
8177 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
8178 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
8179 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
8181 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
8182 if (_ptr_password) {
8183 NDR_PULL_ALLOC(ndr, r->in.password);
8184 } else {
8185 r->in.password = NULL;
8187 if (r->in.password) {
8188 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
8189 NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
8190 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.password));
8191 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.password));
8192 size_password_1 = ndr_get_array_size(ndr, &r->in.password);
8193 length_password_1 = ndr_get_array_length(ndr, &r->in.password);
8194 if (length_password_1 > size_password_1) {
8195 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_password_1, length_password_1);
8197 NDR_CHECK(ndr_check_string_terminator(ndr, length_password_1, sizeof(uint16_t)));
8198 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.password, length_password_1, sizeof(uint16_t), CH_UTF16));
8199 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
8201 NDR_CHECK(ndr_pull_wkssvc_joinflags(ndr, NDR_SCALARS, &r->in.join_flags));
8203 if (flags & NDR_OUT) {
8204 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
8206 return NDR_ERR_SUCCESS;
8209 _PUBLIC_ void ndr_print_wkssvc_NetrJoinDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrJoinDomain *r)
8211 ndr_print_struct(ndr, name, "wkssvc_NetrJoinDomain");
8212 ndr->depth++;
8213 if (flags & NDR_SET_VALUES) {
8214 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8216 if (flags & NDR_IN) {
8217 ndr_print_struct(ndr, "in", "wkssvc_NetrJoinDomain");
8218 ndr->depth++;
8219 ndr_print_ptr(ndr, "server_name", r->in.server_name);
8220 ndr->depth++;
8221 if (r->in.server_name) {
8222 ndr_print_string(ndr, "server_name", r->in.server_name);
8224 ndr->depth--;
8225 ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
8226 ndr->depth++;
8227 ndr_print_string(ndr, "domain_name", r->in.domain_name);
8228 ndr->depth--;
8229 ndr_print_ptr(ndr, "account_ou", r->in.account_ou);
8230 ndr->depth++;
8231 if (r->in.account_ou) {
8232 ndr_print_string(ndr, "account_ou", r->in.account_ou);
8234 ndr->depth--;
8235 ndr_print_ptr(ndr, "Account", r->in.Account);
8236 ndr->depth++;
8237 if (r->in.Account) {
8238 ndr_print_string(ndr, "Account", r->in.Account);
8240 ndr->depth--;
8241 ndr_print_ptr(ndr, "password", r->in.password);
8242 ndr->depth++;
8243 if (r->in.password) {
8244 ndr_print_string(ndr, "password", r->in.password);
8246 ndr->depth--;
8247 ndr_print_wkssvc_joinflags(ndr, "join_flags", r->in.join_flags);
8248 ndr->depth--;
8250 if (flags & NDR_OUT) {
8251 ndr_print_struct(ndr, "out", "wkssvc_NetrJoinDomain");
8252 ndr->depth++;
8253 ndr_print_WERROR(ndr, "result", r->out.result);
8254 ndr->depth--;
8256 ndr->depth--;
8259 static enum ndr_err_code ndr_push_wkssvc_NetrUnjoinDomain(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUnjoinDomain *r)
8261 if (flags & NDR_IN) {
8262 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
8263 if (r->in.server_name) {
8264 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8265 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8266 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8267 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8269 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
8270 if (r->in.Account) {
8271 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8272 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8273 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8274 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8276 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
8277 if (r->in.password) {
8278 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
8279 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8280 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
8281 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.password, ndr_charset_length(r->in.password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8283 NDR_CHECK(ndr_push_wkssvc_joinflags(ndr, NDR_SCALARS, r->in.unjoin_flags));
8285 if (flags & NDR_OUT) {
8286 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
8288 return NDR_ERR_SUCCESS;
8291 static enum ndr_err_code ndr_pull_wkssvc_NetrUnjoinDomain(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUnjoinDomain *r)
8293 uint32_t _ptr_server_name;
8294 uint32_t size_server_name_1 = 0;
8295 uint32_t length_server_name_1 = 0;
8296 uint32_t _ptr_Account;
8297 uint32_t size_Account_1 = 0;
8298 uint32_t length_Account_1 = 0;
8299 uint32_t _ptr_password;
8300 uint32_t size_password_1 = 0;
8301 uint32_t length_password_1 = 0;
8302 TALLOC_CTX *_mem_save_server_name_0;
8303 TALLOC_CTX *_mem_save_Account_0;
8304 TALLOC_CTX *_mem_save_password_0;
8305 if (flags & NDR_IN) {
8306 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
8307 if (_ptr_server_name) {
8308 NDR_PULL_ALLOC(ndr, r->in.server_name);
8309 } else {
8310 r->in.server_name = NULL;
8312 if (r->in.server_name) {
8313 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8314 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
8315 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
8316 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
8317 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
8318 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
8319 if (length_server_name_1 > size_server_name_1) {
8320 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
8322 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
8323 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
8324 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
8326 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
8327 if (_ptr_Account) {
8328 NDR_PULL_ALLOC(ndr, r->in.Account);
8329 } else {
8330 r->in.Account = NULL;
8332 if (r->in.Account) {
8333 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
8334 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
8335 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
8336 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
8337 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
8338 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
8339 if (length_Account_1 > size_Account_1) {
8340 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
8342 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
8343 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
8344 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
8346 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
8347 if (_ptr_password) {
8348 NDR_PULL_ALLOC(ndr, r->in.password);
8349 } else {
8350 r->in.password = NULL;
8352 if (r->in.password) {
8353 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
8354 NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
8355 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.password));
8356 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.password));
8357 size_password_1 = ndr_get_array_size(ndr, &r->in.password);
8358 length_password_1 = ndr_get_array_length(ndr, &r->in.password);
8359 if (length_password_1 > size_password_1) {
8360 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_password_1, length_password_1);
8362 NDR_CHECK(ndr_check_string_terminator(ndr, length_password_1, sizeof(uint16_t)));
8363 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.password, length_password_1, sizeof(uint16_t), CH_UTF16));
8364 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
8366 NDR_CHECK(ndr_pull_wkssvc_joinflags(ndr, NDR_SCALARS, &r->in.unjoin_flags));
8368 if (flags & NDR_OUT) {
8369 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
8371 return NDR_ERR_SUCCESS;
8374 _PUBLIC_ void ndr_print_wkssvc_NetrUnjoinDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUnjoinDomain *r)
8376 ndr_print_struct(ndr, name, "wkssvc_NetrUnjoinDomain");
8377 ndr->depth++;
8378 if (flags & NDR_SET_VALUES) {
8379 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8381 if (flags & NDR_IN) {
8382 ndr_print_struct(ndr, "in", "wkssvc_NetrUnjoinDomain");
8383 ndr->depth++;
8384 ndr_print_ptr(ndr, "server_name", r->in.server_name);
8385 ndr->depth++;
8386 if (r->in.server_name) {
8387 ndr_print_string(ndr, "server_name", r->in.server_name);
8389 ndr->depth--;
8390 ndr_print_ptr(ndr, "Account", r->in.Account);
8391 ndr->depth++;
8392 if (r->in.Account) {
8393 ndr_print_string(ndr, "Account", r->in.Account);
8395 ndr->depth--;
8396 ndr_print_ptr(ndr, "password", r->in.password);
8397 ndr->depth++;
8398 if (r->in.password) {
8399 ndr_print_string(ndr, "password", r->in.password);
8401 ndr->depth--;
8402 ndr_print_wkssvc_joinflags(ndr, "unjoin_flags", r->in.unjoin_flags);
8403 ndr->depth--;
8405 if (flags & NDR_OUT) {
8406 ndr_print_struct(ndr, "out", "wkssvc_NetrUnjoinDomain");
8407 ndr->depth++;
8408 ndr_print_WERROR(ndr, "result", r->out.result);
8409 ndr->depth--;
8411 ndr->depth--;
8414 static enum ndr_err_code ndr_push_wkssvc_NetrRenameMachineInDomain(struct ndr_push *ndr, int flags, const struct wkssvc_NetrRenameMachineInDomain *r)
8416 if (flags & NDR_IN) {
8417 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
8418 if (r->in.server_name) {
8419 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8420 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8421 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8422 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8424 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.NewMachineName));
8425 if (r->in.NewMachineName) {
8426 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewMachineName, CH_UTF16)));
8427 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8428 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewMachineName, CH_UTF16)));
8429 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.NewMachineName, ndr_charset_length(r->in.NewMachineName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8431 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
8432 if (r->in.Account) {
8433 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8434 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8435 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8436 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8438 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.password));
8439 if (r->in.password) {
8440 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
8441 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8442 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.password, CH_UTF16)));
8443 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.password, ndr_charset_length(r->in.password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8445 NDR_CHECK(ndr_push_wkssvc_renameflags(ndr, NDR_SCALARS, r->in.RenameOptions));
8447 if (flags & NDR_OUT) {
8448 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
8450 return NDR_ERR_SUCCESS;
8453 static enum ndr_err_code ndr_pull_wkssvc_NetrRenameMachineInDomain(struct ndr_pull *ndr, int flags, struct wkssvc_NetrRenameMachineInDomain *r)
8455 uint32_t _ptr_server_name;
8456 uint32_t size_server_name_1 = 0;
8457 uint32_t length_server_name_1 = 0;
8458 uint32_t _ptr_NewMachineName;
8459 uint32_t size_NewMachineName_1 = 0;
8460 uint32_t length_NewMachineName_1 = 0;
8461 uint32_t _ptr_Account;
8462 uint32_t size_Account_1 = 0;
8463 uint32_t length_Account_1 = 0;
8464 uint32_t _ptr_password;
8465 uint32_t size_password_1 = 0;
8466 uint32_t length_password_1 = 0;
8467 TALLOC_CTX *_mem_save_server_name_0;
8468 TALLOC_CTX *_mem_save_NewMachineName_0;
8469 TALLOC_CTX *_mem_save_Account_0;
8470 TALLOC_CTX *_mem_save_password_0;
8471 if (flags & NDR_IN) {
8472 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
8473 if (_ptr_server_name) {
8474 NDR_PULL_ALLOC(ndr, r->in.server_name);
8475 } else {
8476 r->in.server_name = NULL;
8478 if (r->in.server_name) {
8479 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8480 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
8481 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
8482 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
8483 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
8484 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
8485 if (length_server_name_1 > size_server_name_1) {
8486 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
8488 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
8489 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
8490 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
8492 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_NewMachineName));
8493 if (_ptr_NewMachineName) {
8494 NDR_PULL_ALLOC(ndr, r->in.NewMachineName);
8495 } else {
8496 r->in.NewMachineName = NULL;
8498 if (r->in.NewMachineName) {
8499 _mem_save_NewMachineName_0 = NDR_PULL_GET_MEM_CTX(ndr);
8500 NDR_PULL_SET_MEM_CTX(ndr, r->in.NewMachineName, 0);
8501 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.NewMachineName));
8502 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.NewMachineName));
8503 size_NewMachineName_1 = ndr_get_array_size(ndr, &r->in.NewMachineName);
8504 length_NewMachineName_1 = ndr_get_array_length(ndr, &r->in.NewMachineName);
8505 if (length_NewMachineName_1 > size_NewMachineName_1) {
8506 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_NewMachineName_1, length_NewMachineName_1);
8508 NDR_CHECK(ndr_check_string_terminator(ndr, length_NewMachineName_1, sizeof(uint16_t)));
8509 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.NewMachineName, length_NewMachineName_1, sizeof(uint16_t), CH_UTF16));
8510 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_NewMachineName_0, 0);
8512 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
8513 if (_ptr_Account) {
8514 NDR_PULL_ALLOC(ndr, r->in.Account);
8515 } else {
8516 r->in.Account = NULL;
8518 if (r->in.Account) {
8519 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
8520 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
8521 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
8522 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
8523 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
8524 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
8525 if (length_Account_1 > size_Account_1) {
8526 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
8528 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
8529 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
8530 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
8532 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
8533 if (_ptr_password) {
8534 NDR_PULL_ALLOC(ndr, r->in.password);
8535 } else {
8536 r->in.password = NULL;
8538 if (r->in.password) {
8539 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
8540 NDR_PULL_SET_MEM_CTX(ndr, r->in.password, 0);
8541 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.password));
8542 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.password));
8543 size_password_1 = ndr_get_array_size(ndr, &r->in.password);
8544 length_password_1 = ndr_get_array_length(ndr, &r->in.password);
8545 if (length_password_1 > size_password_1) {
8546 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_password_1, length_password_1);
8548 NDR_CHECK(ndr_check_string_terminator(ndr, length_password_1, sizeof(uint16_t)));
8549 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.password, length_password_1, sizeof(uint16_t), CH_UTF16));
8550 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
8552 NDR_CHECK(ndr_pull_wkssvc_renameflags(ndr, NDR_SCALARS, &r->in.RenameOptions));
8554 if (flags & NDR_OUT) {
8555 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
8557 return NDR_ERR_SUCCESS;
8560 _PUBLIC_ void ndr_print_wkssvc_NetrRenameMachineInDomain(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrRenameMachineInDomain *r)
8562 ndr_print_struct(ndr, name, "wkssvc_NetrRenameMachineInDomain");
8563 ndr->depth++;
8564 if (flags & NDR_SET_VALUES) {
8565 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8567 if (flags & NDR_IN) {
8568 ndr_print_struct(ndr, "in", "wkssvc_NetrRenameMachineInDomain");
8569 ndr->depth++;
8570 ndr_print_ptr(ndr, "server_name", r->in.server_name);
8571 ndr->depth++;
8572 if (r->in.server_name) {
8573 ndr_print_string(ndr, "server_name", r->in.server_name);
8575 ndr->depth--;
8576 ndr_print_ptr(ndr, "NewMachineName", r->in.NewMachineName);
8577 ndr->depth++;
8578 if (r->in.NewMachineName) {
8579 ndr_print_string(ndr, "NewMachineName", r->in.NewMachineName);
8581 ndr->depth--;
8582 ndr_print_ptr(ndr, "Account", r->in.Account);
8583 ndr->depth++;
8584 if (r->in.Account) {
8585 ndr_print_string(ndr, "Account", r->in.Account);
8587 ndr->depth--;
8588 ndr_print_ptr(ndr, "password", r->in.password);
8589 ndr->depth++;
8590 if (r->in.password) {
8591 ndr_print_string(ndr, "password", r->in.password);
8593 ndr->depth--;
8594 ndr_print_wkssvc_renameflags(ndr, "RenameOptions", r->in.RenameOptions);
8595 ndr->depth--;
8597 if (flags & NDR_OUT) {
8598 ndr_print_struct(ndr, "out", "wkssvc_NetrRenameMachineInDomain");
8599 ndr->depth++;
8600 ndr_print_WERROR(ndr, "result", r->out.result);
8601 ndr->depth--;
8603 ndr->depth--;
8606 static enum ndr_err_code ndr_push_wkssvc_NetrValidateName(struct ndr_push *ndr, int flags, const struct wkssvc_NetrValidateName *r)
8608 if (flags & NDR_IN) {
8609 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
8610 if (r->in.server_name) {
8611 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8612 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8613 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8614 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8616 if (r->in.name == NULL) {
8617 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8619 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
8620 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8621 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
8622 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.name, ndr_charset_length(r->in.name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8623 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
8624 if (r->in.Account) {
8625 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8626 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8627 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8628 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8630 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Password));
8631 if (r->in.Password) {
8632 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Password, CH_UTF16)));
8633 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8634 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Password, CH_UTF16)));
8635 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Password, ndr_charset_length(r->in.Password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8637 NDR_CHECK(ndr_push_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, r->in.name_type));
8639 if (flags & NDR_OUT) {
8640 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
8642 return NDR_ERR_SUCCESS;
8645 static enum ndr_err_code ndr_pull_wkssvc_NetrValidateName(struct ndr_pull *ndr, int flags, struct wkssvc_NetrValidateName *r)
8647 uint32_t _ptr_server_name;
8648 uint32_t size_server_name_1 = 0;
8649 uint32_t length_server_name_1 = 0;
8650 uint32_t size_name_1 = 0;
8651 uint32_t length_name_1 = 0;
8652 uint32_t _ptr_Account;
8653 uint32_t size_Account_1 = 0;
8654 uint32_t length_Account_1 = 0;
8655 uint32_t _ptr_Password;
8656 uint32_t size_Password_1 = 0;
8657 uint32_t length_Password_1 = 0;
8658 TALLOC_CTX *_mem_save_server_name_0;
8659 TALLOC_CTX *_mem_save_Account_0;
8660 TALLOC_CTX *_mem_save_Password_0;
8661 if (flags & NDR_IN) {
8662 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
8663 if (_ptr_server_name) {
8664 NDR_PULL_ALLOC(ndr, r->in.server_name);
8665 } else {
8666 r->in.server_name = NULL;
8668 if (r->in.server_name) {
8669 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8670 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
8671 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
8672 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
8673 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
8674 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
8675 if (length_server_name_1 > size_server_name_1) {
8676 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
8678 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
8679 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
8680 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
8682 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.name));
8683 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.name));
8684 size_name_1 = ndr_get_array_size(ndr, &r->in.name);
8685 length_name_1 = ndr_get_array_length(ndr, &r->in.name);
8686 if (length_name_1 > size_name_1) {
8687 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_1, length_name_1);
8689 NDR_CHECK(ndr_check_string_terminator(ndr, length_name_1, sizeof(uint16_t)));
8690 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.name, length_name_1, sizeof(uint16_t), CH_UTF16));
8691 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
8692 if (_ptr_Account) {
8693 NDR_PULL_ALLOC(ndr, r->in.Account);
8694 } else {
8695 r->in.Account = NULL;
8697 if (r->in.Account) {
8698 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
8699 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
8700 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
8701 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
8702 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
8703 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
8704 if (length_Account_1 > size_Account_1) {
8705 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
8707 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
8708 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
8709 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
8711 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Password));
8712 if (_ptr_Password) {
8713 NDR_PULL_ALLOC(ndr, r->in.Password);
8714 } else {
8715 r->in.Password = NULL;
8717 if (r->in.Password) {
8718 _mem_save_Password_0 = NDR_PULL_GET_MEM_CTX(ndr);
8719 NDR_PULL_SET_MEM_CTX(ndr, r->in.Password, 0);
8720 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Password));
8721 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Password));
8722 size_Password_1 = ndr_get_array_size(ndr, &r->in.Password);
8723 length_Password_1 = ndr_get_array_length(ndr, &r->in.Password);
8724 if (length_Password_1 > size_Password_1) {
8725 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Password_1, length_Password_1);
8727 NDR_CHECK(ndr_check_string_terminator(ndr, length_Password_1, sizeof(uint16_t)));
8728 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Password, length_Password_1, sizeof(uint16_t), CH_UTF16));
8729 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Password_0, 0);
8731 NDR_CHECK(ndr_pull_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, &r->in.name_type));
8733 if (flags & NDR_OUT) {
8734 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
8736 return NDR_ERR_SUCCESS;
8739 _PUBLIC_ void ndr_print_wkssvc_NetrValidateName(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrValidateName *r)
8741 ndr_print_struct(ndr, name, "wkssvc_NetrValidateName");
8742 ndr->depth++;
8743 if (flags & NDR_SET_VALUES) {
8744 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8746 if (flags & NDR_IN) {
8747 ndr_print_struct(ndr, "in", "wkssvc_NetrValidateName");
8748 ndr->depth++;
8749 ndr_print_ptr(ndr, "server_name", r->in.server_name);
8750 ndr->depth++;
8751 if (r->in.server_name) {
8752 ndr_print_string(ndr, "server_name", r->in.server_name);
8754 ndr->depth--;
8755 ndr_print_ptr(ndr, "name", r->in.name);
8756 ndr->depth++;
8757 ndr_print_string(ndr, "name", r->in.name);
8758 ndr->depth--;
8759 ndr_print_ptr(ndr, "Account", r->in.Account);
8760 ndr->depth++;
8761 if (r->in.Account) {
8762 ndr_print_string(ndr, "Account", r->in.Account);
8764 ndr->depth--;
8765 ndr_print_ptr(ndr, "Password", r->in.Password);
8766 ndr->depth++;
8767 if (r->in.Password) {
8768 ndr_print_string(ndr, "Password", r->in.Password);
8770 ndr->depth--;
8771 ndr_print_wkssvc_NetValidateNameType(ndr, "name_type", r->in.name_type);
8772 ndr->depth--;
8774 if (flags & NDR_OUT) {
8775 ndr_print_struct(ndr, "out", "wkssvc_NetrValidateName");
8776 ndr->depth++;
8777 ndr_print_WERROR(ndr, "result", r->out.result);
8778 ndr->depth--;
8780 ndr->depth--;
8783 static enum ndr_err_code ndr_push_wkssvc_NetrGetJoinInformation(struct ndr_push *ndr, int flags, const struct wkssvc_NetrGetJoinInformation *r)
8785 if (flags & NDR_IN) {
8786 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
8787 if (r->in.server_name) {
8788 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8789 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8790 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8791 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8793 if (r->in.name_buffer == NULL) {
8794 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8796 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.name_buffer));
8797 if (*r->in.name_buffer) {
8798 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(*r->in.name_buffer, CH_UTF16)));
8799 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8800 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(*r->in.name_buffer, CH_UTF16)));
8801 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, *r->in.name_buffer, ndr_charset_length(*r->in.name_buffer, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8804 if (flags & NDR_OUT) {
8805 if (r->out.name_buffer == NULL) {
8806 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8808 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.name_buffer));
8809 if (*r->out.name_buffer) {
8810 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(*r->out.name_buffer, CH_UTF16)));
8811 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8812 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(*r->out.name_buffer, CH_UTF16)));
8813 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, *r->out.name_buffer, ndr_charset_length(*r->out.name_buffer, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8815 if (r->out.name_type == NULL) {
8816 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8818 NDR_CHECK(ndr_push_wkssvc_NetJoinStatus(ndr, NDR_SCALARS, *r->out.name_type));
8819 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
8821 return NDR_ERR_SUCCESS;
8824 static enum ndr_err_code ndr_pull_wkssvc_NetrGetJoinInformation(struct ndr_pull *ndr, int flags, struct wkssvc_NetrGetJoinInformation *r)
8826 uint32_t _ptr_server_name;
8827 uint32_t size_server_name_1 = 0;
8828 uint32_t length_server_name_1 = 0;
8829 uint32_t _ptr_name_buffer;
8830 uint32_t size_name_buffer_2 = 0;
8831 uint32_t length_name_buffer_2 = 0;
8832 TALLOC_CTX *_mem_save_server_name_0;
8833 TALLOC_CTX *_mem_save_name_buffer_0;
8834 TALLOC_CTX *_mem_save_name_buffer_1;
8835 TALLOC_CTX *_mem_save_name_type_0;
8836 if (flags & NDR_IN) {
8837 ZERO_STRUCT(r->out);
8839 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
8840 if (_ptr_server_name) {
8841 NDR_PULL_ALLOC(ndr, r->in.server_name);
8842 } else {
8843 r->in.server_name = NULL;
8845 if (r->in.server_name) {
8846 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8847 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
8848 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
8849 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
8850 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
8851 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
8852 if (length_server_name_1 > size_server_name_1) {
8853 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
8855 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
8856 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
8857 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
8859 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8860 NDR_PULL_ALLOC(ndr, r->in.name_buffer);
8862 _mem_save_name_buffer_0 = NDR_PULL_GET_MEM_CTX(ndr);
8863 NDR_PULL_SET_MEM_CTX(ndr, r->in.name_buffer, LIBNDR_FLAG_REF_ALLOC);
8864 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name_buffer));
8865 if (_ptr_name_buffer) {
8866 NDR_PULL_ALLOC(ndr, *r->in.name_buffer);
8867 } else {
8868 *r->in.name_buffer = NULL;
8870 if (*r->in.name_buffer) {
8871 _mem_save_name_buffer_1 = NDR_PULL_GET_MEM_CTX(ndr);
8872 NDR_PULL_SET_MEM_CTX(ndr, *r->in.name_buffer, 0);
8873 NDR_CHECK(ndr_pull_array_size(ndr, r->in.name_buffer));
8874 NDR_CHECK(ndr_pull_array_length(ndr, r->in.name_buffer));
8875 size_name_buffer_2 = ndr_get_array_size(ndr, r->in.name_buffer);
8876 length_name_buffer_2 = ndr_get_array_length(ndr, r->in.name_buffer);
8877 if (length_name_buffer_2 > size_name_buffer_2) {
8878 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_buffer_2, length_name_buffer_2);
8880 NDR_CHECK(ndr_check_string_terminator(ndr, length_name_buffer_2, sizeof(uint16_t)));
8881 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, r->in.name_buffer, length_name_buffer_2, sizeof(uint16_t), CH_UTF16));
8882 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_buffer_1, 0);
8884 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_buffer_0, LIBNDR_FLAG_REF_ALLOC);
8885 NDR_PULL_ALLOC(ndr, r->out.name_buffer);
8886 *r->out.name_buffer = *r->in.name_buffer;
8887 NDR_PULL_ALLOC(ndr, r->out.name_type);
8888 ZERO_STRUCTP(r->out.name_type);
8890 if (flags & NDR_OUT) {
8891 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8892 NDR_PULL_ALLOC(ndr, r->out.name_buffer);
8894 _mem_save_name_buffer_0 = NDR_PULL_GET_MEM_CTX(ndr);
8895 NDR_PULL_SET_MEM_CTX(ndr, r->out.name_buffer, LIBNDR_FLAG_REF_ALLOC);
8896 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name_buffer));
8897 if (_ptr_name_buffer) {
8898 NDR_PULL_ALLOC(ndr, *r->out.name_buffer);
8899 } else {
8900 *r->out.name_buffer = NULL;
8902 if (*r->out.name_buffer) {
8903 _mem_save_name_buffer_1 = NDR_PULL_GET_MEM_CTX(ndr);
8904 NDR_PULL_SET_MEM_CTX(ndr, *r->out.name_buffer, 0);
8905 NDR_CHECK(ndr_pull_array_size(ndr, r->out.name_buffer));
8906 NDR_CHECK(ndr_pull_array_length(ndr, r->out.name_buffer));
8907 size_name_buffer_2 = ndr_get_array_size(ndr, r->out.name_buffer);
8908 length_name_buffer_2 = ndr_get_array_length(ndr, r->out.name_buffer);
8909 if (length_name_buffer_2 > size_name_buffer_2) {
8910 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_buffer_2, length_name_buffer_2);
8912 NDR_CHECK(ndr_check_string_terminator(ndr, length_name_buffer_2, sizeof(uint16_t)));
8913 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, r->out.name_buffer, length_name_buffer_2, sizeof(uint16_t), CH_UTF16));
8914 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_buffer_1, 0);
8916 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_buffer_0, LIBNDR_FLAG_REF_ALLOC);
8917 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8918 NDR_PULL_ALLOC(ndr, r->out.name_type);
8920 _mem_save_name_type_0 = NDR_PULL_GET_MEM_CTX(ndr);
8921 NDR_PULL_SET_MEM_CTX(ndr, r->out.name_type, LIBNDR_FLAG_REF_ALLOC);
8922 NDR_CHECK(ndr_pull_wkssvc_NetJoinStatus(ndr, NDR_SCALARS, r->out.name_type));
8923 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_type_0, LIBNDR_FLAG_REF_ALLOC);
8924 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
8926 return NDR_ERR_SUCCESS;
8929 _PUBLIC_ void ndr_print_wkssvc_NetrGetJoinInformation(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinInformation *r)
8931 ndr_print_struct(ndr, name, "wkssvc_NetrGetJoinInformation");
8932 ndr->depth++;
8933 if (flags & NDR_SET_VALUES) {
8934 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8936 if (flags & NDR_IN) {
8937 ndr_print_struct(ndr, "in", "wkssvc_NetrGetJoinInformation");
8938 ndr->depth++;
8939 ndr_print_ptr(ndr, "server_name", r->in.server_name);
8940 ndr->depth++;
8941 if (r->in.server_name) {
8942 ndr_print_string(ndr, "server_name", r->in.server_name);
8944 ndr->depth--;
8945 ndr_print_ptr(ndr, "name_buffer", r->in.name_buffer);
8946 ndr->depth++;
8947 ndr_print_ptr(ndr, "name_buffer", *r->in.name_buffer);
8948 ndr->depth++;
8949 if (*r->in.name_buffer) {
8950 ndr_print_string(ndr, "name_buffer", *r->in.name_buffer);
8952 ndr->depth--;
8953 ndr->depth--;
8954 ndr->depth--;
8956 if (flags & NDR_OUT) {
8957 ndr_print_struct(ndr, "out", "wkssvc_NetrGetJoinInformation");
8958 ndr->depth++;
8959 ndr_print_ptr(ndr, "name_buffer", r->out.name_buffer);
8960 ndr->depth++;
8961 ndr_print_ptr(ndr, "name_buffer", *r->out.name_buffer);
8962 ndr->depth++;
8963 if (*r->out.name_buffer) {
8964 ndr_print_string(ndr, "name_buffer", *r->out.name_buffer);
8966 ndr->depth--;
8967 ndr->depth--;
8968 ndr_print_ptr(ndr, "name_type", r->out.name_type);
8969 ndr->depth++;
8970 ndr_print_wkssvc_NetJoinStatus(ndr, "name_type", *r->out.name_type);
8971 ndr->depth--;
8972 ndr_print_WERROR(ndr, "result", r->out.result);
8973 ndr->depth--;
8975 ndr->depth--;
8978 static enum ndr_err_code ndr_push_wkssvc_NetrGetJoinableOus(struct ndr_push *ndr, int flags, const struct wkssvc_NetrGetJoinableOus *r)
8980 uint32_t cntr_ous_2;
8981 if (flags & NDR_IN) {
8982 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
8983 if (r->in.server_name) {
8984 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8985 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8986 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
8987 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8989 if (r->in.domain_name == NULL) {
8990 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8992 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
8993 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
8994 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
8995 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8996 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
8997 if (r->in.Account) {
8998 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
8999 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9000 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
9001 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9003 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown));
9004 if (r->in.unknown) {
9005 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
9006 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9007 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.unknown, CH_UTF16)));
9008 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.unknown, ndr_charset_length(r->in.unknown, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9010 if (r->in.num_ous == NULL) {
9011 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9013 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.num_ous));
9015 if (flags & NDR_OUT) {
9016 if (r->out.num_ous == NULL) {
9017 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9019 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ous));
9020 if (r->out.ous == NULL) {
9021 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9023 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.ous));
9024 if (*r->out.ous) {
9025 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, *r->out.num_ous));
9026 for (cntr_ous_2 = 0; cntr_ous_2 < *r->out.num_ous; cntr_ous_2++) {
9027 NDR_CHECK(ndr_push_unique_ptr(ndr, (*r->out.ous)[cntr_ous_2]));
9029 for (cntr_ous_2 = 0; cntr_ous_2 < *r->out.num_ous; cntr_ous_2++) {
9030 if ((*r->out.ous)[cntr_ous_2]) {
9031 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length((*r->out.ous)[cntr_ous_2], CH_UTF16)));
9032 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9033 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length((*r->out.ous)[cntr_ous_2], CH_UTF16)));
9034 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, (*r->out.ous)[cntr_ous_2], ndr_charset_length((*r->out.ous)[cntr_ous_2], CH_UTF16), sizeof(uint16_t), CH_UTF16));
9038 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
9040 return NDR_ERR_SUCCESS;
9043 static enum ndr_err_code ndr_pull_wkssvc_NetrGetJoinableOus(struct ndr_pull *ndr, int flags, struct wkssvc_NetrGetJoinableOus *r)
9045 uint32_t _ptr_server_name;
9046 uint32_t size_server_name_1 = 0;
9047 uint32_t length_server_name_1 = 0;
9048 uint32_t size_domain_name_1 = 0;
9049 uint32_t length_domain_name_1 = 0;
9050 uint32_t _ptr_Account;
9051 uint32_t size_Account_1 = 0;
9052 uint32_t length_Account_1 = 0;
9053 uint32_t _ptr_unknown;
9054 uint32_t size_unknown_1 = 0;
9055 uint32_t length_unknown_1 = 0;
9056 uint32_t _ptr_ous;
9057 uint32_t size_ous_2 = 0;
9058 uint32_t cntr_ous_2;
9059 uint32_t size_ous_4 = 0;
9060 uint32_t length_ous_4 = 0;
9061 TALLOC_CTX *_mem_save_server_name_0;
9062 TALLOC_CTX *_mem_save_Account_0;
9063 TALLOC_CTX *_mem_save_unknown_0;
9064 TALLOC_CTX *_mem_save_num_ous_0;
9065 TALLOC_CTX *_mem_save_ous_0;
9066 TALLOC_CTX *_mem_save_ous_1;
9067 TALLOC_CTX *_mem_save_ous_2;
9068 TALLOC_CTX *_mem_save_ous_3;
9069 if (flags & NDR_IN) {
9070 ZERO_STRUCT(r->out);
9072 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
9073 if (_ptr_server_name) {
9074 NDR_PULL_ALLOC(ndr, r->in.server_name);
9075 } else {
9076 r->in.server_name = NULL;
9078 if (r->in.server_name) {
9079 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9080 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
9081 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
9082 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
9083 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
9084 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
9085 if (length_server_name_1 > size_server_name_1) {
9086 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
9088 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
9089 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
9090 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
9092 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
9093 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
9094 size_domain_name_1 = ndr_get_array_size(ndr, &r->in.domain_name);
9095 length_domain_name_1 = ndr_get_array_length(ndr, &r->in.domain_name);
9096 if (length_domain_name_1 > size_domain_name_1) {
9097 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
9099 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
9100 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
9101 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
9102 if (_ptr_Account) {
9103 NDR_PULL_ALLOC(ndr, r->in.Account);
9104 } else {
9105 r->in.Account = NULL;
9107 if (r->in.Account) {
9108 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
9109 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
9110 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
9111 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
9112 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
9113 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
9114 if (length_Account_1 > size_Account_1) {
9115 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
9117 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
9118 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
9119 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
9121 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
9122 if (_ptr_unknown) {
9123 NDR_PULL_ALLOC(ndr, r->in.unknown);
9124 } else {
9125 r->in.unknown = NULL;
9127 if (r->in.unknown) {
9128 _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
9129 NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown, 0);
9130 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.unknown));
9131 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.unknown));
9132 size_unknown_1 = ndr_get_array_size(ndr, &r->in.unknown);
9133 length_unknown_1 = ndr_get_array_length(ndr, &r->in.unknown);
9134 if (length_unknown_1 > size_unknown_1) {
9135 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_unknown_1, length_unknown_1);
9137 NDR_CHECK(ndr_check_string_terminator(ndr, length_unknown_1, sizeof(uint16_t)));
9138 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.unknown, length_unknown_1, sizeof(uint16_t), CH_UTF16));
9139 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
9141 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9142 NDR_PULL_ALLOC(ndr, r->in.num_ous);
9144 _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
9145 NDR_PULL_SET_MEM_CTX(ndr, r->in.num_ous, LIBNDR_FLAG_REF_ALLOC);
9146 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.num_ous));
9147 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
9148 NDR_PULL_ALLOC(ndr, r->out.num_ous);
9149 *r->out.num_ous = *r->in.num_ous;
9150 NDR_PULL_ALLOC(ndr, r->out.ous);
9151 ZERO_STRUCTP(r->out.ous);
9153 if (flags & NDR_OUT) {
9154 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9155 NDR_PULL_ALLOC(ndr, r->out.num_ous);
9157 _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
9158 NDR_PULL_SET_MEM_CTX(ndr, r->out.num_ous, LIBNDR_FLAG_REF_ALLOC);
9159 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_ous));
9160 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
9161 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9162 NDR_PULL_ALLOC(ndr, r->out.ous);
9164 _mem_save_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
9165 NDR_PULL_SET_MEM_CTX(ndr, r->out.ous, LIBNDR_FLAG_REF_ALLOC);
9166 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ous));
9167 if (_ptr_ous) {
9168 NDR_PULL_ALLOC(ndr, *r->out.ous);
9169 } else {
9170 *r->out.ous = NULL;
9172 if (*r->out.ous) {
9173 _mem_save_ous_1 = NDR_PULL_GET_MEM_CTX(ndr);
9174 NDR_PULL_SET_MEM_CTX(ndr, *r->out.ous, 0);
9175 NDR_CHECK(ndr_pull_array_size(ndr, r->out.ous));
9176 size_ous_2 = ndr_get_array_size(ndr, r->out.ous);
9177 NDR_PULL_ALLOC_N(ndr, *r->out.ous, size_ous_2);
9178 _mem_save_ous_2 = NDR_PULL_GET_MEM_CTX(ndr);
9179 NDR_PULL_SET_MEM_CTX(ndr, *r->out.ous, 0);
9180 for (cntr_ous_2 = 0; cntr_ous_2 < size_ous_2; cntr_ous_2++) {
9181 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ous));
9182 if (_ptr_ous) {
9183 NDR_PULL_ALLOC(ndr, (*r->out.ous)[cntr_ous_2]);
9184 } else {
9185 (*r->out.ous)[cntr_ous_2] = NULL;
9188 for (cntr_ous_2 = 0; cntr_ous_2 < size_ous_2; cntr_ous_2++) {
9189 if ((*r->out.ous)[cntr_ous_2]) {
9190 _mem_save_ous_3 = NDR_PULL_GET_MEM_CTX(ndr);
9191 NDR_PULL_SET_MEM_CTX(ndr, (*r->out.ous)[cntr_ous_2], 0);
9192 NDR_CHECK(ndr_pull_array_size(ndr, &(*r->out.ous)[cntr_ous_2]));
9193 NDR_CHECK(ndr_pull_array_length(ndr, &(*r->out.ous)[cntr_ous_2]));
9194 size_ous_4 = ndr_get_array_size(ndr, &(*r->out.ous)[cntr_ous_2]);
9195 length_ous_4 = ndr_get_array_length(ndr, &(*r->out.ous)[cntr_ous_2]);
9196 if (length_ous_4 > size_ous_4) {
9197 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_ous_4, length_ous_4);
9199 NDR_CHECK(ndr_check_string_terminator(ndr, length_ous_4, sizeof(uint16_t)));
9200 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &(*r->out.ous)[cntr_ous_2], length_ous_4, sizeof(uint16_t), CH_UTF16));
9201 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_3, 0);
9204 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_2, 0);
9205 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_1, 0);
9207 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_0, LIBNDR_FLAG_REF_ALLOC);
9208 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
9209 if (*r->out.ous) {
9210 NDR_CHECK(ndr_check_array_size(ndr, (void*)r->out.ous, *r->out.num_ous));
9213 return NDR_ERR_SUCCESS;
9216 _PUBLIC_ void ndr_print_wkssvc_NetrGetJoinableOus(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinableOus *r)
9218 uint32_t cntr_ous_2;
9219 ndr_print_struct(ndr, name, "wkssvc_NetrGetJoinableOus");
9220 ndr->depth++;
9221 if (flags & NDR_SET_VALUES) {
9222 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9224 if (flags & NDR_IN) {
9225 ndr_print_struct(ndr, "in", "wkssvc_NetrGetJoinableOus");
9226 ndr->depth++;
9227 ndr_print_ptr(ndr, "server_name", r->in.server_name);
9228 ndr->depth++;
9229 if (r->in.server_name) {
9230 ndr_print_string(ndr, "server_name", r->in.server_name);
9232 ndr->depth--;
9233 ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
9234 ndr->depth++;
9235 ndr_print_string(ndr, "domain_name", r->in.domain_name);
9236 ndr->depth--;
9237 ndr_print_ptr(ndr, "Account", r->in.Account);
9238 ndr->depth++;
9239 if (r->in.Account) {
9240 ndr_print_string(ndr, "Account", r->in.Account);
9242 ndr->depth--;
9243 ndr_print_ptr(ndr, "unknown", r->in.unknown);
9244 ndr->depth++;
9245 if (r->in.unknown) {
9246 ndr_print_string(ndr, "unknown", r->in.unknown);
9248 ndr->depth--;
9249 ndr_print_ptr(ndr, "num_ous", r->in.num_ous);
9250 ndr->depth++;
9251 ndr_print_uint32(ndr, "num_ous", *r->in.num_ous);
9252 ndr->depth--;
9253 ndr->depth--;
9255 if (flags & NDR_OUT) {
9256 ndr_print_struct(ndr, "out", "wkssvc_NetrGetJoinableOus");
9257 ndr->depth++;
9258 ndr_print_ptr(ndr, "num_ous", r->out.num_ous);
9259 ndr->depth++;
9260 ndr_print_uint32(ndr, "num_ous", *r->out.num_ous);
9261 ndr->depth--;
9262 ndr_print_ptr(ndr, "ous", r->out.ous);
9263 ndr->depth++;
9264 ndr_print_ptr(ndr, "ous", *r->out.ous);
9265 ndr->depth++;
9266 if (*r->out.ous) {
9267 ndr->print(ndr, "%s: ARRAY(%d)", "ous", (int)*r->out.num_ous);
9268 ndr->depth++;
9269 for (cntr_ous_2=0;cntr_ous_2<*r->out.num_ous;cntr_ous_2++) {
9270 char *idx_2=NULL;
9271 if (asprintf(&idx_2, "[%d]", cntr_ous_2) != -1) {
9272 ndr_print_ptr(ndr, "ous", (*r->out.ous)[cntr_ous_2]);
9273 ndr->depth++;
9274 if ((*r->out.ous)[cntr_ous_2]) {
9275 ndr_print_string(ndr, "ous", (*r->out.ous)[cntr_ous_2]);
9277 ndr->depth--;
9278 free(idx_2);
9281 ndr->depth--;
9283 ndr->depth--;
9284 ndr->depth--;
9285 ndr_print_WERROR(ndr, "result", r->out.result);
9286 ndr->depth--;
9288 ndr->depth--;
9291 static enum ndr_err_code ndr_push_wkssvc_NetrJoinDomain2(struct ndr_push *ndr, int flags, const struct wkssvc_NetrJoinDomain2 *r)
9293 if (flags & NDR_IN) {
9294 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
9295 if (r->in.server_name) {
9296 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9297 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9298 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9299 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9301 if (r->in.domain_name == NULL) {
9302 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9304 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
9305 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9306 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
9307 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9308 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account_ou));
9309 if (r->in.account_ou) {
9310 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
9311 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9312 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.account_ou, CH_UTF16)));
9313 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.account_ou, ndr_charset_length(r->in.account_ou, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9315 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.admin_account));
9316 if (r->in.admin_account) {
9317 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.admin_account, CH_UTF16)));
9318 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9319 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.admin_account, CH_UTF16)));
9320 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.admin_account, ndr_charset_length(r->in.admin_account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9322 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.encrypted_password));
9323 if (r->in.encrypted_password) {
9324 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.encrypted_password));
9326 NDR_CHECK(ndr_push_wkssvc_joinflags(ndr, NDR_SCALARS, r->in.join_flags));
9328 if (flags & NDR_OUT) {
9329 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
9331 return NDR_ERR_SUCCESS;
9334 static enum ndr_err_code ndr_pull_wkssvc_NetrJoinDomain2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrJoinDomain2 *r)
9336 uint32_t _ptr_server_name;
9337 uint32_t size_server_name_1 = 0;
9338 uint32_t length_server_name_1 = 0;
9339 uint32_t size_domain_name_1 = 0;
9340 uint32_t length_domain_name_1 = 0;
9341 uint32_t _ptr_account_ou;
9342 uint32_t size_account_ou_1 = 0;
9343 uint32_t length_account_ou_1 = 0;
9344 uint32_t _ptr_admin_account;
9345 uint32_t size_admin_account_1 = 0;
9346 uint32_t length_admin_account_1 = 0;
9347 uint32_t _ptr_encrypted_password;
9348 TALLOC_CTX *_mem_save_server_name_0;
9349 TALLOC_CTX *_mem_save_account_ou_0;
9350 TALLOC_CTX *_mem_save_admin_account_0;
9351 TALLOC_CTX *_mem_save_encrypted_password_0;
9352 if (flags & NDR_IN) {
9353 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
9354 if (_ptr_server_name) {
9355 NDR_PULL_ALLOC(ndr, r->in.server_name);
9356 } else {
9357 r->in.server_name = NULL;
9359 if (r->in.server_name) {
9360 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9361 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
9362 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
9363 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
9364 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
9365 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
9366 if (length_server_name_1 > size_server_name_1) {
9367 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
9369 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
9370 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
9371 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
9373 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
9374 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
9375 size_domain_name_1 = ndr_get_array_size(ndr, &r->in.domain_name);
9376 length_domain_name_1 = ndr_get_array_length(ndr, &r->in.domain_name);
9377 if (length_domain_name_1 > size_domain_name_1) {
9378 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
9380 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
9381 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
9382 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_ou));
9383 if (_ptr_account_ou) {
9384 NDR_PULL_ALLOC(ndr, r->in.account_ou);
9385 } else {
9386 r->in.account_ou = NULL;
9388 if (r->in.account_ou) {
9389 _mem_save_account_ou_0 = NDR_PULL_GET_MEM_CTX(ndr);
9390 NDR_PULL_SET_MEM_CTX(ndr, r->in.account_ou, 0);
9391 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.account_ou));
9392 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.account_ou));
9393 size_account_ou_1 = ndr_get_array_size(ndr, &r->in.account_ou);
9394 length_account_ou_1 = ndr_get_array_length(ndr, &r->in.account_ou);
9395 if (length_account_ou_1 > size_account_ou_1) {
9396 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_account_ou_1, length_account_ou_1);
9398 NDR_CHECK(ndr_check_string_terminator(ndr, length_account_ou_1, sizeof(uint16_t)));
9399 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.account_ou, length_account_ou_1, sizeof(uint16_t), CH_UTF16));
9400 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_ou_0, 0);
9402 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_admin_account));
9403 if (_ptr_admin_account) {
9404 NDR_PULL_ALLOC(ndr, r->in.admin_account);
9405 } else {
9406 r->in.admin_account = NULL;
9408 if (r->in.admin_account) {
9409 _mem_save_admin_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
9410 NDR_PULL_SET_MEM_CTX(ndr, r->in.admin_account, 0);
9411 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.admin_account));
9412 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.admin_account));
9413 size_admin_account_1 = ndr_get_array_size(ndr, &r->in.admin_account);
9414 length_admin_account_1 = ndr_get_array_length(ndr, &r->in.admin_account);
9415 if (length_admin_account_1 > size_admin_account_1) {
9416 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_admin_account_1, length_admin_account_1);
9418 NDR_CHECK(ndr_check_string_terminator(ndr, length_admin_account_1, sizeof(uint16_t)));
9419 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.admin_account, length_admin_account_1, sizeof(uint16_t), CH_UTF16));
9420 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_admin_account_0, 0);
9422 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_encrypted_password));
9423 if (_ptr_encrypted_password) {
9424 NDR_PULL_ALLOC(ndr, r->in.encrypted_password);
9425 } else {
9426 r->in.encrypted_password = NULL;
9428 if (r->in.encrypted_password) {
9429 _mem_save_encrypted_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
9430 NDR_PULL_SET_MEM_CTX(ndr, r->in.encrypted_password, 0);
9431 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.encrypted_password));
9432 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_encrypted_password_0, 0);
9434 NDR_CHECK(ndr_pull_wkssvc_joinflags(ndr, NDR_SCALARS, &r->in.join_flags));
9436 if (flags & NDR_OUT) {
9437 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
9439 return NDR_ERR_SUCCESS;
9442 _PUBLIC_ void ndr_print_wkssvc_NetrJoinDomain2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrJoinDomain2 *r)
9444 ndr_print_struct(ndr, name, "wkssvc_NetrJoinDomain2");
9445 ndr->depth++;
9446 if (flags & NDR_SET_VALUES) {
9447 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9449 if (flags & NDR_IN) {
9450 ndr_print_struct(ndr, "in", "wkssvc_NetrJoinDomain2");
9451 ndr->depth++;
9452 ndr_print_ptr(ndr, "server_name", r->in.server_name);
9453 ndr->depth++;
9454 if (r->in.server_name) {
9455 ndr_print_string(ndr, "server_name", r->in.server_name);
9457 ndr->depth--;
9458 ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
9459 ndr->depth++;
9460 ndr_print_string(ndr, "domain_name", r->in.domain_name);
9461 ndr->depth--;
9462 ndr_print_ptr(ndr, "account_ou", r->in.account_ou);
9463 ndr->depth++;
9464 if (r->in.account_ou) {
9465 ndr_print_string(ndr, "account_ou", r->in.account_ou);
9467 ndr->depth--;
9468 ndr_print_ptr(ndr, "admin_account", r->in.admin_account);
9469 ndr->depth++;
9470 if (r->in.admin_account) {
9471 ndr_print_string(ndr, "admin_account", r->in.admin_account);
9473 ndr->depth--;
9474 ndr_print_ptr(ndr, "encrypted_password", r->in.encrypted_password);
9475 ndr->depth++;
9476 if (r->in.encrypted_password) {
9477 ndr_print_wkssvc_PasswordBuffer(ndr, "encrypted_password", r->in.encrypted_password);
9479 ndr->depth--;
9480 ndr_print_wkssvc_joinflags(ndr, "join_flags", r->in.join_flags);
9481 ndr->depth--;
9483 if (flags & NDR_OUT) {
9484 ndr_print_struct(ndr, "out", "wkssvc_NetrJoinDomain2");
9485 ndr->depth++;
9486 ndr_print_WERROR(ndr, "result", r->out.result);
9487 ndr->depth--;
9489 ndr->depth--;
9492 static enum ndr_err_code ndr_push_wkssvc_NetrUnjoinDomain2(struct ndr_push *ndr, int flags, const struct wkssvc_NetrUnjoinDomain2 *r)
9494 if (flags & NDR_IN) {
9495 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
9496 if (r->in.server_name) {
9497 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9498 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9499 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9500 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9502 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account));
9503 if (r->in.account) {
9504 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.account, CH_UTF16)));
9505 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9506 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.account, CH_UTF16)));
9507 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.account, ndr_charset_length(r->in.account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9509 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.encrypted_password));
9510 if (r->in.encrypted_password) {
9511 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.encrypted_password));
9513 NDR_CHECK(ndr_push_wkssvc_joinflags(ndr, NDR_SCALARS, r->in.unjoin_flags));
9515 if (flags & NDR_OUT) {
9516 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
9518 return NDR_ERR_SUCCESS;
9521 static enum ndr_err_code ndr_pull_wkssvc_NetrUnjoinDomain2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrUnjoinDomain2 *r)
9523 uint32_t _ptr_server_name;
9524 uint32_t size_server_name_1 = 0;
9525 uint32_t length_server_name_1 = 0;
9526 uint32_t _ptr_account;
9527 uint32_t size_account_1 = 0;
9528 uint32_t length_account_1 = 0;
9529 uint32_t _ptr_encrypted_password;
9530 TALLOC_CTX *_mem_save_server_name_0;
9531 TALLOC_CTX *_mem_save_account_0;
9532 TALLOC_CTX *_mem_save_encrypted_password_0;
9533 if (flags & NDR_IN) {
9534 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
9535 if (_ptr_server_name) {
9536 NDR_PULL_ALLOC(ndr, r->in.server_name);
9537 } else {
9538 r->in.server_name = NULL;
9540 if (r->in.server_name) {
9541 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9542 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
9543 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
9544 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
9545 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
9546 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
9547 if (length_server_name_1 > size_server_name_1) {
9548 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
9550 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
9551 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
9552 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
9554 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account));
9555 if (_ptr_account) {
9556 NDR_PULL_ALLOC(ndr, r->in.account);
9557 } else {
9558 r->in.account = NULL;
9560 if (r->in.account) {
9561 _mem_save_account_0 = NDR_PULL_GET_MEM_CTX(ndr);
9562 NDR_PULL_SET_MEM_CTX(ndr, r->in.account, 0);
9563 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.account));
9564 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.account));
9565 size_account_1 = ndr_get_array_size(ndr, &r->in.account);
9566 length_account_1 = ndr_get_array_length(ndr, &r->in.account);
9567 if (length_account_1 > size_account_1) {
9568 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_account_1, length_account_1);
9570 NDR_CHECK(ndr_check_string_terminator(ndr, length_account_1, sizeof(uint16_t)));
9571 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.account, length_account_1, sizeof(uint16_t), CH_UTF16));
9572 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_0, 0);
9574 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_encrypted_password));
9575 if (_ptr_encrypted_password) {
9576 NDR_PULL_ALLOC(ndr, r->in.encrypted_password);
9577 } else {
9578 r->in.encrypted_password = NULL;
9580 if (r->in.encrypted_password) {
9581 _mem_save_encrypted_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
9582 NDR_PULL_SET_MEM_CTX(ndr, r->in.encrypted_password, 0);
9583 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.encrypted_password));
9584 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_encrypted_password_0, 0);
9586 NDR_CHECK(ndr_pull_wkssvc_joinflags(ndr, NDR_SCALARS, &r->in.unjoin_flags));
9588 if (flags & NDR_OUT) {
9589 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
9591 return NDR_ERR_SUCCESS;
9594 _PUBLIC_ void ndr_print_wkssvc_NetrUnjoinDomain2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrUnjoinDomain2 *r)
9596 ndr_print_struct(ndr, name, "wkssvc_NetrUnjoinDomain2");
9597 ndr->depth++;
9598 if (flags & NDR_SET_VALUES) {
9599 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9601 if (flags & NDR_IN) {
9602 ndr_print_struct(ndr, "in", "wkssvc_NetrUnjoinDomain2");
9603 ndr->depth++;
9604 ndr_print_ptr(ndr, "server_name", r->in.server_name);
9605 ndr->depth++;
9606 if (r->in.server_name) {
9607 ndr_print_string(ndr, "server_name", r->in.server_name);
9609 ndr->depth--;
9610 ndr_print_ptr(ndr, "account", r->in.account);
9611 ndr->depth++;
9612 if (r->in.account) {
9613 ndr_print_string(ndr, "account", r->in.account);
9615 ndr->depth--;
9616 ndr_print_ptr(ndr, "encrypted_password", r->in.encrypted_password);
9617 ndr->depth++;
9618 if (r->in.encrypted_password) {
9619 ndr_print_wkssvc_PasswordBuffer(ndr, "encrypted_password", r->in.encrypted_password);
9621 ndr->depth--;
9622 ndr_print_wkssvc_joinflags(ndr, "unjoin_flags", r->in.unjoin_flags);
9623 ndr->depth--;
9625 if (flags & NDR_OUT) {
9626 ndr_print_struct(ndr, "out", "wkssvc_NetrUnjoinDomain2");
9627 ndr->depth++;
9628 ndr_print_WERROR(ndr, "result", r->out.result);
9629 ndr->depth--;
9631 ndr->depth--;
9634 static enum ndr_err_code ndr_push_wkssvc_NetrRenameMachineInDomain2(struct ndr_push *ndr, int flags, const struct wkssvc_NetrRenameMachineInDomain2 *r)
9636 if (flags & NDR_IN) {
9637 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
9638 if (r->in.server_name) {
9639 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9640 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9641 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9642 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9644 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.NewMachineName));
9645 if (r->in.NewMachineName) {
9646 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewMachineName, CH_UTF16)));
9647 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9648 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewMachineName, CH_UTF16)));
9649 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.NewMachineName, ndr_charset_length(r->in.NewMachineName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9651 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
9652 if (r->in.Account) {
9653 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
9654 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9655 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
9656 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9658 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
9659 if (r->in.EncryptedPassword) {
9660 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
9662 NDR_CHECK(ndr_push_wkssvc_renameflags(ndr, NDR_SCALARS, r->in.RenameOptions));
9664 if (flags & NDR_OUT) {
9665 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
9667 return NDR_ERR_SUCCESS;
9670 static enum ndr_err_code ndr_pull_wkssvc_NetrRenameMachineInDomain2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrRenameMachineInDomain2 *r)
9672 uint32_t _ptr_server_name;
9673 uint32_t size_server_name_1 = 0;
9674 uint32_t length_server_name_1 = 0;
9675 uint32_t _ptr_NewMachineName;
9676 uint32_t size_NewMachineName_1 = 0;
9677 uint32_t length_NewMachineName_1 = 0;
9678 uint32_t _ptr_Account;
9679 uint32_t size_Account_1 = 0;
9680 uint32_t length_Account_1 = 0;
9681 uint32_t _ptr_EncryptedPassword;
9682 TALLOC_CTX *_mem_save_server_name_0;
9683 TALLOC_CTX *_mem_save_NewMachineName_0;
9684 TALLOC_CTX *_mem_save_Account_0;
9685 TALLOC_CTX *_mem_save_EncryptedPassword_0;
9686 if (flags & NDR_IN) {
9687 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
9688 if (_ptr_server_name) {
9689 NDR_PULL_ALLOC(ndr, r->in.server_name);
9690 } else {
9691 r->in.server_name = NULL;
9693 if (r->in.server_name) {
9694 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9695 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
9696 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
9697 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
9698 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
9699 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
9700 if (length_server_name_1 > size_server_name_1) {
9701 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
9703 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
9704 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
9705 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
9707 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_NewMachineName));
9708 if (_ptr_NewMachineName) {
9709 NDR_PULL_ALLOC(ndr, r->in.NewMachineName);
9710 } else {
9711 r->in.NewMachineName = NULL;
9713 if (r->in.NewMachineName) {
9714 _mem_save_NewMachineName_0 = NDR_PULL_GET_MEM_CTX(ndr);
9715 NDR_PULL_SET_MEM_CTX(ndr, r->in.NewMachineName, 0);
9716 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.NewMachineName));
9717 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.NewMachineName));
9718 size_NewMachineName_1 = ndr_get_array_size(ndr, &r->in.NewMachineName);
9719 length_NewMachineName_1 = ndr_get_array_length(ndr, &r->in.NewMachineName);
9720 if (length_NewMachineName_1 > size_NewMachineName_1) {
9721 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_NewMachineName_1, length_NewMachineName_1);
9723 NDR_CHECK(ndr_check_string_terminator(ndr, length_NewMachineName_1, sizeof(uint16_t)));
9724 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.NewMachineName, length_NewMachineName_1, sizeof(uint16_t), CH_UTF16));
9725 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_NewMachineName_0, 0);
9727 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
9728 if (_ptr_Account) {
9729 NDR_PULL_ALLOC(ndr, r->in.Account);
9730 } else {
9731 r->in.Account = NULL;
9733 if (r->in.Account) {
9734 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
9735 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
9736 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
9737 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
9738 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
9739 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
9740 if (length_Account_1 > size_Account_1) {
9741 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
9743 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
9744 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
9745 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
9747 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
9748 if (_ptr_EncryptedPassword) {
9749 NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
9750 } else {
9751 r->in.EncryptedPassword = NULL;
9753 if (r->in.EncryptedPassword) {
9754 _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
9755 NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
9756 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
9757 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
9759 NDR_CHECK(ndr_pull_wkssvc_renameflags(ndr, NDR_SCALARS, &r->in.RenameOptions));
9761 if (flags & NDR_OUT) {
9762 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
9764 return NDR_ERR_SUCCESS;
9767 _PUBLIC_ void ndr_print_wkssvc_NetrRenameMachineInDomain2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrRenameMachineInDomain2 *r)
9769 ndr_print_struct(ndr, name, "wkssvc_NetrRenameMachineInDomain2");
9770 ndr->depth++;
9771 if (flags & NDR_SET_VALUES) {
9772 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9774 if (flags & NDR_IN) {
9775 ndr_print_struct(ndr, "in", "wkssvc_NetrRenameMachineInDomain2");
9776 ndr->depth++;
9777 ndr_print_ptr(ndr, "server_name", r->in.server_name);
9778 ndr->depth++;
9779 if (r->in.server_name) {
9780 ndr_print_string(ndr, "server_name", r->in.server_name);
9782 ndr->depth--;
9783 ndr_print_ptr(ndr, "NewMachineName", r->in.NewMachineName);
9784 ndr->depth++;
9785 if (r->in.NewMachineName) {
9786 ndr_print_string(ndr, "NewMachineName", r->in.NewMachineName);
9788 ndr->depth--;
9789 ndr_print_ptr(ndr, "Account", r->in.Account);
9790 ndr->depth++;
9791 if (r->in.Account) {
9792 ndr_print_string(ndr, "Account", r->in.Account);
9794 ndr->depth--;
9795 ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
9796 ndr->depth++;
9797 if (r->in.EncryptedPassword) {
9798 ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
9800 ndr->depth--;
9801 ndr_print_wkssvc_renameflags(ndr, "RenameOptions", r->in.RenameOptions);
9802 ndr->depth--;
9804 if (flags & NDR_OUT) {
9805 ndr_print_struct(ndr, "out", "wkssvc_NetrRenameMachineInDomain2");
9806 ndr->depth++;
9807 ndr_print_WERROR(ndr, "result", r->out.result);
9808 ndr->depth--;
9810 ndr->depth--;
9813 static enum ndr_err_code ndr_push_wkssvc_NetrValidateName2(struct ndr_push *ndr, int flags, const struct wkssvc_NetrValidateName2 *r)
9815 if (flags & NDR_IN) {
9816 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
9817 if (r->in.server_name) {
9818 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9819 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9820 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9821 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9823 if (r->in.name == NULL) {
9824 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9826 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
9827 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9828 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
9829 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.name, ndr_charset_length(r->in.name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9830 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
9831 if (r->in.Account) {
9832 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
9833 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9834 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
9835 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9837 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
9838 if (r->in.EncryptedPassword) {
9839 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
9841 NDR_CHECK(ndr_push_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, r->in.name_type));
9843 if (flags & NDR_OUT) {
9844 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
9846 return NDR_ERR_SUCCESS;
9849 static enum ndr_err_code ndr_pull_wkssvc_NetrValidateName2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrValidateName2 *r)
9851 uint32_t _ptr_server_name;
9852 uint32_t size_server_name_1 = 0;
9853 uint32_t length_server_name_1 = 0;
9854 uint32_t size_name_1 = 0;
9855 uint32_t length_name_1 = 0;
9856 uint32_t _ptr_Account;
9857 uint32_t size_Account_1 = 0;
9858 uint32_t length_Account_1 = 0;
9859 uint32_t _ptr_EncryptedPassword;
9860 TALLOC_CTX *_mem_save_server_name_0;
9861 TALLOC_CTX *_mem_save_Account_0;
9862 TALLOC_CTX *_mem_save_EncryptedPassword_0;
9863 if (flags & NDR_IN) {
9864 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
9865 if (_ptr_server_name) {
9866 NDR_PULL_ALLOC(ndr, r->in.server_name);
9867 } else {
9868 r->in.server_name = NULL;
9870 if (r->in.server_name) {
9871 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
9872 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
9873 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
9874 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
9875 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
9876 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
9877 if (length_server_name_1 > size_server_name_1) {
9878 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
9880 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
9881 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
9882 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
9884 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.name));
9885 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.name));
9886 size_name_1 = ndr_get_array_size(ndr, &r->in.name);
9887 length_name_1 = ndr_get_array_length(ndr, &r->in.name);
9888 if (length_name_1 > size_name_1) {
9889 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_name_1, length_name_1);
9891 NDR_CHECK(ndr_check_string_terminator(ndr, length_name_1, sizeof(uint16_t)));
9892 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.name, length_name_1, sizeof(uint16_t), CH_UTF16));
9893 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
9894 if (_ptr_Account) {
9895 NDR_PULL_ALLOC(ndr, r->in.Account);
9896 } else {
9897 r->in.Account = NULL;
9899 if (r->in.Account) {
9900 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
9901 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
9902 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
9903 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
9904 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
9905 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
9906 if (length_Account_1 > size_Account_1) {
9907 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
9909 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
9910 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
9911 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
9913 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
9914 if (_ptr_EncryptedPassword) {
9915 NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
9916 } else {
9917 r->in.EncryptedPassword = NULL;
9919 if (r->in.EncryptedPassword) {
9920 _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
9921 NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
9922 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
9923 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
9925 NDR_CHECK(ndr_pull_wkssvc_NetValidateNameType(ndr, NDR_SCALARS, &r->in.name_type));
9927 if (flags & NDR_OUT) {
9928 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
9930 return NDR_ERR_SUCCESS;
9933 _PUBLIC_ void ndr_print_wkssvc_NetrValidateName2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrValidateName2 *r)
9935 ndr_print_struct(ndr, name, "wkssvc_NetrValidateName2");
9936 ndr->depth++;
9937 if (flags & NDR_SET_VALUES) {
9938 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9940 if (flags & NDR_IN) {
9941 ndr_print_struct(ndr, "in", "wkssvc_NetrValidateName2");
9942 ndr->depth++;
9943 ndr_print_ptr(ndr, "server_name", r->in.server_name);
9944 ndr->depth++;
9945 if (r->in.server_name) {
9946 ndr_print_string(ndr, "server_name", r->in.server_name);
9948 ndr->depth--;
9949 ndr_print_ptr(ndr, "name", r->in.name);
9950 ndr->depth++;
9951 ndr_print_string(ndr, "name", r->in.name);
9952 ndr->depth--;
9953 ndr_print_ptr(ndr, "Account", r->in.Account);
9954 ndr->depth++;
9955 if (r->in.Account) {
9956 ndr_print_string(ndr, "Account", r->in.Account);
9958 ndr->depth--;
9959 ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
9960 ndr->depth++;
9961 if (r->in.EncryptedPassword) {
9962 ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
9964 ndr->depth--;
9965 ndr_print_wkssvc_NetValidateNameType(ndr, "name_type", r->in.name_type);
9966 ndr->depth--;
9968 if (flags & NDR_OUT) {
9969 ndr_print_struct(ndr, "out", "wkssvc_NetrValidateName2");
9970 ndr->depth++;
9971 ndr_print_WERROR(ndr, "result", r->out.result);
9972 ndr->depth--;
9974 ndr->depth--;
9977 static enum ndr_err_code ndr_push_wkssvc_NetrGetJoinableOus2(struct ndr_push *ndr, int flags, const struct wkssvc_NetrGetJoinableOus2 *r)
9979 uint32_t cntr_ous_2;
9980 if (flags & NDR_IN) {
9981 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
9982 if (r->in.server_name) {
9983 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9984 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9985 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
9986 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9988 if (r->in.domain_name == NULL) {
9989 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9991 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
9992 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9993 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.domain_name, CH_UTF16)));
9994 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.domain_name, ndr_charset_length(r->in.domain_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
9995 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
9996 if (r->in.Account) {
9997 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
9998 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
9999 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
10000 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10002 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
10003 if (r->in.EncryptedPassword) {
10004 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10006 if (r->in.num_ous == NULL) {
10007 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10009 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.num_ous));
10011 if (flags & NDR_OUT) {
10012 if (r->out.num_ous == NULL) {
10013 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10015 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.num_ous));
10016 if (r->out.ous == NULL) {
10017 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10019 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.ous));
10020 if (*r->out.ous) {
10021 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, *r->out.num_ous));
10022 for (cntr_ous_2 = 0; cntr_ous_2 < *r->out.num_ous; cntr_ous_2++) {
10023 NDR_CHECK(ndr_push_unique_ptr(ndr, (*r->out.ous)[cntr_ous_2]));
10025 for (cntr_ous_2 = 0; cntr_ous_2 < *r->out.num_ous; cntr_ous_2++) {
10026 if ((*r->out.ous)[cntr_ous_2]) {
10027 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length((*r->out.ous)[cntr_ous_2], CH_UTF16)));
10028 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10029 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length((*r->out.ous)[cntr_ous_2], CH_UTF16)));
10030 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, (*r->out.ous)[cntr_ous_2], ndr_charset_length((*r->out.ous)[cntr_ous_2], CH_UTF16), sizeof(uint16_t), CH_UTF16));
10034 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
10036 return NDR_ERR_SUCCESS;
10039 static enum ndr_err_code ndr_pull_wkssvc_NetrGetJoinableOus2(struct ndr_pull *ndr, int flags, struct wkssvc_NetrGetJoinableOus2 *r)
10041 uint32_t _ptr_server_name;
10042 uint32_t size_server_name_1 = 0;
10043 uint32_t length_server_name_1 = 0;
10044 uint32_t size_domain_name_1 = 0;
10045 uint32_t length_domain_name_1 = 0;
10046 uint32_t _ptr_Account;
10047 uint32_t size_Account_1 = 0;
10048 uint32_t length_Account_1 = 0;
10049 uint32_t _ptr_EncryptedPassword;
10050 uint32_t _ptr_ous;
10051 uint32_t size_ous_2 = 0;
10052 uint32_t cntr_ous_2;
10053 uint32_t size_ous_4 = 0;
10054 uint32_t length_ous_4 = 0;
10055 TALLOC_CTX *_mem_save_server_name_0;
10056 TALLOC_CTX *_mem_save_Account_0;
10057 TALLOC_CTX *_mem_save_EncryptedPassword_0;
10058 TALLOC_CTX *_mem_save_num_ous_0;
10059 TALLOC_CTX *_mem_save_ous_0;
10060 TALLOC_CTX *_mem_save_ous_1;
10061 TALLOC_CTX *_mem_save_ous_2;
10062 TALLOC_CTX *_mem_save_ous_3;
10063 if (flags & NDR_IN) {
10064 ZERO_STRUCT(r->out);
10066 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
10067 if (_ptr_server_name) {
10068 NDR_PULL_ALLOC(ndr, r->in.server_name);
10069 } else {
10070 r->in.server_name = NULL;
10072 if (r->in.server_name) {
10073 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10074 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
10075 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
10076 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
10077 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
10078 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
10079 if (length_server_name_1 > size_server_name_1) {
10080 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
10082 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
10083 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
10084 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
10086 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.domain_name));
10087 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.domain_name));
10088 size_domain_name_1 = ndr_get_array_size(ndr, &r->in.domain_name);
10089 length_domain_name_1 = ndr_get_array_length(ndr, &r->in.domain_name);
10090 if (length_domain_name_1 > size_domain_name_1) {
10091 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
10093 NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint16_t)));
10094 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.domain_name, length_domain_name_1, sizeof(uint16_t), CH_UTF16));
10095 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
10096 if (_ptr_Account) {
10097 NDR_PULL_ALLOC(ndr, r->in.Account);
10098 } else {
10099 r->in.Account = NULL;
10101 if (r->in.Account) {
10102 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
10103 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
10104 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
10105 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
10106 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
10107 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
10108 if (length_Account_1 > size_Account_1) {
10109 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
10111 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
10112 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
10113 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
10115 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
10116 if (_ptr_EncryptedPassword) {
10117 NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
10118 } else {
10119 r->in.EncryptedPassword = NULL;
10121 if (r->in.EncryptedPassword) {
10122 _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
10123 NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
10124 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10125 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
10127 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10128 NDR_PULL_ALLOC(ndr, r->in.num_ous);
10130 _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
10131 NDR_PULL_SET_MEM_CTX(ndr, r->in.num_ous, LIBNDR_FLAG_REF_ALLOC);
10132 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.num_ous));
10133 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
10134 NDR_PULL_ALLOC(ndr, r->out.num_ous);
10135 *r->out.num_ous = *r->in.num_ous;
10136 NDR_PULL_ALLOC(ndr, r->out.ous);
10137 ZERO_STRUCTP(r->out.ous);
10139 if (flags & NDR_OUT) {
10140 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10141 NDR_PULL_ALLOC(ndr, r->out.num_ous);
10143 _mem_save_num_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
10144 NDR_PULL_SET_MEM_CTX(ndr, r->out.num_ous, LIBNDR_FLAG_REF_ALLOC);
10145 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.num_ous));
10146 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_num_ous_0, LIBNDR_FLAG_REF_ALLOC);
10147 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10148 NDR_PULL_ALLOC(ndr, r->out.ous);
10150 _mem_save_ous_0 = NDR_PULL_GET_MEM_CTX(ndr);
10151 NDR_PULL_SET_MEM_CTX(ndr, r->out.ous, LIBNDR_FLAG_REF_ALLOC);
10152 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ous));
10153 if (_ptr_ous) {
10154 NDR_PULL_ALLOC(ndr, *r->out.ous);
10155 } else {
10156 *r->out.ous = NULL;
10158 if (*r->out.ous) {
10159 _mem_save_ous_1 = NDR_PULL_GET_MEM_CTX(ndr);
10160 NDR_PULL_SET_MEM_CTX(ndr, *r->out.ous, 0);
10161 NDR_CHECK(ndr_pull_array_size(ndr, r->out.ous));
10162 size_ous_2 = ndr_get_array_size(ndr, r->out.ous);
10163 NDR_PULL_ALLOC_N(ndr, *r->out.ous, size_ous_2);
10164 _mem_save_ous_2 = NDR_PULL_GET_MEM_CTX(ndr);
10165 NDR_PULL_SET_MEM_CTX(ndr, *r->out.ous, 0);
10166 for (cntr_ous_2 = 0; cntr_ous_2 < size_ous_2; cntr_ous_2++) {
10167 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ous));
10168 if (_ptr_ous) {
10169 NDR_PULL_ALLOC(ndr, (*r->out.ous)[cntr_ous_2]);
10170 } else {
10171 (*r->out.ous)[cntr_ous_2] = NULL;
10174 for (cntr_ous_2 = 0; cntr_ous_2 < size_ous_2; cntr_ous_2++) {
10175 if ((*r->out.ous)[cntr_ous_2]) {
10176 _mem_save_ous_3 = NDR_PULL_GET_MEM_CTX(ndr);
10177 NDR_PULL_SET_MEM_CTX(ndr, (*r->out.ous)[cntr_ous_2], 0);
10178 NDR_CHECK(ndr_pull_array_size(ndr, &(*r->out.ous)[cntr_ous_2]));
10179 NDR_CHECK(ndr_pull_array_length(ndr, &(*r->out.ous)[cntr_ous_2]));
10180 size_ous_4 = ndr_get_array_size(ndr, &(*r->out.ous)[cntr_ous_2]);
10181 length_ous_4 = ndr_get_array_length(ndr, &(*r->out.ous)[cntr_ous_2]);
10182 if (length_ous_4 > size_ous_4) {
10183 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_ous_4, length_ous_4);
10185 NDR_CHECK(ndr_check_string_terminator(ndr, length_ous_4, sizeof(uint16_t)));
10186 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &(*r->out.ous)[cntr_ous_2], length_ous_4, sizeof(uint16_t), CH_UTF16));
10187 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_3, 0);
10190 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_2, 0);
10191 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_1, 0);
10193 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ous_0, LIBNDR_FLAG_REF_ALLOC);
10194 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
10195 if (*r->out.ous) {
10196 NDR_CHECK(ndr_check_array_size(ndr, (void*)r->out.ous, *r->out.num_ous));
10199 return NDR_ERR_SUCCESS;
10202 _PUBLIC_ void ndr_print_wkssvc_NetrGetJoinableOus2(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrGetJoinableOus2 *r)
10204 uint32_t cntr_ous_2;
10205 ndr_print_struct(ndr, name, "wkssvc_NetrGetJoinableOus2");
10206 ndr->depth++;
10207 if (flags & NDR_SET_VALUES) {
10208 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10210 if (flags & NDR_IN) {
10211 ndr_print_struct(ndr, "in", "wkssvc_NetrGetJoinableOus2");
10212 ndr->depth++;
10213 ndr_print_ptr(ndr, "server_name", r->in.server_name);
10214 ndr->depth++;
10215 if (r->in.server_name) {
10216 ndr_print_string(ndr, "server_name", r->in.server_name);
10218 ndr->depth--;
10219 ndr_print_ptr(ndr, "domain_name", r->in.domain_name);
10220 ndr->depth++;
10221 ndr_print_string(ndr, "domain_name", r->in.domain_name);
10222 ndr->depth--;
10223 ndr_print_ptr(ndr, "Account", r->in.Account);
10224 ndr->depth++;
10225 if (r->in.Account) {
10226 ndr_print_string(ndr, "Account", r->in.Account);
10228 ndr->depth--;
10229 ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10230 ndr->depth++;
10231 if (r->in.EncryptedPassword) {
10232 ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10234 ndr->depth--;
10235 ndr_print_ptr(ndr, "num_ous", r->in.num_ous);
10236 ndr->depth++;
10237 ndr_print_uint32(ndr, "num_ous", *r->in.num_ous);
10238 ndr->depth--;
10239 ndr->depth--;
10241 if (flags & NDR_OUT) {
10242 ndr_print_struct(ndr, "out", "wkssvc_NetrGetJoinableOus2");
10243 ndr->depth++;
10244 ndr_print_ptr(ndr, "num_ous", r->out.num_ous);
10245 ndr->depth++;
10246 ndr_print_uint32(ndr, "num_ous", *r->out.num_ous);
10247 ndr->depth--;
10248 ndr_print_ptr(ndr, "ous", r->out.ous);
10249 ndr->depth++;
10250 ndr_print_ptr(ndr, "ous", *r->out.ous);
10251 ndr->depth++;
10252 if (*r->out.ous) {
10253 ndr->print(ndr, "%s: ARRAY(%d)", "ous", (int)*r->out.num_ous);
10254 ndr->depth++;
10255 for (cntr_ous_2=0;cntr_ous_2<*r->out.num_ous;cntr_ous_2++) {
10256 char *idx_2=NULL;
10257 if (asprintf(&idx_2, "[%d]", cntr_ous_2) != -1) {
10258 ndr_print_ptr(ndr, "ous", (*r->out.ous)[cntr_ous_2]);
10259 ndr->depth++;
10260 if ((*r->out.ous)[cntr_ous_2]) {
10261 ndr_print_string(ndr, "ous", (*r->out.ous)[cntr_ous_2]);
10263 ndr->depth--;
10264 free(idx_2);
10267 ndr->depth--;
10269 ndr->depth--;
10270 ndr->depth--;
10271 ndr_print_WERROR(ndr, "result", r->out.result);
10272 ndr->depth--;
10274 ndr->depth--;
10277 static enum ndr_err_code ndr_push_wkssvc_NetrAddAlternateComputerName(struct ndr_push *ndr, int flags, const struct wkssvc_NetrAddAlternateComputerName *r)
10279 if (flags & NDR_IN) {
10280 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
10281 if (r->in.server_name) {
10282 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10283 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10284 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10285 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10287 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.NewAlternateMachineName));
10288 if (r->in.NewAlternateMachineName) {
10289 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewAlternateMachineName, CH_UTF16)));
10290 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10291 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.NewAlternateMachineName, CH_UTF16)));
10292 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.NewAlternateMachineName, ndr_charset_length(r->in.NewAlternateMachineName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10294 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
10295 if (r->in.Account) {
10296 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
10297 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10298 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
10299 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10301 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
10302 if (r->in.EncryptedPassword) {
10303 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10305 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Reserved));
10307 if (flags & NDR_OUT) {
10308 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
10310 return NDR_ERR_SUCCESS;
10313 static enum ndr_err_code ndr_pull_wkssvc_NetrAddAlternateComputerName(struct ndr_pull *ndr, int flags, struct wkssvc_NetrAddAlternateComputerName *r)
10315 uint32_t _ptr_server_name;
10316 uint32_t size_server_name_1 = 0;
10317 uint32_t length_server_name_1 = 0;
10318 uint32_t _ptr_NewAlternateMachineName;
10319 uint32_t size_NewAlternateMachineName_1 = 0;
10320 uint32_t length_NewAlternateMachineName_1 = 0;
10321 uint32_t _ptr_Account;
10322 uint32_t size_Account_1 = 0;
10323 uint32_t length_Account_1 = 0;
10324 uint32_t _ptr_EncryptedPassword;
10325 TALLOC_CTX *_mem_save_server_name_0;
10326 TALLOC_CTX *_mem_save_NewAlternateMachineName_0;
10327 TALLOC_CTX *_mem_save_Account_0;
10328 TALLOC_CTX *_mem_save_EncryptedPassword_0;
10329 if (flags & NDR_IN) {
10330 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
10331 if (_ptr_server_name) {
10332 NDR_PULL_ALLOC(ndr, r->in.server_name);
10333 } else {
10334 r->in.server_name = NULL;
10336 if (r->in.server_name) {
10337 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10338 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
10339 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
10340 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
10341 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
10342 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
10343 if (length_server_name_1 > size_server_name_1) {
10344 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
10346 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
10347 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
10348 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
10350 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_NewAlternateMachineName));
10351 if (_ptr_NewAlternateMachineName) {
10352 NDR_PULL_ALLOC(ndr, r->in.NewAlternateMachineName);
10353 } else {
10354 r->in.NewAlternateMachineName = NULL;
10356 if (r->in.NewAlternateMachineName) {
10357 _mem_save_NewAlternateMachineName_0 = NDR_PULL_GET_MEM_CTX(ndr);
10358 NDR_PULL_SET_MEM_CTX(ndr, r->in.NewAlternateMachineName, 0);
10359 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.NewAlternateMachineName));
10360 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.NewAlternateMachineName));
10361 size_NewAlternateMachineName_1 = ndr_get_array_size(ndr, &r->in.NewAlternateMachineName);
10362 length_NewAlternateMachineName_1 = ndr_get_array_length(ndr, &r->in.NewAlternateMachineName);
10363 if (length_NewAlternateMachineName_1 > size_NewAlternateMachineName_1) {
10364 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_NewAlternateMachineName_1, length_NewAlternateMachineName_1);
10366 NDR_CHECK(ndr_check_string_terminator(ndr, length_NewAlternateMachineName_1, sizeof(uint16_t)));
10367 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.NewAlternateMachineName, length_NewAlternateMachineName_1, sizeof(uint16_t), CH_UTF16));
10368 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_NewAlternateMachineName_0, 0);
10370 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
10371 if (_ptr_Account) {
10372 NDR_PULL_ALLOC(ndr, r->in.Account);
10373 } else {
10374 r->in.Account = NULL;
10376 if (r->in.Account) {
10377 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
10378 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
10379 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
10380 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
10381 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
10382 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
10383 if (length_Account_1 > size_Account_1) {
10384 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
10386 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
10387 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
10388 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
10390 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
10391 if (_ptr_EncryptedPassword) {
10392 NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
10393 } else {
10394 r->in.EncryptedPassword = NULL;
10396 if (r->in.EncryptedPassword) {
10397 _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
10398 NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
10399 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10400 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
10402 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Reserved));
10404 if (flags & NDR_OUT) {
10405 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
10407 return NDR_ERR_SUCCESS;
10410 _PUBLIC_ void ndr_print_wkssvc_NetrAddAlternateComputerName(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrAddAlternateComputerName *r)
10412 ndr_print_struct(ndr, name, "wkssvc_NetrAddAlternateComputerName");
10413 ndr->depth++;
10414 if (flags & NDR_SET_VALUES) {
10415 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10417 if (flags & NDR_IN) {
10418 ndr_print_struct(ndr, "in", "wkssvc_NetrAddAlternateComputerName");
10419 ndr->depth++;
10420 ndr_print_ptr(ndr, "server_name", r->in.server_name);
10421 ndr->depth++;
10422 if (r->in.server_name) {
10423 ndr_print_string(ndr, "server_name", r->in.server_name);
10425 ndr->depth--;
10426 ndr_print_ptr(ndr, "NewAlternateMachineName", r->in.NewAlternateMachineName);
10427 ndr->depth++;
10428 if (r->in.NewAlternateMachineName) {
10429 ndr_print_string(ndr, "NewAlternateMachineName", r->in.NewAlternateMachineName);
10431 ndr->depth--;
10432 ndr_print_ptr(ndr, "Account", r->in.Account);
10433 ndr->depth++;
10434 if (r->in.Account) {
10435 ndr_print_string(ndr, "Account", r->in.Account);
10437 ndr->depth--;
10438 ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10439 ndr->depth++;
10440 if (r->in.EncryptedPassword) {
10441 ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10443 ndr->depth--;
10444 ndr_print_uint32(ndr, "Reserved", r->in.Reserved);
10445 ndr->depth--;
10447 if (flags & NDR_OUT) {
10448 ndr_print_struct(ndr, "out", "wkssvc_NetrAddAlternateComputerName");
10449 ndr->depth++;
10450 ndr_print_WERROR(ndr, "result", r->out.result);
10451 ndr->depth--;
10453 ndr->depth--;
10456 static enum ndr_err_code ndr_push_wkssvc_NetrRemoveAlternateComputerName(struct ndr_push *ndr, int flags, const struct wkssvc_NetrRemoveAlternateComputerName *r)
10458 if (flags & NDR_IN) {
10459 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
10460 if (r->in.server_name) {
10461 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10462 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10463 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10464 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10466 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.AlternateMachineNameToRemove));
10467 if (r->in.AlternateMachineNameToRemove) {
10468 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.AlternateMachineNameToRemove, CH_UTF16)));
10469 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10470 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.AlternateMachineNameToRemove, CH_UTF16)));
10471 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.AlternateMachineNameToRemove, ndr_charset_length(r->in.AlternateMachineNameToRemove, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10473 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
10474 if (r->in.Account) {
10475 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
10476 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10477 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
10478 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10480 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
10481 if (r->in.EncryptedPassword) {
10482 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10484 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Reserved));
10486 if (flags & NDR_OUT) {
10487 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
10489 return NDR_ERR_SUCCESS;
10492 static enum ndr_err_code ndr_pull_wkssvc_NetrRemoveAlternateComputerName(struct ndr_pull *ndr, int flags, struct wkssvc_NetrRemoveAlternateComputerName *r)
10494 uint32_t _ptr_server_name;
10495 uint32_t size_server_name_1 = 0;
10496 uint32_t length_server_name_1 = 0;
10497 uint32_t _ptr_AlternateMachineNameToRemove;
10498 uint32_t size_AlternateMachineNameToRemove_1 = 0;
10499 uint32_t length_AlternateMachineNameToRemove_1 = 0;
10500 uint32_t _ptr_Account;
10501 uint32_t size_Account_1 = 0;
10502 uint32_t length_Account_1 = 0;
10503 uint32_t _ptr_EncryptedPassword;
10504 TALLOC_CTX *_mem_save_server_name_0;
10505 TALLOC_CTX *_mem_save_AlternateMachineNameToRemove_0;
10506 TALLOC_CTX *_mem_save_Account_0;
10507 TALLOC_CTX *_mem_save_EncryptedPassword_0;
10508 if (flags & NDR_IN) {
10509 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
10510 if (_ptr_server_name) {
10511 NDR_PULL_ALLOC(ndr, r->in.server_name);
10512 } else {
10513 r->in.server_name = NULL;
10515 if (r->in.server_name) {
10516 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10517 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
10518 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
10519 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
10520 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
10521 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
10522 if (length_server_name_1 > size_server_name_1) {
10523 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
10525 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
10526 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
10527 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
10529 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_AlternateMachineNameToRemove));
10530 if (_ptr_AlternateMachineNameToRemove) {
10531 NDR_PULL_ALLOC(ndr, r->in.AlternateMachineNameToRemove);
10532 } else {
10533 r->in.AlternateMachineNameToRemove = NULL;
10535 if (r->in.AlternateMachineNameToRemove) {
10536 _mem_save_AlternateMachineNameToRemove_0 = NDR_PULL_GET_MEM_CTX(ndr);
10537 NDR_PULL_SET_MEM_CTX(ndr, r->in.AlternateMachineNameToRemove, 0);
10538 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.AlternateMachineNameToRemove));
10539 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.AlternateMachineNameToRemove));
10540 size_AlternateMachineNameToRemove_1 = ndr_get_array_size(ndr, &r->in.AlternateMachineNameToRemove);
10541 length_AlternateMachineNameToRemove_1 = ndr_get_array_length(ndr, &r->in.AlternateMachineNameToRemove);
10542 if (length_AlternateMachineNameToRemove_1 > size_AlternateMachineNameToRemove_1) {
10543 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_AlternateMachineNameToRemove_1, length_AlternateMachineNameToRemove_1);
10545 NDR_CHECK(ndr_check_string_terminator(ndr, length_AlternateMachineNameToRemove_1, sizeof(uint16_t)));
10546 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.AlternateMachineNameToRemove, length_AlternateMachineNameToRemove_1, sizeof(uint16_t), CH_UTF16));
10547 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_AlternateMachineNameToRemove_0, 0);
10549 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
10550 if (_ptr_Account) {
10551 NDR_PULL_ALLOC(ndr, r->in.Account);
10552 } else {
10553 r->in.Account = NULL;
10555 if (r->in.Account) {
10556 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
10557 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
10558 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
10559 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
10560 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
10561 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
10562 if (length_Account_1 > size_Account_1) {
10563 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
10565 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
10566 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
10567 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
10569 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
10570 if (_ptr_EncryptedPassword) {
10571 NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
10572 } else {
10573 r->in.EncryptedPassword = NULL;
10575 if (r->in.EncryptedPassword) {
10576 _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
10577 NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
10578 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10579 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
10581 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Reserved));
10583 if (flags & NDR_OUT) {
10584 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
10586 return NDR_ERR_SUCCESS;
10589 _PUBLIC_ void ndr_print_wkssvc_NetrRemoveAlternateComputerName(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrRemoveAlternateComputerName *r)
10591 ndr_print_struct(ndr, name, "wkssvc_NetrRemoveAlternateComputerName");
10592 ndr->depth++;
10593 if (flags & NDR_SET_VALUES) {
10594 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10596 if (flags & NDR_IN) {
10597 ndr_print_struct(ndr, "in", "wkssvc_NetrRemoveAlternateComputerName");
10598 ndr->depth++;
10599 ndr_print_ptr(ndr, "server_name", r->in.server_name);
10600 ndr->depth++;
10601 if (r->in.server_name) {
10602 ndr_print_string(ndr, "server_name", r->in.server_name);
10604 ndr->depth--;
10605 ndr_print_ptr(ndr, "AlternateMachineNameToRemove", r->in.AlternateMachineNameToRemove);
10606 ndr->depth++;
10607 if (r->in.AlternateMachineNameToRemove) {
10608 ndr_print_string(ndr, "AlternateMachineNameToRemove", r->in.AlternateMachineNameToRemove);
10610 ndr->depth--;
10611 ndr_print_ptr(ndr, "Account", r->in.Account);
10612 ndr->depth++;
10613 if (r->in.Account) {
10614 ndr_print_string(ndr, "Account", r->in.Account);
10616 ndr->depth--;
10617 ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10618 ndr->depth++;
10619 if (r->in.EncryptedPassword) {
10620 ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10622 ndr->depth--;
10623 ndr_print_uint32(ndr, "Reserved", r->in.Reserved);
10624 ndr->depth--;
10626 if (flags & NDR_OUT) {
10627 ndr_print_struct(ndr, "out", "wkssvc_NetrRemoveAlternateComputerName");
10628 ndr->depth++;
10629 ndr_print_WERROR(ndr, "result", r->out.result);
10630 ndr->depth--;
10632 ndr->depth--;
10635 static enum ndr_err_code ndr_push_wkssvc_NetrSetPrimaryComputername(struct ndr_push *ndr, int flags, const struct wkssvc_NetrSetPrimaryComputername *r)
10637 if (flags & NDR_IN) {
10638 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
10639 if (r->in.server_name) {
10640 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10641 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10642 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10643 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10645 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.primary_name));
10646 if (r->in.primary_name) {
10647 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.primary_name, CH_UTF16)));
10648 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10649 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.primary_name, CH_UTF16)));
10650 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.primary_name, ndr_charset_length(r->in.primary_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10652 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.Account));
10653 if (r->in.Account) {
10654 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
10655 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10656 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.Account, CH_UTF16)));
10657 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.Account, ndr_charset_length(r->in.Account, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10659 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.EncryptedPassword));
10660 if (r->in.EncryptedPassword) {
10661 NDR_CHECK(ndr_push_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10663 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Reserved));
10665 if (flags & NDR_OUT) {
10666 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
10668 return NDR_ERR_SUCCESS;
10671 static enum ndr_err_code ndr_pull_wkssvc_NetrSetPrimaryComputername(struct ndr_pull *ndr, int flags, struct wkssvc_NetrSetPrimaryComputername *r)
10673 uint32_t _ptr_server_name;
10674 uint32_t size_server_name_1 = 0;
10675 uint32_t length_server_name_1 = 0;
10676 uint32_t _ptr_primary_name;
10677 uint32_t size_primary_name_1 = 0;
10678 uint32_t length_primary_name_1 = 0;
10679 uint32_t _ptr_Account;
10680 uint32_t size_Account_1 = 0;
10681 uint32_t length_Account_1 = 0;
10682 uint32_t _ptr_EncryptedPassword;
10683 TALLOC_CTX *_mem_save_server_name_0;
10684 TALLOC_CTX *_mem_save_primary_name_0;
10685 TALLOC_CTX *_mem_save_Account_0;
10686 TALLOC_CTX *_mem_save_EncryptedPassword_0;
10687 if (flags & NDR_IN) {
10688 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
10689 if (_ptr_server_name) {
10690 NDR_PULL_ALLOC(ndr, r->in.server_name);
10691 } else {
10692 r->in.server_name = NULL;
10694 if (r->in.server_name) {
10695 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10696 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
10697 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
10698 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
10699 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
10700 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
10701 if (length_server_name_1 > size_server_name_1) {
10702 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
10704 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
10705 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
10706 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
10708 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_primary_name));
10709 if (_ptr_primary_name) {
10710 NDR_PULL_ALLOC(ndr, r->in.primary_name);
10711 } else {
10712 r->in.primary_name = NULL;
10714 if (r->in.primary_name) {
10715 _mem_save_primary_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10716 NDR_PULL_SET_MEM_CTX(ndr, r->in.primary_name, 0);
10717 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.primary_name));
10718 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.primary_name));
10719 size_primary_name_1 = ndr_get_array_size(ndr, &r->in.primary_name);
10720 length_primary_name_1 = ndr_get_array_length(ndr, &r->in.primary_name);
10721 if (length_primary_name_1 > size_primary_name_1) {
10722 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_primary_name_1, length_primary_name_1);
10724 NDR_CHECK(ndr_check_string_terminator(ndr, length_primary_name_1, sizeof(uint16_t)));
10725 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.primary_name, length_primary_name_1, sizeof(uint16_t), CH_UTF16));
10726 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_primary_name_0, 0);
10728 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_Account));
10729 if (_ptr_Account) {
10730 NDR_PULL_ALLOC(ndr, r->in.Account);
10731 } else {
10732 r->in.Account = NULL;
10734 if (r->in.Account) {
10735 _mem_save_Account_0 = NDR_PULL_GET_MEM_CTX(ndr);
10736 NDR_PULL_SET_MEM_CTX(ndr, r->in.Account, 0);
10737 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.Account));
10738 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.Account));
10739 size_Account_1 = ndr_get_array_size(ndr, &r->in.Account);
10740 length_Account_1 = ndr_get_array_length(ndr, &r->in.Account);
10741 if (length_Account_1 > size_Account_1) {
10742 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_Account_1, length_Account_1);
10744 NDR_CHECK(ndr_check_string_terminator(ndr, length_Account_1, sizeof(uint16_t)));
10745 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.Account, length_Account_1, sizeof(uint16_t), CH_UTF16));
10746 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_Account_0, 0);
10748 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_EncryptedPassword));
10749 if (_ptr_EncryptedPassword) {
10750 NDR_PULL_ALLOC(ndr, r->in.EncryptedPassword);
10751 } else {
10752 r->in.EncryptedPassword = NULL;
10754 if (r->in.EncryptedPassword) {
10755 _mem_save_EncryptedPassword_0 = NDR_PULL_GET_MEM_CTX(ndr);
10756 NDR_PULL_SET_MEM_CTX(ndr, r->in.EncryptedPassword, 0);
10757 NDR_CHECK(ndr_pull_wkssvc_PasswordBuffer(ndr, NDR_SCALARS, r->in.EncryptedPassword));
10758 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_EncryptedPassword_0, 0);
10760 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Reserved));
10762 if (flags & NDR_OUT) {
10763 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
10765 return NDR_ERR_SUCCESS;
10768 _PUBLIC_ void ndr_print_wkssvc_NetrSetPrimaryComputername(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrSetPrimaryComputername *r)
10770 ndr_print_struct(ndr, name, "wkssvc_NetrSetPrimaryComputername");
10771 ndr->depth++;
10772 if (flags & NDR_SET_VALUES) {
10773 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10775 if (flags & NDR_IN) {
10776 ndr_print_struct(ndr, "in", "wkssvc_NetrSetPrimaryComputername");
10777 ndr->depth++;
10778 ndr_print_ptr(ndr, "server_name", r->in.server_name);
10779 ndr->depth++;
10780 if (r->in.server_name) {
10781 ndr_print_string(ndr, "server_name", r->in.server_name);
10783 ndr->depth--;
10784 ndr_print_ptr(ndr, "primary_name", r->in.primary_name);
10785 ndr->depth++;
10786 if (r->in.primary_name) {
10787 ndr_print_string(ndr, "primary_name", r->in.primary_name);
10789 ndr->depth--;
10790 ndr_print_ptr(ndr, "Account", r->in.Account);
10791 ndr->depth++;
10792 if (r->in.Account) {
10793 ndr_print_string(ndr, "Account", r->in.Account);
10795 ndr->depth--;
10796 ndr_print_ptr(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10797 ndr->depth++;
10798 if (r->in.EncryptedPassword) {
10799 ndr_print_wkssvc_PasswordBuffer(ndr, "EncryptedPassword", r->in.EncryptedPassword);
10801 ndr->depth--;
10802 ndr_print_uint32(ndr, "Reserved", r->in.Reserved);
10803 ndr->depth--;
10805 if (flags & NDR_OUT) {
10806 ndr_print_struct(ndr, "out", "wkssvc_NetrSetPrimaryComputername");
10807 ndr->depth++;
10808 ndr_print_WERROR(ndr, "result", r->out.result);
10809 ndr->depth--;
10811 ndr->depth--;
10814 static enum ndr_err_code ndr_push_wkssvc_NetrEnumerateComputerNames(struct ndr_push *ndr, int flags, const struct wkssvc_NetrEnumerateComputerNames *r)
10816 if (flags & NDR_IN) {
10817 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_name));
10818 if (r->in.server_name) {
10819 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10820 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
10821 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_name, CH_UTF16)));
10822 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_name, ndr_charset_length(r->in.server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
10824 NDR_CHECK(ndr_push_wkssvc_ComputerNameType(ndr, NDR_SCALARS, r->in.name_type));
10825 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Reserved));
10827 if (flags & NDR_OUT) {
10828 if (r->out.ctr == NULL) {
10829 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10831 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.ctr));
10832 if (*r->out.ctr) {
10833 NDR_CHECK(ndr_push_wkssvc_ComputerNamesCtr(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ctr));
10835 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
10837 return NDR_ERR_SUCCESS;
10840 static enum ndr_err_code ndr_pull_wkssvc_NetrEnumerateComputerNames(struct ndr_pull *ndr, int flags, struct wkssvc_NetrEnumerateComputerNames *r)
10842 uint32_t _ptr_server_name;
10843 uint32_t size_server_name_1 = 0;
10844 uint32_t length_server_name_1 = 0;
10845 uint32_t _ptr_ctr;
10846 TALLOC_CTX *_mem_save_server_name_0;
10847 TALLOC_CTX *_mem_save_ctr_0;
10848 TALLOC_CTX *_mem_save_ctr_1;
10849 if (flags & NDR_IN) {
10850 ZERO_STRUCT(r->out);
10852 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
10853 if (_ptr_server_name) {
10854 NDR_PULL_ALLOC(ndr, r->in.server_name);
10855 } else {
10856 r->in.server_name = NULL;
10858 if (r->in.server_name) {
10859 _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10860 NDR_PULL_SET_MEM_CTX(ndr, r->in.server_name, 0);
10861 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_name));
10862 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_name));
10863 size_server_name_1 = ndr_get_array_size(ndr, &r->in.server_name);
10864 length_server_name_1 = ndr_get_array_length(ndr, &r->in.server_name);
10865 if (length_server_name_1 > size_server_name_1) {
10866 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_server_name_1, length_server_name_1);
10868 NDR_CHECK(ndr_check_string_terminator(ndr, length_server_name_1, sizeof(uint16_t)));
10869 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_name, length_server_name_1, sizeof(uint16_t), CH_UTF16));
10870 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
10872 NDR_CHECK(ndr_pull_wkssvc_ComputerNameType(ndr, NDR_SCALARS, &r->in.name_type));
10873 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Reserved));
10874 NDR_PULL_ALLOC(ndr, r->out.ctr);
10875 ZERO_STRUCTP(r->out.ctr);
10877 if (flags & NDR_OUT) {
10878 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10879 NDR_PULL_ALLOC(ndr, r->out.ctr);
10881 _mem_save_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
10882 NDR_PULL_SET_MEM_CTX(ndr, r->out.ctr, LIBNDR_FLAG_REF_ALLOC);
10883 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr));
10884 if (_ptr_ctr) {
10885 NDR_PULL_ALLOC(ndr, *r->out.ctr);
10886 } else {
10887 *r->out.ctr = NULL;
10889 if (*r->out.ctr) {
10890 _mem_save_ctr_1 = NDR_PULL_GET_MEM_CTX(ndr);
10891 NDR_PULL_SET_MEM_CTX(ndr, *r->out.ctr, 0);
10892 NDR_CHECK(ndr_pull_wkssvc_ComputerNamesCtr(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ctr));
10893 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_1, 0);
10895 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr_0, LIBNDR_FLAG_REF_ALLOC);
10896 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
10898 return NDR_ERR_SUCCESS;
10901 _PUBLIC_ void ndr_print_wkssvc_NetrEnumerateComputerNames(struct ndr_print *ndr, const char *name, int flags, const struct wkssvc_NetrEnumerateComputerNames *r)
10903 ndr_print_struct(ndr, name, "wkssvc_NetrEnumerateComputerNames");
10904 ndr->depth++;
10905 if (flags & NDR_SET_VALUES) {
10906 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10908 if (flags & NDR_IN) {
10909 ndr_print_struct(ndr, "in", "wkssvc_NetrEnumerateComputerNames");
10910 ndr->depth++;
10911 ndr_print_ptr(ndr, "server_name", r->in.server_name);
10912 ndr->depth++;
10913 if (r->in.server_name) {
10914 ndr_print_string(ndr, "server_name", r->in.server_name);
10916 ndr->depth--;
10917 ndr_print_wkssvc_ComputerNameType(ndr, "name_type", r->in.name_type);
10918 ndr_print_uint32(ndr, "Reserved", r->in.Reserved);
10919 ndr->depth--;
10921 if (flags & NDR_OUT) {
10922 ndr_print_struct(ndr, "out", "wkssvc_NetrEnumerateComputerNames");
10923 ndr->depth++;
10924 ndr_print_ptr(ndr, "ctr", r->out.ctr);
10925 ndr->depth++;
10926 ndr_print_ptr(ndr, "ctr", *r->out.ctr);
10927 ndr->depth++;
10928 if (*r->out.ctr) {
10929 ndr_print_wkssvc_ComputerNamesCtr(ndr, "ctr", *r->out.ctr);
10931 ndr->depth--;
10932 ndr->depth--;
10933 ndr_print_WERROR(ndr, "result", r->out.result);
10934 ndr->depth--;
10936 ndr->depth--;
10939 static const struct ndr_interface_call wkssvc_calls[] = {
10941 "wkssvc_NetWkstaGetInfo",
10942 sizeof(struct wkssvc_NetWkstaGetInfo),
10943 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetWkstaGetInfo,
10944 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetWkstaGetInfo,
10945 (ndr_print_function_t) ndr_print_wkssvc_NetWkstaGetInfo,
10946 false,
10949 "wkssvc_NetWkstaSetInfo",
10950 sizeof(struct wkssvc_NetWkstaSetInfo),
10951 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetWkstaSetInfo,
10952 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetWkstaSetInfo,
10953 (ndr_print_function_t) ndr_print_wkssvc_NetWkstaSetInfo,
10954 false,
10957 "wkssvc_NetWkstaEnumUsers",
10958 sizeof(struct wkssvc_NetWkstaEnumUsers),
10959 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetWkstaEnumUsers,
10960 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetWkstaEnumUsers,
10961 (ndr_print_function_t) ndr_print_wkssvc_NetWkstaEnumUsers,
10962 false,
10965 "wkssvc_NetrWkstaUserGetInfo",
10966 sizeof(struct wkssvc_NetrWkstaUserGetInfo),
10967 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaUserGetInfo,
10968 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaUserGetInfo,
10969 (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaUserGetInfo,
10970 false,
10973 "wkssvc_NetrWkstaUserSetInfo",
10974 sizeof(struct wkssvc_NetrWkstaUserSetInfo),
10975 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaUserSetInfo,
10976 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaUserSetInfo,
10977 (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaUserSetInfo,
10978 false,
10981 "wkssvc_NetWkstaTransportEnum",
10982 sizeof(struct wkssvc_NetWkstaTransportEnum),
10983 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetWkstaTransportEnum,
10984 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetWkstaTransportEnum,
10985 (ndr_print_function_t) ndr_print_wkssvc_NetWkstaTransportEnum,
10986 false,
10989 "wkssvc_NetrWkstaTransportAdd",
10990 sizeof(struct wkssvc_NetrWkstaTransportAdd),
10991 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaTransportAdd,
10992 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaTransportAdd,
10993 (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaTransportAdd,
10994 false,
10997 "wkssvc_NetrWkstaTransportDel",
10998 sizeof(struct wkssvc_NetrWkstaTransportDel),
10999 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWkstaTransportDel,
11000 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWkstaTransportDel,
11001 (ndr_print_function_t) ndr_print_wkssvc_NetrWkstaTransportDel,
11002 false,
11005 "wkssvc_NetrUseAdd",
11006 sizeof(struct wkssvc_NetrUseAdd),
11007 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseAdd,
11008 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseAdd,
11009 (ndr_print_function_t) ndr_print_wkssvc_NetrUseAdd,
11010 false,
11013 "wkssvc_NetrUseGetInfo",
11014 sizeof(struct wkssvc_NetrUseGetInfo),
11015 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseGetInfo,
11016 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseGetInfo,
11017 (ndr_print_function_t) ndr_print_wkssvc_NetrUseGetInfo,
11018 false,
11021 "wkssvc_NetrUseDel",
11022 sizeof(struct wkssvc_NetrUseDel),
11023 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseDel,
11024 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseDel,
11025 (ndr_print_function_t) ndr_print_wkssvc_NetrUseDel,
11026 false,
11029 "wkssvc_NetrUseEnum",
11030 sizeof(struct wkssvc_NetrUseEnum),
11031 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUseEnum,
11032 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUseEnum,
11033 (ndr_print_function_t) ndr_print_wkssvc_NetrUseEnum,
11034 false,
11037 "wkssvc_NetrMessageBufferSend",
11038 sizeof(struct wkssvc_NetrMessageBufferSend),
11039 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrMessageBufferSend,
11040 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrMessageBufferSend,
11041 (ndr_print_function_t) ndr_print_wkssvc_NetrMessageBufferSend,
11042 false,
11045 "wkssvc_NetrWorkstationStatisticsGet",
11046 sizeof(struct wkssvc_NetrWorkstationStatisticsGet),
11047 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrWorkstationStatisticsGet,
11048 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrWorkstationStatisticsGet,
11049 (ndr_print_function_t) ndr_print_wkssvc_NetrWorkstationStatisticsGet,
11050 false,
11053 "wkssvc_NetrLogonDomainNameAdd",
11054 sizeof(struct wkssvc_NetrLogonDomainNameAdd),
11055 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrLogonDomainNameAdd,
11056 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrLogonDomainNameAdd,
11057 (ndr_print_function_t) ndr_print_wkssvc_NetrLogonDomainNameAdd,
11058 false,
11061 "wkssvc_NetrLogonDomainNameDel",
11062 sizeof(struct wkssvc_NetrLogonDomainNameDel),
11063 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrLogonDomainNameDel,
11064 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrLogonDomainNameDel,
11065 (ndr_print_function_t) ndr_print_wkssvc_NetrLogonDomainNameDel,
11066 false,
11069 "wkssvc_NetrJoinDomain",
11070 sizeof(struct wkssvc_NetrJoinDomain),
11071 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrJoinDomain,
11072 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrJoinDomain,
11073 (ndr_print_function_t) ndr_print_wkssvc_NetrJoinDomain,
11074 false,
11077 "wkssvc_NetrUnjoinDomain",
11078 sizeof(struct wkssvc_NetrUnjoinDomain),
11079 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUnjoinDomain,
11080 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUnjoinDomain,
11081 (ndr_print_function_t) ndr_print_wkssvc_NetrUnjoinDomain,
11082 false,
11085 "wkssvc_NetrRenameMachineInDomain",
11086 sizeof(struct wkssvc_NetrRenameMachineInDomain),
11087 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrRenameMachineInDomain,
11088 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrRenameMachineInDomain,
11089 (ndr_print_function_t) ndr_print_wkssvc_NetrRenameMachineInDomain,
11090 false,
11093 "wkssvc_NetrValidateName",
11094 sizeof(struct wkssvc_NetrValidateName),
11095 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrValidateName,
11096 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrValidateName,
11097 (ndr_print_function_t) ndr_print_wkssvc_NetrValidateName,
11098 false,
11101 "wkssvc_NetrGetJoinInformation",
11102 sizeof(struct wkssvc_NetrGetJoinInformation),
11103 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrGetJoinInformation,
11104 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrGetJoinInformation,
11105 (ndr_print_function_t) ndr_print_wkssvc_NetrGetJoinInformation,
11106 false,
11109 "wkssvc_NetrGetJoinableOus",
11110 sizeof(struct wkssvc_NetrGetJoinableOus),
11111 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrGetJoinableOus,
11112 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrGetJoinableOus,
11113 (ndr_print_function_t) ndr_print_wkssvc_NetrGetJoinableOus,
11114 false,
11117 "wkssvc_NetrJoinDomain2",
11118 sizeof(struct wkssvc_NetrJoinDomain2),
11119 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrJoinDomain2,
11120 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrJoinDomain2,
11121 (ndr_print_function_t) ndr_print_wkssvc_NetrJoinDomain2,
11122 false,
11125 "wkssvc_NetrUnjoinDomain2",
11126 sizeof(struct wkssvc_NetrUnjoinDomain2),
11127 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrUnjoinDomain2,
11128 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrUnjoinDomain2,
11129 (ndr_print_function_t) ndr_print_wkssvc_NetrUnjoinDomain2,
11130 false,
11133 "wkssvc_NetrRenameMachineInDomain2",
11134 sizeof(struct wkssvc_NetrRenameMachineInDomain2),
11135 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrRenameMachineInDomain2,
11136 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrRenameMachineInDomain2,
11137 (ndr_print_function_t) ndr_print_wkssvc_NetrRenameMachineInDomain2,
11138 false,
11141 "wkssvc_NetrValidateName2",
11142 sizeof(struct wkssvc_NetrValidateName2),
11143 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrValidateName2,
11144 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrValidateName2,
11145 (ndr_print_function_t) ndr_print_wkssvc_NetrValidateName2,
11146 false,
11149 "wkssvc_NetrGetJoinableOus2",
11150 sizeof(struct wkssvc_NetrGetJoinableOus2),
11151 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrGetJoinableOus2,
11152 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrGetJoinableOus2,
11153 (ndr_print_function_t) ndr_print_wkssvc_NetrGetJoinableOus2,
11154 false,
11157 "wkssvc_NetrAddAlternateComputerName",
11158 sizeof(struct wkssvc_NetrAddAlternateComputerName),
11159 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrAddAlternateComputerName,
11160 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrAddAlternateComputerName,
11161 (ndr_print_function_t) ndr_print_wkssvc_NetrAddAlternateComputerName,
11162 false,
11165 "wkssvc_NetrRemoveAlternateComputerName",
11166 sizeof(struct wkssvc_NetrRemoveAlternateComputerName),
11167 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrRemoveAlternateComputerName,
11168 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrRemoveAlternateComputerName,
11169 (ndr_print_function_t) ndr_print_wkssvc_NetrRemoveAlternateComputerName,
11170 false,
11173 "wkssvc_NetrSetPrimaryComputername",
11174 sizeof(struct wkssvc_NetrSetPrimaryComputername),
11175 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrSetPrimaryComputername,
11176 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrSetPrimaryComputername,
11177 (ndr_print_function_t) ndr_print_wkssvc_NetrSetPrimaryComputername,
11178 false,
11181 "wkssvc_NetrEnumerateComputerNames",
11182 sizeof(struct wkssvc_NetrEnumerateComputerNames),
11183 (ndr_push_flags_fn_t) ndr_push_wkssvc_NetrEnumerateComputerNames,
11184 (ndr_pull_flags_fn_t) ndr_pull_wkssvc_NetrEnumerateComputerNames,
11185 (ndr_print_function_t) ndr_print_wkssvc_NetrEnumerateComputerNames,
11186 false,
11188 { NULL, 0, NULL, NULL, NULL, false }
11191 static const char * const wkssvc_endpoint_strings[] = {
11192 "ncacn_np:[\\pipe\\wkssvc]",
11193 "ncacn_ip_tcp:",
11194 "ncalrpc:",
11197 static const struct ndr_interface_string_array wkssvc_endpoints = {
11198 .count = 3,
11199 .names = wkssvc_endpoint_strings
11202 static const char * const wkssvc_authservice_strings[] = {
11203 "host",
11206 static const struct ndr_interface_string_array wkssvc_authservices = {
11207 .count = 1,
11208 .names = wkssvc_authservice_strings
11212 const struct ndr_interface_table ndr_table_wkssvc = {
11213 .name = "wkssvc",
11214 .syntax_id = {
11215 {0x6bffd098,0xa112,0x3610,{0x98,0x33},{0x46,0xc3,0xf8,0x7e,0x34,0x5a}},
11216 NDR_WKSSVC_VERSION
11218 .helpstring = NDR_WKSSVC_HELPSTRING,
11219 .num_calls = 31,
11220 .calls = wkssvc_calls,
11221 .endpoints = &wkssvc_endpoints,
11222 .authservices = &wkssvc_authservices