summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2004-11-02 15:32:58 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:05:21 -0500
commitc1f9a94eba2b77dee91aa10997f117b31af12c38 (patch)
tree0e30492d0549aa5e16aedb945f92749d9b25c093 /source4/librpc
parent5f6ec5270df147f1bd534a25f86866831aa816e8 (diff)
downloadsamba-c1f9a94eba2b77dee91aa10997f117b31af12c38.tar.gz
samba-c1f9a94eba2b77dee91aa10997f117b31af12c38.tar.bz2
samba-c1f9a94eba2b77dee91aa10997f117b31af12c38.zip
r3487: RemoteActivation works! The only odd bit is that I get either a
NT_STATUS_BUFFER_TOO_SMALL or a NT_STATUS_NET_WRITE_FAULT if I try other user accounts. Must've got something to do with the auth padding... (This used to be commit f6f3d312bf43354564a9b0816edc3a13b520192d)
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/idl/dcom.idl18
1 files changed, 9 insertions, 9 deletions
diff --git a/source4/librpc/idl/dcom.idl b/source4/librpc/idl/dcom.idl
index 3c066acaee..da0b51cf36 100644
--- a/source4/librpc/idl/dcom.idl
+++ b/source4/librpc/idl/dcom.idl
@@ -234,7 +234,7 @@ interface ObjectRpcBaseTypes
GUID clsid; /* Clsid of unmarshaling code */
uint32 cbExtension; /* size of extension data */
uint32 size; /* size of data that follows */
- [size_is(size), ref] uint8 *pData; /* extension + class specific data */
+ [size_is(size)] uint8 pData[]; /* extension + class specific data */
} u_custom;
typedef struct
@@ -262,7 +262,7 @@ interface ObjectRpcBaseTypes
typedef [public] struct
{
uint32 size;
- [size_is(size)] uint8 data[];
+ [subcontext(4)] OBJREF obj;
} MInterfacePointer;
}
@@ -278,8 +278,8 @@ interface IUnknown
/* Function 0x00 */
/* Returns the interface with the specified IID
if implemented by this object */
- [local] WERROR QueryInterface([in] IID *riid
- /*FIXME, [out] void **data*/);
+ [local] WERROR QueryInterface([in] IID *riid,
+ [out,iid_is(riid)] MInterfacePointer *data);
/*****************/
/* Function 0x01 */
@@ -297,9 +297,9 @@ interface IUnknown
pointer_default(unique)
] interface IClassFactory : IUnknown
{
- [local] WERROR CreateInstance(/*FIXME[in] IUnknown *pUnknown,
+ [local] WERROR CreateInstance(/*FIXME[in] IUnknown *pUnknown*/,
[in] IID *riid,
- [out, iid_is(riid)] void **ppv*/);
+ [out, iid_is(riid)] MInterfacePointer *ppv);
[call_as(CreateInstance)] WERROR RemoteCreateInstance();
@@ -338,7 +338,7 @@ interface IRemUnknown : IUnknown
[in] uint32 cRefs, /* count of AddRefs requested */
[in] uint16 cIids, /* count of IIDs that follow */
[in, size_is(cIids)] IID* iids, /*, // IIDs to QI for */
- [out] MInterfacePointer *ip
+ [out, size_is(cIids)] MInterfacePointer *ip
);
typedef struct
@@ -368,8 +368,8 @@ interface IRemUnknown : IUnknown
void RemoteGetClassObject([in] GUID clsid,
[in] uint32 context,
[in] LCID locale,
- [in] GUID iid/*FIXME,
- [out, iid_is(iid)] void *data */);
+ [in] GUID iid,
+ [out, iid_is(iid)] MInterfacePointer data);
}
/* Looks like this is the equivalent of .NET's