43f9ae6d635d0edd6131802e4b0a2f70e28dc59d
[samba.git] / source3 / librpc / gen_ndr / wkssvc.h
1 /* header auto-generated by pidl */
2
3 #include <stdint.h>
4
5 #include "librpc/gen_ndr/srvsvc.h"
6 #include "librpc/gen_ndr/lsa.h"
7 #ifndef _HEADER_wkssvc
8 #define _HEADER_wkssvc
9
10 struct wkssvc_NetWkstaInfo100 {
11         enum srvsvc_PlatformId platform_id;
12         const char *server_name;/* [unique,charset(UTF16)] */
13         const char *domain_name;/* [unique,charset(UTF16)] */
14         uint32_t version_major;
15         uint32_t version_minor;
16 };
17
18 struct wkssvc_NetWkstaInfo101 {
19         enum srvsvc_PlatformId platform_id;
20         const char *server_name;/* [unique,charset(UTF16)] */
21         const char *domain_name;/* [unique,charset(UTF16)] */
22         uint32_t version_major;
23         uint32_t version_minor;
24         const char *lan_root;/* [unique,charset(UTF16)] */
25 };
26
27 struct wkssvc_NetWkstaInfo102 {
28         enum srvsvc_PlatformId platform_id;
29         const char *server_name;/* [unique,charset(UTF16)] */
30         const char *domain_name;/* [unique,charset(UTF16)] */
31         uint32_t version_major;
32         uint32_t version_minor;
33         const char *lan_root;/* [unique,charset(UTF16)] */
34         uint32_t logged_on_users;
35 };
36
37 struct wkssvc_NetWkstaInfo502 {
38         uint32_t char_wait;
39         uint32_t collection_time;
40         uint32_t maximum_collection_count;
41         uint32_t keep_connection;
42         uint32_t max_commands;
43         uint32_t session_timeout;
44         uint32_t size_char_buf;
45         uint32_t max_threads;
46         uint32_t lock_quota;
47         uint32_t lock_increment;
48         uint32_t lock_maximum;
49         uint32_t pipe_increment;
50         uint32_t pipe_maximum;
51         uint32_t cache_file_timeout;
52         uint32_t dormant_file_limit;
53         uint32_t read_ahead_throughput;
54         uint32_t num_mailslot_buffers;
55         uint32_t num_srv_announce_buffers;
56         uint32_t max_illegal_dgram_events;
57         uint32_t dgram_event_reset_freq;
58         uint32_t log_election_packets;
59         uint32_t use_opportunistic_locking;
60         uint32_t use_unlock_behind;
61         uint32_t use_close_behind;
62         uint32_t buf_named_pipes;
63         uint32_t use_lock_read_unlock;
64         uint32_t utilize_nt_caching;
65         uint32_t use_raw_read;
66         uint32_t use_raw_write;
67         uint32_t use_write_raw_data;
68         uint32_t use_encryption;
69         uint32_t buf_files_deny_write;
70         uint32_t buf_read_only_files;
71         uint32_t force_core_create_mode;
72         uint32_t use_512_byte_max_transfer;
73 };
74
75 struct wkssvc_NetWkstaInfo1010 {
76         uint32_t char_wait;
77 };
78
79 struct wkssvc_NetWkstaInfo1011 {
80         uint32_t collection_time;
81 };
82
83 struct wkssvc_NetWkstaInfo1012 {
84         uint32_t maximum_collection_count;
85 };
86
87 struct wkssvc_NetWkstaInfo1013 {
88         uint32_t keep_connection;
89 };
90
91 struct wkssvc_NetWkstaInfo1018 {
92         uint32_t session_timeout;
93 };
94
95 struct wkssvc_NetWkstaInfo1023 {
96         uint32_t size_char_buf;
97 };
98
99 struct wkssvc_NetWkstaInfo1027 {
100         uint32_t errorlog_sz;
101 };
102
103 struct wkssvc_NetWkstaInfo1028 {
104         uint32_t print_buf_time;
105 };
106
107 struct wkssvc_NetWkstaInfo1032 {
108         uint32_t wrk_heuristics;
109 };
110
111 struct wkssvc_NetWkstaInfo1033 {
112         uint32_t max_threads;
113 };
114
115 struct wkssvc_NetWkstaInfo1041 {
116         uint32_t lock_quota;
117 };
118
119 struct wkssvc_NetWkstaInfo1042 {
120         uint32_t lock_increment;
121 };
122
123 struct wkssvc_NetWkstaInfo1043 {
124         uint32_t lock_maximum;
125 };
126
127 struct wkssvc_NetWkstaInfo1044 {
128         uint32_t pipe_increment;
129 };
130
131 struct wkssvc_NetWkstaInfo1045 {
132         uint32_t pipe_maximum;
133 };
134
135 struct wkssvc_NetWkstaInfo1046 {
136         uint32_t dormant_file_limit;
137 };
138
139 struct wkssvc_NetWkstaInfo1047 {
140         uint32_t cache_file_timeout;
141 };
142
143 struct wkssvc_NetWkstaInfo1048 {
144         uint32_t use_opportunistic_locking;
145 };
146
147 struct wkssvc_NetWkstaInfo1049 {
148         uint32_t use_unlock_behind;
149 };
150
151 struct wkssvc_NetWkstaInfo1050 {
152         uint32_t use_close_behind;
153 };
154
155 struct wkssvc_NetWkstaInfo1051 {
156         uint32_t buf_named_pipes;
157 };
158
159 struct wkssvc_NetWkstaInfo1052 {
160         uint32_t use_lock_read_unlock;
161 };
162
163 struct wkssvc_NetWkstaInfo1053 {
164         uint32_t utilize_nt_caching;
165 };
166
167 struct wkssvc_NetWkstaInfo1054 {
168         uint32_t use_raw_read;
169 };
170
171 struct wkssvc_NetWkstaInfo1055 {
172         uint32_t use_raw_write;
173 };
174
175 struct wkssvc_NetWkstaInfo1056 {
176         uint32_t use_write_raw_data;
177 };
178
179 struct wkssvc_NetWkstaInfo1057 {
180         uint32_t use_encryption;
181 };
182
183 struct wkssvc_NetWkstaInfo1058 {
184         uint32_t buf_files_deny_write;
185 };
186
187 struct wkssvc_NetWkstaInfo1059 {
188         uint32_t buf_read_only_files;
189 };
190
191 struct wkssvc_NetWkstaInfo1060 {
192         uint32_t force_core_create_mode;
193 };
194
195 struct wkssvc_NetWkstaInfo1061 {
196         uint32_t use_512_byte_max_transfer;
197 };
198
199 struct wkssvc_NetWkstaInfo1062 {
200         uint32_t read_ahead_throughput;
201 };
202
203 union wkssvc_NetWkstaInfo {
204         struct wkssvc_NetWkstaInfo100 *info100;/* [unique,case(100)] */
205         struct wkssvc_NetWkstaInfo101 *info101;/* [unique,case(101)] */
206         struct wkssvc_NetWkstaInfo102 *info102;/* [unique,case(102)] */
207         struct wkssvc_NetWkstaInfo502 *info502;/* [unique,case(502)] */
208         struct wkssvc_NetWkstaInfo1010 *info1010;/* [unique,case(1010)] */
209         struct wkssvc_NetWkstaInfo1011 *info1011;/* [unique,case(1011)] */
210         struct wkssvc_NetWkstaInfo1012 *info1012;/* [unique,case(1012)] */
211         struct wkssvc_NetWkstaInfo1013 *info1013;/* [unique,case(1013)] */
212         struct wkssvc_NetWkstaInfo1018 *info1018;/* [unique,case(1018)] */
213         struct wkssvc_NetWkstaInfo1023 *info1023;/* [unique,case(1023)] */
214         struct wkssvc_NetWkstaInfo1027 *info1027;/* [unique,case(1027)] */
215         struct wkssvc_NetWkstaInfo1028 *info1028;/* [unique,case(1028)] */
216         struct wkssvc_NetWkstaInfo1032 *info1032;/* [unique,case(1032)] */
217         struct wkssvc_NetWkstaInfo1033 *info1033;/* [unique,case(1033)] */
218         struct wkssvc_NetWkstaInfo1041 *info1041;/* [unique,case(1041)] */
219         struct wkssvc_NetWkstaInfo1042 *info1042;/* [unique,case(1042)] */
220         struct wkssvc_NetWkstaInfo1043 *info1043;/* [unique,case(1043)] */
221         struct wkssvc_NetWkstaInfo1044 *info1044;/* [unique,case(1044)] */
222         struct wkssvc_NetWkstaInfo1045 *info1045;/* [unique,case(1045)] */
223         struct wkssvc_NetWkstaInfo1046 *info1046;/* [unique,case(1046)] */
224         struct wkssvc_NetWkstaInfo1047 *info1047;/* [unique,case(1047)] */
225         struct wkssvc_NetWkstaInfo1048 *info1048;/* [unique,case(1048)] */
226         struct wkssvc_NetWkstaInfo1049 *info1049;/* [unique,case(1049)] */
227         struct wkssvc_NetWkstaInfo1050 *info1050;/* [unique,case(1050)] */
228         struct wkssvc_NetWkstaInfo1051 *info1051;/* [unique,case(1051)] */
229         struct wkssvc_NetWkstaInfo1052 *info1052;/* [unique,case(1052)] */
230         struct wkssvc_NetWkstaInfo1053 *info1053;/* [unique,case(1053)] */
231         struct wkssvc_NetWkstaInfo1054 *info1054;/* [unique,case(1054)] */
232         struct wkssvc_NetWkstaInfo1055 *info1055;/* [unique,case(1055)] */
233         struct wkssvc_NetWkstaInfo1056 *info1056;/* [unique,case(1056)] */
234         struct wkssvc_NetWkstaInfo1057 *info1057;/* [unique,case(1057)] */
235         struct wkssvc_NetWkstaInfo1058 *info1058;/* [unique,case(1058)] */
236         struct wkssvc_NetWkstaInfo1059 *info1059;/* [unique,case(1059)] */
237         struct wkssvc_NetWkstaInfo1060 *info1060;/* [unique,case(1060)] */
238         struct wkssvc_NetWkstaInfo1061 *info1061;/* [unique,case(1061)] */
239         struct wkssvc_NetWkstaInfo1062 *info1062;/* [unique,case(1062)] */
240 };
241
242 struct wkssvc_NetrWkstaUserInfo0 {
243         const char *user_name;/* [unique,charset(UTF16)] */
244 };
245
246 struct wkssvc_NetWkstaEnumUsersCtr0 {
247         uint32_t entries_read;
248         struct wkssvc_NetrWkstaUserInfo0 *user0;/* [unique,size_is(entries_read)] */
249 };
250
251 struct wkssvc_NetrWkstaUserInfo1 {
252         const char *user_name;/* [unique,charset(UTF16)] */
253         const char *logon_domain;/* [unique,charset(UTF16)] */
254         const char *other_domains;/* [unique,charset(UTF16)] */
255         const char *logon_server;/* [unique,charset(UTF16)] */
256 };
257
258 struct wkssvc_NetWkstaEnumUsersCtr1 {
259         uint32_t entries_read;
260         struct wkssvc_NetrWkstaUserInfo1 *user1;/* [unique,size_is(entries_read)] */
261 };
262
263 union wkssvc_NetWkstaEnumUsersCtr {
264         struct wkssvc_NetWkstaEnumUsersCtr0 *user0;/* [unique,case(0)] */
265         struct wkssvc_NetWkstaEnumUsersCtr1 *user1;/* [unique,case] */
266 }/* [switch_type(uint32)] */;
267
268 struct wkssvc_NetWkstaEnumUsersInfo {
269         uint32_t level;
270         union wkssvc_NetWkstaEnumUsersCtr ctr;/* [switch_is(level)] */
271 };
272
273 struct wkssvc_NetrWkstaUserInfo1101 {
274         const char *other_domains;/* [unique,charset(UTF16)] */
275 };
276
277 union wkssvc_NetrWkstaUserInfo {
278         struct wkssvc_NetrWkstaUserInfo0 *info0;/* [unique,case(0)] */
279         struct wkssvc_NetrWkstaUserInfo1 *info1;/* [unique,case] */
280         struct wkssvc_NetrWkstaUserInfo1101 *info1101;/* [unique,case(1101)] */
281 }/* [switch_type(uint32)] */;
282
283 struct wkssvc_NetWkstaTransportInfo0 {
284         uint32_t quality_of_service;
285         uint32_t vc_count;
286         const char *name;/* [unique,charset(UTF16)] */
287         const char *address;/* [unique,charset(UTF16)] */
288         uint32_t wan_link;
289 };
290
291 struct wkssvc_NetWkstaTransportCtr0 {
292         uint32_t count;
293         struct wkssvc_NetWkstaTransportInfo0 *array;/* [unique,size_is(count)] */
294 };
295
296 union wkssvc_NetWkstaTransportCtr {
297         struct wkssvc_NetWkstaTransportCtr0 *ctr0;/* [unique,case(0)] */
298 };
299
300 struct wkssvc_NetWkstaTransportInfo {
301         uint32_t level;
302         union wkssvc_NetWkstaTransportCtr ctr;/* [switch_is(level)] */
303 };
304
305 struct wkssvc_NetrUseInfo3 {
306         const char *unknown1;/* [unique,charset(UTF16)] */
307         const char *unknown2;/* [unique,charset(UTF16)] */
308 };
309
310 struct wkssvc_NetrUseInfo2 {
311         const char *local;/* [unique,charset(UTF16)] */
312         const char *remote;/* [unique,charset(UTF16)] */
313         const char *password;/* [unique,charset(UTF16)] */
314         uint32_t status;
315         uint32_t asg_type;
316         uint32_t ref_count;
317         uint32_t use_count;
318         const char *user_name;/* [unique,charset(UTF16)] */
319         const char *domain_name;/* [unique,charset(UTF16)] */
320 };
321
322 struct wkssvc_NetrUseInfo1 {
323         const char *local;/* [unique,charset(UTF16)] */
324         const char *remote;/* [unique,charset(UTF16)] */
325         const char *password;/* [unique,charset(UTF16)] */
326         uint32_t status;
327         uint32_t asg_type;
328         uint32_t ref_count;
329         uint32_t use_count;
330 };
331
332 struct wkssvc_NetrUseInfo0 {
333         const char *local;/* [unique,charset(UTF16)] */
334         const char *remote;/* [unique,charset(UTF16)] */
335 };
336
337 union wkssvc_NetrUseGetInfoCtr {
338         struct wkssvc_NetrUseInfo0 *info0;/* [unique,case(0)] */
339         struct wkssvc_NetrUseInfo1 *info1;/* [unique,case] */
340         struct wkssvc_NetrUseInfo2 *info2;/* [unique,case(2)] */
341         struct wkssvc_NetrUseInfo3 *info3;/* [unique,case(3)] */
342 }/* [switch_type(uint32)] */;
343
344 struct wkssvc_NetrUseEnumCtr2 {
345         uint32_t count;
346         struct wkssvc_NetrUseInfo2 *array;/* [unique,size_is(count)] */
347 };
348
349 struct wkssvc_NetrUseEnumCtr1 {
350         uint32_t count;
351         struct wkssvc_NetrUseInfo1 *array;/* [unique,size_is(count)] */
352 };
353
354 struct wkssvc_NetrUseEnumCtr0 {
355         uint32_t count;
356         struct wkssvc_NetrUseInfo0 *array;/* [unique,size_is(count)] */
357 };
358
359 union wkssvc_NetrUseEnumCtr {
360         struct wkssvc_NetrUseEnumCtr0 *ctr0;/* [unique,case(0)] */
361         struct wkssvc_NetrUseEnumCtr1 *ctr1;/* [unique,case] */
362         struct wkssvc_NetrUseEnumCtr2 *ctr2;/* [unique,case(2)] */
363 }/* [switch_type(uint32)] */;
364
365 struct wkssvc_NetrUseEnumInfo {
366         uint32_t level;
367         union wkssvc_NetrUseEnumCtr ctr;/* [switch_is(level)] */
368 };
369
370 struct wkssvc_NetrWorkstationStatistics {
371         uint64_t unknown1;
372         uint64_t unknown2;
373         uint64_t unknown3;
374         uint64_t unknown4;
375         uint64_t unknown5;
376         uint64_t unknown6;
377         uint64_t unknown7;
378         uint64_t unknown8;
379         uint64_t unknown9;
380         uint64_t unknown10;
381         uint64_t unknown11;
382         uint64_t unknown12;
383         uint64_t unknown13;
384         uint32_t unknown14;
385         uint32_t unknown15;
386         uint32_t unknown16;
387         uint32_t unknown17;
388         uint32_t unknown18;
389         uint32_t unknown19;
390         uint32_t unknown20;
391         uint32_t unknown21;
392         uint32_t unknown22;
393         uint32_t unknown23;
394         uint32_t unknown24;
395         uint32_t unknown25;
396         uint32_t unknown26;
397         uint32_t unknown27;
398         uint32_t unknown28;
399         uint32_t unknown29;
400         uint32_t unknown30;
401         uint32_t unknown31;
402         uint32_t unknown32;
403         uint32_t unknown33;
404         uint32_t unknown34;
405         uint32_t unknown35;
406         uint32_t unknown36;
407         uint32_t unknown37;
408         uint32_t unknown38;
409         uint32_t unknown39;
410         uint32_t unknown40;
411 };
412
413 /* bitmap wkssvc_renameflags */
414 #define WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE ( 0x00000002 )
415
416 ;
417
418 #ifndef USE_UINT_ENUMS
419 enum wkssvc_NetValidateNameType {
420         NetSetupUnknown=0,
421         NetSetupMachine=1,
422         NetSetupWorkgroup=2,
423         NetSetupDomain=3,
424         NetSetupNonExistentDomain=4,
425         NetSetupDnsMachine=5
426 }
427 #else
428 enum wkssvc_NetValidateNameType { __donnot_use_enum_wkssvc_NetValidateNameType=0x7FFFFFFF}
429 #define NetSetupUnknown ( 0 )
430 #define NetSetupMachine ( 1 )
431 #define NetSetupWorkgroup ( 2 )
432 #define NetSetupDomain ( 3 )
433 #define NetSetupNonExistentDomain ( 4 )
434 #define NetSetupDnsMachine ( 5 )
435 #endif
436 ;
437
438 #ifndef USE_UINT_ENUMS
439 enum wkssvc_NetJoinStatus {
440         NetSetupUnknownStatus=0,
441         NetSetupUnjoined=1,
442         NetSetupWorkgroupName=2,
443         NetSetupDomainName=3
444 }
445 #else
446 enum wkssvc_NetJoinStatus { __donnot_use_enum_wkssvc_NetJoinStatus=0x7FFFFFFF}
447 #define NetSetupUnknownStatus ( 0 )
448 #define NetSetupUnjoined ( 1 )
449 #define NetSetupWorkgroupName ( 2 )
450 #define NetSetupDomainName ( 3 )
451 #endif
452 ;
453
454 struct wkssvc_PasswordBuffer {
455         uint8_t data[524];
456 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
457
458 /* bitmap wkssvc_joinflags */
459 #define WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME ( 0x00000400 )
460 #define WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT ( 0x00000200 )
461 #define WKSSVC_JOIN_FLAGS_DEFER_SPN ( 0x00000100 )
462 #define WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED ( 0x00000080 )
463 #define WKSSVC_JOIN_FLAGS_JOIN_UNSECURE ( 0x00000040 )
464 #define WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED ( 0x00000020 )
465 #define WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE ( 0x00000010 )
466 #define WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE ( 0x00000004 )
467 #define WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE ( 0x00000002 )
468 #define WKSSVC_JOIN_FLAGS_JOIN_TYPE ( 0x00000001 )
469
470 ;
471
472 #ifndef USE_UINT_ENUMS
473 enum wkssvc_ComputerNameType {
474         NetPrimaryComputerName=0,
475         NetAlternateComputerNames=1,
476         NetAllComputerNames=2,
477         NetComputerNameTypeMax=3
478 }
479 #else
480 enum wkssvc_ComputerNameType { __donnot_use_enum_wkssvc_ComputerNameType=0x7FFFFFFF}
481 #define NetPrimaryComputerName ( 0 )
482 #define NetAlternateComputerNames ( 1 )
483 #define NetAllComputerNames ( 2 )
484 #define NetComputerNameTypeMax ( 3 )
485 #endif
486 ;
487
488 struct wkssvc_ComputerNamesCtr {
489         uint32_t count;
490         struct lsa_String *computer_name;/* [unique,size_is(count)] */
491 };
492
493
494 struct wkssvc_NetWkstaGetInfo {
495         struct {
496                 const char *server_name;/* [unique,charset(UTF16)] */
497                 uint32_t level;
498         } in;
499
500         struct {
501                 union wkssvc_NetWkstaInfo *info;/* [ref,switch_is(level)] */
502                 WERROR result;
503         } out;
504
505 };
506
507
508 struct wkssvc_NetWkstaSetInfo {
509         struct {
510                 const char *server_name;/* [unique,charset(UTF16)] */
511                 uint32_t level;
512                 union wkssvc_NetWkstaInfo *info;/* [ref,switch_is(level)] */
513                 uint32_t *parm_error;/* [ref] */
514         } in;
515
516         struct {
517                 uint32_t *parm_error;/* [ref] */
518                 WERROR result;
519         } out;
520
521 };
522
523
524 struct wkssvc_NetWkstaEnumUsers {
525         struct {
526                 const char *server_name;/* [unique,charset(UTF16)] */
527                 uint32_t prefmaxlen;
528                 struct wkssvc_NetWkstaEnumUsersInfo *info;/* [ref] */
529                 uint32_t *resume_handle;/* [unique] */
530         } in;
531
532         struct {
533                 uint32_t *entries_read;/* [ref] */
534                 struct wkssvc_NetWkstaEnumUsersInfo *info;/* [ref] */
535                 uint32_t *resume_handle;/* [unique] */
536                 WERROR result;
537         } out;
538
539 };
540
541
542 struct wkssvc_NetrWkstaUserGetInfo {
543         struct {
544                 const char *unknown;/* [unique,charset(UTF16)] */
545                 uint32_t level;
546         } in;
547
548         struct {
549                 union wkssvc_NetrWkstaUserInfo *info;/* [ref,switch_is(level)] */
550                 WERROR result;
551         } out;
552
553 };
554
555
556 struct wkssvc_NetrWkstaUserSetInfo {
557         struct {
558                 const char *unknown;/* [unique,charset(UTF16)] */
559                 uint32_t level;
560                 union wkssvc_NetrWkstaUserInfo *info;/* [ref,switch_is(level)] */
561                 uint32_t *parm_err;/* [unique] */
562         } in;
563
564         struct {
565                 uint32_t *parm_err;/* [unique] */
566                 WERROR result;
567         } out;
568
569 };
570
571
572 struct wkssvc_NetWkstaTransportEnum {
573         struct {
574                 const char *server_name;/* [unique,charset(UTF16)] */
575                 uint32_t max_buffer;
576                 struct wkssvc_NetWkstaTransportInfo *info;/* [ref] */
577                 uint32_t *resume_handle;/* [unique] */
578         } in;
579
580         struct {
581                 uint32_t *total_entries;/* [ref] */
582                 struct wkssvc_NetWkstaTransportInfo *info;/* [ref] */
583                 uint32_t *resume_handle;/* [unique] */
584                 WERROR result;
585         } out;
586
587 };
588
589
590 struct wkssvc_NetrWkstaTransportAdd {
591         struct {
592                 const char *server_name;/* [unique,charset(UTF16)] */
593                 uint32_t level;
594                 struct wkssvc_NetWkstaTransportInfo0 *info0;/* [ref] */
595                 uint32_t *parm_err;/* [unique] */
596         } in;
597
598         struct {
599                 uint32_t *parm_err;/* [unique] */
600                 WERROR result;
601         } out;
602
603 };
604
605
606 struct wkssvc_NetrWkstaTransportDel {
607         struct {
608                 const char *server_name;/* [unique,charset(UTF16)] */
609                 const char *transport_name;/* [unique,charset(UTF16)] */
610                 uint32_t unknown3;
611         } in;
612
613         struct {
614                 WERROR result;
615         } out;
616
617 };
618
619
620 struct wkssvc_NetrUseAdd {
621         struct {
622                 const char *server_name;/* [unique,charset(UTF16)] */
623                 uint32_t level;
624                 union wkssvc_NetrUseGetInfoCtr *ctr;/* [ref,switch_is(level)] */
625                 uint32_t *parm_err;/* [unique] */
626         } in;
627
628         struct {
629                 uint32_t *parm_err;/* [unique] */
630                 WERROR result;
631         } out;
632
633 };
634
635
636 struct wkssvc_NetrUseGetInfo {
637         struct {
638                 const char *server_name;/* [unique,charset(UTF16)] */
639                 const char *use_name;/* [ref,charset(UTF16)] */
640                 uint32_t level;
641         } in;
642
643         struct {
644                 union wkssvc_NetrUseGetInfoCtr *ctr;/* [ref,switch_is(level)] */
645                 WERROR result;
646         } out;
647
648 };
649
650
651 struct wkssvc_NetrUseDel {
652         struct {
653                 const char *server_name;/* [unique,charset(UTF16)] */
654                 const char *use_name;/* [ref,charset(UTF16)] */
655                 uint32_t force_cond;
656         } in;
657
658         struct {
659                 WERROR result;
660         } out;
661
662 };
663
664
665 struct wkssvc_NetrUseEnum {
666         struct {
667                 const char *server_name;/* [unique,charset(UTF16)] */
668                 uint32_t prefmaxlen;
669                 struct wkssvc_NetrUseEnumInfo *info;/* [ref] */
670                 uint32_t *resume_handle;/* [unique] */
671         } in;
672
673         struct {
674                 uint32_t *entries_read;/* [ref] */
675                 struct wkssvc_NetrUseEnumInfo *info;/* [ref] */
676                 uint32_t *resume_handle;/* [unique] */
677                 WERROR result;
678         } out;
679
680 };
681
682
683 struct wkssvc_NetrMessageBufferSend {
684         struct {
685                 const char *server_name;/* [unique,charset(UTF16)] */
686                 const char *message_name;/* [ref,charset(UTF16)] */
687                 const char *message_sender_name;/* [unique,charset(UTF16)] */
688                 uint8_t *message_buffer;/* [ref,size_is(message_size)] */
689                 uint32_t message_size;
690         } in;
691
692         struct {
693                 WERROR result;
694         } out;
695
696 };
697
698
699 struct wkssvc_NetrWorkstationStatisticsGet {
700         struct {
701                 const char *server_name;/* [unique,charset(UTF16)] */
702                 const char *unknown2;/* [unique,charset(UTF16)] */
703                 uint32_t unknown3;
704                 uint32_t unknown4;
705         } in;
706
707         struct {
708                 struct wkssvc_NetrWorkstationStatistics **info;/* [ref] */
709                 WERROR result;
710         } out;
711
712 };
713
714
715 struct wkssvc_NetrLogonDomainNameAdd {
716         struct {
717                 const char *domain_name;/* [ref,charset(UTF16)] */
718         } in;
719
720         struct {
721                 WERROR result;
722         } out;
723
724 };
725
726
727 struct wkssvc_NetrLogonDomainNameDel {
728         struct {
729                 const char *domain_name;/* [ref,charset(UTF16)] */
730         } in;
731
732         struct {
733                 WERROR result;
734         } out;
735
736 };
737
738
739 struct wkssvc_NetrJoinDomain {
740         struct {
741                 const char *server_name;/* [unique,charset(UTF16)] */
742                 const char *domain_name;/* [ref,charset(UTF16)] */
743                 const char *account_ou;/* [unique,charset(UTF16)] */
744                 const char *Account;/* [unique,charset(UTF16)] */
745                 const char *password;/* [unique,charset(UTF16)] */
746                 uint32_t join_flags;
747         } in;
748
749         struct {
750                 WERROR result;
751         } out;
752
753 };
754
755
756 struct wkssvc_NetrUnjoinDomain {
757         struct {
758                 const char *server_name;/* [unique,charset(UTF16)] */
759                 const char *Account;/* [unique,charset(UTF16)] */
760                 const char *password;/* [unique,charset(UTF16)] */
761                 uint32_t unjoin_flags;
762         } in;
763
764         struct {
765                 WERROR result;
766         } out;
767
768 };
769
770
771 struct wkssvc_NetrRenameMachineInDomain {
772         struct {
773                 const char *server_name;/* [unique,charset(UTF16)] */
774                 const char *NewMachineName;/* [unique,charset(UTF16)] */
775                 const char *Account;/* [unique,charset(UTF16)] */
776                 const char *password;/* [unique,charset(UTF16)] */
777                 uint32_t RenameOptions;
778         } in;
779
780         struct {
781                 WERROR result;
782         } out;
783
784 };
785
786
787 struct wkssvc_NetrValidateName {
788         struct {
789                 const char *server_name;/* [unique,charset(UTF16)] */
790                 const char *name;/* [ref,charset(UTF16)] */
791                 const char *Account;/* [unique,charset(UTF16)] */
792                 const char *Password;/* [unique,charset(UTF16)] */
793                 enum wkssvc_NetValidateNameType name_type;
794         } in;
795
796         struct {
797                 WERROR result;
798         } out;
799
800 };
801
802
803 struct wkssvc_NetrGetJoinInformation {
804         struct {
805                 const char *server_name;/* [unique,charset(UTF16)] */
806                 const char **name_buffer;/* [ref,charset(UTF16)] */
807         } in;
808
809         struct {
810                 enum wkssvc_NetJoinStatus *name_type;/* [ref] */
811                 const char **name_buffer;/* [ref,charset(UTF16)] */
812                 WERROR result;
813         } out;
814
815 };
816
817
818 struct wkssvc_NetrGetJoinableOus {
819         struct {
820                 const char *server_name;/* [unique,charset(UTF16)] */
821                 const char *domain_name;/* [ref,charset(UTF16)] */
822                 const char *Account;/* [unique,charset(UTF16)] */
823                 const char *unknown;/* [unique,charset(UTF16)] */
824                 uint32_t *num_ous;/* [ref] */
825         } in;
826
827         struct {
828                 const char ***ous;/* [ref,charset(UTF16),size_is(*num_ous)] */
829                 uint32_t *num_ous;/* [ref] */
830                 WERROR result;
831         } out;
832
833 };
834
835
836 struct wkssvc_NetrJoinDomain2 {
837         struct {
838                 const char *server_name;/* [unique,charset(UTF16)] */
839                 const char *domain_name;/* [ref,charset(UTF16)] */
840                 const char *account_ou;/* [unique,charset(UTF16)] */
841                 const char *admin_account;/* [unique,charset(UTF16)] */
842                 struct wkssvc_PasswordBuffer *encrypted_password;/* [unique] */
843                 uint32_t join_flags;
844         } in;
845
846         struct {
847                 WERROR result;
848         } out;
849
850 };
851
852
853 struct wkssvc_NetrUnjoinDomain2 {
854         struct {
855                 const char *server_name;/* [unique,charset(UTF16)] */
856                 const char *account;/* [unique,charset(UTF16)] */
857                 struct wkssvc_PasswordBuffer *encrypted_password;/* [unique] */
858                 uint32_t unjoin_flags;
859         } in;
860
861         struct {
862                 WERROR result;
863         } out;
864
865 };
866
867
868 struct wkssvc_NetrRenameMachineInDomain2 {
869         struct {
870                 const char *server_name;/* [unique,charset(UTF16)] */
871                 const char *NewMachineName;/* [unique,charset(UTF16)] */
872                 const char *Account;/* [unique,charset(UTF16)] */
873                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
874                 uint32_t RenameOptions;
875         } in;
876
877         struct {
878                 WERROR result;
879         } out;
880
881 };
882
883
884 struct wkssvc_NetrValidateName2 {
885         struct {
886                 const char *server_name;/* [unique,charset(UTF16)] */
887                 const char *name;/* [ref,charset(UTF16)] */
888                 const char *Account;/* [unique,charset(UTF16)] */
889                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
890                 enum wkssvc_NetValidateNameType name_type;
891         } in;
892
893         struct {
894                 WERROR result;
895         } out;
896
897 };
898
899
900 struct wkssvc_NetrGetJoinableOus2 {
901         struct {
902                 const char *server_name;/* [unique,charset(UTF16)] */
903                 const char *domain_name;/* [ref,charset(UTF16)] */
904                 const char *Account;/* [unique,charset(UTF16)] */
905                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
906                 uint32_t *num_ous;/* [ref] */
907         } in;
908
909         struct {
910                 const char ***ous;/* [ref,charset(UTF16),size_is(*num_ous)] */
911                 uint32_t *num_ous;/* [ref] */
912                 WERROR result;
913         } out;
914
915 };
916
917
918 struct wkssvc_NetrAddAlternateComputerName {
919         struct {
920                 const char *server_name;/* [unique,charset(UTF16)] */
921                 const char *NewAlternateMachineName;/* [unique,charset(UTF16)] */
922                 const char *Account;/* [unique,charset(UTF16)] */
923                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
924                 uint32_t Reserved;
925         } in;
926
927         struct {
928                 WERROR result;
929         } out;
930
931 };
932
933
934 struct wkssvc_NetrRemoveAlternateComputerName {
935         struct {
936                 const char *server_name;/* [unique,charset(UTF16)] */
937                 const char *AlternateMachineNameToRemove;/* [unique,charset(UTF16)] */
938                 const char *Account;/* [unique,charset(UTF16)] */
939                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
940                 uint32_t Reserved;
941         } in;
942
943         struct {
944                 WERROR result;
945         } out;
946
947 };
948
949
950 struct wkssvc_NetrSetPrimaryComputername {
951         struct {
952                 const char *server_name;/* [unique,charset(UTF16)] */
953                 const char *primary_name;/* [unique,charset(UTF16)] */
954                 const char *Account;/* [unique,charset(UTF16)] */
955                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
956                 uint32_t Reserved;
957         } in;
958
959         struct {
960                 WERROR result;
961         } out;
962
963 };
964
965
966 struct wkssvc_NetrEnumerateComputerNames {
967         struct {
968                 const char *server_name;/* [unique,charset(UTF16)] */
969                 enum wkssvc_ComputerNameType name_type;
970                 uint32_t Reserved;
971         } in;
972
973         struct {
974                 struct wkssvc_ComputerNamesCtr **ctr;/* [ref] */
975                 WERROR result;
976         } out;
977
978 };
979
980 #endif /* _HEADER_wkssvc */