1 /* parser auto-generated by pidl */
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
) {
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
));
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
);
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
);
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
) {
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);
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");
102 ndr_print_srvsvc_PlatformId(ndr
, "platform_id", r
->platform_id
);
103 ndr_print_ptr(ndr
, "server_name", r
->server_name
);
105 if (r
->server_name
) {
106 ndr_print_string(ndr
, "server_name", r
->server_name
);
109 ndr_print_ptr(ndr
, "domain_name", r
->domain_name
);
111 if (r
->domain_name
) {
112 ndr_print_string(ndr
, "domain_name", r
->domain_name
);
115 ndr_print_uint32(ndr
, "version_major", r
->version_major
);
116 ndr_print_uint32(ndr
, "version_minor", r
->version_minor
);
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
));
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
);
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
);
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
));
188 NDR_PULL_ALLOC(ndr
, r
->lan_root
);
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);
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");
245 ndr_print_srvsvc_PlatformId(ndr
, "platform_id", r
->platform_id
);
246 ndr_print_ptr(ndr
, "server_name", r
->server_name
);
248 if (r
->server_name
) {
249 ndr_print_string(ndr
, "server_name", r
->server_name
);
252 ndr_print_ptr(ndr
, "domain_name", r
->domain_name
);
254 if (r
->domain_name
) {
255 ndr_print_string(ndr
, "domain_name", r
->domain_name
);
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
);
263 ndr_print_string(ndr
, "lan_root", r
->lan_root
);
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
));
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
);
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
);
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
));
338 NDR_PULL_ALLOC(ndr
, r
->lan_root
);
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);
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");
396 ndr_print_srvsvc_PlatformId(ndr
, "platform_id", r
->platform_id
);
397 ndr_print_ptr(ndr
, "server_name", r
->server_name
);
399 if (r
->server_name
) {
400 ndr_print_string(ndr
, "server_name", r
->server_name
);
403 ndr_print_ptr(ndr
, "domain_name", r
->domain_name
);
405 if (r
->domain_name
) {
406 ndr_print_string(ndr
, "domain_name", r
->domain_name
);
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
);
414 ndr_print_string(ndr
, "lan_root", r
->lan_root
);
417 ndr_print_uint32(ndr
, "logged_on_users", r
->logged_on_users
);
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");
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
);
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");
583 ndr_print_uint32(ndr
, "char_wait", r
->char_wait
);
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");
615 ndr_print_uint32(ndr
, "collection_time", r
->collection_time
);
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");
647 ndr_print_uint32(ndr
, "maximum_collection_count", r
->maximum_collection_count
);
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");
679 ndr_print_uint32(ndr
, "keep_connection", r
->keep_connection
);
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");
711 ndr_print_uint32(ndr
, "session_timeout", r
->session_timeout
);
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");
743 ndr_print_uint32(ndr
, "size_char_buf", r
->size_char_buf
);
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");
775 ndr_print_uint32(ndr
, "errorlog_sz", r
->errorlog_sz
);
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");
807 ndr_print_uint32(ndr
, "print_buf_time", r
->print_buf_time
);
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");
839 ndr_print_uint32(ndr
, "wrk_heuristics", r
->wrk_heuristics
);
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");
871 ndr_print_uint32(ndr
, "max_threads", r
->max_threads
);
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");
903 ndr_print_uint32(ndr
, "lock_quota", r
->lock_quota
);
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");
935 ndr_print_uint32(ndr
, "lock_increment", r
->lock_increment
);
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");
967 ndr_print_uint32(ndr
, "lock_maximum", r
->lock_maximum
);
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");
999 ndr_print_uint32(ndr
, "pipe_increment", r
->pipe_increment
);
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");
1031 ndr_print_uint32(ndr
, "pipe_maximum", r
->pipe_maximum
);
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");
1063 ndr_print_uint32(ndr
, "dormant_file_limit", r
->dormant_file_limit
);
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");
1095 ndr_print_uint32(ndr
, "cache_file_timeout", r
->cache_file_timeout
);
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");
1127 ndr_print_uint32(ndr
, "use_opportunistic_locking", r
->use_opportunistic_locking
);
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");
1159 ndr_print_uint32(ndr
, "use_unlock_behind", r
->use_unlock_behind
);
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");
1191 ndr_print_uint32(ndr
, "use_close_behind", r
->use_close_behind
);
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");
1223 ndr_print_uint32(ndr
, "buf_named_pipes", r
->buf_named_pipes
);
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");
1255 ndr_print_uint32(ndr
, "use_lock_read_unlock", r
->use_lock_read_unlock
);
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");
1287 ndr_print_uint32(ndr
, "utilize_nt_caching", r
->utilize_nt_caching
);
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");
1319 ndr_print_uint32(ndr
, "use_raw_read", r
->use_raw_read
);
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");
1351 ndr_print_uint32(ndr
, "use_raw_write", r
->use_raw_write
);
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");
1383 ndr_print_uint32(ndr
, "use_write_raw_data", r
->use_write_raw_data
);
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");
1415 ndr_print_uint32(ndr
, "use_encryption", r
->use_encryption
);
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");
1447 ndr_print_uint32(ndr
, "buf_files_deny_write", r
->buf_files_deny_write
);
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");
1479 ndr_print_uint32(ndr
, "buf_read_only_files", r
->buf_read_only_files
);
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");
1511 ndr_print_uint32(ndr
, "force_core_create_mode", r
->force_core_create_mode
);
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");
1543 ndr_print_uint32(ndr
, "use_512_byte_max_transfer", r
->use_512_byte_max_transfer
);
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");
1575 ndr_print_uint32(ndr
, "read_ahead_throughput", r
->read_ahead_throughput
);
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));
1587 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info100
));
1591 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info101
));
1595 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info102
));
1599 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info502
));
1603 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1010
));
1607 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1011
));
1611 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1012
));
1615 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1013
));
1619 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1018
));
1623 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1023
));
1627 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1027
));
1631 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1028
));
1635 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1032
));
1639 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1033
));
1643 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1041
));
1647 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1042
));
1651 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1043
));
1655 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1044
));
1659 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1045
));
1663 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1046
));
1667 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1047
));
1671 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1048
));
1675 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1049
));
1679 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1050
));
1683 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1051
));
1687 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1052
));
1691 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1053
));
1695 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1054
));
1699 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1055
));
1703 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1056
));
1707 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1057
));
1711 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1058
));
1715 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1059
));
1719 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1060
));
1723 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1061
));
1727 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1062
));
1735 if (ndr_flags
& NDR_BUFFERS
) {
1736 int level
= ndr_push_get_switch_value(ndr
, r
);
1740 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo100(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info100
));
1746 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo101(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info101
));
1752 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo102(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info102
));
1758 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo502(ndr
, NDR_SCALARS
, r
->info502
));
1764 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1010(ndr
, NDR_SCALARS
, r
->info1010
));
1770 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1011(ndr
, NDR_SCALARS
, r
->info1011
));
1776 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1012(ndr
, NDR_SCALARS
, r
->info1012
));
1782 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1013(ndr
, NDR_SCALARS
, r
->info1013
));
1788 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1018(ndr
, NDR_SCALARS
, r
->info1018
));
1794 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1023(ndr
, NDR_SCALARS
, r
->info1023
));
1800 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1027(ndr
, NDR_SCALARS
, r
->info1027
));
1806 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1028(ndr
, NDR_SCALARS
, r
->info1028
));
1812 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1032(ndr
, NDR_SCALARS
, r
->info1032
));
1818 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1033(ndr
, NDR_SCALARS
, r
->info1033
));
1824 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1041(ndr
, NDR_SCALARS
, r
->info1041
));
1830 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1042(ndr
, NDR_SCALARS
, r
->info1042
));
1836 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1043(ndr
, NDR_SCALARS
, r
->info1043
));
1842 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1044(ndr
, NDR_SCALARS
, r
->info1044
));
1848 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1045(ndr
, NDR_SCALARS
, r
->info1045
));
1854 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1046(ndr
, NDR_SCALARS
, r
->info1046
));
1860 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1047(ndr
, NDR_SCALARS
, r
->info1047
));
1866 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1048(ndr
, NDR_SCALARS
, r
->info1048
));
1872 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1049(ndr
, NDR_SCALARS
, r
->info1049
));
1878 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1050(ndr
, NDR_SCALARS
, r
->info1050
));
1884 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1051(ndr
, NDR_SCALARS
, r
->info1051
));
1890 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1052(ndr
, NDR_SCALARS
, r
->info1052
));
1896 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1053(ndr
, NDR_SCALARS
, r
->info1053
));
1902 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1054(ndr
, NDR_SCALARS
, r
->info1054
));
1908 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1055(ndr
, NDR_SCALARS
, r
->info1055
));
1914 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1056(ndr
, NDR_SCALARS
, r
->info1056
));
1920 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1057(ndr
, NDR_SCALARS
, r
->info1057
));
1926 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1058(ndr
, NDR_SCALARS
, r
->info1058
));
1932 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1059(ndr
, NDR_SCALARS
, r
->info1059
));
1938 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1060(ndr
, NDR_SCALARS
, r
->info1060
));
1944 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1061(ndr
, NDR_SCALARS
, r
->info1061
));
1950 NDR_CHECK(ndr_push_wkssvc_NetWkstaInfo1062(ndr
, NDR_SCALARS
, r
->info1062
));
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
)
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));
2047 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info100
));
2049 NDR_PULL_ALLOC(ndr
, r
->info100
);
2056 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info101
));
2058 NDR_PULL_ALLOC(ndr
, r
->info101
);
2065 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info102
));
2067 NDR_PULL_ALLOC(ndr
, r
->info102
);
2074 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info502
));
2076 NDR_PULL_ALLOC(ndr
, r
->info502
);
2083 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1010
));
2084 if (_ptr_info1010
) {
2085 NDR_PULL_ALLOC(ndr
, r
->info1010
);
2092 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1011
));
2093 if (_ptr_info1011
) {
2094 NDR_PULL_ALLOC(ndr
, r
->info1011
);
2101 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1012
));
2102 if (_ptr_info1012
) {
2103 NDR_PULL_ALLOC(ndr
, r
->info1012
);
2110 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1013
));
2111 if (_ptr_info1013
) {
2112 NDR_PULL_ALLOC(ndr
, r
->info1013
);
2119 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1018
));
2120 if (_ptr_info1018
) {
2121 NDR_PULL_ALLOC(ndr
, r
->info1018
);
2128 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1023
));
2129 if (_ptr_info1023
) {
2130 NDR_PULL_ALLOC(ndr
, r
->info1023
);
2137 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1027
));
2138 if (_ptr_info1027
) {
2139 NDR_PULL_ALLOC(ndr
, r
->info1027
);
2146 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1028
));
2147 if (_ptr_info1028
) {
2148 NDR_PULL_ALLOC(ndr
, r
->info1028
);
2155 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1032
));
2156 if (_ptr_info1032
) {
2157 NDR_PULL_ALLOC(ndr
, r
->info1032
);
2164 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1033
));
2165 if (_ptr_info1033
) {
2166 NDR_PULL_ALLOC(ndr
, r
->info1033
);
2173 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1041
));
2174 if (_ptr_info1041
) {
2175 NDR_PULL_ALLOC(ndr
, r
->info1041
);
2182 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1042
));
2183 if (_ptr_info1042
) {
2184 NDR_PULL_ALLOC(ndr
, r
->info1042
);
2191 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1043
));
2192 if (_ptr_info1043
) {
2193 NDR_PULL_ALLOC(ndr
, r
->info1043
);
2200 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1044
));
2201 if (_ptr_info1044
) {
2202 NDR_PULL_ALLOC(ndr
, r
->info1044
);
2209 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1045
));
2210 if (_ptr_info1045
) {
2211 NDR_PULL_ALLOC(ndr
, r
->info1045
);
2218 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1046
));
2219 if (_ptr_info1046
) {
2220 NDR_PULL_ALLOC(ndr
, r
->info1046
);
2227 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1047
));
2228 if (_ptr_info1047
) {
2229 NDR_PULL_ALLOC(ndr
, r
->info1047
);
2236 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1048
));
2237 if (_ptr_info1048
) {
2238 NDR_PULL_ALLOC(ndr
, r
->info1048
);
2245 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1049
));
2246 if (_ptr_info1049
) {
2247 NDR_PULL_ALLOC(ndr
, r
->info1049
);
2254 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1050
));
2255 if (_ptr_info1050
) {
2256 NDR_PULL_ALLOC(ndr
, r
->info1050
);
2263 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1051
));
2264 if (_ptr_info1051
) {
2265 NDR_PULL_ALLOC(ndr
, r
->info1051
);
2272 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1052
));
2273 if (_ptr_info1052
) {
2274 NDR_PULL_ALLOC(ndr
, r
->info1052
);
2281 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1053
));
2282 if (_ptr_info1053
) {
2283 NDR_PULL_ALLOC(ndr
, r
->info1053
);
2290 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1054
));
2291 if (_ptr_info1054
) {
2292 NDR_PULL_ALLOC(ndr
, r
->info1054
);
2299 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1055
));
2300 if (_ptr_info1055
) {
2301 NDR_PULL_ALLOC(ndr
, r
->info1055
);
2308 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1056
));
2309 if (_ptr_info1056
) {
2310 NDR_PULL_ALLOC(ndr
, r
->info1056
);
2317 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1057
));
2318 if (_ptr_info1057
) {
2319 NDR_PULL_ALLOC(ndr
, r
->info1057
);
2326 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1058
));
2327 if (_ptr_info1058
) {
2328 NDR_PULL_ALLOC(ndr
, r
->info1058
);
2335 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1059
));
2336 if (_ptr_info1059
) {
2337 NDR_PULL_ALLOC(ndr
, r
->info1059
);
2344 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1060
));
2345 if (_ptr_info1060
) {
2346 NDR_PULL_ALLOC(ndr
, r
->info1060
);
2353 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1061
));
2354 if (_ptr_info1061
) {
2355 NDR_PULL_ALLOC(ndr
, r
->info1061
);
2362 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1062
));
2363 if (_ptr_info1062
) {
2364 NDR_PULL_ALLOC(ndr
, r
->info1062
);
2375 if (ndr_flags
& NDR_BUFFERS
) {
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
2706 return NDR_ERR_SUCCESS
;
2709 _PUBLIC_
void ndr_print_wkssvc_NetWkstaInfo(struct ndr_print
*ndr
, const char *name
, const union wkssvc_NetWkstaInfo
*r
)
2712 level
= ndr_print_get_switch_value(ndr
, r
);
2713 ndr_print_union(ndr
, name
, level
, "wkssvc_NetWkstaInfo");
2716 ndr_print_ptr(ndr
, "info100", r
->info100
);
2719 ndr_print_wkssvc_NetWkstaInfo100(ndr
, "info100", r
->info100
);
2725 ndr_print_ptr(ndr
, "info101", r
->info101
);
2728 ndr_print_wkssvc_NetWkstaInfo101(ndr
, "info101", r
->info101
);
2734 ndr_print_ptr(ndr
, "info102", r
->info102
);
2737 ndr_print_wkssvc_NetWkstaInfo102(ndr
, "info102", r
->info102
);
2743 ndr_print_ptr(ndr
, "info502", r
->info502
);
2746 ndr_print_wkssvc_NetWkstaInfo502(ndr
, "info502", r
->info502
);
2752 ndr_print_ptr(ndr
, "info1010", r
->info1010
);
2755 ndr_print_wkssvc_NetWkstaInfo1010(ndr
, "info1010", r
->info1010
);
2761 ndr_print_ptr(ndr
, "info1011", r
->info1011
);
2764 ndr_print_wkssvc_NetWkstaInfo1011(ndr
, "info1011", r
->info1011
);
2770 ndr_print_ptr(ndr
, "info1012", r
->info1012
);
2773 ndr_print_wkssvc_NetWkstaInfo1012(ndr
, "info1012", r
->info1012
);
2779 ndr_print_ptr(ndr
, "info1013", r
->info1013
);
2782 ndr_print_wkssvc_NetWkstaInfo1013(ndr
, "info1013", r
->info1013
);
2788 ndr_print_ptr(ndr
, "info1018", r
->info1018
);
2791 ndr_print_wkssvc_NetWkstaInfo1018(ndr
, "info1018", r
->info1018
);
2797 ndr_print_ptr(ndr
, "info1023", r
->info1023
);
2800 ndr_print_wkssvc_NetWkstaInfo1023(ndr
, "info1023", r
->info1023
);
2806 ndr_print_ptr(ndr
, "info1027", r
->info1027
);
2809 ndr_print_wkssvc_NetWkstaInfo1027(ndr
, "info1027", r
->info1027
);
2815 ndr_print_ptr(ndr
, "info1028", r
->info1028
);
2818 ndr_print_wkssvc_NetWkstaInfo1028(ndr
, "info1028", r
->info1028
);
2824 ndr_print_ptr(ndr
, "info1032", r
->info1032
);
2827 ndr_print_wkssvc_NetWkstaInfo1032(ndr
, "info1032", r
->info1032
);
2833 ndr_print_ptr(ndr
, "info1033", r
->info1033
);
2836 ndr_print_wkssvc_NetWkstaInfo1033(ndr
, "info1033", r
->info1033
);
2842 ndr_print_ptr(ndr
, "info1041", r
->info1041
);
2845 ndr_print_wkssvc_NetWkstaInfo1041(ndr
, "info1041", r
->info1041
);
2851 ndr_print_ptr(ndr
, "info1042", r
->info1042
);
2854 ndr_print_wkssvc_NetWkstaInfo1042(ndr
, "info1042", r
->info1042
);
2860 ndr_print_ptr(ndr
, "info1043", r
->info1043
);
2863 ndr_print_wkssvc_NetWkstaInfo1043(ndr
, "info1043", r
->info1043
);
2869 ndr_print_ptr(ndr
, "info1044", r
->info1044
);
2872 ndr_print_wkssvc_NetWkstaInfo1044(ndr
, "info1044", r
->info1044
);
2878 ndr_print_ptr(ndr
, "info1045", r
->info1045
);
2881 ndr_print_wkssvc_NetWkstaInfo1045(ndr
, "info1045", r
->info1045
);
2887 ndr_print_ptr(ndr
, "info1046", r
->info1046
);
2890 ndr_print_wkssvc_NetWkstaInfo1046(ndr
, "info1046", r
->info1046
);
2896 ndr_print_ptr(ndr
, "info1047", r
->info1047
);
2899 ndr_print_wkssvc_NetWkstaInfo1047(ndr
, "info1047", r
->info1047
);
2905 ndr_print_ptr(ndr
, "info1048", r
->info1048
);
2908 ndr_print_wkssvc_NetWkstaInfo1048(ndr
, "info1048", r
->info1048
);
2914 ndr_print_ptr(ndr
, "info1049", r
->info1049
);
2917 ndr_print_wkssvc_NetWkstaInfo1049(ndr
, "info1049", r
->info1049
);
2923 ndr_print_ptr(ndr
, "info1050", r
->info1050
);
2926 ndr_print_wkssvc_NetWkstaInfo1050(ndr
, "info1050", r
->info1050
);
2932 ndr_print_ptr(ndr
, "info1051", r
->info1051
);
2935 ndr_print_wkssvc_NetWkstaInfo1051(ndr
, "info1051", r
->info1051
);
2941 ndr_print_ptr(ndr
, "info1052", r
->info1052
);
2944 ndr_print_wkssvc_NetWkstaInfo1052(ndr
, "info1052", r
->info1052
);
2950 ndr_print_ptr(ndr
, "info1053", r
->info1053
);
2953 ndr_print_wkssvc_NetWkstaInfo1053(ndr
, "info1053", r
->info1053
);
2959 ndr_print_ptr(ndr
, "info1054", r
->info1054
);
2962 ndr_print_wkssvc_NetWkstaInfo1054(ndr
, "info1054", r
->info1054
);
2968 ndr_print_ptr(ndr
, "info1055", r
->info1055
);
2971 ndr_print_wkssvc_NetWkstaInfo1055(ndr
, "info1055", r
->info1055
);
2977 ndr_print_ptr(ndr
, "info1056", r
->info1056
);
2980 ndr_print_wkssvc_NetWkstaInfo1056(ndr
, "info1056", r
->info1056
);
2986 ndr_print_ptr(ndr
, "info1057", r
->info1057
);
2989 ndr_print_wkssvc_NetWkstaInfo1057(ndr
, "info1057", r
->info1057
);
2995 ndr_print_ptr(ndr
, "info1058", r
->info1058
);
2998 ndr_print_wkssvc_NetWkstaInfo1058(ndr
, "info1058", r
->info1058
);
3004 ndr_print_ptr(ndr
, "info1059", r
->info1059
);
3007 ndr_print_wkssvc_NetWkstaInfo1059(ndr
, "info1059", r
->info1059
);
3013 ndr_print_ptr(ndr
, "info1060", r
->info1060
);
3016 ndr_print_wkssvc_NetWkstaInfo1060(ndr
, "info1060", r
->info1060
);
3022 ndr_print_ptr(ndr
, "info1061", r
->info1061
);
3025 ndr_print_wkssvc_NetWkstaInfo1061(ndr
, "info1061", r
->info1061
);
3031 ndr_print_ptr(ndr
, "info1062", r
->info1062
);
3034 ndr_print_wkssvc_NetWkstaInfo1062(ndr
, "info1062", r
->info1062
);
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
) {
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
);
3075 r
->user_name
= NULL
;
3077 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
3079 if (ndr_flags
& NDR_BUFFERS
) {
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");
3102 ndr_print_ptr(ndr
, "user_name", r
->user_name
);
3105 ndr_print_string(ndr
, "user_name", r
->user_name
);
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
) {
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
));
3146 NDR_PULL_ALLOC(ndr
, r
->user0
);
3150 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
3152 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
3182 ndr_print_uint32(ndr
, "entries_read", r
->entries_read
);
3183 ndr_print_ptr(ndr
, "user0", r
->user0
);
3186 ndr
->print(ndr
, "%s: ARRAY(%d)", "user0", (int)r
->entries_read
);
3188 for (cntr_user0_1
=0;cntr_user0_1
<r
->entries_read
;cntr_user0_1
++) {
3190 if (asprintf(&idx_1
, "[%d]", cntr_user0_1
) != -1) {
3191 ndr_print_wkssvc_NetrWkstaUserInfo0(ndr
, "user0", &r
->user0
[cntr_user0_1
]);
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
) {
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
);
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
);
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
);
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
);
3282 r
->logon_server
= NULL
;
3284 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
3286 if (ndr_flags
& NDR_BUFFERS
) {
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");
3351 ndr_print_ptr(ndr
, "user_name", r
->user_name
);
3354 ndr_print_string(ndr
, "user_name", r
->user_name
);
3357 ndr_print_ptr(ndr
, "logon_domain", r
->logon_domain
);
3359 if (r
->logon_domain
) {
3360 ndr_print_string(ndr
, "logon_domain", r
->logon_domain
);
3363 ndr_print_ptr(ndr
, "other_domains", r
->other_domains
);
3365 if (r
->other_domains
) {
3366 ndr_print_string(ndr
, "other_domains", r
->other_domains
);
3369 ndr_print_ptr(ndr
, "logon_server", r
->logon_server
);
3371 if (r
->logon_server
) {
3372 ndr_print_string(ndr
, "logon_server", r
->logon_server
);
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
) {
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
));
3413 NDR_PULL_ALLOC(ndr
, r
->user1
);
3417 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
3419 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
3449 ndr_print_uint32(ndr
, "entries_read", r
->entries_read
);
3450 ndr_print_ptr(ndr
, "user1", r
->user1
);
3453 ndr
->print(ndr
, "%s: ARRAY(%d)", "user1", (int)r
->entries_read
);
3455 for (cntr_user1_1
=0;cntr_user1_1
<r
->entries_read
;cntr_user1_1
++) {
3457 if (asprintf(&idx_1
, "[%d]", cntr_user1_1
) != -1) {
3458 ndr_print_wkssvc_NetrWkstaUserInfo1(ndr
, "user1", &r
->user1
[cntr_user1_1
]);
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));
3476 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->user0
));
3480 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->user1
));
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
);
3492 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr0(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->user0
));
3498 NDR_CHECK(ndr_push_wkssvc_NetWkstaEnumUsersCtr1(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->user1
));
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
)
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));
3526 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_user0
));
3528 NDR_PULL_ALLOC(ndr
, r
->user0
);
3535 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_user1
));
3537 NDR_PULL_ALLOC(ndr
, r
->user1
);
3544 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u at %s", level
, __location__
);
3547 if (ndr_flags
& NDR_BUFFERS
) {
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);
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);
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
)
3577 level
= ndr_print_get_switch_value(ndr
, r
);
3578 ndr_print_union(ndr
, name
, level
, "wkssvc_NetWkstaEnumUsersCtr");
3581 ndr_print_ptr(ndr
, "user0", r
->user0
);
3584 ndr_print_wkssvc_NetWkstaEnumUsersCtr0(ndr
, "user0", r
->user0
);
3590 ndr_print_ptr(ndr
, "user1", r
->user1
);
3593 ndr_print_wkssvc_NetWkstaEnumUsersCtr1(ndr
, "user1", r
->user1
);
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");
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
);
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
);
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");
3700 ndr_print_ptr(ndr
, "other_domains", r
->other_domains
);
3702 if (r
->other_domains
) {
3703 ndr_print_string(ndr
, "other_domains", r
->other_domains
);
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));
3717 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info0
));
3721 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1
));
3725 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1101
));
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
);
3737 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo0(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info0
));
3743 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info1
));
3749 NDR_CHECK(ndr_push_wkssvc_NetrWkstaUserInfo1101(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info1101
));
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
)
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));
3779 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info0
));
3781 NDR_PULL_ALLOC(ndr
, r
->info0
);
3788 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1
));
3790 NDR_PULL_ALLOC(ndr
, r
->info1
);
3797 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1101
));
3798 if (_ptr_info1101
) {
3799 NDR_PULL_ALLOC(ndr
, r
->info1101
);
3806 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u at %s", level
, __location__
);
3809 if (ndr_flags
& NDR_BUFFERS
) {
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);
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);
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);
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
)
3848 level
= ndr_print_get_switch_value(ndr
, r
);
3849 ndr_print_union(ndr
, name
, level
, "wkssvc_NetrWkstaUserInfo");
3852 ndr_print_ptr(ndr
, "info0", r
->info0
);
3855 ndr_print_wkssvc_NetrWkstaUserInfo0(ndr
, "info0", r
->info0
);
3861 ndr_print_ptr(ndr
, "info1", r
->info1
);
3864 ndr_print_wkssvc_NetrWkstaUserInfo1(ndr
, "info1", r
->info1
);
3870 ndr_print_ptr(ndr
, "info1101", r
->info1101
);
3873 ndr_print_wkssvc_NetrWkstaUserInfo1101(ndr
, "info1101", r
->info1101
);
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
) {
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
));
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
)
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
));
3927 NDR_PULL_ALLOC(ndr
, r
->name
);
3931 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_address
));
3933 NDR_PULL_ALLOC(ndr
, r
->address
);
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
) {
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);
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");
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
);
3982 ndr_print_string(ndr
, "name", r
->name
);
3985 ndr_print_ptr(ndr
, "address", r
->address
);
3988 ndr_print_string(ndr
, "address", r
->address
);
3991 ndr_print_uint32(ndr
, "wan_link", r
->wan_link
);
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
) {
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
));
4030 NDR_PULL_ALLOC(ndr
, r
->array
);
4034 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
4036 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
4066 ndr_print_uint32(ndr
, "count", r
->count
);
4067 ndr_print_ptr(ndr
, "array", r
->array
);
4070 ndr
->print(ndr
, "%s: ARRAY(%d)", "array", (int)r
->count
);
4072 for (cntr_array_1
=0;cntr_array_1
<r
->count
;cntr_array_1
++) {
4074 if (asprintf(&idx_1
, "[%d]", cntr_array_1
) != -1) {
4075 ndr_print_wkssvc_NetWkstaTransportInfo0(ndr
, "array", &r
->array
[cntr_array_1
]);
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));
4093 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->ctr0
));
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
);
4105 NDR_CHECK(ndr_push_wkssvc_NetWkstaTransportCtr0(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->ctr0
));
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
)
4120 TALLOC_CTX
*_mem_save_ctr0_0
;
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));
4131 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_ctr0
));
4133 NDR_PULL_ALLOC(ndr
, r
->ctr0
);
4140 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u at %s", level
, __location__
);
4143 if (ndr_flags
& NDR_BUFFERS
) {
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);
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
)
4164 level
= ndr_print_get_switch_value(ndr
, r
);
4165 ndr_print_union(ndr
, name
, level
, "wkssvc_NetWkstaTransportCtr");
4168 ndr_print_ptr(ndr
, "ctr0", r
->ctr0
);
4171 ndr_print_wkssvc_NetWkstaTransportCtr0(ndr
, "ctr0", r
->ctr0
);
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");
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
);
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
) {
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
));
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
);
4264 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_unknown2
));
4265 if (_ptr_unknown2
) {
4266 NDR_PULL_ALLOC(ndr
, r
->unknown2
);
4270 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
4272 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
4309 ndr_print_ptr(ndr
, "unknown1", r
->unknown1
);
4312 ndr_print_string(ndr
, "unknown1", r
->unknown1
);
4315 ndr_print_ptr(ndr
, "unknown2", r
->unknown2
);
4318 ndr_print_string(ndr
, "unknown2", r
->unknown2
);
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
) {
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
));
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
));
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
));
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
));
4400 NDR_PULL_ALLOC(ndr
, r
->local
);
4404 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_remote
));
4406 NDR_PULL_ALLOC(ndr
, r
->remote
);
4410 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_password
));
4411 if (_ptr_password
) {
4412 NDR_PULL_ALLOC(ndr
, r
->password
);
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
);
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
);
4430 r
->domain_name
= NULL
;
4432 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
4434 if (ndr_flags
& NDR_BUFFERS
) {
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);
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);
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);
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");
4513 ndr_print_ptr(ndr
, "local", r
->local
);
4516 ndr_print_string(ndr
, "local", r
->local
);
4519 ndr_print_ptr(ndr
, "remote", r
->remote
);
4522 ndr_print_string(ndr
, "remote", r
->remote
);
4525 ndr_print_ptr(ndr
, "password", r
->password
);
4528 ndr_print_string(ndr
, "password", r
->password
);
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
);
4538 ndr_print_string(ndr
, "user_name", r
->user_name
);
4541 ndr_print_ptr(ndr
, "domain_name", r
->domain_name
);
4543 if (r
->domain_name
) {
4544 ndr_print_string(ndr
, "domain_name", r
->domain_name
);
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
) {
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
));
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
));
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
));
4604 NDR_PULL_ALLOC(ndr
, r
->local
);
4608 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_remote
));
4610 NDR_PULL_ALLOC(ndr
, r
->remote
);
4614 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_password
));
4615 if (_ptr_password
) {
4616 NDR_PULL_ALLOC(ndr
, r
->password
);
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
) {
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);
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);
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");
4677 ndr_print_ptr(ndr
, "local", r
->local
);
4680 ndr_print_string(ndr
, "local", r
->local
);
4683 ndr_print_ptr(ndr
, "remote", r
->remote
);
4686 ndr_print_string(ndr
, "remote", r
->remote
);
4689 ndr_print_ptr(ndr
, "password", r
->password
);
4692 ndr_print_string(ndr
, "password", r
->password
);
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
);
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
) {
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
));
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
));
4741 NDR_PULL_ALLOC(ndr
, r
->local
);
4745 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_remote
));
4747 NDR_PULL_ALLOC(ndr
, r
->remote
);
4751 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
4753 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
4790 ndr_print_ptr(ndr
, "local", r
->local
);
4793 ndr_print_string(ndr
, "local", r
->local
);
4796 ndr_print_ptr(ndr
, "remote", r
->remote
);
4799 ndr_print_string(ndr
, "remote", r
->remote
);
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));
4813 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info0
));
4817 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info1
));
4821 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info2
));
4825 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->info3
));
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
);
4837 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo0(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info0
));
4843 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo1(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info1
));
4849 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info2
));
4855 NDR_CHECK(ndr_push_wkssvc_NetrUseInfo3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->info3
));
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
)
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));
4887 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info0
));
4889 NDR_PULL_ALLOC(ndr
, r
->info0
);
4896 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info1
));
4898 NDR_PULL_ALLOC(ndr
, r
->info1
);
4905 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info2
));
4907 NDR_PULL_ALLOC(ndr
, r
->info2
);
4914 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info3
));
4916 NDR_PULL_ALLOC(ndr
, r
->info3
);
4923 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u at %s", level
, __location__
);
4926 if (ndr_flags
& NDR_BUFFERS
) {
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);
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);
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);
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);
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
)
4974 level
= ndr_print_get_switch_value(ndr
, r
);
4975 ndr_print_union(ndr
, name
, level
, "wkssvc_NetrUseGetInfoCtr");
4978 ndr_print_ptr(ndr
, "info0", r
->info0
);
4981 ndr_print_wkssvc_NetrUseInfo0(ndr
, "info0", r
->info0
);
4987 ndr_print_ptr(ndr
, "info1", r
->info1
);
4990 ndr_print_wkssvc_NetrUseInfo1(ndr
, "info1", r
->info1
);
4996 ndr_print_ptr(ndr
, "info2", r
->info2
);
4999 ndr_print_wkssvc_NetrUseInfo2(ndr
, "info2", r
->info2
);
5005 ndr_print_ptr(ndr
, "info3", r
->info3
);
5008 ndr_print_wkssvc_NetrUseInfo3(ndr
, "info3", r
->info3
);
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
) {
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
));
5053 NDR_PULL_ALLOC(ndr
, r
->array
);
5057 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
5059 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
5089 ndr_print_uint32(ndr
, "count", r
->count
);
5090 ndr_print_ptr(ndr
, "array", r
->array
);
5093 ndr
->print(ndr
, "%s: ARRAY(%d)", "array", (int)r
->count
);
5095 for (cntr_array_1
=0;cntr_array_1
<r
->count
;cntr_array_1
++) {
5097 if (asprintf(&idx_1
, "[%d]", cntr_array_1
) != -1) {
5098 ndr_print_wkssvc_NetrUseInfo2(ndr
, "array", &r
->array
[cntr_array_1
]);
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
) {
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
));
5143 NDR_PULL_ALLOC(ndr
, r
->array
);
5147 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
5149 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
5179 ndr_print_uint32(ndr
, "count", r
->count
);
5180 ndr_print_ptr(ndr
, "array", r
->array
);
5183 ndr
->print(ndr
, "%s: ARRAY(%d)", "array", (int)r
->count
);
5185 for (cntr_array_1
=0;cntr_array_1
<r
->count
;cntr_array_1
++) {
5187 if (asprintf(&idx_1
, "[%d]", cntr_array_1
) != -1) {
5188 ndr_print_wkssvc_NetrUseInfo1(ndr
, "array", &r
->array
[cntr_array_1
]);
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
) {
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
));
5233 NDR_PULL_ALLOC(ndr
, r
->array
);
5237 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
5239 if (ndr_flags
& NDR_BUFFERS
) {
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);
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");
5269 ndr_print_uint32(ndr
, "count", r
->count
);
5270 ndr_print_ptr(ndr
, "array", r
->array
);
5273 ndr
->print(ndr
, "%s: ARRAY(%d)", "array", (int)r
->count
);
5275 for (cntr_array_1
=0;cntr_array_1
<r
->count
;cntr_array_1
++) {
5277 if (asprintf(&idx_1
, "[%d]", cntr_array_1
) != -1) {
5278 ndr_print_wkssvc_NetrUseInfo0(ndr
, "array", &r
->array
[cntr_array_1
]);
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));
5296 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->ctr0
));
5300 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->ctr1
));
5304 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->ctr2
));
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
);
5316 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr0(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->ctr0
));
5322 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr1(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->ctr1
));
5328 NDR_CHECK(ndr_push_wkssvc_NetrUseEnumCtr2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->ctr2
));
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
)
5343 TALLOC_CTX
*_mem_save_ctr0_0
;
5345 TALLOC_CTX
*_mem_save_ctr1_0
;
5347 TALLOC_CTX
*_mem_save_ctr2_0
;
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));
5358 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_ctr0
));
5360 NDR_PULL_ALLOC(ndr
, r
->ctr0
);
5367 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_ctr1
));
5369 NDR_PULL_ALLOC(ndr
, r
->ctr1
);
5376 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_ctr2
));
5378 NDR_PULL_ALLOC(ndr
, r
->ctr2
);
5385 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u at %s", level
, __location__
);
5388 if (ndr_flags
& NDR_BUFFERS
) {
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);
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);
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);
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
)
5427 level
= ndr_print_get_switch_value(ndr
, r
);
5428 ndr_print_union(ndr
, name
, level
, "wkssvc_NetrUseEnumCtr");
5431 ndr_print_ptr(ndr
, "ctr0", r
->ctr0
);
5434 ndr_print_wkssvc_NetrUseEnumCtr0(ndr
, "ctr0", r
->ctr0
);
5440 ndr_print_ptr(ndr
, "ctr1", r
->ctr1
);
5443 ndr_print_wkssvc_NetrUseEnumCtr1(ndr
, "ctr1", r
->ctr1
);
5449 ndr_print_ptr(ndr
, "ctr2", r
->ctr2
);
5452 ndr_print_wkssvc_NetrUseEnumCtr2(ndr
, "ctr2", r
->ctr2
);
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");
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
);
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");
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
);
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
)
5660 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &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
);
5669 ndr_print_bitmap_flag(ndr
, sizeof(uint32_t), "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE", WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE
, r
);
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
)
5682 NDR_CHECK(ndr_pull_enum_uint1632(ndr
, NDR_SCALARS
, &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
;
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
)
5711 NDR_CHECK(ndr_pull_enum_uint1632(ndr
, NDR_SCALARS
, &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
;
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));
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
);
5772 ndr_print_array_uint8(ndr
, "data", r
->data
, 524);
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
)
5787 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &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
);
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
);
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
)
5819 NDR_CHECK(ndr_pull_enum_uint1632(ndr
, NDR_SCALARS
, &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
;
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
);
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");
5908 ndr_print_uint32(ndr
, "count", r
->count
);
5909 ndr_print_ptr(ndr
, "computer_name", r
->computer_name
);
5911 if (r
->computer_name
) {
5912 ndr
->print(ndr
, "%s: ARRAY(%d)", "computer_name", (int)r
->count
);
5914 for (cntr_computer_name_1
=0;cntr_computer_name_1
<r
->count
;cntr_computer_name_1
++) {
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
]);
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
);
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");
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");
6008 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
6010 if (r
->in
.server_name
) {
6011 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
6014 ndr_print_uint32(ndr
, "level", r
->in
.level
);
6017 if (flags
& NDR_OUT
) {
6018 ndr_print_struct(ndr
, "out", "wkssvc_NetWkstaGetInfo");
6020 ndr_print_ptr(ndr
, "info", r
->out
.info
);
6022 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
6023 ndr_print_wkssvc_NetWkstaInfo(ndr
, "info", r
->out
.info
);
6025 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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");
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");
6135 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
6137 if (r
->in
.server_name
) {
6138 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
6141 ndr_print_uint32(ndr
, "level", r
->in
.level
);
6142 ndr_print_ptr(ndr
, "info", r
->in
.info
);
6144 ndr_print_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
);
6145 ndr_print_wkssvc_NetWkstaInfo(ndr
, "info", r
->in
.info
);
6147 ndr_print_ptr(ndr
, "parm_error", r
->in
.parm_error
);
6149 ndr_print_uint32(ndr
, "parm_error", *r
->in
.parm_error
);
6153 if (flags
& NDR_OUT
) {
6154 ndr_print_struct(ndr
, "out", "wkssvc_NetWkstaSetInfo");
6156 ndr_print_ptr(ndr
, "parm_error", r
->out
.parm_error
);
6158 ndr_print_uint32(ndr
, "parm_error", *r
->out
.parm_error
);
6160 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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");
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");
6304 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
6306 if (r
->in
.server_name
) {
6307 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
6310 ndr_print_ptr(ndr
, "info", r
->in
.info
);
6312 ndr_print_wkssvc_NetWkstaEnumUsersInfo(ndr
, "info", r
->in
.info
);
6314 ndr_print_uint32(ndr
, "prefmaxlen", r
->in
.prefmaxlen
);
6315 ndr_print_ptr(ndr
, "resume_handle", r
->in
.resume_handle
);
6317 if (r
->in
.resume_handle
) {
6318 ndr_print_uint32(ndr
, "resume_handle", *r
->in
.resume_handle
);
6323 if (flags
& NDR_OUT
) {
6324 ndr_print_struct(ndr
, "out", "wkssvc_NetWkstaEnumUsers");
6326 ndr_print_ptr(ndr
, "info", r
->out
.info
);
6328 ndr_print_wkssvc_NetWkstaEnumUsersInfo(ndr
, "info", r
->out
.info
);
6330 ndr_print_ptr(ndr
, "entries_read", r
->out
.entries_read
);
6332 ndr_print_uint32(ndr
, "entries_read", *r
->out
.entries_read
);
6334 ndr_print_ptr(ndr
, "resume_handle", r
->out
.resume_handle
);
6336 if (r
->out
.resume_handle
) {
6337 ndr_print_uint32(ndr
, "resume_handle", *r
->out
.resume_handle
);
6340 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
));
6381 NDR_PULL_ALLOC(ndr
, r
->in
.unknown
);
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");
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");
6427 ndr_print_ptr(ndr
, "unknown", r
->in
.unknown
);
6429 if (r
->in
.unknown
) {
6430 ndr_print_string(ndr
, "unknown", r
->in
.unknown
);
6433 ndr_print_uint32(ndr
, "level", r
->in
.level
);
6436 if (flags
& NDR_OUT
) {
6437 ndr_print_struct(ndr
, "out", "wkssvc_NetrWkstaUserGetInfo");
6439 ndr_print_ptr(ndr
, "info", r
->out
.info
);
6441 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
6442 ndr_print_wkssvc_NetrWkstaUserInfo(ndr
, "info", r
->out
.info
);
6444 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
));
6495 NDR_PULL_ALLOC(ndr
, r
->in
.unknown
);
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
);
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
);
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");
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");
6563 ndr_print_ptr(ndr
, "unknown", r
->in
.unknown
);
6565 if (r
->in
.unknown
) {
6566 ndr_print_string(ndr
, "unknown", r
->in
.unknown
);
6569 ndr_print_uint32(ndr
, "level", r
->in
.level
);
6570 ndr_print_ptr(ndr
, "info", r
->in
.info
);
6572 ndr_print_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
);
6573 ndr_print_wkssvc_NetrWkstaUserInfo(ndr
, "info", r
->in
.info
);
6575 ndr_print_ptr(ndr
, "parm_err", r
->in
.parm_err
);
6577 if (r
->in
.parm_err
) {
6578 ndr_print_uint32(ndr
, "parm_err", *r
->in
.parm_err
);
6583 if (flags
& NDR_OUT
) {
6584 ndr_print_struct(ndr
, "out", "wkssvc_NetrWkstaUserSetInfo");
6586 ndr_print_ptr(ndr
, "parm_err", r
->out
.parm_err
);
6588 if (r
->out
.parm_err
) {
6589 ndr_print_uint32(ndr
, "parm_err", *r
->out
.parm_err
);
6592 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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");
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");
6736 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
6738 if (r
->in
.server_name
) {
6739 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
6742 ndr_print_ptr(ndr
, "info", r
->in
.info
);
6744 ndr_print_wkssvc_NetWkstaTransportInfo(ndr
, "info", r
->in
.info
);
6746 ndr_print_uint32(ndr
, "max_buffer", r
->in
.max_buffer
);
6747 ndr_print_ptr(ndr
, "resume_handle", r
->in
.resume_handle
);
6749 if (r
->in
.resume_handle
) {
6750 ndr_print_uint32(ndr
, "resume_handle", *r
->in
.resume_handle
);
6755 if (flags
& NDR_OUT
) {
6756 ndr_print_struct(ndr
, "out", "wkssvc_NetWkstaTransportEnum");
6758 ndr_print_ptr(ndr
, "info", r
->out
.info
);
6760 ndr_print_wkssvc_NetWkstaTransportInfo(ndr
, "info", r
->out
.info
);
6762 ndr_print_ptr(ndr
, "total_entries", r
->out
.total_entries
);
6764 ndr_print_uint32(ndr
, "total_entries", *r
->out
.total_entries
);
6766 ndr_print_ptr(ndr
, "resume_handle", r
->out
.resume_handle
);
6768 if (r
->out
.resume_handle
) {
6769 ndr_print_uint32(ndr
, "resume_handle", *r
->out
.resume_handle
);
6772 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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");
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");
6889 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
6891 if (r
->in
.server_name
) {
6892 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
6895 ndr_print_uint32(ndr
, "level", r
->in
.level
);
6896 ndr_print_ptr(ndr
, "info0", r
->in
.info0
);
6898 ndr_print_wkssvc_NetWkstaTransportInfo0(ndr
, "info0", r
->in
.info0
);
6900 ndr_print_ptr(ndr
, "parm_err", r
->in
.parm_err
);
6902 if (r
->in
.parm_err
) {
6903 ndr_print_uint32(ndr
, "parm_err", *r
->in
.parm_err
);
6908 if (flags
& NDR_OUT
) {
6909 ndr_print_struct(ndr
, "out", "wkssvc_NetrWkstaTransportAdd");
6911 ndr_print_ptr(ndr
, "parm_err", r
->out
.parm_err
);
6913 if (r
->out
.parm_err
) {
6914 ndr_print_uint32(ndr
, "parm_err", *r
->out
.parm_err
);
6917 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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");
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");
7017 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
7019 if (r
->in
.server_name
) {
7020 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
7023 ndr_print_ptr(ndr
, "transport_name", r
->in
.transport_name
);
7025 if (r
->in
.transport_name
) {
7026 ndr_print_string(ndr
, "transport_name", r
->in
.transport_name
);
7029 ndr_print_uint32(ndr
, "unknown3", r
->in
.unknown3
);
7032 if (flags
& NDR_OUT
) {
7033 ndr_print_struct(ndr
, "out", "wkssvc_NetrWkstaTransportDel");
7035 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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");
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");
7154 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
7156 if (r
->in
.server_name
) {
7157 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
7160 ndr_print_uint32(ndr
, "level", r
->in
.level
);
7161 ndr_print_ptr(ndr
, "ctr", r
->in
.ctr
);
7163 ndr_print_set_switch_value(ndr
, r
->in
.ctr
, r
->in
.level
);
7164 ndr_print_wkssvc_NetrUseGetInfoCtr(ndr
, "ctr", r
->in
.ctr
);
7166 ndr_print_ptr(ndr
, "parm_err", r
->in
.parm_err
);
7168 if (r
->in
.parm_err
) {
7169 ndr_print_uint32(ndr
, "parm_err", *r
->in
.parm_err
);
7174 if (flags
& NDR_OUT
) {
7175 ndr_print_struct(ndr
, "out", "wkssvc_NetrUseAdd");
7177 ndr_print_ptr(ndr
, "parm_err", r
->out
.parm_err
);
7179 if (r
->out
.parm_err
) {
7180 ndr_print_uint32(ndr
, "parm_err", *r
->out
.parm_err
);
7183 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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");
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");
7288 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
7290 if (r
->in
.server_name
) {
7291 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
7294 ndr_print_ptr(ndr
, "use_name", r
->in
.use_name
);
7296 ndr_print_string(ndr
, "use_name", r
->in
.use_name
);
7298 ndr_print_uint32(ndr
, "level", r
->in
.level
);
7301 if (flags
& NDR_OUT
) {
7302 ndr_print_struct(ndr
, "out", "wkssvc_NetrUseGetInfo");
7304 ndr_print_ptr(ndr
, "ctr", r
->out
.ctr
);
7306 ndr_print_set_switch_value(ndr
, r
->out
.ctr
, r
->in
.level
);
7307 ndr_print_wkssvc_NetrUseGetInfoCtr(ndr
, "ctr", r
->out
.ctr
);
7309 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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");
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");
7396 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
7398 if (r
->in
.server_name
) {
7399 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
7402 ndr_print_ptr(ndr
, "use_name", r
->in
.use_name
);
7404 ndr_print_string(ndr
, "use_name", r
->in
.use_name
);
7406 ndr_print_uint32(ndr
, "force_cond", r
->in
.force_cond
);
7409 if (flags
& NDR_OUT
) {
7410 ndr_print_struct(ndr
, "out", "wkssvc_NetrUseDel");
7412 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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");
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");
7556 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
7558 if (r
->in
.server_name
) {
7559 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
7562 ndr_print_ptr(ndr
, "info", r
->in
.info
);
7564 ndr_print_wkssvc_NetrUseEnumInfo(ndr
, "info", r
->in
.info
);
7566 ndr_print_uint32(ndr
, "prefmaxlen", r
->in
.prefmaxlen
);
7567 ndr_print_ptr(ndr
, "resume_handle", r
->in
.resume_handle
);
7569 if (r
->in
.resume_handle
) {
7570 ndr_print_uint32(ndr
, "resume_handle", *r
->in
.resume_handle
);
7575 if (flags
& NDR_OUT
) {
7576 ndr_print_struct(ndr
, "out", "wkssvc_NetrUseEnum");
7578 ndr_print_ptr(ndr
, "info", r
->out
.info
);
7580 ndr_print_wkssvc_NetrUseEnumInfo(ndr
, "info", r
->out
.info
);
7582 ndr_print_ptr(ndr
, "entries_read", r
->out
.entries_read
);
7584 ndr_print_uint32(ndr
, "entries_read", *r
->out
.entries_read
);
7586 ndr_print_ptr(ndr
, "resume_handle", r
->out
.resume_handle
);
7588 if (r
->out
.resume_handle
) {
7589 ndr_print_uint32(ndr
, "resume_handle", *r
->out
.resume_handle
);
7592 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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");
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");
7725 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
7727 if (r
->in
.server_name
) {
7728 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
7731 ndr_print_ptr(ndr
, "message_name", r
->in
.message_name
);
7733 ndr_print_string(ndr
, "message_name", r
->in
.message_name
);
7735 ndr_print_ptr(ndr
, "message_sender_name", r
->in
.message_sender_name
);
7737 if (r
->in
.message_sender_name
) {
7738 ndr_print_string(ndr
, "message_sender_name", r
->in
.message_sender_name
);
7741 ndr_print_ptr(ndr
, "message_buffer", r
->in
.message_buffer
);
7743 ndr_print_array_uint8(ndr
, "message_buffer", r
->in
.message_buffer
, r
->in
.message_size
);
7745 ndr_print_uint32(ndr
, "message_size", r
->in
.message_size
);
7748 if (flags
& NDR_OUT
) {
7749 ndr_print_struct(ndr
, "out", "wkssvc_NetrMessageBufferSend");
7751 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
));
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;
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
);
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
);
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
));
7859 NDR_PULL_ALLOC(ndr
, *r
->out
.info
);
7861 *r
->out
.info
= NULL
;
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");
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");
7885 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
7887 if (r
->in
.server_name
) {
7888 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
7891 ndr_print_ptr(ndr
, "unknown2", r
->in
.unknown2
);
7893 if (r
->in
.unknown2
) {
7894 ndr_print_string(ndr
, "unknown2", r
->in
.unknown2
);
7897 ndr_print_uint32(ndr
, "unknown3", r
->in
.unknown3
);
7898 ndr_print_uint32(ndr
, "unknown4", r
->in
.unknown4
);
7901 if (flags
& NDR_OUT
) {
7902 ndr_print_struct(ndr
, "out", "wkssvc_NetrWorkstationStatisticsGet");
7904 ndr_print_ptr(ndr
, "info", r
->out
.info
);
7906 ndr_print_ptr(ndr
, "info", *r
->out
.info
);
7909 ndr_print_wkssvc_NetrWorkstationStatistics(ndr
, "info", *r
->out
.info
);
7913 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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");
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");
7967 ndr_print_ptr(ndr
, "domain_name", r
->in
.domain_name
);
7969 ndr_print_string(ndr
, "domain_name", r
->in
.domain_name
);
7973 if (flags
& NDR_OUT
) {
7974 ndr_print_struct(ndr
, "out", "wkssvc_NetrLogonDomainNameAdd");
7976 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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");
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");
8030 ndr_print_ptr(ndr
, "domain_name", r
->in
.domain_name
);
8032 ndr_print_string(ndr
, "domain_name", r
->in
.domain_name
);
8036 if (flags
& NDR_OUT
) {
8037 ndr_print_struct(ndr
, "out", "wkssvc_NetrLogonDomainNameDel");
8039 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
));
8163 NDR_PULL_ALLOC(ndr
, r
->in
.Account
);
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
);
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");
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");
8219 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
8221 if (r
->in
.server_name
) {
8222 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
8225 ndr_print_ptr(ndr
, "domain_name", r
->in
.domain_name
);
8227 ndr_print_string(ndr
, "domain_name", r
->in
.domain_name
);
8229 ndr_print_ptr(ndr
, "account_ou", r
->in
.account_ou
);
8231 if (r
->in
.account_ou
) {
8232 ndr_print_string(ndr
, "account_ou", r
->in
.account_ou
);
8235 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
8237 if (r
->in
.Account
) {
8238 ndr_print_string(ndr
, "Account", r
->in
.Account
);
8241 ndr_print_ptr(ndr
, "password", r
->in
.password
);
8243 if (r
->in
.password
) {
8244 ndr_print_string(ndr
, "password", r
->in
.password
);
8247 ndr_print_wkssvc_joinflags(ndr
, "join_flags", r
->in
.join_flags
);
8250 if (flags
& NDR_OUT
) {
8251 ndr_print_struct(ndr
, "out", "wkssvc_NetrJoinDomain");
8253 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
));
8328 NDR_PULL_ALLOC(ndr
, r
->in
.Account
);
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
);
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");
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");
8384 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
8386 if (r
->in
.server_name
) {
8387 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
8390 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
8392 if (r
->in
.Account
) {
8393 ndr_print_string(ndr
, "Account", r
->in
.Account
);
8396 ndr_print_ptr(ndr
, "password", r
->in
.password
);
8398 if (r
->in
.password
) {
8399 ndr_print_string(ndr
, "password", r
->in
.password
);
8402 ndr_print_wkssvc_joinflags(ndr
, "unjoin_flags", r
->in
.unjoin_flags
);
8405 if (flags
& NDR_OUT
) {
8406 ndr_print_struct(ndr
, "out", "wkssvc_NetrUnjoinDomain");
8408 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
));
8514 NDR_PULL_ALLOC(ndr
, r
->in
.Account
);
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
);
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");
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");
8570 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
8572 if (r
->in
.server_name
) {
8573 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
8576 ndr_print_ptr(ndr
, "NewMachineName", r
->in
.NewMachineName
);
8578 if (r
->in
.NewMachineName
) {
8579 ndr_print_string(ndr
, "NewMachineName", r
->in
.NewMachineName
);
8582 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
8584 if (r
->in
.Account
) {
8585 ndr_print_string(ndr
, "Account", r
->in
.Account
);
8588 ndr_print_ptr(ndr
, "password", r
->in
.password
);
8590 if (r
->in
.password
) {
8591 ndr_print_string(ndr
, "password", r
->in
.password
);
8594 ndr_print_wkssvc_renameflags(ndr
, "RenameOptions", r
->in
.RenameOptions
);
8597 if (flags
& NDR_OUT
) {
8598 ndr_print_struct(ndr
, "out", "wkssvc_NetrRenameMachineInDomain");
8600 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
));
8693 NDR_PULL_ALLOC(ndr
, r
->in
.Account
);
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
);
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");
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");
8749 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
8751 if (r
->in
.server_name
) {
8752 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
8755 ndr_print_ptr(ndr
, "name", r
->in
.name
);
8757 ndr_print_string(ndr
, "name", r
->in
.name
);
8759 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
8761 if (r
->in
.Account
) {
8762 ndr_print_string(ndr
, "Account", r
->in
.Account
);
8765 ndr_print_ptr(ndr
, "Password", r
->in
.Password
);
8767 if (r
->in
.Password
) {
8768 ndr_print_string(ndr
, "Password", r
->in
.Password
);
8771 ndr_print_wkssvc_NetValidateNameType(ndr
, "name_type", r
->in
.name_type
);
8774 if (flags
& NDR_OUT
) {
8775 ndr_print_struct(ndr
, "out", "wkssvc_NetrValidateName");
8777 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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");
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");
8939 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
8941 if (r
->in
.server_name
) {
8942 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
8945 ndr_print_ptr(ndr
, "name_buffer", r
->in
.name_buffer
);
8947 ndr_print_ptr(ndr
, "name_buffer", *r
->in
.name_buffer
);
8949 if (*r
->in
.name_buffer
) {
8950 ndr_print_string(ndr
, "name_buffer", *r
->in
.name_buffer
);
8956 if (flags
& NDR_OUT
) {
8957 ndr_print_struct(ndr
, "out", "wkssvc_NetrGetJoinInformation");
8959 ndr_print_ptr(ndr
, "name_buffer", r
->out
.name_buffer
);
8961 ndr_print_ptr(ndr
, "name_buffer", *r
->out
.name_buffer
);
8963 if (*r
->out
.name_buffer
) {
8964 ndr_print_string(ndr
, "name_buffer", *r
->out
.name_buffer
);
8968 ndr_print_ptr(ndr
, "name_type", r
->out
.name_type
);
8970 ndr_print_wkssvc_NetJoinStatus(ndr
, "name_type", *r
->out
.name_type
);
8972 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
));
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;
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
);
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
));
9103 NDR_PULL_ALLOC(ndr
, r
->in
.Account
);
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
));
9123 NDR_PULL_ALLOC(ndr
, r
->in
.unknown
);
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
));
9168 NDR_PULL_ALLOC(ndr
, *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
));
9183 NDR_PULL_ALLOC(ndr
, (*r
->out
.ous
)[cntr_ous_2
]);
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
));
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");
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");
9227 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
9229 if (r
->in
.server_name
) {
9230 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
9233 ndr_print_ptr(ndr
, "domain_name", r
->in
.domain_name
);
9235 ndr_print_string(ndr
, "domain_name", r
->in
.domain_name
);
9237 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
9239 if (r
->in
.Account
) {
9240 ndr_print_string(ndr
, "Account", r
->in
.Account
);
9243 ndr_print_ptr(ndr
, "unknown", r
->in
.unknown
);
9245 if (r
->in
.unknown
) {
9246 ndr_print_string(ndr
, "unknown", r
->in
.unknown
);
9249 ndr_print_ptr(ndr
, "num_ous", r
->in
.num_ous
);
9251 ndr_print_uint32(ndr
, "num_ous", *r
->in
.num_ous
);
9255 if (flags
& NDR_OUT
) {
9256 ndr_print_struct(ndr
, "out", "wkssvc_NetrGetJoinableOus");
9258 ndr_print_ptr(ndr
, "num_ous", r
->out
.num_ous
);
9260 ndr_print_uint32(ndr
, "num_ous", *r
->out
.num_ous
);
9262 ndr_print_ptr(ndr
, "ous", r
->out
.ous
);
9264 ndr_print_ptr(ndr
, "ous", *r
->out
.ous
);
9267 ndr
->print(ndr
, "%s: ARRAY(%d)", "ous", (int)*r
->out
.num_ous
);
9269 for (cntr_ous_2
=0;cntr_ous_2
<*r
->out
.num_ous
;cntr_ous_2
++) {
9271 if (asprintf(&idx_2
, "[%d]", cntr_ous_2
) != -1) {
9272 ndr_print_ptr(ndr
, "ous", (*r
->out
.ous
)[cntr_ous_2
]);
9274 if ((*r
->out
.ous
)[cntr_ous_2
]) {
9275 ndr_print_string(ndr
, "ous", (*r
->out
.ous
)[cntr_ous_2
]);
9285 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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
);
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");
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");
9452 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
9454 if (r
->in
.server_name
) {
9455 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
9458 ndr_print_ptr(ndr
, "domain_name", r
->in
.domain_name
);
9460 ndr_print_string(ndr
, "domain_name", r
->in
.domain_name
);
9462 ndr_print_ptr(ndr
, "account_ou", r
->in
.account_ou
);
9464 if (r
->in
.account_ou
) {
9465 ndr_print_string(ndr
, "account_ou", r
->in
.account_ou
);
9468 ndr_print_ptr(ndr
, "admin_account", r
->in
.admin_account
);
9470 if (r
->in
.admin_account
) {
9471 ndr_print_string(ndr
, "admin_account", r
->in
.admin_account
);
9474 ndr_print_ptr(ndr
, "encrypted_password", r
->in
.encrypted_password
);
9476 if (r
->in
.encrypted_password
) {
9477 ndr_print_wkssvc_PasswordBuffer(ndr
, "encrypted_password", r
->in
.encrypted_password
);
9480 ndr_print_wkssvc_joinflags(ndr
, "join_flags", r
->in
.join_flags
);
9483 if (flags
& NDR_OUT
) {
9484 ndr_print_struct(ndr
, "out", "wkssvc_NetrJoinDomain2");
9486 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
));
9556 NDR_PULL_ALLOC(ndr
, r
->in
.account
);
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
);
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");
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");
9604 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
9606 if (r
->in
.server_name
) {
9607 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
9610 ndr_print_ptr(ndr
, "account", r
->in
.account
);
9612 if (r
->in
.account
) {
9613 ndr_print_string(ndr
, "account", r
->in
.account
);
9616 ndr_print_ptr(ndr
, "encrypted_password", r
->in
.encrypted_password
);
9618 if (r
->in
.encrypted_password
) {
9619 ndr_print_wkssvc_PasswordBuffer(ndr
, "encrypted_password", r
->in
.encrypted_password
);
9622 ndr_print_wkssvc_joinflags(ndr
, "unjoin_flags", r
->in
.unjoin_flags
);
9625 if (flags
& NDR_OUT
) {
9626 ndr_print_struct(ndr
, "out", "wkssvc_NetrUnjoinDomain2");
9628 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
));
9729 NDR_PULL_ALLOC(ndr
, r
->in
.Account
);
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
);
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");
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");
9777 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
9779 if (r
->in
.server_name
) {
9780 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
9783 ndr_print_ptr(ndr
, "NewMachineName", r
->in
.NewMachineName
);
9785 if (r
->in
.NewMachineName
) {
9786 ndr_print_string(ndr
, "NewMachineName", r
->in
.NewMachineName
);
9789 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
9791 if (r
->in
.Account
) {
9792 ndr_print_string(ndr
, "Account", r
->in
.Account
);
9795 ndr_print_ptr(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
9797 if (r
->in
.EncryptedPassword
) {
9798 ndr_print_wkssvc_PasswordBuffer(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
9801 ndr_print_wkssvc_renameflags(ndr
, "RenameOptions", r
->in
.RenameOptions
);
9804 if (flags
& NDR_OUT
) {
9805 ndr_print_struct(ndr
, "out", "wkssvc_NetrRenameMachineInDomain2");
9807 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
));
9895 NDR_PULL_ALLOC(ndr
, r
->in
.Account
);
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
);
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");
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");
9943 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
9945 if (r
->in
.server_name
) {
9946 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
9949 ndr_print_ptr(ndr
, "name", r
->in
.name
);
9951 ndr_print_string(ndr
, "name", r
->in
.name
);
9953 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
9955 if (r
->in
.Account
) {
9956 ndr_print_string(ndr
, "Account", r
->in
.Account
);
9959 ndr_print_ptr(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
9961 if (r
->in
.EncryptedPassword
) {
9962 ndr_print_wkssvc_PasswordBuffer(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
9965 ndr_print_wkssvc_NetValidateNameType(ndr
, "name_type", r
->in
.name_type
);
9968 if (flags
& NDR_OUT
) {
9969 ndr_print_struct(ndr
, "out", "wkssvc_NetrValidateName2");
9971 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
));
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
;
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
);
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
);
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
);
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
));
10154 NDR_PULL_ALLOC(ndr
, *r
->out
.ous
);
10156 *r
->out
.ous
= NULL
;
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
));
10169 NDR_PULL_ALLOC(ndr
, (*r
->out
.ous
)[cntr_ous_2
]);
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
));
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");
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");
10213 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
10215 if (r
->in
.server_name
) {
10216 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
10219 ndr_print_ptr(ndr
, "domain_name", r
->in
.domain_name
);
10221 ndr_print_string(ndr
, "domain_name", r
->in
.domain_name
);
10223 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
10225 if (r
->in
.Account
) {
10226 ndr_print_string(ndr
, "Account", r
->in
.Account
);
10229 ndr_print_ptr(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10231 if (r
->in
.EncryptedPassword
) {
10232 ndr_print_wkssvc_PasswordBuffer(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10235 ndr_print_ptr(ndr
, "num_ous", r
->in
.num_ous
);
10237 ndr_print_uint32(ndr
, "num_ous", *r
->in
.num_ous
);
10241 if (flags
& NDR_OUT
) {
10242 ndr_print_struct(ndr
, "out", "wkssvc_NetrGetJoinableOus2");
10244 ndr_print_ptr(ndr
, "num_ous", r
->out
.num_ous
);
10246 ndr_print_uint32(ndr
, "num_ous", *r
->out
.num_ous
);
10248 ndr_print_ptr(ndr
, "ous", r
->out
.ous
);
10250 ndr_print_ptr(ndr
, "ous", *r
->out
.ous
);
10253 ndr
->print(ndr
, "%s: ARRAY(%d)", "ous", (int)*r
->out
.num_ous
);
10255 for (cntr_ous_2
=0;cntr_ous_2
<*r
->out
.num_ous
;cntr_ous_2
++) {
10257 if (asprintf(&idx_2
, "[%d]", cntr_ous_2
) != -1) {
10258 ndr_print_ptr(ndr
, "ous", (*r
->out
.ous
)[cntr_ous_2
]);
10260 if ((*r
->out
.ous
)[cntr_ous_2
]) {
10261 ndr_print_string(ndr
, "ous", (*r
->out
.ous
)[cntr_ous_2
]);
10271 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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
);
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");
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");
10420 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
10422 if (r
->in
.server_name
) {
10423 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
10426 ndr_print_ptr(ndr
, "NewAlternateMachineName", r
->in
.NewAlternateMachineName
);
10428 if (r
->in
.NewAlternateMachineName
) {
10429 ndr_print_string(ndr
, "NewAlternateMachineName", r
->in
.NewAlternateMachineName
);
10432 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
10434 if (r
->in
.Account
) {
10435 ndr_print_string(ndr
, "Account", r
->in
.Account
);
10438 ndr_print_ptr(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10440 if (r
->in
.EncryptedPassword
) {
10441 ndr_print_wkssvc_PasswordBuffer(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10444 ndr_print_uint32(ndr
, "Reserved", r
->in
.Reserved
);
10447 if (flags
& NDR_OUT
) {
10448 ndr_print_struct(ndr
, "out", "wkssvc_NetrAddAlternateComputerName");
10450 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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
);
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");
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");
10599 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
10601 if (r
->in
.server_name
) {
10602 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
10605 ndr_print_ptr(ndr
, "AlternateMachineNameToRemove", r
->in
.AlternateMachineNameToRemove
);
10607 if (r
->in
.AlternateMachineNameToRemove
) {
10608 ndr_print_string(ndr
, "AlternateMachineNameToRemove", r
->in
.AlternateMachineNameToRemove
);
10611 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
10613 if (r
->in
.Account
) {
10614 ndr_print_string(ndr
, "Account", r
->in
.Account
);
10617 ndr_print_ptr(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10619 if (r
->in
.EncryptedPassword
) {
10620 ndr_print_wkssvc_PasswordBuffer(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10623 ndr_print_uint32(ndr
, "Reserved", r
->in
.Reserved
);
10626 if (flags
& NDR_OUT
) {
10627 ndr_print_struct(ndr
, "out", "wkssvc_NetrRemoveAlternateComputerName");
10629 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
);
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
);
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
);
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
);
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");
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");
10778 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
10780 if (r
->in
.server_name
) {
10781 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
10784 ndr_print_ptr(ndr
, "primary_name", r
->in
.primary_name
);
10786 if (r
->in
.primary_name
) {
10787 ndr_print_string(ndr
, "primary_name", r
->in
.primary_name
);
10790 ndr_print_ptr(ndr
, "Account", r
->in
.Account
);
10792 if (r
->in
.Account
) {
10793 ndr_print_string(ndr
, "Account", r
->in
.Account
);
10796 ndr_print_ptr(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10798 if (r
->in
.EncryptedPassword
) {
10799 ndr_print_wkssvc_PasswordBuffer(ndr
, "EncryptedPassword", r
->in
.EncryptedPassword
);
10802 ndr_print_uint32(ndr
, "Reserved", r
->in
.Reserved
);
10805 if (flags
& NDR_OUT
) {
10806 ndr_print_struct(ndr
, "out", "wkssvc_NetrSetPrimaryComputername");
10808 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
));
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;
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
);
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
));
10885 NDR_PULL_ALLOC(ndr
, *r
->out
.ctr
);
10887 *r
->out
.ctr
= NULL
;
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");
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");
10911 ndr_print_ptr(ndr
, "server_name", r
->in
.server_name
);
10913 if (r
->in
.server_name
) {
10914 ndr_print_string(ndr
, "server_name", r
->in
.server_name
);
10917 ndr_print_wkssvc_ComputerNameType(ndr
, "name_type", r
->in
.name_type
);
10918 ndr_print_uint32(ndr
, "Reserved", r
->in
.Reserved
);
10921 if (flags
& NDR_OUT
) {
10922 ndr_print_struct(ndr
, "out", "wkssvc_NetrEnumerateComputerNames");
10924 ndr_print_ptr(ndr
, "ctr", r
->out
.ctr
);
10926 ndr_print_ptr(ndr
, "ctr", *r
->out
.ctr
);
10929 ndr_print_wkssvc_ComputerNamesCtr(ndr
, "ctr", *r
->out
.ctr
);
10933 ndr_print_WERROR(ndr
, "result", r
->out
.result
);
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
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
,
11188 { NULL
, 0, NULL
, NULL
, NULL
, false }
11191 static const char * const wkssvc_endpoint_strings
[] = {
11192 "ncacn_np:[\\pipe\\wkssvc]",
11197 static const struct ndr_interface_string_array wkssvc_endpoints
= {
11199 .names
= wkssvc_endpoint_strings
11202 static const char * const wkssvc_authservice_strings
[] = {
11206 static const struct ndr_interface_string_array wkssvc_authservices
= {
11208 .names
= wkssvc_authservice_strings
11212 const struct ndr_interface_table ndr_table_wkssvc
= {
11215 {0x6bffd098,0xa112,0x3610,{0x98,0x33},{0x46,0xc3,0xf8,0x7e,0x34,0x5a}},
11218 .helpstring
= NDR_WKSSVC_HELPSTRING
,
11220 .calls
= wkssvc_calls
,
11221 .endpoints
= &wkssvc_endpoints
,
11222 .authservices
= &wkssvc_authservices