idl: we only need ndr_rap.[ch] and rap.h
[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=(int)(0),
422         NetSetupMachine=(int)(1),
423         NetSetupWorkgroup=(int)(2),
424         NetSetupDomain=(int)(3),
425         NetSetupNonExistentDomain=(int)(4),
426         NetSetupDnsMachine=(int)(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=(int)(0),
443         NET_SETUP_UNJOINED=(int)(1),
444         NET_SETUP_WORKGROUP_NAME=(int)(2),
445         NET_SETUP_DOMAIN_NAME=(int)(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_IGNORE_UNSUPPORTED_FLAGS ( 0x10000000 )
462 #define WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME ( 0x00000400 )
463 #define WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT ( 0x00000200 )
464 #define WKSSVC_JOIN_FLAGS_DEFER_SPN ( 0x00000100 )
465 #define WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED ( 0x00000080 )
466 #define WKSSVC_JOIN_FLAGS_JOIN_UNSECURE ( 0x00000040 )
467 #define WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED ( 0x00000020 )
468 #define WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE ( 0x00000010 )
469 #define WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE ( 0x00000004 )
470 #define WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE ( 0x00000002 )
471 #define WKSSVC_JOIN_FLAGS_JOIN_TYPE ( 0x00000001 )
472
473 enum wkssvc_ComputerNameType
474 #ifndef USE_UINT_ENUMS
475  {
476         NetPrimaryComputerName=(int)(0),
477         NetAlternateComputerNames=(int)(1),
478         NetAllComputerNames=(int)(2),
479         NetComputerNameTypeMax=(int)(3)
480 }
481 #else
482  { __donnot_use_enum_wkssvc_ComputerNameType=0x7FFFFFFF}
483 #define NetPrimaryComputerName ( 0 )
484 #define NetAlternateComputerNames ( 1 )
485 #define NetAllComputerNames ( 2 )
486 #define NetComputerNameTypeMax ( 3 )
487 #endif
488 ;
489
490 struct wkssvc_ComputerNamesCtr {
491         uint32_t count;
492         struct lsa_String *computer_name;/* [unique,size_is(count)] */
493 };
494
495
496 struct wkssvc_NetWkstaGetInfo {
497         struct {
498                 const char *server_name;/* [unique,charset(UTF16)] */
499                 uint32_t level;
500         } in;
501
502         struct {
503                 union wkssvc_NetWkstaInfo *info;/* [ref,switch_is(level)] */
504                 WERROR result;
505         } out;
506
507 };
508
509
510 struct wkssvc_NetWkstaSetInfo {
511         struct {
512                 const char *server_name;/* [unique,charset(UTF16)] */
513                 uint32_t level;
514                 union wkssvc_NetWkstaInfo *info;/* [ref,switch_is(level)] */
515                 uint32_t *parm_error;/* [ref] */
516         } in;
517
518         struct {
519                 uint32_t *parm_error;/* [ref] */
520                 WERROR result;
521         } out;
522
523 };
524
525
526 struct wkssvc_NetWkstaEnumUsers {
527         struct {
528                 const char *server_name;/* [unique,charset(UTF16)] */
529                 uint32_t prefmaxlen;
530                 struct wkssvc_NetWkstaEnumUsersInfo *info;/* [ref] */
531                 uint32_t *resume_handle;/* [unique] */
532         } in;
533
534         struct {
535                 uint32_t *entries_read;/* [ref] */
536                 struct wkssvc_NetWkstaEnumUsersInfo *info;/* [ref] */
537                 uint32_t *resume_handle;/* [unique] */
538                 WERROR result;
539         } out;
540
541 };
542
543
544 struct wkssvc_NetrWkstaUserGetInfo {
545         struct {
546                 const char *unknown;/* [unique,charset(UTF16)] */
547                 uint32_t level;
548         } in;
549
550         struct {
551                 union wkssvc_NetrWkstaUserInfo *info;/* [ref,switch_is(level)] */
552                 WERROR result;
553         } out;
554
555 };
556
557
558 struct wkssvc_NetrWkstaUserSetInfo {
559         struct {
560                 const char *unknown;/* [unique,charset(UTF16)] */
561                 uint32_t level;
562                 union wkssvc_NetrWkstaUserInfo *info;/* [ref,switch_is(level)] */
563                 uint32_t *parm_err;/* [unique] */
564         } in;
565
566         struct {
567                 uint32_t *parm_err;/* [unique] */
568                 WERROR result;
569         } out;
570
571 };
572
573
574 struct wkssvc_NetWkstaTransportEnum {
575         struct {
576                 const char *server_name;/* [unique,charset(UTF16)] */
577                 uint32_t max_buffer;
578                 struct wkssvc_NetWkstaTransportInfo *info;/* [ref] */
579                 uint32_t *resume_handle;/* [unique] */
580         } in;
581
582         struct {
583                 uint32_t *total_entries;/* [ref] */
584                 struct wkssvc_NetWkstaTransportInfo *info;/* [ref] */
585                 uint32_t *resume_handle;/* [unique] */
586                 WERROR result;
587         } out;
588
589 };
590
591
592 struct wkssvc_NetrWkstaTransportAdd {
593         struct {
594                 const char *server_name;/* [unique,charset(UTF16)] */
595                 uint32_t level;
596                 struct wkssvc_NetWkstaTransportInfo0 *info0;/* [ref] */
597                 uint32_t *parm_err;/* [unique] */
598         } in;
599
600         struct {
601                 uint32_t *parm_err;/* [unique] */
602                 WERROR result;
603         } out;
604
605 };
606
607
608 struct wkssvc_NetrWkstaTransportDel {
609         struct {
610                 const char *server_name;/* [unique,charset(UTF16)] */
611                 const char *transport_name;/* [unique,charset(UTF16)] */
612                 uint32_t unknown3;
613         } in;
614
615         struct {
616                 WERROR result;
617         } out;
618
619 };
620
621
622 struct wkssvc_NetrUseAdd {
623         struct {
624                 const char *server_name;/* [unique,charset(UTF16)] */
625                 uint32_t level;
626                 union wkssvc_NetrUseGetInfoCtr *ctr;/* [ref,switch_is(level)] */
627                 uint32_t *parm_err;/* [unique] */
628         } in;
629
630         struct {
631                 uint32_t *parm_err;/* [unique] */
632                 WERROR result;
633         } out;
634
635 };
636
637
638 struct wkssvc_NetrUseGetInfo {
639         struct {
640                 const char *server_name;/* [unique,charset(UTF16)] */
641                 const char *use_name;/* [ref,charset(UTF16)] */
642                 uint32_t level;
643         } in;
644
645         struct {
646                 union wkssvc_NetrUseGetInfoCtr *ctr;/* [ref,switch_is(level)] */
647                 WERROR result;
648         } out;
649
650 };
651
652
653 struct wkssvc_NetrUseDel {
654         struct {
655                 const char *server_name;/* [unique,charset(UTF16)] */
656                 const char *use_name;/* [ref,charset(UTF16)] */
657                 uint32_t force_cond;
658         } in;
659
660         struct {
661                 WERROR result;
662         } out;
663
664 };
665
666
667 struct wkssvc_NetrUseEnum {
668         struct {
669                 const char *server_name;/* [unique,charset(UTF16)] */
670                 uint32_t prefmaxlen;
671                 struct wkssvc_NetrUseEnumInfo *info;/* [ref] */
672                 uint32_t *resume_handle;/* [unique] */
673         } in;
674
675         struct {
676                 uint32_t *entries_read;/* [ref] */
677                 struct wkssvc_NetrUseEnumInfo *info;/* [ref] */
678                 uint32_t *resume_handle;/* [unique] */
679                 WERROR result;
680         } out;
681
682 };
683
684
685 struct wkssvc_NetrMessageBufferSend {
686         struct {
687                 const char *server_name;/* [unique,charset(UTF16)] */
688                 const char *message_name;/* [ref,charset(UTF16)] */
689                 const char *message_sender_name;/* [unique,charset(UTF16)] */
690                 uint8_t *message_buffer;/* [ref,size_is(message_size)] */
691                 uint32_t message_size;
692         } in;
693
694         struct {
695                 WERROR result;
696         } out;
697
698 };
699
700
701 struct wkssvc_NetrWorkstationStatisticsGet {
702         struct {
703                 const char *server_name;/* [unique,charset(UTF16)] */
704                 const char *unknown2;/* [unique,charset(UTF16)] */
705                 uint32_t unknown3;
706                 uint32_t unknown4;
707         } in;
708
709         struct {
710                 struct wkssvc_NetrWorkstationStatistics **info;/* [ref] */
711                 WERROR result;
712         } out;
713
714 };
715
716
717 struct wkssvc_NetrLogonDomainNameAdd {
718         struct {
719                 const char *domain_name;/* [ref,charset(UTF16)] */
720         } in;
721
722         struct {
723                 WERROR result;
724         } out;
725
726 };
727
728
729 struct wkssvc_NetrLogonDomainNameDel {
730         struct {
731                 const char *domain_name;/* [ref,charset(UTF16)] */
732         } in;
733
734         struct {
735                 WERROR result;
736         } out;
737
738 };
739
740
741 struct wkssvc_NetrJoinDomain {
742         struct {
743                 const char *server_name;/* [unique,charset(UTF16)] */
744                 const char *domain_name;/* [ref,charset(UTF16)] */
745                 const char *account_ou;/* [unique,charset(UTF16)] */
746                 const char *Account;/* [unique,charset(UTF16)] */
747                 const char *password;/* [unique,charset(UTF16)] */
748                 uint32_t join_flags;
749         } in;
750
751         struct {
752                 WERROR result;
753         } out;
754
755 };
756
757
758 struct wkssvc_NetrUnjoinDomain {
759         struct {
760                 const char *server_name;/* [unique,charset(UTF16)] */
761                 const char *Account;/* [unique,charset(UTF16)] */
762                 const char *password;/* [unique,charset(UTF16)] */
763                 uint32_t unjoin_flags;
764         } in;
765
766         struct {
767                 WERROR result;
768         } out;
769
770 };
771
772
773 struct wkssvc_NetrRenameMachineInDomain {
774         struct {
775                 const char *server_name;/* [unique,charset(UTF16)] */
776                 const char *NewMachineName;/* [unique,charset(UTF16)] */
777                 const char *Account;/* [unique,charset(UTF16)] */
778                 const char *password;/* [unique,charset(UTF16)] */
779                 uint32_t RenameOptions;
780         } in;
781
782         struct {
783                 WERROR result;
784         } out;
785
786 };
787
788
789 struct wkssvc_NetrValidateName {
790         struct {
791                 const char *server_name;/* [unique,charset(UTF16)] */
792                 const char *name;/* [ref,charset(UTF16)] */
793                 const char *Account;/* [unique,charset(UTF16)] */
794                 const char *Password;/* [unique,charset(UTF16)] */
795                 enum wkssvc_NetValidateNameType name_type;
796         } in;
797
798         struct {
799                 WERROR result;
800         } out;
801
802 };
803
804
805 struct wkssvc_NetrGetJoinInformation {
806         struct {
807                 const char *server_name;/* [unique,charset(UTF16)] */
808                 const char **name_buffer;/* [ref,charset(UTF16)] */
809         } in;
810
811         struct {
812                 enum wkssvc_NetJoinStatus *name_type;/* [ref] */
813                 const char **name_buffer;/* [ref,charset(UTF16)] */
814                 WERROR result;
815         } out;
816
817 };
818
819
820 struct wkssvc_NetrGetJoinableOus {
821         struct {
822                 const char *server_name;/* [unique,charset(UTF16)] */
823                 const char *domain_name;/* [ref,charset(UTF16)] */
824                 const char *Account;/* [unique,charset(UTF16)] */
825                 const char *unknown;/* [unique,charset(UTF16)] */
826                 uint32_t *num_ous;/* [ref] */
827         } in;
828
829         struct {
830                 const char ***ous;/* [ref,charset(UTF16),size_is(,*num_ous)] */
831                 uint32_t *num_ous;/* [ref] */
832                 WERROR result;
833         } out;
834
835 };
836
837
838 struct wkssvc_NetrJoinDomain2 {
839         struct {
840                 const char *server_name;/* [unique,charset(UTF16)] */
841                 const char *domain_name;/* [ref,charset(UTF16)] */
842                 const char *account_ou;/* [unique,charset(UTF16)] */
843                 const char *admin_account;/* [unique,charset(UTF16)] */
844                 struct wkssvc_PasswordBuffer *encrypted_password;/* [unique] */
845                 uint32_t join_flags;
846         } in;
847
848         struct {
849                 WERROR result;
850         } out;
851
852 };
853
854
855 struct wkssvc_NetrUnjoinDomain2 {
856         struct {
857                 const char *server_name;/* [unique,charset(UTF16)] */
858                 const char *account;/* [unique,charset(UTF16)] */
859                 struct wkssvc_PasswordBuffer *encrypted_password;/* [unique] */
860                 uint32_t unjoin_flags;
861         } in;
862
863         struct {
864                 WERROR result;
865         } out;
866
867 };
868
869
870 struct wkssvc_NetrRenameMachineInDomain2 {
871         struct {
872                 const char *server_name;/* [unique,charset(UTF16)] */
873                 const char *NewMachineName;/* [unique,charset(UTF16)] */
874                 const char *Account;/* [unique,charset(UTF16)] */
875                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
876                 uint32_t RenameOptions;
877         } in;
878
879         struct {
880                 WERROR result;
881         } out;
882
883 };
884
885
886 struct wkssvc_NetrValidateName2 {
887         struct {
888                 const char *server_name;/* [unique,charset(UTF16)] */
889                 const char *name;/* [ref,charset(UTF16)] */
890                 const char *Account;/* [unique,charset(UTF16)] */
891                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
892                 enum wkssvc_NetValidateNameType name_type;
893         } in;
894
895         struct {
896                 WERROR result;
897         } out;
898
899 };
900
901
902 struct wkssvc_NetrGetJoinableOus2 {
903         struct {
904                 const char *server_name;/* [unique,charset(UTF16)] */
905                 const char *domain_name;/* [ref,charset(UTF16)] */
906                 const char *Account;/* [unique,charset(UTF16)] */
907                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
908                 uint32_t *num_ous;/* [ref] */
909         } in;
910
911         struct {
912                 const char ***ous;/* [ref,charset(UTF16),size_is(,*num_ous)] */
913                 uint32_t *num_ous;/* [ref] */
914                 WERROR result;
915         } out;
916
917 };
918
919
920 struct wkssvc_NetrAddAlternateComputerName {
921         struct {
922                 const char *server_name;/* [unique,charset(UTF16)] */
923                 const char *NewAlternateMachineName;/* [unique,charset(UTF16)] */
924                 const char *Account;/* [unique,charset(UTF16)] */
925                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
926                 uint32_t Reserved;
927         } in;
928
929         struct {
930                 WERROR result;
931         } out;
932
933 };
934
935
936 struct wkssvc_NetrRemoveAlternateComputerName {
937         struct {
938                 const char *server_name;/* [unique,charset(UTF16)] */
939                 const char *AlternateMachineNameToRemove;/* [unique,charset(UTF16)] */
940                 const char *Account;/* [unique,charset(UTF16)] */
941                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
942                 uint32_t Reserved;
943         } in;
944
945         struct {
946                 WERROR result;
947         } out;
948
949 };
950
951
952 struct wkssvc_NetrSetPrimaryComputername {
953         struct {
954                 const char *server_name;/* [unique,charset(UTF16)] */
955                 const char *primary_name;/* [unique,charset(UTF16)] */
956                 const char *Account;/* [unique,charset(UTF16)] */
957                 struct wkssvc_PasswordBuffer *EncryptedPassword;/* [unique] */
958                 uint32_t Reserved;
959         } in;
960
961         struct {
962                 WERROR result;
963         } out;
964
965 };
966
967
968 struct wkssvc_NetrEnumerateComputerNames {
969         struct {
970                 const char *server_name;/* [unique,charset(UTF16)] */
971                 enum wkssvc_ComputerNameType name_type;
972                 uint32_t Reserved;
973         } in;
974
975         struct {
976                 struct wkssvc_ComputerNamesCtr **ctr;/* [ref] */
977                 WERROR result;
978         } out;
979
980 };
981
982 #endif /* _HEADER_wkssvc */