svn commit: samba r2740 - in branches/SAMBA_4_0/source/librpc/idl: .

jelmer at samba.org jelmer at samba.org
Tue Sep 28 22:04:36 GMT 2004


Author: jelmer
Date: 2004-09-28 22:04:35 +0000 (Tue, 28 Sep 2004)
New Revision: 2740

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source/librpc/idl&rev=2740&nolog=1

Log:
Finish the RemoteActivation interface. Torture tests will follow 
after pidl has been fixed (to be able to use input variables 
inside size_is() for output variables)

Modified:
   branches/SAMBA_4_0/source/librpc/idl/dcom.idl
   branches/SAMBA_4_0/source/librpc/idl/remact.idl


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/idl/dcom.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/dcom.idl	2004-09-28 21:44:05 UTC (rev 2739)
+++ branches/SAMBA_4_0/source/librpc/idl/dcom.idl	2004-09-28 22:04:35 UTC (rev 2740)
@@ -242,7 +242,7 @@
 	{
 	} u_null;
 
-	typedef union 
+	typedef [nodiscriminant] union 
 	{
 		[case(OBJREF_NULL)] u_null u_null;
 		[case(OBJREF_STANDARD)] u_standard u_standard;
@@ -262,7 +262,8 @@
 	// wire representation of a marshalled interface pointer
 	typedef [public] struct 
 	{
-		[subcontext(4)] OBJREF abData; // data (OBJREF)
+		uint32 size;
+		[size_is(size)] uint8 data[];
 	} MInterfacePointer;
 }
 
@@ -365,7 +366,7 @@
 	object
 ] interface IClassActivator : IUnknown
 {
-	void RemoteGetClassObject([in] GUID classid, 
+	void RemoteGetClassObject([in] GUID clsid, 
 											  [in] uint32 context,
 											  [in] LCID locale,
 											  [in] GUID iid/*FIXME,
@@ -380,11 +381,7 @@
 ]
 	interface ISystemActivator : IClassActivator
 {
-	void ISystemActivatorRemoteCreateInstance(
-											  [in] GUID classid,
-											  [in] OBJREF obj,
-											  [out] MInterfacePointer res
-											  );
+	void ISystemActivatorRemoteCreateInstance();
 }
 
 

Modified: branches/SAMBA_4_0/source/librpc/idl/remact.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/remact.idl	2004-09-28 21:44:05 UTC (rev 2739)
+++ branches/SAMBA_4_0/source/librpc/idl/remact.idl	2004-09-28 22:04:35 UTC (rev 2740)
@@ -14,14 +14,6 @@
 ]
 interface IRemoteActivation
 {
-	typedef [public] struct {
-		MInterfacePointer *ppInterfaceData;
-	} ppInterfaceDataArray;
-
-	typedef [public] struct {
-		DUALSTRINGARRAY *dualstringarray;
-	} REF_DUALSTRINGARRAY;
-
 	typedef struct {
 		/* Looks very much like a protocol tower to me, but it appears 
 		   to be aligned differently then it is in epmapper -jelmer
@@ -31,6 +23,8 @@
 
 	const uint32 MODE_GET_CLASS_OBJECT = 0xffffffff;
 	HRESULT RemoteActivation (
+			[in] ORPCTHIS ORPCthis,
+			[out] ORPCTHAT ORPCthat,
 			[in] GUID Clsid,
 			[in, unique] unistr *pwszObjectName,
 			[in, unique] MInterfacePointer *pObjectStorage,
@@ -40,13 +34,13 @@
 			[in, unique,size_is(Interfaces)] GUID *pIIDs,
 			[in] uint16 num_protseqs,
 			[in, size_is(num_protseqs)] floor_tmp protseq[],
-			[out] GUID pOxid,
+			[out] HYPER_T pOxid,
 			[out] DUALSTRINGARRAY *pdsaOxidBindings,
 			[out] IPID ipidRemUnknown,
 			[out] uint32 pAuthnHint,
 			[out] COMVERSION pServerVersion,
-			[out] HRESULT *phr,
-			[out,size_is(Interfaces)] ppInterfaceDataArray *ppInterfaceData,
-			[out,size_is(Interfaces)] HRESULT *pResults
+			[out] HRESULT phr,
+			[out,size_is(Interfaces)] MInterfacePointer ifaces[],
+			[out,size_is(Interfaces)] HRESULT results[]
 			);
 }



More information about the samba-cvs mailing list