summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
Diffstat (limited to 'source3')
-rw-r--r--source3/Makefile.in2
-rw-r--r--source3/librpc/idl/wkssvc.idl795
2 files changed, 1 insertions, 796 deletions
diff --git a/source3/Makefile.in b/source3/Makefile.in
index c5940b483b..93c9b5ea49 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -1202,7 +1202,7 @@ samba3-idl::
srcdir="$(srcdir)" $(srcdir)/script/build_idl.sh librpc/idl/lsa.idl \
../librpc/idl/dfs.idl ../librpc/idl/echo.idl librpc/idl/winreg.idl \
../librpc/idl/initshutdown.idl librpc/idl/srvsvc.idl ../librpc/idl/svcctl.idl \
- ../librpc/idl/eventlog.idl librpc/idl/wkssvc.idl librpc/idl/netlogon.idl \
+ ../librpc/idl/eventlog.idl ../librpc/idl/wkssvc.idl librpc/idl/netlogon.idl \
../librpc/idl/notify.idl ../librpc/idl/epmapper.idl librpc/idl/messaging.idl \
../librpc/idl/xattr.idl ../librpc/idl/misc.idl librpc/idl/samr.idl \
../librpc/idl/security.idl ../librpc/idl/dssetup.idl librpc/idl/krb5pac.idl \
diff --git a/source3/librpc/idl/wkssvc.idl b/source3/librpc/idl/wkssvc.idl
deleted file mode 100644
index 9340990e99..0000000000
--- a/source3/librpc/idl/wkssvc.idl
+++ /dev/null
@@ -1,795 +0,0 @@
-#include "idl_types.h"
-
-/*
- wkssvc interface definitions
-*/
-
-import "srvsvc.idl", "lsa.idl";
-
-[ uuid("6bffd098-a112-3610-9833-46c3f87e345a"),
- version(1.0),
- pointer_default(unique),
- helpstring("Workstation Service"),
- endpoint("ncacn_np:[\\pipe\\wkssvc]","ncacn_ip_tcp:","ncalrpc:")
-] interface wkssvc
-{
- typedef [v1_enum] enum srvsvc_PlatformId srvsvc_PlatformId;
-
-#define BOOL uint32
-
- /******************/
- /* Function: 0x00 */
-
- typedef struct {
- srvsvc_PlatformId platform_id;
- [string,charset(UTF16)] uint16 *server_name;
- [string,charset(UTF16)] uint16 *domain_name;
- uint32 version_major;
- uint32 version_minor;
- } wkssvc_NetWkstaInfo100;
-
- typedef struct {
- srvsvc_PlatformId platform_id;
- [string,charset(UTF16)] uint16 *server_name;
- [string,charset(UTF16)] uint16 *domain_name;
- uint32 version_major;
- uint32 version_minor;
- [string,charset(UTF16)] uint16 *lan_root;
- } wkssvc_NetWkstaInfo101;
-
- typedef struct {
- srvsvc_PlatformId platform_id;
- [string,charset(UTF16)] uint16 *server_name;
- [string,charset(UTF16)] uint16 *domain_name;
- uint32 version_major;
- uint32 version_minor;
- [string,charset(UTF16)] uint16 *lan_root;
- uint32 logged_on_users;
- } wkssvc_NetWkstaInfo102;
-
- /* FIXME: 302, 402 */
-
- typedef struct {
- uint32 char_wait;
- uint32 collection_time;
- uint32 maximum_collection_count;
- uint32 keep_connection;
- uint32 max_commands;
- uint32 session_timeout;
- uint32 size_char_buf;
- uint32 max_threads;
- uint32 lock_quota;
- uint32 lock_increment;
- uint32 lock_maximum;
- uint32 pipe_increment;
- uint32 pipe_maximum;
- uint32 cache_file_timeout;
- uint32 dormant_file_limit;
- uint32 read_ahead_throughput;
- uint32 num_mailslot_buffers;
- uint32 num_srv_announce_buffers;
- uint32 max_illegal_dgram_events;
- uint32 dgram_event_reset_freq;
- BOOL log_election_packets;
- BOOL use_opportunistic_locking;
- BOOL use_unlock_behind;
- BOOL use_close_behind;
- BOOL buf_named_pipes;
- BOOL use_lock_read_unlock;
- BOOL utilize_nt_caching;
- BOOL use_raw_read;
- BOOL use_raw_write;
- BOOL use_write_raw_data;
- BOOL use_encryption;
- BOOL buf_files_deny_write;
- BOOL buf_read_only_files;
- BOOL force_core_create_mode;
- BOOL use_512_byte_max_transfer;
- } wkssvc_NetWkstaInfo502;
-
- typedef struct {
- uint32 char_wait;
- } wkssvc_NetWkstaInfo1010;
-
- typedef struct {
- uint32 collection_time;
- } wkssvc_NetWkstaInfo1011;
-
- typedef struct {
- uint32 maximum_collection_count;
- } wkssvc_NetWkstaInfo1012;
-
- typedef struct {
- uint32 keep_connection;
- } wkssvc_NetWkstaInfo1013;
-
- typedef struct {
- uint32 session_timeout;
- } wkssvc_NetWkstaInfo1018;
-
- typedef struct {
- uint32 size_char_buf;
- } wkssvc_NetWkstaInfo1023;
-
- typedef struct {
- uint32 errorlog_sz;
- } wkssvc_NetWkstaInfo1027;
-
- /* downlevel */
- typedef struct {
- uint32 print_buf_time;
- } wkssvc_NetWkstaInfo1028;
-
- /* downlevel */
- typedef struct {
- uint32 wrk_heuristics;
- } wkssvc_NetWkstaInfo1032;
-
- typedef struct {
- uint32 max_threads;
- } wkssvc_NetWkstaInfo1033;
-
- typedef struct {
- uint32 lock_quota;
- } wkssvc_NetWkstaInfo1041;
-
- typedef struct {
- uint32 lock_increment;
- } wkssvc_NetWkstaInfo1042;
-
- typedef struct {
- uint32 lock_maximum;
- } wkssvc_NetWkstaInfo1043;
-
- typedef struct {
- uint32 pipe_increment;
- } wkssvc_NetWkstaInfo1044;
-
- typedef struct {
- uint32 pipe_maximum;
- } wkssvc_NetWkstaInfo1045;
-
- typedef struct {
- uint32 dormant_file_limit;
- } wkssvc_NetWkstaInfo1046;
-
- typedef struct {
- uint32 cache_file_timeout;
- } wkssvc_NetWkstaInfo1047;
-
- typedef struct {
- uint32 use_opportunistic_locking;
- } wkssvc_NetWkstaInfo1048;
-
- typedef struct {
- uint32 use_unlock_behind;
- } wkssvc_NetWkstaInfo1049;
-
- typedef struct {
- uint32 use_close_behind;
- } wkssvc_NetWkstaInfo1050;
-
- typedef struct {
- uint32 buf_named_pipes;
- } wkssvc_NetWkstaInfo1051;
-
- typedef struct {
- uint32 use_lock_read_unlock;
- } wkssvc_NetWkstaInfo1052;
-
- typedef struct {
- uint32 utilize_nt_caching;
- } wkssvc_NetWkstaInfo1053;
-
- typedef struct {
- uint32 use_raw_read;
- } wkssvc_NetWkstaInfo1054;
-
- typedef struct {
- uint32 use_raw_write;
- } wkssvc_NetWkstaInfo1055;
-
- typedef struct {
- uint32 use_write_raw_data;
- } wkssvc_NetWkstaInfo1056;
-
- typedef struct {
- uint32 use_encryption;
- } wkssvc_NetWkstaInfo1057;
-
- typedef struct {
- uint32 buf_files_deny_write;
- } wkssvc_NetWkstaInfo1058;
-
- typedef struct {
- uint32 buf_read_only_files;
- } wkssvc_NetWkstaInfo1059;
-
- typedef struct {
- uint32 force_core_create_mode;
- } wkssvc_NetWkstaInfo1060;
-
- typedef struct {
- uint32 use_512_byte_max_transfer;
- } wkssvc_NetWkstaInfo1061;
-
- typedef struct {
- uint32 read_ahead_throughput;
- } wkssvc_NetWkstaInfo1062;
-
- typedef union {
- [case(100)] wkssvc_NetWkstaInfo100 *info100;
- [case(101)] wkssvc_NetWkstaInfo101 *info101;
- [case(102)] wkssvc_NetWkstaInfo102 *info102;
- [case(502)] wkssvc_NetWkstaInfo502 *info502;
- [case(1010)] wkssvc_NetWkstaInfo1010 *info1010;
- [case(1011)] wkssvc_NetWkstaInfo1011 *info1011;
- [case(1012)] wkssvc_NetWkstaInfo1012 *info1012;
- [case(1013)] wkssvc_NetWkstaInfo1013 *info1013;
- [case(1018)] wkssvc_NetWkstaInfo1018 *info1018;
- [case(1023)] wkssvc_NetWkstaInfo1023 *info1023;
- [case(1027)] wkssvc_NetWkstaInfo1027 *info1027;
- [case(1028)] wkssvc_NetWkstaInfo1028 *info1028;
- [case(1032)] wkssvc_NetWkstaInfo1032 *info1032;
- [case(1033)] wkssvc_NetWkstaInfo1033 *info1033;
- [case(1041)] wkssvc_NetWkstaInfo1041 *info1041;
- [case(1042)] wkssvc_NetWkstaInfo1042 *info1042;
- [case(1043)] wkssvc_NetWkstaInfo1043 *info1043;
- [case(1044)] wkssvc_NetWkstaInfo1044 *info1044;
- [case(1045)] wkssvc_NetWkstaInfo1045 *info1045;
- [case(1046)] wkssvc_NetWkstaInfo1046 *info1046;
- [case(1047)] wkssvc_NetWkstaInfo1047 *info1047;
- [case(1048)] wkssvc_NetWkstaInfo1048 *info1048;
- [case(1049)] wkssvc_NetWkstaInfo1049 *info1049;
- [case(1050)] wkssvc_NetWkstaInfo1050 *info1050;
- [case(1051)] wkssvc_NetWkstaInfo1051 *info1051;
- [case(1052)] wkssvc_NetWkstaInfo1052 *info1052;
- [case(1053)] wkssvc_NetWkstaInfo1053 *info1053;
- [case(1054)] wkssvc_NetWkstaInfo1054 *info1054;
- [case(1055)] wkssvc_NetWkstaInfo1055 *info1055;
- [case(1056)] wkssvc_NetWkstaInfo1056 *info1056;
- [case(1057)] wkssvc_NetWkstaInfo1057 *info1057;
- [case(1058)] wkssvc_NetWkstaInfo1058 *info1058;
- [case(1059)] wkssvc_NetWkstaInfo1059 *info1059;
- [case(1060)] wkssvc_NetWkstaInfo1060 *info1060;
- [case(1061)] wkssvc_NetWkstaInfo1061 *info1061;
- [case(1062)] wkssvc_NetWkstaInfo1062 *info1062;
- [default] ;
- } wkssvc_NetWkstaInfo;
-
- WERROR wkssvc_NetWkstaGetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in] uint32 level,
- [out,switch_is(level),ref] wkssvc_NetWkstaInfo *info
- );
-
-
- /******************/
- /* Function: 0x01 */
- WERROR wkssvc_NetWkstaSetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in] uint32 level,
- [in,switch_is(level),ref] wkssvc_NetWkstaInfo *info,
- [in,out,ref] uint32 *parm_error
- );
-
-
- /*****************************/
- /* Function 0x02 */
- typedef struct {
- [string,charset(UTF16)] uint16 *user_name;
- } wkssvc_NetrWkstaUserInfo0;
-
- typedef struct {
- uint32 entries_read;
- [size_is(entries_read)] wkssvc_NetrWkstaUserInfo0 *user0;
- } wkssvc_NetWkstaEnumUsersCtr0;
-
- typedef struct {
- [string,charset(UTF16)] uint16 *user_name;
- [string,charset(UTF16)] uint16 *logon_domain;
- [string,charset(UTF16)] uint16 *other_domains;
- [string,charset(UTF16)] uint16 *logon_server;
- } wkssvc_NetrWkstaUserInfo1;
-
- typedef struct {
- uint32 entries_read;
- [size_is(entries_read)] wkssvc_NetrWkstaUserInfo1 *user1;
- } wkssvc_NetWkstaEnumUsersCtr1;
-
- typedef [switch_type(uint32)] union {
- [case(0)] wkssvc_NetWkstaEnumUsersCtr0 *user0;
- [case(1)] wkssvc_NetWkstaEnumUsersCtr1 *user1;
- } wkssvc_NetWkstaEnumUsersCtr;
-
- typedef struct {
- uint32 level;
- [switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr;
- } wkssvc_NetWkstaEnumUsersInfo;
-
- WERROR wkssvc_NetWkstaEnumUsers(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,out,ref] wkssvc_NetWkstaEnumUsersInfo *info,
- [in] uint32 prefmaxlen,
- [out,ref] uint32 *entries_read,
- [in,out,unique] uint32 *resume_handle
- );
-
- /*****************************/
- /* Function 0x03 */
- typedef struct {
- [string,charset(UTF16)] uint16 *other_domains;
- } wkssvc_NetrWkstaUserInfo1101;
-
- typedef [switch_type(uint32)] union {
- [case(0)] wkssvc_NetrWkstaUserInfo0 *info0;
- [case(1)] wkssvc_NetrWkstaUserInfo1 *info1;
- [case(1101)] wkssvc_NetrWkstaUserInfo1101 *info1101;
- } wkssvc_NetrWkstaUserInfo;
-
- WERROR wkssvc_NetrWkstaUserGetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *unknown,
- [in] uint32 level,
- [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info
- );
-
- /*****************************/
- /* Function 0x04 */
- WERROR wkssvc_NetrWkstaUserSetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *unknown,
- [in] uint32 level,
- [in,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info,
- [in,out,unique] uint32 *parm_err
- );
-
- /*****************************/
- /* Function 0x05 */
-
- typedef struct {
- uint32 quality_of_service;
- uint32 vc_count;
- [string,charset(UTF16)] uint16 *name;
- [string,charset(UTF16)] uint16 *address;
- uint32 wan_link;
- } wkssvc_NetWkstaTransportInfo0;
-
- typedef struct {
- uint32 count;
- [size_is(count)] wkssvc_NetWkstaTransportInfo0 *array;
- } wkssvc_NetWkstaTransportCtr0;
-
- typedef union {
- [case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0;
- } wkssvc_NetWkstaTransportCtr;
-
- typedef struct {
- uint32 level;
- [switch_is(level)] wkssvc_NetWkstaTransportCtr ctr;
- } wkssvc_NetWkstaTransportInfo;
-
- WERROR wkssvc_NetWkstaTransportEnum (
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,out,ref] wkssvc_NetWkstaTransportInfo *info,
- [in] uint32 max_buffer,
- [out,ref] uint32 *total_entries,
- [in,out,unique] uint32 *resume_handle
- );
-
- /*****************************/
- /* Function 0x06 */
- /* only supported on NT */
- WERROR wkssvc_NetrWkstaTransportAdd(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in] uint32 level, /* must be 0 */
- [in,ref] wkssvc_NetWkstaTransportInfo0 *info0,
- [in,out,unique] uint32 *parm_err
- );
-
- /*****************************/
- /* Function 0x07 */
- /* only supported on NT */
- WERROR wkssvc_NetrWkstaTransportDel(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *transport_name,
- [in] uint32 unknown3
- );
-
- /*****************************/
- /* Function 0x08 */
- typedef struct {
- [string,charset(UTF16)] uint16 *unknown1;
- [string,charset(UTF16)] uint16 *unknown2;
- } wkssvc_NetrUseInfo3;
-
- typedef struct {
- [string,charset(UTF16)] uint16 *local;
- [string,charset(UTF16)] uint16 *remote;
- [string,charset(UTF16)] uint16 *password;
- uint32 status;
- uint32 asg_type;
- uint32 ref_count;
- uint32 use_count;
- [string,charset(UTF16)] uint16 *user_name;
- [string,charset(UTF16)] uint16 *domain_name;
- } wkssvc_NetrUseInfo2;
-
- typedef struct {
- [string,charset(UTF16)] uint16 *local;
- [string,charset(UTF16)] uint16 *remote;
- [string,charset(UTF16)] uint16 *password;
- uint32 status;
- uint32 asg_type;
- uint32 ref_count;
- uint32 use_count;
- } wkssvc_NetrUseInfo1;
-
- typedef struct {
- [string,charset(UTF16)] uint16 *local;
- [string,charset(UTF16)] uint16 *remote;
- } wkssvc_NetrUseInfo0;
-
- typedef [switch_type(uint32)] union {
- [case(0)] wkssvc_NetrUseInfo0 *info0;
- [case(1)] wkssvc_NetrUseInfo1 *info1;
- [case(2)] wkssvc_NetrUseInfo2 *info2;
- [case(3)] wkssvc_NetrUseInfo3 *info3;
- } wkssvc_NetrUseGetInfoCtr;
-
- WERROR wkssvc_NetrUseAdd(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in] uint32 level,
- [in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr,
- [in,out,unique] uint32 *parm_err
- );
-
- /*****************************/
- /* Function 0x09 */
- WERROR wkssvc_NetrUseGetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *use_name,
- [in] uint32 level,
- [out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr
- );
-
- /*****************************/
- /* Function 0x0a */
- WERROR wkssvc_NetrUseDel(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *use_name,
- [in] uint32 force_cond
- );
-
- /*****************************/
- /* Function 0x0b */
- typedef struct {
- uint32 count;
- [size_is(count)] wkssvc_NetrUseInfo2 *array;
- } wkssvc_NetrUseEnumCtr2;
-
- typedef struct {
- uint32 count;
- [size_is(count)] wkssvc_NetrUseInfo1 *array;
- } wkssvc_NetrUseEnumCtr1;
-
- typedef struct {
- uint32 count;
- [size_is(count)] wkssvc_NetrUseInfo0 *array;
- } wkssvc_NetrUseEnumCtr0;
-
- typedef [switch_type(uint32)] union {
- [case(0)] wkssvc_NetrUseEnumCtr0 *ctr0;
- [case(1)] wkssvc_NetrUseEnumCtr1 *ctr1;
- [case(2)] wkssvc_NetrUseEnumCtr2 *ctr2;
- } wkssvc_NetrUseEnumCtr;
-
- typedef struct {
- uint32 level;
- [switch_is(level)] wkssvc_NetrUseEnumCtr ctr;
- } wkssvc_NetrUseEnumInfo;
-
- WERROR wkssvc_NetrUseEnum(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,out,ref] wkssvc_NetrUseEnumInfo *info,
- [in] uint32 prefmaxlen,
- [out,ref] uint32 *entries_read,
- [in,out,unique] uint32 *resume_handle
- );
-
- /*****************************/
- /* Function 0x0c */
- WERROR wkssvc_NetrMessageBufferSend(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *message_name,
- [in,unique] [string,charset(UTF16)] uint16 *message_sender_name,
- [in,ref] [size_is(message_size)] uint8 *message_buffer,
- [in] uint32 message_size
- );
-
- /*****************************/
- /* Function 0x0d */
- typedef struct {
- hyper unknown1;
- hyper unknown2;
- hyper unknown3;
- hyper unknown4;
- hyper unknown5;
- hyper unknown6;
- hyper unknown7;
- hyper unknown8;
- hyper unknown9;
- hyper unknown10;
- hyper unknown11;
- hyper unknown12;
- hyper unknown13;
- uint32 unknown14;
- uint32 unknown15;
- uint32 unknown16;
- uint32 unknown17;
- uint32 unknown18;
- uint32 unknown19;
- uint32 unknown20;
- uint32 unknown21;
- uint32 unknown22;
- uint32 unknown23;
- uint32 unknown24;
- uint32 unknown25;
- uint32 unknown26;
- uint32 unknown27;
- uint32 unknown28;
- uint32 unknown29;
- uint32 unknown30;
- uint32 unknown31;
- uint32 unknown32;
- uint32 unknown33;
- uint32 unknown34;
- uint32 unknown35;
- uint32 unknown36;
- uint32 unknown37;
- uint32 unknown38;
- uint32 unknown39;
- uint32 unknown40;
- } wkssvc_NetrWorkstationStatistics;
-
- WERROR wkssvc_NetrWorkstationStatisticsGet(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *unknown2,
- [in] uint32 unknown3,
- [in] uint32 unknown4,
- [out,ref] wkssvc_NetrWorkstationStatistics **info
- );
-
- /*****************************/
- /* Function 0x0e */
- WERROR wkssvc_NetrLogonDomainNameAdd(
- [in,ref] [string,charset(UTF16)] uint16 *domain_name
- );
-
- /*****************************/
- /* Function 0x0f */
- WERROR wkssvc_NetrLogonDomainNameDel(
- [in,ref] [string,charset(UTF16)] uint16 *domain_name
- );
-
- /*****************************/
- /* Function 0x10 */
- WERROR wkssvc_NetrJoinDomain(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *domain_name,
- [in,unique] [string,charset(UTF16)] uint16 *account_ou,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] [string,charset(UTF16)] uint16 *password,
- [in] wkssvc_joinflags join_flags
- );
-
- /*****************************/
- /* Function 0x11 */
- WERROR wkssvc_NetrUnjoinDomain(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] [string,charset(UTF16)] uint16 *password,
- [in] wkssvc_joinflags unjoin_flags
- );
-
- /*****************************/
- /* Function 0x12 */
- typedef [bitmap32bit] bitmap {
- /* TRUE: create the account in the domain */
- WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002
- } wkssvc_renameflags;
-
- WERROR wkssvc_NetrRenameMachineInDomain(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *NewMachineName,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] [string,charset(UTF16)] uint16 *password,
- [in] wkssvc_renameflags RenameOptions
- );
-
- /*****************************/
- /* Function 0x13 */
- typedef enum {
- NetSetupUnknown = 0,
- NetSetupMachine = 1,
- NetSetupWorkgroup = 2,
- NetSetupDomain = 3,
- NetSetupNonExistentDomain = 4,
- NetSetupDnsMachine = 5
- } wkssvc_NetValidateNameType;
-
- WERROR wkssvc_NetrValidateName(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *name,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] [string,charset(UTF16)] uint16 *Password,
- [in] wkssvc_NetValidateNameType name_type
- );
-
- /*****************************/
- /* Function 0x14 */
- typedef enum {
- NET_SETUP_UNKNOWN_STATUS = 0,
- NET_SETUP_UNJOINED = 1,
- NET_SETUP_WORKGROUP_NAME = 2,
- NET_SETUP_DOMAIN_NAME = 3
- } wkssvc_NetJoinStatus;
-
- WERROR wkssvc_NetrGetJoinInformation(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,out,ref] [string,charset(UTF16)] uint16 **name_buffer,
- [out,ref] wkssvc_NetJoinStatus *name_type
- );
-
- /*****************************/
- /* Function 0x15 */
- WERROR wkssvc_NetrGetJoinableOus(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *domain_name,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] [string,charset(UTF16)] uint16 *unknown,
- [in,out,ref] uint32 *num_ous,
- /*
- * this is a [ref] pointer to a [unique] pointer to an
- * array of [unique] pointers to a string array
- */
- [out,ref] [size_is(,*num_ous)] [string,charset(UTF16)] uint16 ***ous
- );
-
- typedef [flag(NDR_PAHEX)] struct {
- uint8 data[524];
- } wkssvc_PasswordBuffer;
-
- typedef [bitmap32bit] bitmap {
- WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400,
- WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200,
- /* TRUE: defer setting the SPN and dNSHostName until a rename operation */
- WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100,
-
- /* TRUE: set the machine password to the provided one after the join completes */
- WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080,
-
- /* TRUE: perform an unsecured join */
- WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040,
-
- /* TRUE: allow the join to complete even if the account already exists */
- WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020,
-
- /* TRUE: this join is part of a w9x upgrade */
- WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010,
-
- /* TRUE: delete the account when the domain is left */
- WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004,
-
- /* TRUE: create the account in the domain */
- WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002,
-
- /* TRUE: join domain FALSE: join workgroup */
- WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001
-
- } wkssvc_joinflags;
-
- /*****************************/
- /* Function 0x16 */
- WERROR wkssvc_NetrJoinDomain2 (
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *domain_name,
- [in,unique] [string,charset(UTF16)] uint16 *account_ou,
- [in,unique] [string,charset(UTF16)] uint16 *admin_account,
- [in,unique] wkssvc_PasswordBuffer *encrypted_password,
- [in] wkssvc_joinflags join_flags
- );
-
- /*****************************/
- /* Function 0x17 */
- WERROR wkssvc_NetrUnjoinDomain2 (
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *account,
- [in,unique] wkssvc_PasswordBuffer *encrypted_password,
- [in] wkssvc_joinflags unjoin_flags
- );
-
- /*****************************/
- /* Function 0x18 */
- WERROR wkssvc_NetrRenameMachineInDomain2(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *NewMachineName,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
- [in] wkssvc_renameflags RenameOptions
- );
-
- /*****************************/
- /* Function 0x19 */
- WERROR wkssvc_NetrValidateName2(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *name,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
- [in] wkssvc_NetValidateNameType name_type
- );
-
- /*****************************/
- /* Function 0x1a */
- WERROR wkssvc_NetrGetJoinableOus2(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,ref] [string,charset(UTF16)] uint16 *domain_name,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
- [in,out,ref] uint32 *num_ous,
- /*
- * this is a [ref] pointer to a [unique] pointer to an
- * array of [unique] pointers to a string array
- */
- [out,ref] [size_is(,*num_ous)] [string,charset(UTF16)] uint16 ***ous
- );
-
- /*****************************/
- /* Function 0x1b */
- WERROR wkssvc_NetrAddAlternateComputerName(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *NewAlternateMachineName,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
- [in] uint32 Reserved
- );
-
- /*****************************/
- /* Function 0x1c */
- WERROR wkssvc_NetrRemoveAlternateComputerName(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
- [in] uint32 Reserved
- );
-
- /*****************************/
- /* Function 0x1d */
- WERROR wkssvc_NetrSetPrimaryComputername(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in,unique] [string,charset(UTF16)] uint16 *primary_name,
- [in,unique] [string,charset(UTF16)] uint16 *Account,
- [in,unique] wkssvc_PasswordBuffer *EncryptedPassword,
- [in] uint32 Reserved
- );
-
- /*****************************/
- /* Function 0x1e */
- typedef enum {
- NetPrimaryComputerName = 0,
- NetAlternateComputerNames = 1,
- NetAllComputerNames = 2,
- NetComputerNameTypeMax = 3
- } wkssvc_ComputerNameType;
-
- typedef struct {
- uint32 count;
- [size_is(count)] lsa_String *computer_name;
- } wkssvc_ComputerNamesCtr;
-
- WERROR wkssvc_NetrEnumerateComputerNames(
- [in,unique] [string,charset(UTF16)] uint16 *server_name,
- [in] wkssvc_ComputerNameType name_type,
- [in] uint32 Reserved,
- [out,ref] wkssvc_ComputerNamesCtr **ctr
- );
-}