r4450: the beginnings of IDL for the dssetup pipe. I need this pipe for ACL editing...
[samba.git] / source4 / librpc / idl / dssetup.idl
index e50b71f2db06958817d74d4265af3a097c561d68..17288e5791aafc25d94802a0e9621d1c09e6eb3e 100644 (file)
@@ -1,18 +1,47 @@
+#include "idl_types.h"
+
+/*
+  dssetup interface definition
+*/
+
 [
        uuid("3919286a-b10c-11d0-9ba8-00c04fd92ef5"),
        version(0.0),
+       endpoint("ncacn_np:[\\pipe\\lsarpc]","ncacn_np:[\\pipe\\lsass]"),
+       pointer_default(unique),
        helpstring("Active Directory Setup")
 ] interface dssetup
 {
-       void DsRolerGetPrimaryDomainInformation();
-       void DsRolerDnsNameToFlatName();
-       void DsRolerDcAsDc();
-       void DsRolerDcAsReplica();
-       void DsRolerDemoteDc();
-       void DsRolerGetDcOperationProgress();
-       void DsRolerGetDcOperationResults();
-       void DsRolerCancel();
-       void DsRolerServerSaveStateForUpgrade();
-       void DsRolerUpgradeDownlevelServer();
-       void DsRolerAbortDownlevelServerUpgrade();
+       /**********************************************/
+       /* Function 0x00                              */
+
+       typedef struct {
+               uint16    role;
+               uint32    flags;
+               unistr    *domain;
+               unistr    *dns_domain;
+               unistr    *forest;
+               GUID domain_guid;
+       } ds_DomainBasicInformation;
+       
+       typedef union {
+               [case(1)] ds_DomainBasicInformation info1;
+       } ds_DomainInformation;
+
+       NTSTATUS ds_RolerGetPrimaryDomainInformation(
+               [in] uint16 level,
+               [out,switch_is(level)] ds_DomainInformation *info
+               );
+
+
+       NTSTATUS ds_RolerDnsNameToFlatName();
+       NTSTATUS ds_RolerDcAsDc();
+       NTSTATUS ds_RolerDcAsReplica();
+       NTSTATUS ds_RolerDemoteDc();
+       NTSTATUS ds_RolerGetDcOperationProgress();
+       NTSTATUS ds_RolerGetDcOperationResults();
+       NTSTATUS ds_RolerCancel();
+       NTSTATUS ds_RolerServerSaveStateForUpgrade();
+       NTSTATUS ds_RolerUpgradeDownlevelServer();
+       NTSTATUS ds_RolerAbortDownlevelServerUpgrade();
 }