Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//+--------------------------------------------------------------------------- // // Copyright (C) 1992, Microsoft Corporation. // // File: iface.idl // // Contents: Public definitions used for xmiting interfaces via RPC // // History: 28-Jan-93 Ricksa Created. // // Notes: These definitions are used for transmitting interfaces // via RPC. // //---------------------------------------------------------------------------- [ uuid(5C0EB534-BF9F-101A-8818-02608C4D2359), version(0.1), pointer_default(unique) ]
interface XmitDefs { import "wtypes.idl"; #ifndef DO_NO_IMPORTS import "obase.idl"; #endif
// These are only valid on a request (in a ORPCTHIS header). const int ORPCF_INPUT_SYNC = ORPCF_RESERVED1; const int ORPCF_ASYNC = ORPCF_RESERVED2; const int ORPCF_DYNAMIC_CLOAKING = ORPCF_RESERVED3;
// These are only valid on a reply (in a ORPCTHAT header). const int ORPCF_REJECTED = ORPCF_RESERVED1; const int ORPCF_RETRY_LATER = ORPCF_RESERVED2;
typedef struct { DWORD dwFlags; DWORD dwClientThread; } LOCALTHIS;
typedef enum tagLOCALFLAG { LOCALF_NONE = 0x0,
// Parameters in buffer not marshalled NDR LOCALF_NONNDR = 0x800 } LOCALFLAG;
// CALLCATEGORY is used internally and represents the categories of calls // that can be made.
// DCOMWORK - Get rid of the unused internal types. typedef enum tagCALLCATEGORY { CALLCAT_NOCALL = 0, // no call in progress CALLCAT_SYNCHRONOUS = 1, // normal sychornous call CALLCAT_ASYNC = 2, // asynchronous call CALLCAT_INPUTSYNC = 3, // input-synchronous call CALLCAT_INTERNALSYNC = 4, // internal ssync call CALLCAT_INTERNALINPUTSYNC = 5, // internal inputssync call CALLCAT_SCMCALL = 6 // important scm call } CALLCATEGORY;
// wire representation of an entire interface. used for wrapping a // marshalled interface in a stream representation CXmitRpcStream. typedef struct tagInterfaceData { ULONG ulCntData; // size of data [length_is(ulCntData)] BYTE abData[1024]; // data } InterfaceData;
typedef [unique] InterfaceData * PInterfaceData;
#pragma midl_echo("#define IFD_SIZE(pIFD) (sizeof(InterfaceData) + pIFD->ulCntData - 1024)") }
|