/* header auto-generated by pidl */

#ifndef _PIDL_HEADER_dcom_Unknown
#define _PIDL_HEADER_dcom_Unknown

#include <stdint.h>

#include "libcli/util/ntstatus.h"

#include "librpc/gen_ndr/orpc.h"
#include "librpc/gen_ndr/misc.h"
#ifndef _HEADER_dcom_Unknown
#define _HEADER_dcom_Unknown


struct UseProtSeq {
	int _dummy_element;
};


struct GetCustomProtseqInfo {
	int _dummy_element;
};


struct UpdateResolverBindings {
	int _dummy_element;
};

#endif /* _HEADER_dcom_Unknown */
#ifndef _HEADER_IUnknown
#define _HEADER_IUnknown


struct QueryInterface {
	struct {
		struct ORPCTHIS ORPCthis;
		struct GUID *iid;/* [unique] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		struct MInterfacePointer **data;/* [ref,iid_is(riid)] */
		WERROR result;
	} out;

};


struct AddRef {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		uint32_t result;
	} out;

};


struct Release {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		uint32_t result;
	} out;

};

#endif /* _HEADER_IUnknown */
#ifndef _HEADER_IClassFactory
#define _HEADER_IClassFactory


struct CreateInstance {
	struct {
		struct ORPCTHIS ORPCthis;
		struct MInterfacePointer *pUnknown;/* [unique] */
		struct GUID *iid;/* [unique] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		struct MInterfacePointer *ppv;/* [unique,iid_is(riid)] */
		WERROR result;
	} out;

};


struct RemoteCreateInstance {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};


