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 typedef [v1_enum]
enum srvsvc_PlatformId srvsvc_PlatformId;
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;
31 srvsvc_PlatformId platform_id;
32 [string,charset(UTF16)] uint16 *server_name;
33 [string,charset(UTF16)] uint16 *domain_name;
39 srvsvc_PlatformId platform_id;
40 [string,charset(UTF16)] uint16 *server_name;
41 [string,charset(UTF16)] uint16 *domain_name;
44 [string,charset(UTF16)] uint16 *lan_root;
48 srvsvc_PlatformId platform_id;
49 [string,charset(UTF16)] uint16 *server_name;
50 [string,charset(UTF16)] uint16 *domain_name;
53 [string,charset(UTF16)] uint16 *lan_root;
54 uint32 logged_on_users;
61 uint32 collection_time;
62 uint32 maximum_collection_count;
63 uint32 keep_connection;
65 uint32 session_timeout;
69 uint32 lock_increment;
71 uint32 pipe_increment;
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;
85 BOOL use_lock_read_unlock;
86 BOOL utilize_nt_caching;
89 BOOL use_write_raw_data;
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;
102 uint32 collection_time;
106 uint32 maximum_collection_count;
110 uint32 keep_connection;
114 uint32 session_timeout;
118 uint32 size_char_buf;
127 uint32 print_buf_time;
132 uint32 wrk_heuristics;
144 uint32 lock_increment;
152 uint32 pipe_increment;
160 uint32 dormant_file_limit;
164 uint32 cache_file_timeout;
168 uint32 use_opportunistic_locking;
172 uint32 use_unlock_behind;
176 uint32 use_close_behind;
180 uint32 buf_named_pipes;
184 uint32 use_lock_read_unlock;
188 uint32 utilize_nt_caching;
196 uint32 use_raw_write;
200 uint32 use_write_raw_data;
204 uint32 use_encryption;
208 uint32 buf_files_deny_write;
212 uint32 buf_read_only_files;
216 uint32 force_core_create_mode;
220 uint32 use_512_byte_max_transfer;
224 uint32 read_ahead_throughput;
267 WERROR wkssvc_NetWkstaGetInfo(
268 [in] [
string,charset(UTF16)] uint16 *server_name,
276 WERROR wkssvc_NetWkstaSetInfo(
277 [in] [
string,charset(UTF16)] uint16 *server_name,
280 [in,out,ref] uint32 *parm_error
287 [string,charset(UTF16)] uint16 *user_name;
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;
307 typedef [switch_type(uint32)]
union {
310 } wkssvc_NetWkstaEnumUsersCtr;
314 [switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr;
317 WERROR wkssvc_NetWkstaEnumUsers(
318 [in] [
string,charset(UTF16)] uint16 *server_name,
320 [in] uint32 prefmaxlen,
321 [out,ref] uint32 *entries_read,
322 [in,out] uint32 *resume_handle
328 [string,charset(UTF16)] uint16 *other_domains;
331 typedef [switch_type(uint32)]
union {
335 } wkssvc_NetrWkstaUserInfo;
337 WERROR wkssvc_NetrWkstaUserGetInfo(
338 [in] [
string,charset(UTF16)] uint16 *unknown,
340 [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info
345 WERROR wkssvc_NetrWkstaUserSetInfo(
346 [in] [
string,charset(UTF16)] uint16 *unknown,
348 [in,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info,
349 [in,out] uint32 *parm_err
356 uint32 quality_of_service;
358 [string,charset(UTF16)] uint16 *name;
359 [string,charset(UTF16)] uint16 *
address;
377 WERROR wkssvc_NetWkstaTransportEnum (
378 [in] [
string,charset(UTF16)] uint16 *server_name,
380 [in] uint32 max_buffer,
381 [out,ref] uint32 *total_entries,
382 [in,out] uint32 *resume_handle
388 WERROR wkssvc_NetrWkstaTransportAdd(
389 [in] [
string,charset(UTF16)] uint16 *server_name,
392 [in,out] uint32 *parm_err
398 WERROR wkssvc_NetrWkstaTransportDel(
399 [in] [
string,charset(UTF16)] uint16 *server_name,
400 [in] [
string,charset(UTF16)] uint16 *transport_name,
407 [string,charset(UTF16)] uint16 *unknown1;
408 [string,charset(UTF16)] uint16 *unknown2;
412 [string,charset(UTF16)] uint16 *local;
413 [string,charset(UTF16)] uint16 *remote;
414 [string,charset(UTF16)] uint16 *password;
419 [string,charset(UTF16)] uint16 *user_name;
420 [string,charset(UTF16)] uint16 *domain_name;
424 [string,charset(UTF16)] uint16 *local;
425 [string,charset(UTF16)] uint16 *remote;
426 [string,charset(UTF16)] uint16 *password;
434 [string,charset(UTF16)] uint16 *local;
435 [string,charset(UTF16)] uint16 *remote;
438 typedef [switch_type(uint32)]
union {
443 } wkssvc_NetrUseGetInfoCtr;
445 WERROR wkssvc_NetrUseAdd(
446 [in] [
string,charset(UTF16)] uint16 *server_name,
448 [in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr,
449 [in,out] uint32 *parm_err
454 WERROR wkssvc_NetrUseGetInfo(
455 [in] [
string,charset(UTF16)] uint16 *server_name,
456 [in,ref] [
string,charset(UTF16)] uint16 *use_name,
458 [out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr
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
486 typedef [switch_type(uint32)]
union {
490 } wkssvc_NetrUseEnumCtr;
494 [switch_is(level)] wkssvc_NetrUseEnumCtr ctr;
497 WERROR wkssvc_NetrUseEnum(
498 [in] [
string,charset(UTF16)] uint16 *server_name,
500 [in] uint32 prefmaxlen,
501 [out,ref] uint32 *entries_read,
502 [in,out] uint32 *resume_handle
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
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,
570 WERROR wkssvc_NetrLogonDomainNameAdd(
571 [in,ref] [
string,charset(UTF16)] uint16 *domain_name
576 WERROR wkssvc_NetrLogonDomainNameDel(
577 [in,ref] [
string,charset(UTF16)] uint16 *domain_name
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
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
602 typedef [bitmap32bit] bitmap {
604 WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002
605 } wkssvc_renameflags;
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
620 NetSetupWorkgroup = 2,
622 NetSetupNonExistentDomain = 4,
623 NetSetupDnsMachine = 5
624 } wkssvc_NetValidateNameType;
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
637 NetSetupUnknownStatus = 0,
638 NetSetupUnjoined = 1,
639 NetSetupWorkgroupName = 2,
640 NetSetupDomainName = 3
641 } wkssvc_NetJoinStatus;
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
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
660 typedef [flag(NDR_PAHEX)]
struct {
662 } wkssvc_PasswordBuffer;
664 typedef [bitmap32bit] bitmap {
665 WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400,
666 WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200,
668 WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100,
671 WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080,
674 WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040,
677 WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020,
680 WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010,
683 WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004,
686 WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002,
689 WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001
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
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
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
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
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
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,
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,
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,
777 NetPrimaryComputerName = 0,
778 NetAlternateComputerNames = 1,
779 NetAllComputerNames = 2,
780 NetComputerNameTypeMax = 3
781 } wkssvc_ComputerNameType;
785 [size_is(count)] lsa_String *computer_name;
788 WERROR wkssvc_NetrEnumerateComputerNames(
789 [in] [
string,charset(UTF16)] uint16 *server_name,
790 [in] wkssvc_ComputerNameType name_type,
791 [in] uint32 Reserved,
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: wkssvc.idl:476
Definition: wkssvc.idl:163
Definition: wkssvc.idl:219