summaryrefslogtreecommitdiff
path: root/source4/librpc/idl/dcom.idl
diff options
context:
space:
mode:
Diffstat (limited to 'source4/librpc/idl/dcom.idl')
-rw-r--r--source4/librpc/idl/dcom.idl62
1 files changed, 24 insertions, 38 deletions
diff --git a/source4/librpc/idl/dcom.idl b/source4/librpc/idl/dcom.idl
index 0c4293212f..5e881326c5 100644
--- a/source4/librpc/idl/dcom.idl
+++ b/source4/librpc/idl/dcom.idl
@@ -8,7 +8,6 @@
[
uuid("18f70770-8e64-11cf-9af1-0020af6e72f4"),
pointer_default(unique),
- pointer_default_top(unique),
version(0.0)
] interface dcom_Unknown
{
@@ -21,7 +20,6 @@
object,
uuid("00000000-0000-0000-C000-000000000046"),
pointer_default(unique),
- pointer_default_top(unique),
helpstring("Base interface for all COM interfaces")
]
interface IUnknown
@@ -30,8 +28,8 @@ interface IUnknown
/* Function 0x00 */
/* Returns the interface with the specified IID
if implemented by this object */
- [local] WERROR QueryInterface([in] GUID *iid,
- [out,iid_is(riid),ref] IUnknown **data);
+ [local] WERROR QueryInterface([in,unique] GUID *iid,
+ [out,iid_is(riid)] IUnknown **data);
/*****************/
/* Function 0x01 */
@@ -46,13 +44,12 @@ interface IUnknown
[
object,
uuid("00000001-0000-0000-C000-000000000046"),
- pointer_default_top(unique),
pointer_default(unique)
] interface IClassFactory : IUnknown
{
- [local] WERROR CreateInstance([in] MInterfacePointer *pUnknown,
- [in] GUID *iid,
- [out, iid_is(riid)] MInterfacePointer *ppv);
+ [local] WERROR CreateInstance([in,unique] MInterfacePointer *pUnknown,
+ [in,unique] GUID *iid,
+ [out, iid_is(riid),unique] MInterfacePointer *ppv);
[call_as(CreateInstance)] WERROR RemoteCreateInstance();
@@ -73,7 +70,6 @@ interface IUnknown
[
uuid("00000131-0000-0000-C000-000000000046"),
object,
- pointer_default_top(unique),
pointer_default(unique),
helpstring("Remote version of IUnknown")
]
@@ -87,11 +83,11 @@ interface IRemUnknown : IUnknown
REMQIRESULT;
[call_as(QueryInterface)] WERROR RemQueryInterface (
- [in] GUID *ripid, /* interface to QI on */
+ [in,unique] GUID *ripid, /* interface to QI on */
[in] uint32 cRefs, /* count of AddRefs requested */
[in] uint16 cIids, /* count of IIDs that follow */
- [in, size_is(cIids)] GUID *iids, /* IIDs to QI for */
- [out, size_is(cIids)] MInterfacePointer *ip
+ [in, unique, size_is(cIids)] GUID *iids, /* IIDs to QI for */
+ [out, size_is(cIids), unique] MInterfacePointer *ip
);
typedef struct
@@ -104,7 +100,7 @@ interface IRemUnknown : IUnknown
[call_as(AddRef)] WERROR RemAddRef (
[in] uint16 cInterfaceRefs,
[in, size_is(cInterfaceRefs)] REMINTERFACEREF InterfaceRefs[],
- [out, size_is(cInterfaceRefs)] WERROR *pResults
+ [out, size_is(cInterfaceRefs), unique] WERROR *pResults
);
[call_as(Release)] WERROR RemRelease (
@@ -115,7 +111,6 @@ interface IRemUnknown : IUnknown
[
uuid("00000140-0000-0000-c000-000000000046"),
- pointer_default_top(unique),
pointer_default(unique),
object
] interface IClassActivator : IUnknown
@@ -129,7 +124,6 @@ interface IRemUnknown : IUnknown
[
uuid("00000136-0000-0000-c000-000000000046"),
- pointer_default_top(unique),
pointer_default(unique),
object
] interface ISCMLocalActivator : IClassActivator
@@ -139,7 +133,6 @@ interface IRemUnknown : IUnknown
[
pointer_default(unique),
- pointer_default_top(unique),
uuid("c6f3ee72-ce7e-11d1-b71e-00c04fc3111a")
] interface IMachineLocalActivator
{
@@ -148,7 +141,6 @@ interface IRemUnknown : IUnknown
[
pointer_default(unique),
- pointer_default_top(unique),
uuid("e60c73e6-88f9-11cf-9af1-0020af6e72f4")
] interface ILocalObjectExporter
{
@@ -160,7 +152,6 @@ interface IRemUnknown : IUnknown
[
uuid("000001a0-0000-0000-c000-000000000046"),
pointer_default(unique),
- pointer_default_top(unique),
object
]
interface ISystemActivator : IClassActivator
@@ -180,25 +171,23 @@ interface IRemUnknown : IUnknown
[
object,
pointer_default(unique),
- pointer_default_top(unique),
uuid("00000143-0000-0000-C000-000000000046")
]
interface IRemUnknown2 : IRemUnknown
{
[call_as(QueryInterface2)] WERROR RemQueryInterface2 (
- [in] GUID *ripid,
+ [in, unique] GUID *ripid,
[in] uint16 cIids,
- [in, size_is(cIids)] GUID *iids,
- [out, size_is(cIids)] WERROR *phr,
- [out, size_is(cIids)] MInterfacePointer *ppMIF
+ [in, size_is(cIids), unique] GUID *iids,
+ [out, size_is(cIids), unique] WERROR *phr,
+ [out, size_is(cIids), unique] MInterfacePointer *ppMIF
);
}
[
object,
pointer_default(unique),
- pointer_default_top(unique),
uuid("00000136-0000-0000-C000-000000000046")
] interface ISCMActivator : IClassActivator
{
@@ -208,14 +197,13 @@ interface IRemUnknown2 : IRemUnknown
[
object,
pointer_default(unique),
- pointer_default_top(unique),
uuid("00020400-0000-0000-C000-000000000046")
] interface IDispatch : IUnknown
{
/*****************/
/* Function 0x03 */
WERROR GetTypeInfoCount(
- [out] uint16 *pctinfo);
+ [out, unique] uint16 *pctinfo);
typedef struct {
} REF_ITypeInfo;
@@ -225,16 +213,16 @@ interface IRemUnknown2 : IRemUnknown
WERROR GetTypeInfo (
[in] uint16 iTInfo,
[in] uint32 lcid,
- [out] REF_ITypeInfo *ppTInfo);
+ [out, unique] REF_ITypeInfo *ppTInfo);
/*****************/
/* Function 0x05 */
WERROR GetIDsOfNames(
- [in] GUID *riid,
+ [in, unique] GUID *riid,
/*FIXME[in,size_is(cNames)] OLESTR *rgszNames[], */
[in] uint16 cNames,
[in] uint32 lcid,
- [out,size_is(cNames)] uint32 *rgDispId);
+ [out,size_is(cNames), unique] uint32 *rgDispId);
typedef struct {
uint16 vartype;
@@ -254,13 +242,13 @@ interface IRemUnknown2 : IRemUnknown
/* Function 0x06 */
WERROR Invoke(
[in] uint32 dispIdMember,
- [in] GUID *riid,
+ [in, unique] GUID *riid,
[in] uint32 lcid,
[in] uint16 wFlags,
- [out,in] DISPPARAMS *pDispParams,
- [out] VARIANT *pVarResult,
- [out] EXCEPINFO *pExcepInfo,
- [out] uint16 *puArgErr);
+ [out,in, unique] DISPPARAMS *pDispParams,
+ [out, unique] VARIANT *pVarResult,
+ [out, unique] EXCEPINFO *pExcepInfo,
+ [out, unique] uint16 *puArgErr);
}
[
@@ -277,7 +265,6 @@ interface IRemUnknown2 : IRemUnknown
uuid(DA23F6DB-6F45-466C-9EED-0B65286F2D78),
helpstring("ICoffeeMachine Interface"),
pointer_default(unique),
- pointer_default_top(unique),
object
] interface ICoffeeMachine : IUnknown
{
@@ -295,7 +282,6 @@ interface IRemUnknown2 : IRemUnknown
[
object,
pointer_default(unique),
- pointer_default_top(unique),
uuid("0000000C-0000-0000-C000-000000000046"),
helpstring("Stream")
]
@@ -304,12 +290,12 @@ interface IStream : IUnknown
WERROR Read(
[out, size_is(num_requested), length_is(num_read)] uint8 pv[],
[in] uint32 num_requested,
- [in] uint32 *num_readx,
+ [in, unique] uint32 *num_readx,
[out] uint32 num_read
);
WERROR Write(
- [in,size_is(num_requested)] uint8 *data,
+ [in,size_is(num_requested),unique] uint8 *data,
[in] uint32 num_requested,
[out] uint32 num_written);
}