summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/librpc/gen_ndr/initshutdown.h1
-rw-r--r--source3/librpc/gen_ndr/lsa.h1
-rw-r--r--source3/librpc/gen_ndr/ndr_initshutdown.c1
-rw-r--r--source3/librpc/gen_ndr/ndr_lsa.c1
-rw-r--r--source3/librpc/gen_ndr/ndr_netlogon.c1
-rw-r--r--source3/librpc/gen_ndr/netlogon.h1
-rw-r--r--source3/librpc/idl/drsuapi.idl12
-rw-r--r--source3/librpc/idl/eventlog.idl32
-rw-r--r--source3/librpc/idl/initshutdown.idl2
-rw-r--r--source3/librpc/idl/lsa.idl52
-rw-r--r--source3/librpc/idl/nbt.idl2
-rw-r--r--source3/librpc/idl/netlogon.idl16
-rw-r--r--source3/librpc/idl/ntsvcs.idl1
-rw-r--r--source3/librpc/idl/srvsvc.idl2
-rw-r--r--source3/librpc/idl/svcctl.idl4
-rw-r--r--source3/librpc/idl/winreg.idl6
-rw-r--r--source4/librpc/idl/eventlog.idl5
-rw-r--r--source4/librpc/idl/lsa.idl18
-rw-r--r--source4/librpc/idl/netlogon.idl30
-rw-r--r--source4/librpc/idl/ntsvcs.idl59
-rw-r--r--source4/librpc/idl/svcctl.idl27
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
);