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