summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--librpc/idl/drsuapi.idl20
-rw-r--r--source4/rpc_server/drsuapi/dcesrv_drsuapi.c6
2 files changed, 22 insertions, 4 deletions
diff --git a/librpc/idl/drsuapi.idl b/librpc/idl/drsuapi.idl
index 4ca7e568f3..f535763dc6 100644
--- a/librpc/idl/drsuapi.idl
+++ b/librpc/idl/drsuapi.idl
@@ -1316,7 +1316,25 @@ interface drsuapi
/*****************/
/* Function 0x12 */
- [todo] WERROR DRSUAPI_EXECUTE_KCC();
+ typedef bitmap {
+ DRSUAPI_DS_EXECUTE_KCC_ASYNCHRONOUS_OPERATION = 0x00000001,
+ DRSUAPI_DS_EXECUTE_KCC_DAMPED = 0x00000002
+ } drsuapi_DsExecuteKCCFlags;
+
+ typedef struct {
+ uint32 taskID;
+ drsuapi_DsExecuteKCCFlags flags;
+ } drsuapi_DsExecuteKCC1;
+
+ typedef [switch_type(uint32)] union {
+ [case(1)] drsuapi_DsExecuteKCC1 ctr1;
+ } drsuapi_DsExecuteKCCRequest;
+
+ WERROR drsuapi_DsExecuteKCC(
+ [in] policy_handle *bind_handle,
+ [in] uint32 level,
+ [in, ref, switch_is(level)] drsuapi_DsExecuteKCCRequest *req
+ );
/*****************/
/* Function 0x13 */
diff --git a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c
index 491b962a85..9ae9519e9a 100644
--- a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c
+++ b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c
@@ -779,10 +779,10 @@ static WERROR dcesrv_drsuapi_DsGetDomainControllerInfo(struct dcesrv_call_state
/*
- DRSUAPI_EXECUTE_KCC
+ drsuapi_DsExecuteKCC
*/
-static WERROR dcesrv_DRSUAPI_EXECUTE_KCC(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx,
- struct DRSUAPI_EXECUTE_KCC *r)
+static WERROR dcesrv_drsuapi_DsExecuteKCC(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx,
+ struct drsuapi_DsExecuteKCC *r)
{
DCESRV_FAULT(DCERPC_FAULT_OP_RNG_ERROR);
}