4 wkssvc interface definitions
7 import "srvsvc.idl", "lsa.idl";
9 [ uuid("6bffd098-a112-3610-9833-46c3f87e345a"),
11 pointer_default(unique),
12 pointer_default_top(unique),
13 helpstring("Workstation Service"),
14 endpoint("ncacn_np:[\\pipe\\wkssvc]","ncacn_ip_tcp:","ncalrpc:")
17 declare [v1_enum] enum srvsvc_PlatformId;
25 srvsvc_PlatformId platform_id;
26 [string,charset(UTF16)] uint16 *server_name;
27 [string,charset(UTF16)] uint16 *domain_name;
30 } wkssvc_NetWkstaInfo100;
33 srvsvc_PlatformId platform_id;
34 [string,charset(UTF16)] uint16 *server_name;
35 [string,charset(UTF16)] uint16 *domain_name;
38 [string,charset(UTF16)] uint16 *lan_root;
39 } wkssvc_NetWkstaInfo101;
42 srvsvc_PlatformId platform_id;
43 [string,charset(UTF16)] uint16 *server_name;
44 [string,charset(UTF16)] uint16 *domain_name;
47 [string,charset(UTF16)] uint16 *lan_root;
48 uint32 logged_on_users;
49 } wkssvc_NetWkstaInfo102;
55 uint32 collection_time;
56 uint32 maximum_collection_count;
57 uint32 keep_connection;
59 uint32 session_timeout;
63 uint32 lock_increment;
65 uint32 pipe_increment;
67 uint32 cache_file_timeout;
68 uint32 dormant_file_limit;
69 uint32 read_ahead_throughput;
70 uint32 num_mailslot_buffers;
71 uint32 num_srv_announce_buffers;
72 uint32 max_illegal_dgram_events;
73 uint32 dgram_event_reset_freq;
74 BOOL log_election_packets;
75 BOOL use_opportunistic_locking;
76 BOOL use_unlock_behind;
77 BOOL use_close_behind;
79 BOOL use_lock_read_unlock;
80 BOOL utilize_nt_caching;
83 BOOL use_write_raw_data;
85 BOOL buf_files_deny_write;
86 BOOL buf_read_only_files;
87 BOOL force_core_create_mode;
88 BOOL use_512_byte_max_transfer;
89 } wkssvc_NetWkstaInfo502;
93 } wkssvc_NetWkstaInfo1010;
96 uint32 collection_time;
97 } wkssvc_NetWkstaInfo1011;
100 uint32 maximum_collection_count;
101 } wkssvc_NetWkstaInfo1012;
104 uint32 keep_connection;
105 } wkssvc_NetWkstaInfo1013;
108 uint32 session_timeout;
109 } wkssvc_NetWkstaInfo1018;
112 uint32 size_char_buf;
113 } wkssvc_NetWkstaInfo1023;
117 } wkssvc_NetWkstaInfo1027;
121 uint32 print_buf_time;
122 } wkssvc_NetWkstaInfo1028;
126 uint32 wrk_heuristics;
127 } wkssvc_NetWkstaInfo1032;
131 } wkssvc_NetWkstaInfo1033;
135 } wkssvc_NetWkstaInfo1041;
138 uint32 lock_increment;
139 } wkssvc_NetWkstaInfo1042;
143 } wkssvc_NetWkstaInfo1043;
146 uint32 pipe_increment;
147 } wkssvc_NetWkstaInfo1044;
151 } wkssvc_NetWkstaInfo1045;
154 uint32 dormant_file_limit;
155 } wkssvc_NetWkstaInfo1046;
158 uint32 cache_file_timeout;
159 } wkssvc_NetWkstaInfo1047;
162 uint32 use_opportunistic_locking;
163 } wkssvc_NetWkstaInfo1048;
166 uint32 use_unlock_behind;
167 } wkssvc_NetWkstaInfo1049;
170 uint32 use_close_behind;
171 } wkssvc_NetWkstaInfo1050;
174 uint32 buf_named_pipes;
175 } wkssvc_NetWkstaInfo1051;
178 uint32 use_lock_read_unlock;
179 } wkssvc_NetWkstaInfo1052;
182 uint32 utilize_nt_caching;
183 } wkssvc_NetWkstaInfo1053;
187 } wkssvc_NetWkstaInfo1054;
190 uint32 use_raw_write;
191 } wkssvc_NetWkstaInfo1055;
194 uint32 use_write_raw_data;
195 } wkssvc_NetWkstaInfo1056;
198 uint32 use_encryption;
199 } wkssvc_NetWkstaInfo1057;
202 uint32 buf_files_deny_write;
203 } wkssvc_NetWkstaInfo1058;
206 uint32 buf_read_only_files;
207 } wkssvc_NetWkstaInfo1059;
210 uint32 force_core_create_mode;
211 } wkssvc_NetWkstaInfo1060;
214 uint32 use_512_byte_max_transfer;
215 } wkssvc_NetWkstaInfo1061;
218 uint32 read_ahead_throughput;
219 } wkssvc_NetWkstaInfo1062;
222 [case(100)] wkssvc_NetWkstaInfo100 *info100;
223 [case(101)] wkssvc_NetWkstaInfo101 *info101;
224 [case(102)] wkssvc_NetWkstaInfo102 *info102;
225 [case(502)] wkssvc_NetWkstaInfo502 *info502;
226 [case(1010)] wkssvc_NetWkstaInfo1010 *info1010;
227 [case(1011)] wkssvc_NetWkstaInfo1011 *info1011;
228 [case(1012)] wkssvc_NetWkstaInfo1012 *info1012;
229 [case(1013)] wkssvc_NetWkstaInfo1013 *info1013;
230 [case(1018)] wkssvc_NetWkstaInfo1018 *info1018;
231 [case(1023)] wkssvc_NetWkstaInfo1023 *info1023;
232 [case(1027)] wkssvc_NetWkstaInfo1027 *info1027;
233 [case(1028)] wkssvc_NetWkstaInfo1028 *info1028;
234 [case(1032)] wkssvc_NetWkstaInfo1032 *info1032;
235 [case(1033)] wkssvc_NetWkstaInfo1033 *info1033;
236 [case(1041)] wkssvc_NetWkstaInfo1041 *info1041;
237 [case(1042)] wkssvc_NetWkstaInfo1042 *info1042;
238 [case(1043)] wkssvc_NetWkstaInfo1043 *info1043;
239 [case(1044)] wkssvc_NetWkstaInfo1044 *info1044;
240 [case(1045)] wkssvc_NetWkstaInfo1045 *info1045;
241 [case(1046)] wkssvc_NetWkstaInfo1046 *info1046;
242 [case(1047)] wkssvc_NetWkstaInfo1047 *info1047;
243 [case(1048)] wkssvc_NetWkstaInfo1048 *info1048;
244 [case(1049)] wkssvc_NetWkstaInfo1049 *info1049;
245 [case(1050)] wkssvc_NetWkstaInfo1050 *info1050;
246 [case(1051)] wkssvc_NetWkstaInfo1051 *info1051;
247 [case(1052)] wkssvc_NetWkstaInfo1052 *info1052;
248 [case(1053)] wkssvc_NetWkstaInfo1053 *info1053;
249 [case(1054)] wkssvc_NetWkstaInfo1054 *info1054;
250 [case(1055)] wkssvc_NetWkstaInfo1055 *info1055;
251 [case(1056)] wkssvc_NetWkstaInfo1056 *info1056;
252 [case(1057)] wkssvc_NetWkstaInfo1057 *info1057;
253 [case(1058)] wkssvc_NetWkstaInfo1058 *info1058;
254 [case(1059)] wkssvc_NetWkstaInfo1059 *info1059;
255 [case(1060)] wkssvc_NetWkstaInfo1060 *info1060;
256 [case(1061)] wkssvc_NetWkstaInfo1061 *info1061;
257 [case(1062)] wkssvc_NetWkstaInfo1062 *info1062;
259 } wkssvc_NetWkstaInfo;
261 WERROR wkssvc_NetWkstaGetInfo(
262 [in] [string,charset(UTF16)] uint16 *server_name,
264 [out,switch_is(level),ref] wkssvc_NetWkstaInfo *info
270 WERROR wkssvc_NetWkstaSetInfo(
271 [in] [string,charset(UTF16)] uint16 *server_name,
273 [in,switch_is(level),ref] wkssvc_NetWkstaInfo *info,
274 [in,out,ref] uint32 *parm_error
278 /*****************************/
281 [string,charset(UTF16)] uint16 *user_name;
282 } wkssvc_NetrWkstaUserInfo0;
286 [size_is(entries_read)] wkssvc_NetrWkstaUserInfo0 *user0;
287 } wkssvc_NetWkstaEnumUsersCtr0;
290 [string,charset(UTF16)] uint16 *user_name;
291 [string,charset(UTF16)] uint16 *logon_domain;
292 [string,charset(UTF16)] uint16 *other_domains;
293 [string,charset(UTF16)] uint16 *logon_server;
294 } wkssvc_NetrWkstaUserInfo1;
298 [size_is(entries_read)] wkssvc_NetrWkstaUserInfo1 *user1;
299 } wkssvc_NetWkstaEnumUsersCtr1;
301 typedef [switch_type(uint32)] union {
302 [case(0)] wkssvc_NetWkstaEnumUsersCtr0 *user0;
303 [case(1)] wkssvc_NetWkstaEnumUsersCtr1 *user1;
304 } wkssvc_NetWkstaEnumUsersCtr;
308 [switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr;
309 } wkssvc_NetWkstaEnumUsersInfo;
311 WERROR wkssvc_NetWkstaEnumUsers(
312 [in] [string,charset(UTF16)] uint16 *server_name,
313 [in,out,ref] wkssvc_NetWkstaEnumUsersInfo *info,
314 [in] uint32 prefmaxlen,
315 [out,ref] uint32 *entries_read,
316 [in,out] uint32 *resume_handle
319 /*****************************/
322 [string,charset(UTF16)] uint16 *other_domains;
323 } wkssvc_NetrWkstaUserInfo1101;
325 typedef [switch_type(uint32)] union {
326 [case(0)] wkssvc_NetrWkstaUserInfo0 *info0;
327 [case(1)] wkssvc_NetrWkstaUserInfo1 *info1;
328 [case(1101)] wkssvc_NetrWkstaUserInfo1101 *info1101;
329 } wkssvc_NetrWkstaUserInfo;
331 WERROR wkssvc_NetrWkstaUserGetInfo(
332 [in] [string,charset(UTF16)] uint16 *unknown,
334 [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info
337 /*****************************/
339 WERROR wkssvc_NetrWkstaUserSetInfo(
340 [in] [string,charset(UTF16)] uint16 *unknown,
342 [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info,
343 [in,out] uint32 *parm_err
346 /*****************************/
350 uint32 quality_of_service;
352 [string,charset(UTF16)] uint16 *name;
353 [string,charset(UTF16)] uint16 *address;
355 } wkssvc_NetWkstaTransportInfo0;
359 [size_is(count)] wkssvc_NetWkstaTransportInfo0 *array;
360 } wkssvc_NetWkstaTransportCtr0;
363 [case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0;
364 } wkssvc_NetWkstaTransportCtr;
368 [switch_is(level)] wkssvc_NetWkstaTransportCtr ctr;
369 } wkssvc_NetWkstaTransportInfo;
371 WERROR wkssvc_NetWkstaTransportEnum (
372 [in] [string,charset(UTF16)] uint16 *server_name,
373 [in,out,ref] wkssvc_NetWkstaTransportInfo *info,
374 [in] uint32 max_buffer,
375 [out,ref] uint32 *total_entries,
376 [in,out] uint32 *resume_handle
379 /*****************************/
381 /* only supported on NT */
382 WERROR wkssvc_NetrWkstaTransportAdd(
383 [in] [string,charset(UTF16)] uint16 *server_name,
384 [in] uint32 level, /* must be 0 */
385 [in,ref] wkssvc_NetWkstaTransportInfo0 *info0,
386 [in,out] uint32 *parm_err
389 /*****************************/
391 /* only supported on NT */
392 WERROR wkssvc_NetrWkstaTransportDel(
393 [in] [string,charset(UTF16)] uint16 *server_name,
394 [in] [string,charset(UTF16)] uint16 *transport_name,
398 /*****************************/
401 [string,charset(UTF16)] uint16 *unknown1;
402 [string,charset(UTF16)] uint16 *unknown2;
403 } wkssvc_NetrUseInfo3;
406 [string,charset(UTF16)] uint16 *local;
407 [string,charset(UTF16)] uint16 *remote;
408 [string,charset(UTF16)] uint16 *password;
413 [string,charset(UTF16)] uint16 *user_name;
414 [string,charset(UTF16)] uint16 *domain_name;
415 } wkssvc_NetrUseInfo2;
418 [string,charset(UTF16)] uint16 *local;
419 [string,charset(UTF16)] uint16 *remote;
420 [string,charset(UTF16)] uint16 *password;
425 } wkssvc_NetrUseInfo1;
428 [string,charset(UTF16)] uint16 *local;
429 [string,charset(UTF16)] uint16 *remote;
430 } wkssvc_NetrUseInfo0;
432 typedef [switch_type(uint32)] union {
433 [case(0)] wkssvc_NetrUseInfo0 *info0;
434 [case(1)] wkssvc_NetrUseInfo1 *info1;
435 [case(2)] wkssvc_NetrUseInfo2 *info2;
436 [case(3)] wkssvc_NetrUseInfo3 *info3;
437 } wkssvc_NetrUseGetInfoCtr;
439 WERROR wkssvc_NetrUseAdd(
440 [in] [string,charset(UTF16)] uint16 *server_name,
442 [in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr,
443 [in,out] uint32 *parm_err
446 /*****************************/
448 WERROR wkssvc_NetrUseGetInfo(
449 [in] [string,charset(UTF16)] uint16 *server_name,
450 [in,ref] [string,charset(UTF16)] uint16 *use_name,
452 [out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr
455 /*****************************/
457 WERROR wkssvc_NetrUseDel(
458 [in] [string,charset(UTF16)] uint16 *server_name,
459 [in,ref] [string,charset(UTF16)] uint16 *use_name,
460 [in] uint32 force_cond
463 /*****************************/
467 [size_is(count)] wkssvc_NetrUseInfo2 *array;
468 } wkssvc_NetrUseEnumCtr2;
472 [size_is(count)] wkssvc_NetrUseInfo1 *array;
473 } wkssvc_NetrUseEnumCtr1;
477 [size_is(count)] wkssvc_NetrUseInfo0 *array;
478 } wkssvc_NetrUseEnumCtr0;
480 typedef [switch_type(uint32)] union {
481 [case(0)] wkssvc_NetrUseEnumCtr0 *ctr0;
482 [case(1)] wkssvc_NetrUseEnumCtr1 *ctr1;
483 [case(2)] wkssvc_NetrUseEnumCtr2 *ctr2;
484 } wkssvc_NetrUseEnumCtr;
488 [switch_is(level)] wkssvc_NetrUseEnumCtr ctr;
489 } wkssvc_NetrUseEnumInfo;
491 WERROR wkssvc_NetrUseEnum(
492 [in] [string,charset(UTF16)] uint16 *server_name,
493 [in,out,ref] wkssvc_NetrUseEnumInfo *info,
494 [in] uint32 prefmaxlen,
495 [out,ref] uint32 *entries_read,
496 [in,out] uint32 *resume_handle
499 /*****************************/
501 WERROR wkssvc_NetrMessageBufferSend(
502 [in] [string,charset(UTF16)] uint16 *server_name,
503 [in,ref] [string,charset(UTF16)] uint16 *message_name,
504 [in] [string,charset(UTF16)] uint16 *message_sender_name,
505 [in,ref] [size_is(message_size)] uint8 *message_buffer,
506 [in] uint32 message_size
509 /*****************************/
552 } wkssvc_NetrWorkstationStatistics;
554 WERROR wkssvc_NetrWorkstationStatisticsGet(
555 [in] [string,charset(UTF16)] uint16 *server_name,
556 [in] [string,charset(UTF16)] uint16 *unknown2,
557 [in] uint32 unknown3,
558 [in] uint32 unknown4,
559 [out,ref] wkssvc_NetrWorkstationStatistics **info
562 /*****************************/
564 WERROR wkssvc_NetrLogonDomainNameAdd(
565 [in,ref] [string,charset(UTF16)] uint16 *domain_name
568 /*****************************/
570 WERROR wkssvc_NetrLogonDomainNameDel(
571 [in,ref] [string,charset(UTF16)] uint16 *domain_name
574 /*****************************/
576 WERROR wkssvc_NetrJoinDomain(
577 [in] [string,charset(UTF16)] uint16 *server_name,
578 [in,ref] [string,charset(UTF16)] uint16 *domain_name,
579 [in] [string,charset(UTF16)] uint16 *account_ou,
580 [in] [string,charset(UTF16)] uint16 *Account,
581 [in] [string,charset(UTF16)] uint16 *unknown,
582 [in] wkssvc_joinflags join_flags
585 /*****************************/
587 WERROR wkssvc_NetrUnjoinDomain(
588 [in] [string,charset(UTF16)] uint16 *server_name,
589 [in] [string,charset(UTF16)] uint16 *Account,
590 [in] [string,charset(UTF16)] uint16 *password,
591 [in] wkssvc_joinflags unjoin_flags
594 /*****************************/
596 typedef [bitmap32bit] bitmap {
597 /* TRUE: create the account in the domain */
598 WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002
599 } wkssvc_renameflags;
601 WERROR wkssvc_NetrRenameMachineInDomain(
602 [in] [string,charset(UTF16)] uint16 *server_name,
603 [in] [string,charset(UTF16)] uint16 *NewMachineName,
604 [in] [string,charset(UTF16)] uint16 *Account,
605 [in] [string,charset(UTF16)] uint16 *password,
606 [in] wkssvc_renameflags RenameOptions
609 /*****************************/
614 NetSetupWorkgroup = 2,
616 NetSetupNonExistentDomain = 4,
617 NetSetupDnsMachine = 5
618 } wkssvc_NetValidateNameType;
620 WERROR wkssvc_NetrValidateName(
621 [in] [string,charset(UTF16)] uint16 *server_name,
622 [in,ref] [string,charset(UTF16)] uint16 *name,
623 [in] [string,charset(UTF16)] uint16 *Account,
624 [in] [string,charset(UTF16)] uint16 *Password,
625 [in] wkssvc_NetValidateNameType name_type
628 /*****************************/
631 NetSetupUnknownStatus = 0,
632 NetSetupUnjoined = 1,
633 NetSetupWorkgroupName = 2,
634 NetSetupDomainName = 3
635 } wkssvc_NetJoinStatus;
637 WERROR wkssvc_NetrGetJoinInformation(
638 [in] [string,charset(UTF16)] uint16 *server_name,
639 [in,out,ref] [string,charset(UTF16)] uint16 **name_buffer,
640 [out,ref] wkssvc_NetJoinStatus *name_type
643 /*****************************/
645 WERROR wkssvc_NetrGetJoinableOus(
646 [in] [string,charset(UTF16)] uint16 *server_name,
647 [in,ref] [string,charset(UTF16)] uint16 *domain_name,
648 [in] [string,charset(UTF16)] uint16 *Account,
649 [in] [string,charset(UTF16)] uint16 *unknown,
650 [in,out,ref] uint32 *num_ous,
651 [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous
654 typedef [flag(NDR_PAHEX)] struct {
656 } wkssvc_PasswordBuffer;
658 typedef [bitmap32bit] bitmap {
659 WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400,
660 WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200,
661 /* TRUE: defer setting the SPN and dNSHostName until a rename operation */
662 WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100,
664 /* TRUE: set the machine password to the provided one after the join completes */
665 WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080,
667 /* TRUE: perform an unsecured join */
668 WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040,
670 /* TRUE: allow the join to complete even if the account already exists */
671 WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020,
673 /* TRUE: this join is part of a w9x upgrade */
674 WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010,
676 /* TRUE: delete the account when the domain is left */
677 WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004,
679 /* TRUE: create the account in the domain */
680 WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002,
682 /* TRUE: join domain FALSE: join workgroup */
683 WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001
687 /*****************************/
689 WERROR wkssvc_NetrJoinDomain2 (
690 [in] [string,charset(UTF16)] uint16 *server_name,
691 [in,ref] [string,charset(UTF16)] uint16 *domain_name,
692 [in] [string,charset(UTF16)] uint16 *account_name,
693 [in] [string,charset(UTF16)] uint16 *admin_account,
694 [in] wkssvc_PasswordBuffer *encrypted_password,
695 [in] wkssvc_joinflags join_flags
698 /*****************************/
700 WERROR wkssvc_NetrUnjoinDomain2 (
701 [in] [string,charset(UTF16)] uint16 *server_name,
702 [in] [string,charset(UTF16)] uint16 *account,
703 [in] wkssvc_PasswordBuffer *encrypted_password,
704 [in] wkssvc_joinflags unjoin_flags
707 /*****************************/
709 WERROR wkssvc_NetrRenameMachineInDomain2(
710 [in] [string,charset(UTF16)] uint16 *server_name,
711 [in] [string,charset(UTF16)] uint16 *NewMachineName,
712 [in] [string,charset(UTF16)] uint16 *Account,
713 [in] wkssvc_PasswordBuffer *EncryptedPassword,
714 [in] wkssvc_renameflags RenameOptions
717 /*****************************/
719 WERROR wkssvc_NetrValidateName2(
720 [in] [string,charset(UTF16)] uint16 *server_name,
721 [in,ref] [string,charset(UTF16)] uint16 *name,
722 [in] [string,charset(UTF16)] uint16 *Account,
723 [in] wkssvc_PasswordBuffer *EncryptedPassword,
724 [in] wkssvc_NetValidateNameType name_type
727 /*****************************/
729 WERROR wkssvc_NetrGetJoinableOus2(
730 [in] [string,charset(UTF16)] uint16 *server_name,
731 [in,ref] [string,charset(UTF16)] uint16 *domain_name,
732 [in] [string,charset(UTF16)] uint16 *Account,
733 [in] wkssvc_PasswordBuffer *EncryptedPassword,
734 [in,out,ref] uint32 *num_ous,
735 [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous
738 /*****************************/
740 WERROR wkssvc_NetrAddAlternateComputerName(
741 [in] [string,charset(UTF16)] uint16 *server_name,
742 [in] [string,charset(UTF16)] uint16 *NewAlternateMachineName,
743 [in] [string,charset(UTF16)] uint16 *Account,
744 [in] wkssvc_PasswordBuffer *EncryptedPassword,
748 /*****************************/
750 WERROR wkssvc_NetrRemoveAlternateComputerName(
751 [in] [string,charset(UTF16)] uint16 *server_name,
752 [in] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove,
753 [in] [string,charset(UTF16)] uint16 *Account,
754 [in] wkssvc_PasswordBuffer *EncryptedPassword,
758 /*****************************/
760 WERROR wkssvc_NetrSetPrimaryComputername(
761 [in] [string,charset(UTF16)] uint16 *server_name,
762 [in] [string,charset(UTF16)] uint16 *primary_name,
763 [in] [string,charset(UTF16)] uint16 *Account,
764 [in] wkssvc_PasswordBuffer *EncryptedPassword,
768 /*****************************/
771 NetPrimaryComputerName = 0,
772 NetAlternateComputerNames = 1,
773 NetAllComputerNames = 2,
774 NetComputerNameTypeMax = 3
775 } wkssvc_ComputerNameType;
779 [size_is(count)] lsa_String *computer_name;
780 } wkssvc_ComputerNamesCtr;
782 WERROR wkssvc_NetrEnumerateComputerNames(
783 [in] [string,charset(UTF16)] uint16 *server_name,
784 [in] wkssvc_ComputerNameType name_type,
785 [in] uint32 Reserved,
786 [out,ref] wkssvc_ComputerNamesCtr **ctr