4
wkssvc interface definitions
7
import "srvsvc.idl", "lsa.idl";
9
[ uuid("6bffd098-a112-3610-9833-46c3f87e345a"),
11
pointer_default(unique),
12
helpstring("Workstation Service"),
13
endpoint("ncacn_np:[\\pipe\\wkssvc]","ncacn_ip_tcp:","ncalrpc:")
16
typedef [v1_enum] enum srvsvc_PlatformId srvsvc_PlatformId;
24
srvsvc_PlatformId platform_id;
25
[string,charset(UTF16)] uint16 *server_name;
26
[string,charset(UTF16)] uint16 *domain_name;
29
} wkssvc_NetWkstaInfo100;
32
srvsvc_PlatformId platform_id;
33
[string,charset(UTF16)] uint16 *server_name;
34
[string,charset(UTF16)] uint16 *domain_name;
37
[string,charset(UTF16)] uint16 *lan_root;
38
} wkssvc_NetWkstaInfo101;
41
srvsvc_PlatformId platform_id;
42
[string,charset(UTF16)] uint16 *server_name;
43
[string,charset(UTF16)] uint16 *domain_name;
46
[string,charset(UTF16)] uint16 *lan_root;
47
uint32 logged_on_users;
48
} wkssvc_NetWkstaInfo102;
54
uint32 collection_time;
55
uint32 maximum_collection_count;
56
uint32 keep_connection;
58
uint32 session_timeout;
62
uint32 lock_increment;
64
uint32 pipe_increment;
66
uint32 cache_file_timeout;
67
uint32 dormant_file_limit;
68
uint32 read_ahead_throughput;
69
uint32 num_mailslot_buffers;
70
uint32 num_srv_announce_buffers;
71
uint32 max_illegal_dgram_events;
72
uint32 dgram_event_reset_freq;
73
BOOL log_election_packets;
74
BOOL use_opportunistic_locking;
75
BOOL use_unlock_behind;
76
BOOL use_close_behind;
78
BOOL use_lock_read_unlock;
79
BOOL utilize_nt_caching;
82
BOOL use_write_raw_data;
84
BOOL buf_files_deny_write;
85
BOOL buf_read_only_files;
86
BOOL force_core_create_mode;
87
BOOL use_512_byte_max_transfer;
88
} wkssvc_NetWkstaInfo502;
92
} wkssvc_NetWkstaInfo1010;
95
uint32 collection_time;
96
} wkssvc_NetWkstaInfo1011;
99
uint32 maximum_collection_count;
100
} wkssvc_NetWkstaInfo1012;
103
uint32 keep_connection;
104
} wkssvc_NetWkstaInfo1013;
107
uint32 session_timeout;
108
} wkssvc_NetWkstaInfo1018;
111
uint32 size_char_buf;
112
} wkssvc_NetWkstaInfo1023;
116
} wkssvc_NetWkstaInfo1027;
120
uint32 print_buf_time;
121
} wkssvc_NetWkstaInfo1028;
125
uint32 wrk_heuristics;
126
} wkssvc_NetWkstaInfo1032;
130
} wkssvc_NetWkstaInfo1033;
134
} wkssvc_NetWkstaInfo1041;
137
uint32 lock_increment;
138
} wkssvc_NetWkstaInfo1042;
142
} wkssvc_NetWkstaInfo1043;
145
uint32 pipe_increment;
146
} wkssvc_NetWkstaInfo1044;
150
} wkssvc_NetWkstaInfo1045;
153
uint32 dormant_file_limit;
154
} wkssvc_NetWkstaInfo1046;
157
uint32 cache_file_timeout;
158
} wkssvc_NetWkstaInfo1047;
161
uint32 use_opportunistic_locking;
162
} wkssvc_NetWkstaInfo1048;
165
uint32 use_unlock_behind;
166
} wkssvc_NetWkstaInfo1049;
169
uint32 use_close_behind;
170
} wkssvc_NetWkstaInfo1050;
173
uint32 buf_named_pipes;
174
} wkssvc_NetWkstaInfo1051;
177
uint32 use_lock_read_unlock;
178
} wkssvc_NetWkstaInfo1052;
181
uint32 utilize_nt_caching;
182
} wkssvc_NetWkstaInfo1053;
186
} wkssvc_NetWkstaInfo1054;
189
uint32 use_raw_write;
190
} wkssvc_NetWkstaInfo1055;
193
uint32 use_write_raw_data;
194
} wkssvc_NetWkstaInfo1056;
197
uint32 use_encryption;
198
} wkssvc_NetWkstaInfo1057;
201
uint32 buf_files_deny_write;
202
} wkssvc_NetWkstaInfo1058;
205
uint32 buf_read_only_files;
206
} wkssvc_NetWkstaInfo1059;
209
uint32 force_core_create_mode;
210
} wkssvc_NetWkstaInfo1060;
213
uint32 use_512_byte_max_transfer;
214
} wkssvc_NetWkstaInfo1061;
217
uint32 read_ahead_throughput;
218
} wkssvc_NetWkstaInfo1062;
221
[case(100)] wkssvc_NetWkstaInfo100 *info100;
222
[case(101)] wkssvc_NetWkstaInfo101 *info101;
223
[case(102)] wkssvc_NetWkstaInfo102 *info102;
224
[case(502)] wkssvc_NetWkstaInfo502 *info502;
225
[case(1010)] wkssvc_NetWkstaInfo1010 *info1010;
226
[case(1011)] wkssvc_NetWkstaInfo1011 *info1011;
227
[case(1012)] wkssvc_NetWkstaInfo1012 *info1012;
228
[case(1013)] wkssvc_NetWkstaInfo1013 *info1013;
229
[case(1018)] wkssvc_NetWkstaInfo1018 *info1018;
230
[case(1023)] wkssvc_NetWkstaInfo1023 *info1023;
231
[case(1027)] wkssvc_NetWkstaInfo1027 *info1027;
232
[case(1028)] wkssvc_NetWkstaInfo1028 *info1028;
233
[case(1032)] wkssvc_NetWkstaInfo1032 *info1032;
234
[case(1033)] wkssvc_NetWkstaInfo1033 *info1033;
235
[case(1041)] wkssvc_NetWkstaInfo1041 *info1041;
236
[case(1042)] wkssvc_NetWkstaInfo1042 *info1042;
237
[case(1043)] wkssvc_NetWkstaInfo1043 *info1043;
238
[case(1044)] wkssvc_NetWkstaInfo1044 *info1044;
239
[case(1045)] wkssvc_NetWkstaInfo1045 *info1045;
240
[case(1046)] wkssvc_NetWkstaInfo1046 *info1046;
241
[case(1047)] wkssvc_NetWkstaInfo1047 *info1047;
242
[case(1048)] wkssvc_NetWkstaInfo1048 *info1048;
243
[case(1049)] wkssvc_NetWkstaInfo1049 *info1049;
244
[case(1050)] wkssvc_NetWkstaInfo1050 *info1050;
245
[case(1051)] wkssvc_NetWkstaInfo1051 *info1051;
246
[case(1052)] wkssvc_NetWkstaInfo1052 *info1052;
247
[case(1053)] wkssvc_NetWkstaInfo1053 *info1053;
248
[case(1054)] wkssvc_NetWkstaInfo1054 *info1054;
249
[case(1055)] wkssvc_NetWkstaInfo1055 *info1055;
250
[case(1056)] wkssvc_NetWkstaInfo1056 *info1056;
251
[case(1057)] wkssvc_NetWkstaInfo1057 *info1057;
252
[case(1058)] wkssvc_NetWkstaInfo1058 *info1058;
253
[case(1059)] wkssvc_NetWkstaInfo1059 *info1059;
254
[case(1060)] wkssvc_NetWkstaInfo1060 *info1060;
255
[case(1061)] wkssvc_NetWkstaInfo1061 *info1061;
256
[case(1062)] wkssvc_NetWkstaInfo1062 *info1062;
258
} wkssvc_NetWkstaInfo;
260
WERROR wkssvc_NetWkstaGetInfo(
261
[in,unique] [string,charset(UTF16)] uint16 *server_name,
263
[out,switch_is(level),ref] wkssvc_NetWkstaInfo *info
269
WERROR wkssvc_NetWkstaSetInfo(
270
[in,unique] [string,charset(UTF16)] uint16 *server_name,
272
[in,switch_is(level),ref] wkssvc_NetWkstaInfo *info,
273
[in,out,ref] uint32 *parm_error
277
/*****************************/
280
[string,charset(UTF16)] uint16 *user_name;
281
} wkssvc_NetrWkstaUserInfo0;
285
[size_is(entries_read)] wkssvc_NetrWkstaUserInfo0 *user0;
286
} wkssvc_NetWkstaEnumUsersCtr0;
289
[string,charset(UTF16)] uint16 *user_name;
290
[string,charset(UTF16)] uint16 *logon_domain;
291
[string,charset(UTF16)] uint16 *other_domains;
292
[string,charset(UTF16)] uint16 *logon_server;
293
} wkssvc_NetrWkstaUserInfo1;
297
[size_is(entries_read)] wkssvc_NetrWkstaUserInfo1 *user1;
298
} wkssvc_NetWkstaEnumUsersCtr1;
300
typedef [switch_type(uint32)] union {
301
[case(0)] wkssvc_NetWkstaEnumUsersCtr0 *user0;
302
[case(1)] wkssvc_NetWkstaEnumUsersCtr1 *user1;
303
} wkssvc_NetWkstaEnumUsersCtr;
307
[switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr;
308
} wkssvc_NetWkstaEnumUsersInfo;
310
WERROR wkssvc_NetWkstaEnumUsers(
311
[in,unique] [string,charset(UTF16)] uint16 *server_name,
312
[in,out,ref] wkssvc_NetWkstaEnumUsersInfo *info,
313
[in] uint32 prefmaxlen,
314
[out,ref] uint32 *entries_read,
315
[in,out,unique] uint32 *resume_handle
318
/*****************************/
321
[string,charset(UTF16)] uint16 *other_domains;
322
} wkssvc_NetrWkstaUserInfo1101;
324
typedef [switch_type(uint32)] union {
325
[case(0)] wkssvc_NetrWkstaUserInfo0 *info0;
326
[case(1)] wkssvc_NetrWkstaUserInfo1 *info1;
327
[case(1101)] wkssvc_NetrWkstaUserInfo1101 *info1101;
328
} wkssvc_NetrWkstaUserInfo;
330
WERROR wkssvc_NetrWkstaUserGetInfo(
331
[in,unique] [string,charset(UTF16)] uint16 *unknown,
333
[out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info
336
/*****************************/
338
WERROR wkssvc_NetrWkstaUserSetInfo(
339
[in,unique] [string,charset(UTF16)] uint16 *unknown,
341
[in,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info,
342
[in,out,unique] uint32 *parm_err
345
/*****************************/
349
uint32 quality_of_service;
351
[string,charset(UTF16)] uint16 *name;
352
[string,charset(UTF16)] uint16 *address;
354
} wkssvc_NetWkstaTransportInfo0;
358
[size_is(count)] wkssvc_NetWkstaTransportInfo0 *array;
359
} wkssvc_NetWkstaTransportCtr0;
362
[case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0;
363
} wkssvc_NetWkstaTransportCtr;
367
[switch_is(level)] wkssvc_NetWkstaTransportCtr ctr;
368
} wkssvc_NetWkstaTransportInfo;
370
WERROR wkssvc_NetWkstaTransportEnum (
371
[in,unique] [string,charset(UTF16)] uint16 *server_name,
372
[in,out,ref] wkssvc_NetWkstaTransportInfo *info,
373
[in] uint32 max_buffer,
374
[out,ref] uint32 *total_entries,
375
[in,out,unique] uint32 *resume_handle
378
/*****************************/
380
/* only supported on NT */
381
WERROR wkssvc_NetrWkstaTransportAdd(
382
[in,unique] [string,charset(UTF16)] uint16 *server_name,
383
[in] uint32 level, /* must be 0 */
384
[in,ref] wkssvc_NetWkstaTransportInfo0 *info0,
385
[in,out,unique] uint32 *parm_err
388
/*****************************/
390
/* only supported on NT */
391
WERROR wkssvc_NetrWkstaTransportDel(
392
[in,unique] [string,charset(UTF16)] uint16 *server_name,
393
[in,unique] [string,charset(UTF16)] uint16 *transport_name,
397
/*****************************/
400
[string,charset(UTF16)] uint16 *unknown1;
401
[string,charset(UTF16)] uint16 *unknown2;
402
} wkssvc_NetrUseInfo3;
405
[string,charset(UTF16)] uint16 *local;
406
[string,charset(UTF16)] uint16 *remote;
407
[string,charset(UTF16)] uint16 *password;
412
[string,charset(UTF16)] uint16 *user_name;
413
[string,charset(UTF16)] uint16 *domain_name;
414
} wkssvc_NetrUseInfo2;
417
[string,charset(UTF16)] uint16 *local;
418
[string,charset(UTF16)] uint16 *remote;
419
[string,charset(UTF16)] uint16 *password;
424
} wkssvc_NetrUseInfo1;
427
[string,charset(UTF16)] uint16 *local;
428
[string,charset(UTF16)] uint16 *remote;
429
} wkssvc_NetrUseInfo0;
431
typedef [switch_type(uint32)] union {
432
[case(0)] wkssvc_NetrUseInfo0 *info0;
433
[case(1)] wkssvc_NetrUseInfo1 *info1;
434
[case(2)] wkssvc_NetrUseInfo2 *info2;
435
[case(3)] wkssvc_NetrUseInfo3 *info3;
436
} wkssvc_NetrUseGetInfoCtr;
438
WERROR wkssvc_NetrUseAdd(
439
[in,unique] [string,charset(UTF16)] uint16 *server_name,
441
[in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr,
442
[in,out,unique] uint32 *parm_err
445
/*****************************/
447
WERROR wkssvc_NetrUseGetInfo(
448
[in,unique] [string,charset(UTF16)] uint16 *server_name,
449
[in,ref] [string,charset(UTF16)] uint16 *use_name,
451
[out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr
454
/*****************************/
456
WERROR wkssvc_NetrUseDel(
457
[in,unique] [string,charset(UTF16)] uint16 *server_name,
458
[in,ref] [string,charset(UTF16)] uint16 *use_name,
459
[in] uint32 force_cond
462
/*****************************/
466
[size_is(count)] wkssvc_NetrUseInfo2 *array;
467
} wkssvc_NetrUseEnumCtr2;
471
[size_is(count)] wkssvc_NetrUseInfo1 *array;
472
} wkssvc_NetrUseEnumCtr1;
476
[size_is(count)] wkssvc_NetrUseInfo0 *array;
477
} wkssvc_NetrUseEnumCtr0;
479
typedef [switch_type(uint32)] union {
480
[case(0)] wkssvc_NetrUseEnumCtr0 *ctr0;
481
[case(1)] wkssvc_NetrUseEnumCtr1 *ctr1;
482
[case(2)] wkssvc_NetrUseEnumCtr2 *ctr2;
483
} wkssvc_NetrUseEnumCtr;
487
[switch_is(level)] wkssvc_NetrUseEnumCtr ctr;
488
} wkssvc_NetrUseEnumInfo;
490
WERROR wkssvc_NetrUseEnum(
491
[in,unique] [string,charset(UTF16)] uint16 *server_name,
492
[in,out,ref] wkssvc_NetrUseEnumInfo *info,
493
[in] uint32 prefmaxlen,
494
[out,ref] uint32 *entries_read,
495
[in,out,unique] uint32 *resume_handle
498
/*****************************/
500
WERROR wkssvc_NetrMessageBufferSend(
501
[in,unique] [string,charset(UTF16)] uint16 *server_name,
502
[in,ref] [string,charset(UTF16)] uint16 *message_name,
503
[in,unique] [string,charset(UTF16)] uint16 *message_sender_name,
504
[in,ref] [size_is(message_size)] uint8 *message_buffer,
505
[in] uint32 message_size
508
/*****************************/
551
} wkssvc_NetrWorkstationStatistics;
553
WERROR wkssvc_NetrWorkstationStatisticsGet(
554
[in,unique] [string,charset(UTF16)] uint16 *server_name,
555
[in,unique] [string,charset(UTF16)] uint16 *unknown2,
556
[in] uint32 unknown3,
557
[in] uint32 unknown4,
558
[out,ref] wkssvc_NetrWorkstationStatistics **info
561
/*****************************/
563
WERROR wkssvc_NetrLogonDomainNameAdd(
564
[in,ref] [string,charset(UTF16)] uint16 *domain_name
567
/*****************************/
569
WERROR wkssvc_NetrLogonDomainNameDel(
570
[in,ref] [string,charset(UTF16)] uint16 *domain_name
573
/*****************************/
575
WERROR wkssvc_NetrJoinDomain(
576
[in,unique] [string,charset(UTF16)] uint16 *server_name,
577
[in,ref] [string,charset(UTF16)] uint16 *domain_name,
578
[in,unique] [string,charset(UTF16)] uint16 *account_ou,
579
[in,unique] [string,charset(UTF16)] uint16 *Account,
580
[in,unique] [string,charset(UTF16)] uint16 *password,
581
[in] wkssvc_joinflags join_flags
584
/*****************************/
586
WERROR wkssvc_NetrUnjoinDomain(
587
[in,unique] [string,charset(UTF16)] uint16 *server_name,
588
[in,unique] [string,charset(UTF16)] uint16 *Account,
589
[in,unique] [string,charset(UTF16)] uint16 *password,
590
[in] wkssvc_joinflags unjoin_flags
593
/*****************************/
595
typedef [bitmap32bit] bitmap {
596
/* TRUE: create the account in the domain */
597
WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002
598
} wkssvc_renameflags;
600
WERROR wkssvc_NetrRenameMachineInDomain(
601
[in,unique] [string,charset(UTF16)] uint16 *server_name,
602
[in,unique] [string,charset(UTF16)] uint16 *NewMachineName,
603
[in,unique] [string,charset(UTF16)] uint16 *Account,
604
[in,unique] [string,charset(UTF16)] uint16 *password,
605
[in] wkssvc_renameflags RenameOptions
608
/*****************************/
613
NetSetupWorkgroup = 2,
615
NetSetupNonExistentDomain = 4,
616
NetSetupDnsMachine = 5
617
} wkssvc_NetValidateNameType;
619
WERROR wkssvc_NetrValidateName(
620
[in,unique] [string,charset(UTF16)] uint16 *server_name,
621
[in,ref] [string,charset(UTF16)] uint16 *name,
622
[in,unique] [string,charset(UTF16)] uint16 *Account,
623
[in,unique] [string,charset(UTF16)] uint16 *Password,
624
[in] wkssvc_NetValidateNameType name_type
627
/*****************************/
630
NET_SETUP_UNKNOWN_STATUS = 0,
631
NET_SETUP_UNJOINED = 1,
632
NET_SETUP_WORKGROUP_NAME = 2,
633
NET_SETUP_DOMAIN_NAME = 3
634
} wkssvc_NetJoinStatus;
636
WERROR wkssvc_NetrGetJoinInformation(
637
[in,unique] [string,charset(UTF16)] uint16 *server_name,
638
[in,out,ref] [string,charset(UTF16)] uint16 **name_buffer,
639
[out,ref] wkssvc_NetJoinStatus *name_type
642
/*****************************/
644
WERROR wkssvc_NetrGetJoinableOus(
645
[in,unique] [string,charset(UTF16)] uint16 *server_name,
646
[in,ref] [string,charset(UTF16)] uint16 *domain_name,
647
[in,unique] [string,charset(UTF16)] uint16 *Account,
648
[in,unique] [string,charset(UTF16)] uint16 *unknown,
649
[in,out,ref] uint32 *num_ous,
651
* this is a [ref] pointer to a [unique] pointer to an
652
* array of [unique] pointers to a string array
654
[out,ref] [size_is(,*num_ous)] [string,charset(UTF16)] uint16 ***ous
657
typedef [flag(NDR_PAHEX)] struct {
659
} wkssvc_PasswordBuffer;
661
typedef [bitmap32bit] bitmap {
662
WKSSVC_JOIN_FLAGS_IGNORE_UNSUPPORTED_FLAGS = 0x10000000,
663
WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400,
664
WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200,
665
/* TRUE: defer setting the SPN and dNSHostName until a rename operation */
666
WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100,
668
/* TRUE: set the machine password to the provided one after the join completes */
669
WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080,
671
/* TRUE: perform an unsecured join */
672
WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040,
674
/* TRUE: allow the join to complete even if the account already exists */
675
WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020,
677
/* TRUE: this join is part of a w9x upgrade */
678
WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010,
680
/* TRUE: delete the account when the domain is left */
681
WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004,
683
/* TRUE: create the account in the domain */
684
WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002,
686
/* TRUE: join domain FALSE: join workgroup */
687
WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001
691
/*****************************/
693
WERROR wkssvc_NetrJoinDomain2 (
694
[in,unique] [string,charset(UTF16)] uint16 *server_name,
695
[in,ref] [string,charset(UTF16)] uint16 *domain_name,
696
[in,unique] [string,charset(UTF16)] uint16 *account_ou,
697
[in,unique] [string,charset(UTF16)] uint16 *admin_account,
698
[in,unique] wkssvc_PasswordBuffer *encrypted_password,
699
[in] wkssvc_joinflags join_flags
702
/*****************************/
704
WERROR wkssvc_NetrUnjoinDomain2 (
705
[in,unique] [string,charset(UTF16)] uint16 *server_name,
706
[in,unique] [string,charset(UTF16)] uint16 *account,
707
[in,unique] wkssvc_PasswordBuffer *encrypted_password,
708
[in] wkssvc_joinflags unjoin_flags
711
/*****************************/
713
WERROR wkssvc_NetrRenameMachineInDomain2(
714
[in,unique] [string,charset(UTF16)] uint16 *server_name,
715
[in,unique] [string,charset(UTF16)] uint16 *NewMachineName,
716
[in,unique] [string,charset(UTF16)] uint16 *Account,
717
[in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
718
[in] wkssvc_renameflags RenameOptions
721
/*****************************/
723
WERROR wkssvc_NetrValidateName2(
724
[in,unique] [string,charset(UTF16)] uint16 *server_name,
725
[in,ref] [string,charset(UTF16)] uint16 *name,
726
[in,unique] [string,charset(UTF16)] uint16 *Account,
727
[in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
728
[in] wkssvc_NetValidateNameType name_type
731
/*****************************/
733
WERROR wkssvc_NetrGetJoinableOus2(
734
[in,unique] [string,charset(UTF16)] uint16 *server_name,
735
[in,ref] [string,charset(UTF16)] uint16 *domain_name,
736
[in,unique] [string,charset(UTF16)] uint16 *Account,
737
[in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
738
[in,out,ref] uint32 *num_ous,
740
* this is a [ref] pointer to a [unique] pointer to an
741
* array of [unique] pointers to a string array
743
[out,ref] [size_is(,*num_ous)] [string,charset(UTF16)] uint16 ***ous
746
/*****************************/
748
WERROR wkssvc_NetrAddAlternateComputerName(
749
[in,unique] [string,charset(UTF16)] uint16 *server_name,
750
[in,unique] [string,charset(UTF16)] uint16 *NewAlternateMachineName,
751
[in,unique] [string,charset(UTF16)] uint16 *Account,
752
[in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
756
/*****************************/
758
WERROR wkssvc_NetrRemoveAlternateComputerName(
759
[in,unique] [string,charset(UTF16)] uint16 *server_name,
760
[in,unique] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove,
761
[in,unique] [string,charset(UTF16)] uint16 *Account,
762
[in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
766
/*****************************/
768
WERROR wkssvc_NetrSetPrimaryComputername(
769
[in,unique] [string,charset(UTF16)] uint16 *server_name,
770
[in,unique] [string,charset(UTF16)] uint16 *primary_name,
771
[in,unique] [string,charset(UTF16)] uint16 *Account,
772
[in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
776
/*****************************/
779
NetPrimaryComputerName = 0,
780
NetAlternateComputerNames = 1,
781
NetAllComputerNames = 2,
782
NetComputerNameTypeMax = 3
783
} wkssvc_ComputerNameType;
787
[size_is(count)] lsa_String *computer_name;
788
} wkssvc_ComputerNamesCtr;
790
WERROR wkssvc_NetrEnumerateComputerNames(
791
[in,unique] [string,charset(UTF16)] uint16 *server_name,
792
[in] wkssvc_ComputerNameType name_type,
793
[in] uint32 Reserved,
794
[out,ref] wkssvc_ComputerNamesCtr **ctr