Wireshark  2.9.0-477-g68ec514b
The Wireshark network protocol analyzer
wkssvc.idl
1 #include "idl_types.h"
2 
3 /*
4  wkssvc interface definitions
5 */
6 
7 import "srvsvc.idl", "lsa.idl";
8 
9 [ uuid("6bffd098-a112-3610-9833-46c3f87e345a"),
10  version(1.0),
11  pointer_default(unique),
12  pointer_default_top(unique),
13  helpstring("Workstation Service"),
14  endpoint("ncacn_np:[\\pipe\\wkssvc]","ncacn_ip_tcp:","ncalrpc:")
15 ] interface wkssvc
16 {
17  typedef [v1_enum] enum srvsvc_PlatformId srvsvc_PlatformId;
18 
19 #define BOOL uint32
20 
21  typedef [public,noejs] struct {
22  [value(strlen_m_term(name)*2)] uint16 name_len;
23  [value(strlen_m_term(name)*2)] uint16 name_size;
24  [string,charset(UTF16)] uint16 *name;
25  } lsa_String;
26 
27  /******************/
28  /* Function: 0x00 */
29 
30  typedef struct {
31  srvsvc_PlatformId platform_id;
32  [string,charset(UTF16)] uint16 *server_name;
33  [string,charset(UTF16)] uint16 *domain_name;
34  uint32 version_major;
35  uint32 version_minor;
37 
38  typedef struct {
39  srvsvc_PlatformId platform_id;
40  [string,charset(UTF16)] uint16 *server_name;
41  [string,charset(UTF16)] uint16 *domain_name;
42  uint32 version_major;
43  uint32 version_minor;
44  [string,charset(UTF16)] uint16 *lan_root;
46 
47  typedef struct {
48  srvsvc_PlatformId platform_id;
49  [string,charset(UTF16)] uint16 *server_name;
50  [string,charset(UTF16)] uint16 *domain_name;
51  uint32 version_major;
52  uint32 version_minor;
53  [string,charset(UTF16)] uint16 *lan_root;
54  uint32 logged_on_users;
56 
57  /* FIXME: 302, 402 */
58 
59  typedef struct {
60  uint32 char_wait;
61  uint32 collection_time;
62  uint32 maximum_collection_count;
63  uint32 keep_connection;
64  uint32 max_commands;
65  uint32 session_timeout;
66  uint32 size_char_buf;
67  uint32 max_threads;
68  uint32 lock_quota;
69  uint32 lock_increment;
70  uint32 lock_maximum;
71  uint32 pipe_increment;
72  uint32 pipe_maximum;
73  uint32 cache_file_timeout;
74  uint32 dormant_file_limit;
75  uint32 read_ahead_throughput;
76  uint32 num_mailslot_buffers;
77  uint32 num_srv_announce_buffers;
78  uint32 max_illegal_dgram_events;
79  uint32 dgram_event_reset_freq;
80  BOOL log_election_packets;
81  BOOL use_opportunistic_locking;
82  BOOL use_unlock_behind;
83  BOOL use_close_behind;
84  BOOL buf_named_pipes;
85  BOOL use_lock_read_unlock;
86  BOOL utilize_nt_caching;
87  BOOL use_raw_read;
88  BOOL use_raw_write;
89  BOOL use_write_raw_data;
90  BOOL use_encryption;
91  BOOL buf_files_deny_write;
92  BOOL buf_read_only_files;
93  BOOL force_core_create_mode;
94  BOOL use_512_byte_max_transfer;
96 
97  typedef struct {
98  uint32 char_wait;
100 
101  typedef struct {
102  uint32 collection_time;
104 
105  typedef struct {
106  uint32 maximum_collection_count;
108 
109  typedef struct {
110  uint32 keep_connection;
112 
113  typedef struct {
114  uint32 session_timeout;
116 
117  typedef struct {
118  uint32 size_char_buf;
120 
121  typedef struct {
122  uint32 errorlog_sz;
124 
125  /* downlevel */
126  typedef struct {
127  uint32 print_buf_time;
129 
130  /* downlevel */
131  typedef struct {
132  uint32 wrk_heuristics;
134 
135  typedef struct {
136  uint32 max_threads;
138 
139  typedef struct {
140  uint32 lock_quota;
142 
143  typedef struct {
144  uint32 lock_increment;
146 
147  typedef struct {
148  uint32 lock_maximum;
150 
151  typedef struct {
152  uint32 pipe_increment;
154 
155  typedef struct {
156  uint32 pipe_maximum;
158 
159  typedef struct {
160  uint32 dormant_file_limit;
162 
163  typedef struct {
164  uint32 cache_file_timeout;
166 
167  typedef struct {
168  uint32 use_opportunistic_locking;
170 
171  typedef struct {
172  uint32 use_unlock_behind;
174 
175  typedef struct {
176  uint32 use_close_behind;
178 
179  typedef struct {
180  uint32 buf_named_pipes;
182 
183  typedef struct {
184  uint32 use_lock_read_unlock;
186 
187  typedef struct {
188  uint32 utilize_nt_caching;
190 
191  typedef struct {
192  uint32 use_raw_read;
194 
195  typedef struct {
196  uint32 use_raw_write;
198 
199  typedef struct {
200  uint32 use_write_raw_data;
202 
203  typedef struct {
204  uint32 use_encryption;
206 
207  typedef struct {
208  uint32 buf_files_deny_write;
210 
211  typedef struct {
212  uint32 buf_read_only_files;
214 
215  typedef struct {
216  uint32 force_core_create_mode;
218 
219  typedef struct {
220  uint32 use_512_byte_max_transfer;
222 
223  typedef struct {
224  uint32 read_ahead_throughput;
226 
227  typedef union {
228  [case(100)] wkssvc_NetWkstaInfo100 *info100;
229  [case(101)] wkssvc_NetWkstaInfo101 *info101;
230  [case(102)] wkssvc_NetWkstaInfo102 *info102;
231  [case(502)] wkssvc_NetWkstaInfo502 *info502;
232  [case(1010)] wkssvc_NetWkstaInfo1010 *info1010;
233  [case(1011)] wkssvc_NetWkstaInfo1011 *info1011;
234  [case(1012)] wkssvc_NetWkstaInfo1012 *info1012;
235  [case(1013)] wkssvc_NetWkstaInfo1013 *info1013;
236  [case(1018)] wkssvc_NetWkstaInfo1018 *info1018;
237  [case(1023)] wkssvc_NetWkstaInfo1023 *info1023;
238  [case(1027)] wkssvc_NetWkstaInfo1027 *info1027;
239  [case(1028)] wkssvc_NetWkstaInfo1028 *info1028;
240  [case(1032)] wkssvc_NetWkstaInfo1032 *info1032;
241  [case(1033)] wkssvc_NetWkstaInfo1033 *info1033;
242  [case(1041)] wkssvc_NetWkstaInfo1041 *info1041;
243  [case(1042)] wkssvc_NetWkstaInfo1042 *info1042;
244  [case(1043)] wkssvc_NetWkstaInfo1043 *info1043;
245  [case(1044)] wkssvc_NetWkstaInfo1044 *info1044;
246  [case(1045)] wkssvc_NetWkstaInfo1045 *info1045;
247  [case(1046)] wkssvc_NetWkstaInfo1046 *info1046;
248  [case(1047)] wkssvc_NetWkstaInfo1047 *info1047;
249  [case(1048)] wkssvc_NetWkstaInfo1048 *info1048;
250  [case(1049)] wkssvc_NetWkstaInfo1049 *info1049;
251  [case(1050)] wkssvc_NetWkstaInfo1050 *info1050;
252  [case(1051)] wkssvc_NetWkstaInfo1051 *info1051;
253  [case(1052)] wkssvc_NetWkstaInfo1052 *info1052;
254  [case(1053)] wkssvc_NetWkstaInfo1053 *info1053;
255  [case(1054)] wkssvc_NetWkstaInfo1054 *info1054;
256  [case(1055)] wkssvc_NetWkstaInfo1055 *info1055;
257  [case(1056)] wkssvc_NetWkstaInfo1056 *info1056;
258  [case(1057)] wkssvc_NetWkstaInfo1057 *info1057;
259  [case(1058)] wkssvc_NetWkstaInfo1058 *info1058;
260  [case(1059)] wkssvc_NetWkstaInfo1059 *info1059;
261  [case(1060)] wkssvc_NetWkstaInfo1060 *info1060;
262  [case(1061)] wkssvc_NetWkstaInfo1061 *info1061;
263  [case(1062)] wkssvc_NetWkstaInfo1062 *info1062;
264  [default] ;
266 
267  WERROR wkssvc_NetWkstaGetInfo(
268  [in] [string,charset(UTF16)] uint16 *server_name,
269  [in] uint32 level,
270  [out,switch_is(level),ref] wkssvc_NetWkstaInfo *info
271  );
272 
273 
274  /******************/
275  /* Function: 0x01 */
276  WERROR wkssvc_NetWkstaSetInfo(
277  [in] [string,charset(UTF16)] uint16 *server_name,
278  [in] uint32 level,
279  [in,switch_is(level),ref] wkssvc_NetWkstaInfo *info,
280  [in,out,ref] uint32 *parm_error
281  );
282 
283 
284  /*****************************/
285  /* Function 0x02 */
286  typedef struct {
287  [string,charset(UTF16)] uint16 *user_name;
289 
290  typedef struct {
291  uint32 entries_read;
292  [size_is(entries_read)] wkssvc_NetrWkstaUserInfo0 *user0;
294 
295  typedef struct {
296  [string,charset(UTF16)] uint16 *user_name;
297  [string,charset(UTF16)] uint16 *logon_domain;
298  [string,charset(UTF16)] uint16 *other_domains;
299  [string,charset(UTF16)] uint16 *logon_server;
301 
302  typedef struct {
303  uint32 entries_read;
304  [size_is(entries_read)] wkssvc_NetrWkstaUserInfo1 *user1;
306 
307  typedef [switch_type(uint32)] union {
308  [case(0)] wkssvc_NetWkstaEnumUsersCtr0 *user0;
309  [case(1)] wkssvc_NetWkstaEnumUsersCtr1 *user1;
310  } wkssvc_NetWkstaEnumUsersCtr;
311 
312  typedef struct {
313  uint32 level;
314  [switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr;
316 
317  WERROR wkssvc_NetWkstaEnumUsers(
318  [in] [string,charset(UTF16)] uint16 *server_name,
319  [in,out,ref] wkssvc_NetWkstaEnumUsersInfo *info,
320  [in] uint32 prefmaxlen,
321  [out,ref] uint32 *entries_read,
322  [in,out] uint32 *resume_handle
323  );
324 
325  /*****************************/
326  /* Function 0x03 */
327  typedef struct {
328  [string,charset(UTF16)] uint16 *other_domains;
330 
331  typedef [switch_type(uint32)] union {
332  [case(0)] wkssvc_NetrWkstaUserInfo0 *info0;
333  [case(1)] wkssvc_NetrWkstaUserInfo1 *info1;
334  [case(1101)] wkssvc_NetrWkstaUserInfo1101 *info1101;
335  } wkssvc_NetrWkstaUserInfo;
336 
337  WERROR wkssvc_NetrWkstaUserGetInfo(
338  [in] [string,charset(UTF16)] uint16 *unknown,
339  [in] uint32 level,
340  [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info
341  );
342 
343  /*****************************/
344  /* Function 0x04 */
345  WERROR wkssvc_NetrWkstaUserSetInfo(
346  [in] [string,charset(UTF16)] uint16 *unknown,
347  [in] uint32 level,
348  [in,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info,
349  [in,out] uint32 *parm_err
350  );
351 
352  /*****************************/
353  /* Function 0x05 */
354 
355  typedef struct {
356  uint32 quality_of_service;
357  uint32 vc_count;
358  [string,charset(UTF16)] uint16 *name;
359  [string,charset(UTF16)] uint16 *address;
360  uint32 wan_link;
362 
363  typedef struct {
364  uint32 count;
365  [size_is(count)] wkssvc_NetWkstaTransportInfo0 *array;
367 
368  typedef union {
369  [case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0;
371 
372  typedef struct {
373  uint32 level;
374  [switch_is(level)] wkssvc_NetWkstaTransportCtr ctr;
376 
377  WERROR wkssvc_NetWkstaTransportEnum (
378  [in] [string,charset(UTF16)] uint16 *server_name,
379  [in,out,ref] wkssvc_NetWkstaTransportInfo *info,
380  [in] uint32 max_buffer,
381  [out,ref] uint32 *total_entries,
382  [in,out] uint32 *resume_handle
383  );
384 
385  /*****************************/
386  /* Function 0x06 */
387  /* only supported on NT */
388  WERROR wkssvc_NetrWkstaTransportAdd(
389  [in] [string,charset(UTF16)] uint16 *server_name,
390  [in] uint32 level, /* must be 0 */
391  [in,ref] wkssvc_NetWkstaTransportInfo0 *info0,
392  [in,out] uint32 *parm_err
393  );
394 
395  /*****************************/
396  /* Function 0x07 */
397  /* only supported on NT */
398  WERROR wkssvc_NetrWkstaTransportDel(
399  [in] [string,charset(UTF16)] uint16 *server_name,
400  [in] [string,charset(UTF16)] uint16 *transport_name,
401  [in] uint32 unknown3
402  );
403 
404  /*****************************/
405  /* Function 0x08 */
406  typedef struct {
407  [string,charset(UTF16)] uint16 *unknown1;
408  [string,charset(UTF16)] uint16 *unknown2;
410 
411  typedef struct {
412  [string,charset(UTF16)] uint16 *local;
413  [string,charset(UTF16)] uint16 *remote;
414  [string,charset(UTF16)] uint16 *password;
415  uint32 status;
416  uint32 asg_type;
417  uint32 ref_count;
418  uint32 use_count;
419  [string,charset(UTF16)] uint16 *user_name;
420  [string,charset(UTF16)] uint16 *domain_name;
422 
423  typedef struct {
424  [string,charset(UTF16)] uint16 *local;
425  [string,charset(UTF16)] uint16 *remote;
426  [string,charset(UTF16)] uint16 *password;
427  uint32 status;
428  uint32 asg_type;
429  uint32 ref_count;
430  uint32 use_count;
432 
433  typedef struct {
434  [string,charset(UTF16)] uint16 *local;
435  [string,charset(UTF16)] uint16 *remote;
437 
438  typedef [switch_type(uint32)] union {
439  [case(0)] wkssvc_NetrUseInfo0 *info0;
440  [case(1)] wkssvc_NetrUseInfo1 *info1;
441  [case(2)] wkssvc_NetrUseInfo2 *info2;
442  [case(3)] wkssvc_NetrUseInfo3 *info3;
443  } wkssvc_NetrUseGetInfoCtr;
444 
445  WERROR wkssvc_NetrUseAdd(
446  [in] [string,charset(UTF16)] uint16 *server_name,
447  [in] uint32 level,
448  [in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr,
449  [in,out] uint32 *parm_err
450  );
451 
452  /*****************************/
453  /* Function 0x09 */
454  WERROR wkssvc_NetrUseGetInfo(
455  [in] [string,charset(UTF16)] uint16 *server_name,
456  [in,ref] [string,charset(UTF16)] uint16 *use_name,
457  [in] uint32 level,
458  [out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr
459  );
460 
461  /*****************************/
462  /* Function 0x0a */
463  WERROR wkssvc_NetrUseDel(
464  [in] [string,charset(UTF16)] uint16 *server_name,
465  [in,ref] [string,charset(UTF16)] uint16 *use_name,
466  [in] uint32 force_cond
467  );
468 
469  /*****************************/
470  /* Function 0x0b */
471  typedef struct {
472  uint32 count;
473  [size_is(count)] wkssvc_NetrUseInfo2 *array;
475 
476  typedef struct {
477  uint32 count;
478  [size_is(count)] wkssvc_NetrUseInfo1 *array;
480 
481  typedef struct {
482  uint32 count;
483  [size_is(count)] wkssvc_NetrUseInfo0 *array;
485 
486  typedef [switch_type(uint32)] union {
487  [case(0)] wkssvc_NetrUseEnumCtr0 *ctr0;
488  [case(1)] wkssvc_NetrUseEnumCtr1 *ctr1;
489  [case(2)] wkssvc_NetrUseEnumCtr2 *ctr2;
490  } wkssvc_NetrUseEnumCtr;
491 
492  typedef struct {
493  uint32 level;
494  [switch_is(level)] wkssvc_NetrUseEnumCtr ctr;
496 
497  WERROR wkssvc_NetrUseEnum(
498  [in] [string,charset(UTF16)] uint16 *server_name,
499  [in,out,ref] wkssvc_NetrUseEnumInfo *info,
500  [in] uint32 prefmaxlen,
501  [out,ref] uint32 *entries_read,
502  [in,out] uint32 *resume_handle
503  );
504 
505  /*****************************/
506  /* Function 0x0c */
507  WERROR wkssvc_NetrMessageBufferSend(
508  [in] [string,charset(UTF16)] uint16 *server_name,
509  [in,ref] [string,charset(UTF16)] uint16 *message_name,
510  [in] [string,charset(UTF16)] uint16 *message_sender_name,
511  [in,ref] [size_is(message_size)] uint8 *message_buffer,
512  [in] uint32 message_size
513  );
514 
515  /*****************************/
516  /* Function 0x0d */
517  typedef struct {
518  hyper unknown1;
519  hyper unknown2;
520  hyper unknown3;
521  hyper unknown4;
522  hyper unknown5;
523  hyper unknown6;
524  hyper unknown7;
525  hyper unknown8;
526  hyper unknown9;
527  hyper unknown10;
528  hyper unknown11;
529  hyper unknown12;
530  hyper unknown13;
531  uint32 unknown14;
532  uint32 unknown15;
533  uint32 unknown16;
534  uint32 unknown17;
535  uint32 unknown18;
536  uint32 unknown19;
537  uint32 unknown20;
538  uint32 unknown21;
539  uint32 unknown22;
540  uint32 unknown23;
541  uint32 unknown24;
542  uint32 unknown25;
543  uint32 unknown26;
544  uint32 unknown27;
545  uint32 unknown28;
546  uint32 unknown29;
547  uint32 unknown30;
548  uint32 unknown31;
549  uint32 unknown32;
550  uint32 unknown33;
551  uint32 unknown34;
552  uint32 unknown35;
553  uint32 unknown36;
554  uint32 unknown37;
555  uint32 unknown38;
556  uint32 unknown39;
557  uint32 unknown40;
559 
560  WERROR wkssvc_NetrWorkstationStatisticsGet(
561  [in] [string,charset(UTF16)] uint16 *server_name,
562  [in] [string,charset(UTF16)] uint16 *unknown2,
563  [in] uint32 unknown3,
564  [in] uint32 unknown4,
565  [out,ref] wkssvc_NetrWorkstationStatistics **info
566  );
567 
568  /*****************************/
569  /* Function 0x0e */
570  WERROR wkssvc_NetrLogonDomainNameAdd(
571  [in,ref] [string,charset(UTF16)] uint16 *domain_name
572  );
573 
574  /*****************************/
575  /* Function 0x0f */
576  WERROR wkssvc_NetrLogonDomainNameDel(
577  [in,ref] [string,charset(UTF16)] uint16 *domain_name
578  );
579 
580  /*****************************/
581  /* Function 0x10 */
582  WERROR wkssvc_NetrJoinDomain(
583  [in] [string,charset(UTF16)] uint16 *server_name,
584  [in,ref] [string,charset(UTF16)] uint16 *domain_name,
585  [in] [string,charset(UTF16)] uint16 *account_ou,
586  [in] [string,charset(UTF16)] uint16 *Account,
587  [in] [string,charset(UTF16)] uint16 *unknown,
588  [in] wkssvc_joinflags join_flags
589  );
590 
591  /*****************************/
592  /* Function 0x11 */
593  WERROR wkssvc_NetrUnjoinDomain(
594  [in] [string,charset(UTF16)] uint16 *server_name,
595  [in] [string,charset(UTF16)] uint16 *Account,
596  [in] [string,charset(UTF16)] uint16 *password,
597  [in] wkssvc_joinflags unjoin_flags
598  );
599 
600  /*****************************/
601  /* Function 0x12 */
602  typedef [bitmap32bit] bitmap {
603  /* TRUE: create the account in the domain */
604  WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002
605  } wkssvc_renameflags;
606 
607  WERROR wkssvc_NetrRenameMachineInDomain(
608  [in] [string,charset(UTF16)] uint16 *server_name,
609  [in] [string,charset(UTF16)] uint16 *NewMachineName,
610  [in] [string,charset(UTF16)] uint16 *Account,
611  [in] [string,charset(UTF16)] uint16 *password,
612  [in] wkssvc_renameflags RenameOptions
613  );
614 
615  /*****************************/
616  /* Function 0x13 */
617  typedef enum {
618  NetSetupUnknown = 0,
619  NetSetupMachine = 1,
620  NetSetupWorkgroup = 2,
621  NetSetupDomain = 3,
622  NetSetupNonExistentDomain = 4,
623  NetSetupDnsMachine = 5
624  } wkssvc_NetValidateNameType;
625 
626  WERROR wkssvc_NetrValidateName(
627  [in] [string,charset(UTF16)] uint16 *server_name,
628  [in,ref] [string,charset(UTF16)] uint16 *name,
629  [in] [string,charset(UTF16)] uint16 *Account,
630  [in] [string,charset(UTF16)] uint16 *Password,
631  [in] wkssvc_NetValidateNameType name_type
632  );
633 
634  /*****************************/
635  /* Function 0x14 */
636  typedef enum {
637  NetSetupUnknownStatus = 0,
638  NetSetupUnjoined = 1,
639  NetSetupWorkgroupName = 2,
640  NetSetupDomainName = 3
641  } wkssvc_NetJoinStatus;
642 
643  WERROR wkssvc_NetrGetJoinInformation(
644  [in] [string,charset(UTF16)] uint16 *server_name,
645  [in,out,ref] [string,charset(UTF16)] uint16 **name_buffer,
646  [out,ref] wkssvc_NetJoinStatus *name_type
647  );
648 
649  /*****************************/
650  /* Function 0x15 */
651  WERROR wkssvc_NetrGetJoinableOus(
652  [in] [string,charset(UTF16)] uint16 *server_name,
653  [in,ref] [string,charset(UTF16)] uint16 *domain_name,
654  [in] [string,charset(UTF16)] uint16 *Account,
655  [in] [string,charset(UTF16)] uint16 *unknown,
656  [in,out,ref] uint32 *num_ous,
657  [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous
658  );
659 
660  typedef [flag(NDR_PAHEX)] struct {
661  uint8 data[524];
662  } wkssvc_PasswordBuffer;
663 
664  typedef [bitmap32bit] bitmap {
665  WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400,
666  WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200,
667  /* TRUE: defer setting the SPN and dNSHostName until a rename operation */
668  WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100,
669 
670  /* TRUE: set the machine password to the provided one after the join completes */
671  WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080,
672 
673  /* TRUE: perform an unsecured join */
674  WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040,
675 
676  /* TRUE: allow the join to complete even if the account already exists */
677  WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020,
678 
679  /* TRUE: this join is part of a w9x upgrade */
680  WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010,
681 
682  /* TRUE: delete the account when the domain is left */
683  WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004,
684 
685  /* TRUE: create the account in the domain */
686  WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002,
687 
688  /* TRUE: join domain FALSE: join workgroup */
689  WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001
690 
691  } wkssvc_joinflags;
692 
693  /*****************************/
694  /* Function 0x16 */
695  WERROR wkssvc_NetrJoinDomain2 (
696  [in] [string,charset(UTF16)] uint16 *server_name,
697  [in,ref] [string,charset(UTF16)] uint16 *domain_name,
698  [in] [string,charset(UTF16)] uint16 *account_name,
699  [in] [string,charset(UTF16)] uint16 *admin_account,
700  [in] wkssvc_PasswordBuffer *encrypted_password,
701  [in] wkssvc_joinflags join_flags
702  );
703 
704  /*****************************/
705  /* Function 0x17 */
706  WERROR wkssvc_NetrUnjoinDomain2 (
707  [in] [string,charset(UTF16)] uint16 *server_name,
708  [in] [string,charset(UTF16)] uint16 *account,
709  [in] wkssvc_PasswordBuffer *encrypted_password,
710  [in] wkssvc_joinflags unjoin_flags
711  );
712 
713  /*****************************/
714  /* Function 0x18 */
715  WERROR wkssvc_NetrRenameMachineInDomain2(
716  [in] [string,charset(UTF16)] uint16 *server_name,
717  [in] [string,charset(UTF16)] uint16 *NewMachineName,
718  [in] [string,charset(UTF16)] uint16 *Account,
719  [in] wkssvc_PasswordBuffer *EncryptedPassword,
720  [in] wkssvc_renameflags RenameOptions
721  );
722 
723  /*****************************/
724  /* Function 0x19 */
725  WERROR wkssvc_NetrValidateName2(
726  [in] [string,charset(UTF16)] uint16 *server_name,
727  [in,ref] [string,charset(UTF16)] uint16 *name,
728  [in] [string,charset(UTF16)] uint16 *Account,
729  [in] wkssvc_PasswordBuffer *EncryptedPassword,
730  [in] wkssvc_NetValidateNameType name_type
731  );
732 
733  /*****************************/
734  /* Function 0x1a */
735  WERROR wkssvc_NetrGetJoinableOus2(
736  [in] [string,charset(UTF16)] uint16 *server_name,
737  [in,ref] [string,charset(UTF16)] uint16 *domain_name,
738  [in] [string,charset(UTF16)] uint16 *Account,
739  [in] wkssvc_PasswordBuffer *EncryptedPassword,
740  [in,out,ref] uint32 *num_ous,
741  [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous
742  );
743 
744  /*****************************/
745  /* Function 0x1b */
746  WERROR wkssvc_NetrAddAlternateComputerName(
747  [in] [string,charset(UTF16)] uint16 *server_name,
748  [in] [string,charset(UTF16)] uint16 *NewAlternateMachineName,
749  [in] [string,charset(UTF16)] uint16 *Account,
750  [in] wkssvc_PasswordBuffer *EncryptedPassword,
751  [in] uint32 Reserved
752  );
753 
754  /*****************************/
755  /* Function 0x1c */
756  WERROR wkssvc_NetrRemoveAlternateComputerName(
757  [in] [string,charset(UTF16)] uint16 *server_name,
758  [in] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove,
759  [in] [string,charset(UTF16)] uint16 *Account,
760  [in] wkssvc_PasswordBuffer *EncryptedPassword,
761  [in] uint32 Reserved
762  );
763 
764  /*****************************/
765  /* Function 0x1d */
766  WERROR wkssvc_NetrSetPrimaryComputername(
767  [in] [string,charset(UTF16)] uint16 *server_name,
768  [in] [string,charset(UTF16)] uint16 *primary_name,
769  [in] [string,charset(UTF16)] uint16 *Account,
770  [in] wkssvc_PasswordBuffer *EncryptedPassword,
771  [in] uint32 Reserved
772  );
773 
774  /*****************************/
775  /* Function 0x1e */
776  typedef enum {
777  NetPrimaryComputerName = 0,
778  NetAlternateComputerNames = 1,
779  NetAllComputerNames = 2,
780  NetComputerNameTypeMax = 3
781  } wkssvc_ComputerNameType;
782 
783  typedef struct {
784  uint32 count;
785  [size_is(count)] lsa_String *computer_name;
787 
788  WERROR wkssvc_NetrEnumerateComputerNames(
789  [in] [string,charset(UTF16)] uint16 *server_name,
790  [in] wkssvc_ComputerNameType name_type,
791  [in] uint32 Reserved,
792  [out,ref] wkssvc_ComputerNamesCtr **ctr
793  );
794 }
Definition: wkssvc.idl:187
Definition: wkssvc.idl:517
Definition: wkssvc.idl:151
Definition: wkssvc.idl:175
Definition: wkssvc.idl:355
Definition: wkssvc.idl:126
Definition: wkssvc.idl:411
Definition: wkssvc.idl:203
Definition: wkssvc.idl:471
Definition: wkssvc.idl:167
Definition: wkssvc.idl:109
Definition: wkssvc.idl:223
Definition: wkssvc.idl:492
Definition: wkssvc.idl:191
Definition: file-pcapng.c:177
Definition: wkssvc.idl:327
Definition: wkssvc.idl:139
Definition: wkssvc.idl:97
Definition: wkssvc.idl:368
Definition: wkssvc.idl:295
Definition: wkssvc.idl:135
Definition: wkssvc.idl:207
Definition: wkssvc.idl:155
Definition: wkssvc.idl:179
Definition: wkssvc.idl:372
Definition: wkssvc.idl:59
Definition: wkssvc.idl:47
Definition: wkssvc.idl:143
Definition: wkssvc.idl:406
Definition: wkssvc.idl:286
Definition: wkssvc.idl:171
Definition: wkssvc.idl:113
Definition: wkssvc.idl:433
Definition: wkssvc.idl:195
Definition: wkssvc.idl:302
Definition: wkssvc.idl:481
Definition: wkssvc.idl:159
Definition: wkssvc.idl:101
Definition: wkssvc.idl:215
Definition: wkssvc.idl:183
Definition: wkssvc.idl:363
Definition: wkssvc.idl:38
Definition: wkssvc.idl:211
Definition: conversation.c:27
Definition: wkssvc.idl:117
Definition: wkssvc.idl:312
Definition: wkssvc.idl:199
Definition: wkssvc.idl:290
Definition: wkssvc.idl:147
Definition: wkssvc.idl:105
Definition: wkssvc.idl:227
Definition: wkssvc.idl:121
Definition: wkssvc.idl:783
Definition: wkssvc.idl:30
Definition: wkssvc.idl:423
Definition: wkssvc.idl:131
Definition: address.h:47
Definition: wkssvc.idl:476
Definition: wkssvc.idl:163
Definition: wkssvc.idl:219