diff options
Diffstat (limited to 'source4/librpc/idl/remact.idl')
-rw-r--r-- | source4/librpc/idl/remact.idl | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/source4/librpc/idl/remact.idl b/source4/librpc/idl/remact.idl new file mode 100644 index 0000000000..02223f0c11 --- /dev/null +++ b/source4/librpc/idl/remact.idl @@ -0,0 +1,52 @@ +#include "idl_types.h" + +/** + DCOM interfaces + http://www.grimes.demon.co.uk/DCOM/DCOMSpec.htm + */ + +#define IPID GUID +#define HRESULT uint32 + +[ + uuid(4d9f4ab8-7d1c-11cf-861e-0020af6e7c57), + pointer_default(unique) +] +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 + */ + uint8 FIXME[12]; + } floor_tmp; + + const uint32 MODE_GET_CLASS_OBJECT = 0xffffffff; + HRESULT RemoteActivation ( + [in] GUID Clsid, + [in, unique] unistr *pwszObjectName, + [in, unique] MInterfacePointer *pObjectStorage, + [in] uint32 ClientImpLevel, + [in] uint32 Mode, + [in] uint32 Interfaces, + [in, unique,size_is(Interfaces)] GUID *pIIDs, + [in] uint16 num_protseqs, + [in, size_is(num_protseqs)] floor_tmp protseq[], + [out] GUID 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 + ); +} |