r5671: Bunch of fixes related to arrays and pointers to arrays.
[samba.git] / source4 / librpc / idl / remact.idl
1 #include "idl_types.h"
2
3 /**
4   DCOM interfaces
5   http://www.grimes.demon.co.uk/DCOM/DCOMSpec.htm
6  */
7
8 [
9         uuid("4d9f4ab8-7d1c-11cf-861e-0020af6e7c57"),
10         pointer_default(unique),
11         endpoint("ncalrpc:", "ncacn_ip_tcp:[135]", "ncacn_np:[\\pipe\\epmapper]"),
12         depends(dcom)
13 ]
14 interface IRemoteActivation
15 {
16         typedef enum 
17         {
18                 RPC_C_IMP_LEVEL_DEFAULT = 0,
19                 RPC_C_IMP_LEVEL_ANONYMOUS = 1,
20                 RPC_C_IMP_LEVEL_IDENTIFY = 2,
21                 RPC_C_IMP_LEVEL_IMPERSONATE = 3,
22                 RPC_C_IMP_LEVEL_DELEGATE = 4
23         } imp_levels;
24         
25         const uint32 MODE_GET_CLASS_OBJECT = 0xffffffff;
26         WERROR RemoteActivation (
27                         [in] ORPCTHIS this,
28                         [out] ORPCTHAT that,
29                         [in] GUID Clsid,
30                         [in] unistr *pwszObjectName,
31                         [in] MInterfacePointer *pObjectStorage,
32                         [in] uint32 ClientImpLevel,
33                         [in] uint32 Mode,
34                         [in,range(1,32768)] uint32 Interfaces,
35                         [in,size_is(Interfaces)] GUID *pIIDs[],
36                         [in] uint16 num_protseqs,
37                         [in, size_is(num_protseqs)] uint16 protseq[*],
38                         [out] hyper pOxid,
39                         [out] DUALSTRINGARRAY *pdsaOxidBindings,
40                         [out] GUID ipidRemUnknown,
41                         [out] uint32 AuthnHint,
42                         [out] COMVERSION ServerVersion,
43                         [out] WERROR hr,
44                         [out,size_is(Interfaces)] MInterfacePointer *ifaces[],
45                         [out,size_is(Interfaces)] WERROR results[]
46                         );
47 }