diff options
-rw-r--r-- | source3/librpc/gen_ndr/initshutdown.h | 1 | ||||
-rw-r--r-- | source3/librpc/gen_ndr/lsa.h | 1 | ||||
-rw-r--r-- | source3/librpc/gen_ndr/ndr_initshutdown.c | 1 | ||||
-rw-r--r-- | source3/librpc/gen_ndr/ndr_lsa.c | 1 | ||||
-rw-r--r-- | source3/librpc/gen_ndr/ndr_netlogon.c | 1 | ||||
-rw-r--r-- | source3/librpc/gen_ndr/netlogon.h | 1 | ||||
-rw-r--r-- | source3/librpc/idl/drsuapi.idl | 12 | ||||
-rw-r--r-- | source3/librpc/idl/eventlog.idl | 32 | ||||
-rw-r--r-- | source3/librpc/idl/initshutdown.idl | 2 | ||||
-rw-r--r-- | source3/librpc/idl/lsa.idl | 52 | ||||
-rw-r--r-- | source3/librpc/idl/nbt.idl | 2 | ||||
-rw-r--r-- | source3/librpc/idl/netlogon.idl | 16 | ||||
-rw-r--r-- | source3/librpc/idl/ntsvcs.idl | 1 | ||||
-rw-r--r-- | source3/librpc/idl/srvsvc.idl | 2 | ||||
-rw-r--r-- | source3/librpc/idl/svcctl.idl | 4 | ||||
-rw-r--r-- | source3/librpc/idl/winreg.idl | 6 | ||||
-rw-r--r-- | source4/librpc/idl/eventlog.idl | 5 | ||||
-rw-r--r-- | source4/librpc/idl/lsa.idl | 18 | ||||
-rw-r--r-- | source4/librpc/idl/netlogon.idl | 30 | ||||
-rw-r--r-- | source4/librpc/idl/ntsvcs.idl | 59 | ||||
-rw-r--r-- | source4/librpc/idl/svcctl.idl | 27 |
21 files changed, 199 insertions, 75 deletions
diff --git a/source3/librpc/gen_ndr/initshutdown.h b/source3/librpc/gen_ndr/initshutdown.h index 366f017c97..3f2384641b 100644 --- a/source3/librpc/gen_ndr/initshutdown.h +++ b/source3/librpc/gen_ndr/initshutdown.h @@ -2,6 +2,7 @@ #include <stdint.h> +#include "librpc/gen_ndr/lsa.h" #ifndef _HEADER_initshutdown #define _HEADER_initshutdown diff --git a/source3/librpc/gen_ndr/lsa.h b/source3/librpc/gen_ndr/lsa.h index 1e3d3162b2..b37d7a1c41 100644 --- a/source3/librpc/gen_ndr/lsa.h +++ b/source3/librpc/gen_ndr/lsa.h @@ -2,6 +2,7 @@ #include <stdint.h> +#include "librpc/gen_ndr/misc.h" #include "librpc/gen_ndr/security.h" #ifndef _HEADER_lsarpc #define _HEADER_lsarpc diff --git a/source3/librpc/gen_ndr/ndr_initshutdown.c b/source3/librpc/gen_ndr/ndr_initshutdown.c index 5d6c0c3c08..271dac12b0 100644 --- a/source3/librpc/gen_ndr/ndr_initshutdown.c +++ b/source3/librpc/gen_ndr/ndr_initshutdown.c @@ -3,6 +3,7 @@ #include "includes.h" #include "librpc/gen_ndr/ndr_initshutdown.h" +#include "librpc/gen_ndr/ndr_lsa.h" static enum ndr_err_code ndr_push_initshutdown_String_sub(struct ndr_push *ndr, int ndr_flags, const struct initshutdown_String_sub *r) { if (ndr_flags & NDR_SCALARS) { diff --git a/source3/librpc/gen_ndr/ndr_lsa.c b/source3/librpc/gen_ndr/ndr_lsa.c index 716984bb91..b5dd2a0bc1 100644 --- a/source3/librpc/gen_ndr/ndr_lsa.c +++ b/source3/librpc/gen_ndr/ndr_lsa.c @@ -3,6 +3,7 @@ #include "includes.h" #include "librpc/gen_ndr/ndr_lsa.h" +#include "librpc/gen_ndr/ndr_misc.h" #include "librpc/gen_ndr/ndr_security.h" _PUBLIC_ enum ndr_err_code ndr_push_lsa_String(struct ndr_push *ndr, int ndr_flags, const struct lsa_String *r) { diff --git a/source3/librpc/gen_ndr/ndr_netlogon.c b/source3/librpc/gen_ndr/ndr_netlogon.c index a656a8501a..0bd3d0fd16 100644 --- a/source3/librpc/gen_ndr/ndr_netlogon.c +++ b/source3/librpc/gen_ndr/ndr_netlogon.c @@ -3,6 +3,7 @@ #include "includes.h" #include "librpc/gen_ndr/ndr_netlogon.h" +#include "librpc/gen_ndr/ndr_misc.h" #include "librpc/gen_ndr/ndr_lsa.h" #include "librpc/gen_ndr/ndr_samr.h" #include "librpc/gen_ndr/ndr_security.h" diff --git a/source3/librpc/gen_ndr/netlogon.h b/source3/librpc/gen_ndr/netlogon.h index 1cea1f0f42..a38deb302a 100644 --- a/source3/librpc/gen_ndr/netlogon.h +++ b/source3/librpc/gen_ndr/netlogon.h @@ -2,6 +2,7 @@ #include <stdint.h> +#include "librpc/gen_ndr/misc.h" #include "librpc/gen_ndr/lsa.h" #include "librpc/gen_ndr/samr.h" #include "librpc/gen_ndr/security.h" diff --git a/source3/librpc/idl/drsuapi.idl b/source3/librpc/idl/drsuapi.idl index d84f3896de..df6dcba23a 100644 --- a/source3/librpc/idl/drsuapi.idl +++ b/source3/librpc/idl/drsuapi.idl @@ -815,7 +815,7 @@ interface drsuapi /*****************/ /* Function 0x0a */ - WERROR DRSUAPI_INTER_DOMAIN_MOVE(); + [todo] WERROR DRSUAPI_INTER_DOMAIN_MOVE(); /*****************/ /* Function 0x0b */ @@ -998,7 +998,7 @@ interface drsuapi /*****************/ /* Function 0x0f */ - WERROR DRSUAPI_REMOVE_DS_DOMAIN(); + [todo] WERROR DRSUAPI_REMOVE_DS_DOMAIN(); /*****************/ /* Function 0x10 */ @@ -1242,7 +1242,7 @@ interface drsuapi /*****************/ /* Function 0x12 */ - WERROR DRSUAPI_EXECUTE_KCC(); + [todo] WERROR DRSUAPI_EXECUTE_KCC(); /*****************/ /* Function 0x13 */ @@ -1523,7 +1523,7 @@ interface drsuapi /*****************/ /* Function 0x14 */ - WERROR DRSUAPI_ADD_SID_HISTORY(); + [todo] WERROR DRSUAPI_ADD_SID_HISTORY(); /*****************/ /* Function 0x15 */ @@ -1557,11 +1557,11 @@ interface drsuapi /*****************/ /* Function 0x16 */ - WERROR DRSUAPI_REPLICA_VERIFY_OBJECTS(); + [todo] WERROR DRSUAPI_REPLICA_VERIFY_OBJECTS(); /*****************/ /* Function 0x17 */ - WERROR DRSUAPI_GET_OBJECT_EXISTENCE(); + [todo] WERROR DRSUAPI_GET_OBJECT_EXISTENCE(); /*****************/ /* Function 0x18 */ diff --git a/source3/librpc/idl/eventlog.idl b/source3/librpc/idl/eventlog.idl index faa41a67ff..ce25dd65ff 100644 --- a/source3/librpc/idl/eventlog.idl +++ b/source3/librpc/idl/eventlog.idl @@ -64,7 +64,7 @@ import "lsa.idl", "security.idl"; /******************/ /* Function: 0x01 */ - NTSTATUS eventlog_BackupEventLogW(); + [todo] NTSTATUS eventlog_BackupEventLogW(); /******************/ /* Function: 0x02 */ @@ -92,7 +92,7 @@ import "lsa.idl", "security.idl"; /******************/ /* Function: 0x06 */ - NTSTATUS eventlog_ChangeNotify(); + [todo] NTSTATUS eventlog_ChangeNotify(); /******************/ /* Function: 0x07 */ @@ -107,11 +107,11 @@ import "lsa.idl", "security.idl"; /******************/ /* Function: 0x08 */ - NTSTATUS eventlog_RegisterEventSourceW(); + [todo] NTSTATUS eventlog_RegisterEventSourceW(); /******************/ /* Function: 0x09 */ - NTSTATUS eventlog_OpenBackupEventLogW(); + [todo] NTSTATUS eventlog_OpenBackupEventLogW(); /******************/ /* Function: 0x0a */ @@ -127,51 +127,51 @@ import "lsa.idl", "security.idl"; /*****************/ /* Function 0x0b */ - NTSTATUS eventlog_ReportEventW(); + [todo] NTSTATUS eventlog_ReportEventW(); /*****************/ /* Function 0x0c */ - NTSTATUS eventlog_ClearEventLogA(); + [todo] NTSTATUS eventlog_ClearEventLogA(); /******************/ /* Function: 0x0d */ - NTSTATUS eventlog_BackupEventLogA(); + [todo] NTSTATUS eventlog_BackupEventLogA(); /*****************/ /* Function 0x0e */ - NTSTATUS eventlog_OpenEventLogA(); + [todo] NTSTATUS eventlog_OpenEventLogA(); /*****************/ /* Function 0x0f */ - NTSTATUS eventlog_RegisterEventSourceA(); + [todo] NTSTATUS eventlog_RegisterEventSourceA(); /*****************/ /* Function 0x10 */ - NTSTATUS eventlog_OpenBackupEventLogA(); + [todo] NTSTATUS eventlog_OpenBackupEventLogA(); /*****************/ /* Function 0x11 */ - NTSTATUS eventlog_ReadEventLogA(); + [todo] NTSTATUS eventlog_ReadEventLogA(); /*****************/ /* Function 0x12 */ - NTSTATUS eventlog_ReportEventA(); + [todo] NTSTATUS eventlog_ReportEventA(); /*****************/ /* Function 0x13 */ - NTSTATUS eventlog_RegisterClusterSvc(); + [todo] NTSTATUS eventlog_RegisterClusterSvc(); /*****************/ /* Function 0x14 */ - NTSTATUS eventlog_DeregisterClusterSvc(); + [todo] NTSTATUS eventlog_DeregisterClusterSvc(); /*****************/ /* Function 0x15 */ - NTSTATUS eventlog_WriteClusterEvents(); + [todo] NTSTATUS eventlog_WriteClusterEvents(); /*****************/ /* Function 0x16 */ - NTSTATUS eventlog_GetLogIntormation(); + [todo] NTSTATUS eventlog_GetLogIntormation(); /*****************/ /* Function 0x17 */ diff --git a/source3/librpc/idl/initshutdown.idl b/source3/librpc/idl/initshutdown.idl index 8815a9a29e..dfc52714c4 100644 --- a/source3/librpc/idl/initshutdown.idl +++ b/source3/librpc/idl/initshutdown.idl @@ -4,6 +4,8 @@ initshutdown interface definition */ +import "lsa.idl"; + [ uuid("894de0c0-0d55-11d3-a322-00c04fa321a1"), version(1.0), diff --git a/source3/librpc/idl/lsa.idl b/source3/librpc/idl/lsa.idl index cb16f64dab..ff4aafa0bd 100644 --- a/source3/librpc/idl/lsa.idl +++ b/source3/librpc/idl/lsa.idl @@ -4,7 +4,7 @@ lsa interface definition */ -import "security.idl"; +import "misc.idl", "security.idl"; [ uuid("12345778-1234-abcd-ef00-0123456789ab"), version(0.0), @@ -108,7 +108,7 @@ import "security.idl"; /******************/ /* Function: 0x05 */ - NTSTATUS lsa_ChangePassword (); + [todo] NTSTATUS lsa_ChangePassword (); /******************/ @@ -297,7 +297,7 @@ import "security.idl"; /******************/ /* Function: 0x09 */ - NTSTATUS lsa_ClearAuditLog (); + [todo] NTSTATUS lsa_ClearAuditLog (); /******************/ /* Function: 0x0a */ @@ -506,10 +506,10 @@ import "security.idl"; ); /* Function: 0x15 */ - NTSTATUS lsa_GetQuotasForAccount(); + [todo] NTSTATUS lsa_GetQuotasForAccount(); /* Function: 0x16 */ - NTSTATUS lsa_SetQuotasForAccount(); + [todo] NTSTATUS lsa_SetQuotasForAccount(); /* Function: 0x17 */ NTSTATUS lsa_GetSystemAccessAccount( @@ -759,9 +759,9 @@ import "security.idl"; ); /* Function: 0x2a */ - NTSTATUS lsa_StorePrivateData(); + [todo] NTSTATUS lsa_StorePrivateData(); /* Function: 0x2b */ - NTSTATUS lsa_RetrievePrivateData(); + [todo] NTSTATUS lsa_RetrievePrivateData(); /**********************/ @@ -892,7 +892,7 @@ import "security.idl"; ); /* Function 0x38 */ - NTSTATUS lsa_TestCall(); + [todo] NTSTATUS lsa_TestCall(); /**********************/ /* Function 0x39 */ @@ -951,28 +951,28 @@ import "security.idl"; NTSTATUS lsa_CreateTrustedDomainEx2(); /* Function 0x3c */ - NTSTATUS lsa_CREDRWRITE(); + [todo] NTSTATUS lsa_CREDRWRITE(); /* Function 0x3d */ - NTSTATUS lsa_CREDRREAD(); + [todo] NTSTATUS lsa_CREDRREAD(); /* Function 0x3e */ - NTSTATUS lsa_CREDRENUMERATE(); + [todo] NTSTATUS lsa_CREDRENUMERATE(); /* Function 0x3f */ - NTSTATUS lsa_CREDRWRITEDOMAINCREDENTIALS(); + [todo] NTSTATUS lsa_CREDRWRITEDOMAINCREDENTIALS(); /* Function 0x40 */ - NTSTATUS lsa_CREDRREADDOMAINCREDENTIALS(); + [todo] NTSTATUS lsa_CREDRREADDOMAINCREDENTIALS(); /* Function 0x41 */ - NTSTATUS lsa_CREDRDELETE(); + [todo] NTSTATUS lsa_CREDRDELETE(); /* Function 0x42 */ - NTSTATUS lsa_CREDRGETTARGETINFO(); + [todo] NTSTATUS lsa_CREDRGETTARGETINFO(); /* Function 0x43 */ - NTSTATUS lsa_CREDRPROFILELOADED(); + [todo] NTSTATUS lsa_CREDRPROFILELOADED(); /**********************/ /* Function 0x44 */ @@ -1001,16 +1001,16 @@ import "security.idl"; ); /* Function 0x45 */ - NTSTATUS lsa_CREDRGETSESSIONTYPES(); + [todo] NTSTATUS lsa_CREDRGETSESSIONTYPES(); /* Function 0x46 */ - NTSTATUS lsa_LSARREGISTERAUDITEVENT(); + [todo] NTSTATUS lsa_LSARREGISTERAUDITEVENT(); /* Function 0x47 */ - NTSTATUS lsa_LSARGENAUDITEVENT(); + [todo] NTSTATUS lsa_LSARGENAUDITEVENT(); /* Function 0x48 */ - NTSTATUS lsa_LSARUNREGISTERAUDITEVENT(); + [todo] NTSTATUS lsa_LSARUNREGISTERAUDITEVENT(); /* Function 0x49 */ typedef struct { @@ -1058,10 +1058,10 @@ import "security.idl"; ); /* Function 0x4a */ - NTSTATUS lsa_LSARSETFORESTTRUSTINFORMATION(); + [todo] NTSTATUS lsa_LSARSETFORESTTRUSTINFORMATION(); /* Function 0x4b */ - NTSTATUS lsa_CREDRRENAME(); + [todo] NTSTATUS lsa_CREDRRENAME(); /*****************/ /* Function 0x4c */ @@ -1089,15 +1089,15 @@ import "security.idl"; ); /* Function 0x4e */ - NTSTATUS lsa_LSAROPENPOLICYSCE(); + [todo] NTSTATUS lsa_LSAROPENPOLICYSCE(); /* Function 0x4f */ - NTSTATUS lsa_LSARADTREGISTERSECURITYEVENTSOURCE(); + [todo] NTSTATUS lsa_LSARADTREGISTERSECURITYEVENTSOURCE(); /* Function 0x50 */ - NTSTATUS lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(); + [todo] NTSTATUS lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(); /* Function 0x51 */ - NTSTATUS lsa_LSARADTREPORTSECURITYEVENT(); + [todo] NTSTATUS lsa_LSARADTREPORTSECURITYEVENT(); } diff --git a/source3/librpc/idl/nbt.idl b/source3/librpc/idl/nbt.idl index 9f5c4a9a5f..654f53c52f 100644 --- a/source3/librpc/idl/nbt.idl +++ b/source3/librpc/idl/nbt.idl @@ -167,7 +167,7 @@ interface nbt } nbt_rdata; /* - * this macro works arround the problem + * this macro works around the problem * that we need to use nbt_rdata_data * together with NBT_QTYPE_NETBIOS * for WACK replies diff --git a/source3/librpc/idl/netlogon.idl b/source3/librpc/idl/netlogon.idl index 74535fc073..eaa4ed14da 100644 --- a/source3/librpc/idl/netlogon.idl +++ b/source3/librpc/idl/netlogon.idl @@ -4,7 +4,7 @@ who contributed! */ -import "lsa.idl", "samr.idl", "security.idl", "nbt.idl"; +import "misc.idl", "lsa.idl", "samr.idl", "security.idl", "nbt.idl"; #include "idl_types.h" @@ -1056,11 +1056,11 @@ interface netlogon /*****************/ /* Function 0x15 */ - WERROR netr_NETRLOGONDUMMYROUTINE1(); + [todo] WERROR netr_NETRLOGONDUMMYROUTINE1(); /****************/ /* Function 0x16 */ - WERROR netr_NETRLOGONSETSERVICEBITS(); + [todo] WERROR netr_NETRLOGONSETSERVICEBITS(); /****************/ /* Function 0x17 */ @@ -1072,11 +1072,11 @@ interface netlogon /****************/ /* Function 0x18 */ - WERROR netr_NETRLOGONCOMPUTESERVERDIGEST(); + [todo] WERROR netr_NETRLOGONCOMPUTESERVERDIGEST(); /****************/ /* Function 0x19 */ - WERROR netr_NETRLOGONCOMPUTECLIENTDIGEST(); + [todo] WERROR netr_NETRLOGONCOMPUTECLIENTDIGEST(); /****************/ /* Function 0x1a */ @@ -1201,7 +1201,7 @@ interface netlogon /****************/ /* Function 0x20 */ - WERROR netr_NETRLOGONSENDTOSAM(); + [todo] WERROR netr_NETRLOGONSENDTOSAM(); /****************/ /* Function 0x21 */ @@ -1237,7 +1237,7 @@ interface netlogon /****************/ /* Function 0x23 */ - WERROR netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN(); + [todo] WERROR netr_NETRLOGONGETTIMESERVICEPARENTDOMAIN(); /****************/ /* Function 0x24 */ @@ -1404,5 +1404,5 @@ interface netlogon /****************/ /* Function 0x2e */ - WERROR netr_NETRSERVERGETTRUSTINFO(); + [todo] WERROR netr_NETRSERVERGETTRUSTINFO(); } diff --git a/source3/librpc/idl/ntsvcs.idl b/source3/librpc/idl/ntsvcs.idl index bac2549c73..cd71de5868 100644 --- a/source3/librpc/idl/ntsvcs.idl +++ b/source3/librpc/idl/ntsvcs.idl @@ -1,6 +1,7 @@ /* plug and play services */ + [ uuid("8d9f4e40-a03d-11ce-8f69-08003e30051b"), version(1.0), diff --git a/source3/librpc/idl/srvsvc.idl b/source3/librpc/idl/srvsvc.idl index 3f81a2d4e9..39d72b73da 100644 --- a/source3/librpc/idl/srvsvc.idl +++ b/source3/librpc/idl/srvsvc.idl @@ -1376,7 +1376,7 @@ import "security.idl", "svcctl.idl"; /******************/ /* Function: 0x22 */ - WERROR srvsvc_NETRPRNAMECANONICALIZE( + [todo] WERROR srvsvc_NETRPRNAMECANONICALIZE( ); /******************/ diff --git a/source3/librpc/idl/svcctl.idl b/source3/librpc/idl/svcctl.idl index 26cd3dee87..d1289a64d7 100644 --- a/source3/librpc/idl/svcctl.idl +++ b/source3/librpc/idl/svcctl.idl @@ -438,12 +438,12 @@ import "misc.idl"; /*****************/ /* Function 0x22 */ - WERROR svcctl_GetCurrentGroupeStateW( + [todo] WERROR svcctl_GetCurrentGroupeStateW( ); /*****************/ /* Function 0x23 */ - WERROR svcctl_EnumServiceGroupW( + [todo] WERROR svcctl_EnumServiceGroupW( ); /*****************/ diff --git a/source3/librpc/idl/winreg.idl b/source3/librpc/idl/winreg.idl index 2f02419af5..0d651800a5 100644 --- a/source3/librpc/idl/winreg.idl +++ b/source3/librpc/idl/winreg.idl @@ -297,7 +297,7 @@ import "lsa.idl", "initshutdown.idl", "security.idl"; /******************/ /* Function: 0x17 */ - WERROR winreg_UnLoadKey( + [todo] WERROR winreg_UnLoadKey( ); /******************/ @@ -369,7 +369,7 @@ import "lsa.idl", "initshutdown.idl", "security.idl"; /******************/ /* Function: 0x1f */ - WERROR winreg_SaveKeyEx( + [todo] WERROR winreg_SaveKeyEx( ); /******************/ @@ -390,6 +390,6 @@ import "lsa.idl", "initshutdown.idl", "security.idl"; /******************/ /* Function: 0x22 */ - WERROR winreg_QueryMultipleValues2( + [todo] WERROR winreg_QueryMultipleValues2( ); } diff --git a/source4/librpc/idl/eventlog.idl b/source4/librpc/idl/eventlog.idl index ee42300c7c..4a62ce14f3 100644 --- a/source4/librpc/idl/eventlog.idl +++ b/source4/librpc/idl/eventlog.idl @@ -86,7 +86,10 @@ import "lsa.idl", "security.idl"; /******************/ /* Function: 0x05 */ - [todo] NTSTATUS eventlog_GetOldestRecord(); + NTSTATUS eventlog_GetOldestRecord( + [in] policy_handle *handle, + [out,ref] uint32 *oldest_entry + ); /******************/ /* Function: 0x06 */ diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl index b26d50c173..9a6e4a202c 100644 --- a/source4/librpc/idl/lsa.idl +++ b/source4/librpc/idl/lsa.idl @@ -95,8 +95,11 @@ import "misc.idl", "security.idl"; /******************/ /* Function: 0x04 */ - [todo] NTSTATUS lsa_SetSecObj (); - + NTSTATUS lsa_SetSecObj( + [in] policy_handle *handle, + [in] security_secinfo sec_info, + [in,ref] sec_desc_buf *sdbuf + ); /******************/ /* Function: 0x05 */ @@ -484,9 +487,16 @@ import "misc.idl", "security.idl"; [todo] NTSTATUS lsa_SetQuotasForAccount(); /* Function: 0x17 */ - [todo] NTSTATUS lsa_GetSystemAccessAccount(); + NTSTATUS lsa_GetSystemAccessAccount( + [in] policy_handle *handle, + [out,ref] uint32 *access_mask + ); + /* Function: 0x18 */ - [todo] NTSTATUS lsa_SetSystemAccessAccount(); + NTSTATUS lsa_SetSystemAccessAccount( + [in] policy_handle *handle, + [in] uint32 access_mask + ); /* Function: 0x19 */ NTSTATUS lsa_OpenTrustedDomain( diff --git a/source4/librpc/idl/netlogon.idl b/source4/librpc/idl/netlogon.idl index 2298106851..8a36922fdd 100644 --- a/source4/librpc/idl/netlogon.idl +++ b/source4/librpc/idl/netlogon.idl @@ -827,6 +827,7 @@ interface netlogon /* function_code values */ typedef [v1_enum] enum { + NETLOGON_CONTROL_SYNC = 2, NETLOGON_CONTROL_REDISCOVER = 5, NETLOGON_CONTROL_TC_QUERY = 6, NETLOGON_CONTROL_TRANSPORT_NOTIFY = 7, @@ -880,6 +881,33 @@ interface netlogon /*****************/ /* Function 0x0F */ + typedef [bitmap32bit] bitmap { + NETLOGON_NEG_ACCOUNT_LOCKOUT = 0x00000001, + NETLOGON_NEG_PERSISTENT_SAMREPL = 0x00000002, + NETLOGON_NEG_ARCFOUR = 0x00000004, + NETLOGON_NEG_PROMOTION_COUNT = 0x00000008, + NETLOGON_NEG_CHANGELOG_BDC = 0x00000010, + NETLOGON_NEG_FULL_SYNC_REPL = 0x00000020, + NETLOGON_NEG_MULTIPLE_SIDS = 0x00000040, + NETLOGON_NEG_REDO = 0x00000080, + NETLOGON_NEG_PASSWORD_CHANGE_REFUSAL = 0x00000100, + NETLOGON_NEG_SEND_PASSWORD_INFO_PDC = 0x00000200, + NETLOGON_NEG_GENERIC_PASSTHROUGH = 0x00000400, + NETLOGON_NEG_CONCURRENT_RPC = 0x00000800, + NETLOGON_NEG_AVOID_ACCOUNT_DB_REPL = 0x00001000, + NETLOGON_NEG_AVOID_SECURITYAUTH_DB_REPL = 0x00002000, + NETLOGON_NEG_128BIT = 0x00004000, /* STRONG_KEYS */ + NETLOGON_NEG_TRANSITIVE_TRUSTS = 0x00008000, + NETLOGON_NEG_DNS_DOMAIN_TRUSTS = 0x00010000, + NETLOGON_NEG_PASSWORD_SET2 = 0x00020000, + NETLOGON_NEG_GETDOMAININFO = 0x00040000, + NETLOGON_NEG_CROSS_FOREST_TRUSTS = 0x00080000, + NETLOGON_NEG_NEUTRALIZE_NT4_EMULATION = 0x00100000, + NETLOGON_NEG_RODC_PASSTHROUGH = 0x00200000, + NETLOGON_NEG_AUTHENTICATED_RPC_LSASS = 0x20000000, + NETLOGON_NEG_SCHANNEL = 0x40000000 /* AUTHENTICATED_RPC */ + } netr_NegotiateFlags; + NTSTATUS netr_ServerAuthenticate2( [in,unique] [string,charset(UTF16)] uint16 *server_name, [in] [string,charset(UTF16)] uint16 account_name[], @@ -967,6 +995,8 @@ interface netlogon DS_ONLY_LDAP_NEEDED = 0x00008000, DS_IS_FLAT_NAME = 0x00010000, DS_IS_DNS_NAME = 0x00020000, + DS_TRY_NEXTCLOSEST_SITE = 0x00040000, + DS_DIRECTORY_SERVICE_6_REQUIRED = 0x00080000, DS_RETURN_DNS_NAME = 0x40000000, DS_RETURN_FLAT_NAME = 0x80000000 } netr_DsRGetDCName_flags; diff --git a/source4/librpc/idl/ntsvcs.idl b/source4/librpc/idl/ntsvcs.idl index 1cdf8eecaa..9c7bdae42d 100644 --- a/source4/librpc/idl/ntsvcs.idl +++ b/source4/librpc/idl/ntsvcs.idl @@ -20,9 +20,31 @@ interface ntsvcs [todo] void PNP_GetRelatedDeviceInstance(); [todo] void PNP_EnumerateSubKeys(); [todo] void PNP_GetDeviceList(); - [todo] void PNP_GetDeviceListSize(); + /******************/ + /* Function: 0x0b */ + + WERROR PNP_GetDeviceListSize( + [in,unique] [string,charset(UTF16)] uint16 *devicename, + [out,ref] uint32 *size, + [in] uint32 flags + ); + [todo] void PNP_GetDepth(); - [todo] void PNP_GetDeviceRegProp(); + /******************/ + /* Function: 0x0d */ + + const int DEV_REGPROP_DESC = 1; + + WERROR PNP_GetDeviceRegProp( + [in,ref] [string,charset(UTF16)] uint16 *devicepath, + [in] uint32 property, + [in,out,ref] uint32 *unknown1, + [out,ref] [size_is(*buffer_size)] [length_is(*buffer_size)] uint8 *buffer, + [in,out,ref] uint32 *buffer_size, + [in,out,ref] uint32 *needed, + [in] uint32 unknown3 + ); + [todo] void PNP_SetDeviceRegProp(); [todo] void PNP_GetClassInstance(); [todo] void PNP_CreateKey(); @@ -49,8 +71,37 @@ interface ntsvcs [todo] void PNP_RequestDeviceEject(); [todo] void PNP_IsDockStationPresent(); [todo] void PNP_RequestEjectPC(); - [todo] void PNP_HwProfFlags(); - [todo] void PNP_GetHwProfInfo(); + /******************/ + /* Function: 0x28 */ + + WERROR PNP_HwProfFlags( + [in] uint32 unknown1, + [in,ref] [string,charset(UTF16)] uint16 *devicepath, + [in] uint32 unknown2, + [in,out,ref] uint32 *unknown3, + [in,out,unique] uint16 *unknown4, + [in,unique] [string,charset(UTF16)] uint16 *unknown5, + [out,unique] [string,charset(UTF16)] uint16 **unknown5a, + [in] uint32 unknown6, + [in] uint32 unknown7 + ); + + /******************/ + /* Function: 0x29 */ + + typedef struct { + uint32 unknown1; + uint16 unknown2[160]; + uint32 unknown3; + } PNP_HwProfInfo; + + WERROR PNP_GetHwProfInfo( + [in] uint32 idx, + [in,out,ref] PNP_HwProfInfo *info, + [in] uint32 unknown1, + [in] uint32 unknown2 + ); + [todo] void PNP_AddEmptyLogConf(); [todo] void PNP_FreeLogConf(); [todo] void PNP_GetFirstLogConf(); diff --git a/source4/librpc/idl/svcctl.idl b/source4/librpc/idl/svcctl.idl index 615f4e3dab..961493d9b2 100644 --- a/source4/librpc/idl/svcctl.idl +++ b/source4/librpc/idl/svcctl.idl @@ -115,12 +115,21 @@ import "misc.idl"; /*****************/ /* Function 0x04 */ - [todo] WERROR svcctl_QueryServiceObjectSecurity( + WERROR svcctl_QueryServiceObjectSecurity( + [in] policy_handle *handle, + [in] uint32 security_flags, + [out,ref,size_is(buffer_size)] uint8 *buffer, + [in,range(0,0x40000)] uint32 buffer_size, + [out,ref,range(0,0x40000)] uint32 *needed ); /*****************/ /* Function 0x05 */ - [todo] WERROR svcctl_SetServiceObjectSecurity( + WERROR svcctl_SetServiceObjectSecurity( + [in] policy_handle *handle, + [in] uint32 security_flags, + [in,ref,size_is(buffer_size)] uint8 *buffer, + [in] uint32 buffer_size ); /*****************/ @@ -227,10 +236,22 @@ import "misc.idl"; /*****************/ /* Function 0x10 */ + typedef [bitmap32bit] bitmap { + SC_RIGHT_SVC_QUERY_CONFIG = 0x0001, + SC_RIGHT_SVC_CHANGE_CONFIG = 0x0002, + SC_RIGHT_SVC_QUERY_STATUS = 0x0004, + SC_RIGHT_SVC_ENUMERATE_DEPENDENTS = 0x0008, + SC_RIGHT_SVC_START = 0x0010, + SC_RIGHT_SVC_STOP = 0x0020, + SC_RIGHT_SVC_PAUSE_CONTINUE = 0x0040, + SC_RIGHT_SVC_INTERROGATE = 0x0080, + SC_RIGHT_SVC_USER_DEFINED_CONTROL = 0x0100 + } svcctl_ServiceAccessMask; + WERROR svcctl_OpenServiceW( [in,ref] policy_handle *scmanager_handle, [in] [string,charset(UTF16)] uint16 ServiceName[], - [in] uint32 access_mask, + [in] svcctl_ServiceAccessMask access_mask, [out,ref] policy_handle *handle ); |