diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2004-09-28 19:20:00 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:59:27 -0500 |
commit | b79602fab5ad67aaff4492afd90b52e3292c7ef1 (patch) | |
tree | 0f90535b7c443472e49b5c11899e33ed40b56ac1 /source4/librpc/idl/remact.idl | |
parent | c567d64d66e1548ef5afc3ba784f8fa8972e3674 (diff) | |
download | samba-b79602fab5ad67aaff4492afd90b52e3292c7ef1.tar.gz samba-b79602fab5ad67aaff4492afd90b52e3292c7ef1.tar.bz2 samba-b79602fab5ad67aaff4492afd90b52e3292c7ef1.zip |
r2735: More DCOM updates:
- Several updates to the interface definitions after reading some more of the
specs
- Add Remote Activation interface
- Add body extension uuids
- Add oxidresolve torture test to list
- Make pidl complain about object interfaces that don't inherit from IUnknown
(This used to be commit 1bb471832830d73f0c7290e2ec12878518598379)
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 + ); +} |