struct LockServer {
	struct {
		struct ORPCTHIS ORPCthis;
		uint8_t lock;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};


struct RemoteLockServer {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};

#endif /* _HEADER_IClassFactory */
#ifndef _HEADER_IRemUnknown
#define _HEADER_IRemUnknown

struct REMQIRESULT {
	WERROR hResult;
	struct STDOBJREF std;
}/* [public] */;

struct REMINTERFACEREF {
	struct GUID ipid;
	uint32_t cPublicRefs;
	uint32_t cPrivateRefs;
};


struct RemQueryInterface {
	struct {
		struct ORPCTHIS ORPCthis;
		struct GUID *ripid;/* [unique] */
		uint32_t cRefs;
		uint16_t cIids;
		struct GUID *iids;/* [unique,size_is(cIids)] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		struct MInterfacePointer *ip;/* [unique,size_is(cIids)] */
		WERROR result;
	} out;

};


struct RemAddRef {
	struct {
		struct ORPCTHIS ORPCthis;
		uint16_t cInterfaceRefs;
		struct REMINTERFACEREF *InterfaceRefs;/* [size_is(cInterfaceRefs)] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR *pResults;/* [unique,size_is(cInterfaceRefs)] */
		WERROR result;
	} out;

};


struct RemRelease {
	struct {
		struct ORPCTHIS ORPCthis;
		uint16_t cInterfaceRefs;
		struct REMINTERFACEREF *InterfaceRefs;/* [size_is(cInterfaceRefs)] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};

#endif /* _HEADER_IRemUnknown */
#ifndef _HEADER_IClassActivator
#define _HEADER_IClassActivator


struct GetClassObject {
	struct {
		struct ORPCTHIS ORPCthis;
		struct GUID clsid;
		uint32_t context;
		uint32_t locale;
		struct GUID iid;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		struct MInterfacePointer *data;/* [ref,iid_is(iid)] */
	} out;

};

#endif /* _HEADER_IClassActivator */
#ifndef _HEADER_ISCMLocalActivator
#define _HEADER_ISCMLocalActivator


struct ISCMLocalActivator_CreateInstance {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};

#endif /* _HEADER_ISCMLocalActivator */
#ifndef _HEADER_IMachineLocalActivator
#define _HEADER_IMachineLocalActivator


struct IMachineLocalActivator_foo {
	struct {
		WERROR result;
	} out;

};

#endif /* _HEADER_IMachineLocalActivator */
#ifndef _HEADER_ILocalObjectExporter
#define _HEADER_ILocalObjectExporter


struct ILocalObjectExporter_Foo {
	struct {
		WERROR result;
	} out;

};

#endif /* _HEADER_ILocalObjectExporter */
#ifndef _HEADER_ISystemActivator
#define _HEADER_ISystemActivator


struct ISystemActivatorRemoteCreateInstance {
	struct {
		struct ORPCTHIS ORPCthis;
		uint64_t unknown1;
		struct MInterfacePointer iface1;
		uint64_t unknown2;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		uint32_t *unknown3;/* [ref] */
		struct MInterfacePointer *iface2;/* [ref] */
		WERROR result;
	} out;

};

#endif /* _HEADER_ISystemActivator */
#ifndef _HEADER_IRemUnknown2
#define _HEADER_IRemUnknown2


struct RemQueryInterface2 {
	struct {
		struct ORPCTHIS ORPCthis;
		struct GUID *ripid;/* [unique] */
		uint16_t cIids;
		struct GUID *iids;/* [unique,size_is(cIids)] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR *phr;/* [unique,size_is(cIids)] */
		struct MInterfacePointer *ppMIF;/* [unique,size_is(cIids)] */
		WERROR result;
	} out;

};

#endif /* _HEADER_IRemUnknown2 */
#ifndef _HEADER_IDispatch
#define _HEADER_IDispatch

struct REF_ITypeInfo {
	char _empty_;
};

struct VARIANT {
	uint16_t vartype;
	uint16_t FIXME;
};

struct DISPPARAMS {
	uint16_t FIXME;
};

struct EXCEPINFO {
	uint16_t FIXME;
};


struct GetTypeInfoCount {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		uint16_t *pctinfo;/* [unique] */
		WERROR result;
	} out;

};


struct GetTypeInfo {
	struct {
		struct ORPCTHIS ORPCthis;
		uint16_t iTInfo;
		uint32_t lcid;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		struct REF_ITypeInfo *ppTInfo;/* [unique] */
		WERROR result;
	} out;

};


struct GetIDsOfNames {
	struct {
		struct ORPCTHIS ORPCthis;
		struct GUID *riid;/* [unique] */
		uint16_t cNames;
		uint32_t lcid;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		uint32_t *rgDispId;/* [unique,size_is(cNames)] */
		WERROR result;
	} out;

};


struct Invoke {
	struct {
		struct ORPCTHIS ORPCthis;
		uint32_t dispIdMember;
		struct GUID *riid;/* [unique] */
		uint32_t lcid;
		uint16_t wFlags;
		struct DISPPARAMS *pDispParams;/* [unique] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		struct VARIANT *pVarResult;/* [unique] */
		struct EXCEPINFO *pExcepInfo;/* [unique] */
		uint16_t *puArgErr;/* [unique] */
		struct DISPPARAMS *pDispParams;/* [unique] */
		WERROR result;
	} out;

};

#endif /* _HEADER_IDispatch */
#ifndef _HEADER_IMarshal
#define _HEADER_IMarshal


struct MarshalInterface {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};


struct UnMarshalInterface {
	struct {
		struct ORPCTHIS ORPCthis;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};

#endif /* _HEADER_IMarshal */
#ifndef _HEADER_ICoffeeMachine
#define _HEADER_ICoffeeMachine


struct MakeCoffee {
	struct {
		struct ORPCTHIS ORPCthis;
		const char *flavor;/* [ref,charset(UTF16)] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		WERROR result;
	} out;

};

#endif /* _HEADER_ICoffeeMachine */
#ifndef _HEADER_IStream
#define _HEADER_IStream


struct Read {
	struct {
		struct ORPCTHIS ORPCthis;
		uint32_t num_requested;
		uint32_t *num_readx;/* [unique] */
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		uint8_t *pv;/* [length_is(*num_read),size_is(num_requested)] */
		uint32_t *num_read;/* [ref] */
		WERROR result;
	} out;

};


struct Write {
	struct {
		struct ORPCTHIS ORPCthis;
		uint8_t *data;/* [unique,size_is(num_requested)] */
		uint32_t num_requested;
	} in;

	struct {
		struct ORPCTHAT *ORPCthat;/* [ref] */
		uint32_t *num_written;/* [ref] */
		WERROR result;
	} out;

};

#endif /* _HEADER_IStream */
#endif /* _PIDL_HEADER_dcom_Unknown */
