Annotation of mstools/h/rpcdcep.h, revision 1.1

1.1     ! root        1: /*++
        !             2: 
        !             3: Copyright (c) 1991 Microsoft Corporation
        !             4: 
        !             5: Module Name:
        !             6: 
        !             7:     rpcdcep.h
        !             8: 
        !             9: Abstract:
        !            10: 
        !            11:     This module contains the private RPC runtime APIs for use by the
        !            12:     stubs and by support libraries.  Applications must not call these
        !            13:     routines.
        !            14: 
        !            15: Author:
        !            16: 
        !            17:     Michael Montague (mikemon) 25-Sep-1991
        !            18: 
        !            19: Revision History:
        !            20: 
        !            21: --*/
        !            22: 
        !            23: #ifndef __RPCDCEP_H__
        !            24: #define __RPCDCEP_H__
        !            25: 
        !            26: typedef struct _RPC_VERSION {
        !            27:     unsigned short MajorVersion;
        !            28:     unsigned short MinorVersion;
        !            29: } RPC_VERSION;
        !            30: 
        !            31: typedef struct _RPC_SYNTAX_IDENTIFIER {
        !            32:     GUID SyntaxGUID;
        !            33:     RPC_VERSION SyntaxVersion;
        !            34: } RPC_SYNTAX_IDENTIFIER, PAPI * PRPC_SYNTAX_IDENTIFIER;
        !            35: 
        !            36: typedef struct _RPC_MESSAGE
        !            37: {
        !            38:     RPC_BINDING_HANDLE Handle;
        !            39:     unsigned long DataRepresentation;
        !            40:     void PAPI * Buffer;
        !            41:     unsigned int BufferLength;
        !            42:     unsigned int ProcNum;
        !            43:     PRPC_SYNTAX_IDENTIFIER TransferSyntax;
        !            44:     void PAPI * RpcInterfaceInformation;
        !            45:     void PAPI * ReservedForRuntime;
        !            46:     RPC_MGR_EPV ManagerEpv;
        !            47:     void PAPI * ImportContext;
        !            48:     unsigned long RpcFlags;
        !            49: } RPC_MESSAGE, PAPI * PRPC_MESSAGE;
        !            50: 
        !            51: typedef void (PAPI * RPC_DISPATCH_FUNCTION) (IN OUT PRPC_MESSAGE Message);
        !            52: 
        !            53: typedef struct {
        !            54:     unsigned int DispatchTableCount;
        !            55:     RPC_DISPATCH_FUNCTION PAPI * DispatchTable;
        !            56:     int Reserved;
        !            57: } RPC_DISPATCH_TABLE, PAPI * PRPC_DISPATCH_TABLE;
        !            58: 
        !            59: typedef struct _RPC_PROTSEQ_ENDPOINT
        !            60: {
        !            61:     unsigned char PAPI * RpcProtocolSequence;
        !            62:     unsigned char PAPI * Endpoint;
        !            63: } RPC_PROTSEQ_ENDPOINT, PAPI * PRPC_PROTSEQ_ENDPOINT;
        !            64: 
        !            65: /*
        !            66: Both of this types MUST start with the InterfaceId and TransferSyntax.
        !            67: Look at RpcIfInqId and I_RpcIfInqTransferSyntaxes to see why.
        !            68: */
        !            69: 
        !            70: typedef struct _RPC_SERVER_INTERFACE
        !            71: {
        !            72:     unsigned int Length;
        !            73:     RPC_SYNTAX_IDENTIFIER InterfaceId;
        !            74:     RPC_SYNTAX_IDENTIFIER TransferSyntax;
        !            75:     PRPC_DISPATCH_TABLE DispatchTable;
        !            76:     unsigned int RpcProtseqEndpointCount;
        !            77:     PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
        !            78:     void PAPI * MopInterfaceInformation;
        !            79: } RPC_SERVER_INTERFACE, PAPI * PRPC_SERVER_INTERFACE;
        !            80: 
        !            81: typedef struct _RPC_CLIENT_INTERFACE
        !            82: {
        !            83:     unsigned int Length;
        !            84:     RPC_SYNTAX_IDENTIFIER InterfaceId;
        !            85:     RPC_SYNTAX_IDENTIFIER TransferSyntax;
        !            86:     PRPC_DISPATCH_TABLE DispatchTable;
        !            87:     unsigned int RpcProtseqEndpointCount;
        !            88:     PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
        !            89:     void PAPI * MopInterfaceInformation;
        !            90: } RPC_CLIENT_INTERFACE, PAPI * PRPC_CLIENT_INTERFACE;
        !            91: 
        !            92: RPC_STATUS RPC_ENTRY
        !            93: I_RpcGetBuffer (
        !            94:     IN OUT RPC_MESSAGE PAPI * Message
        !            95:     );
        !            96: 
        !            97: RPC_STATUS RPC_ENTRY
        !            98: #ifndef WIN16RPC
        !            99: I_RpcSendReceive (
        !           100: #else
        !           101: I_RpcSendReceiveWin (
        !           102: #endif /* ! WIN16RPC */
        !           103:     IN OUT RPC_MESSAGE PAPI * Message
        !           104:     );
        !           105: 
        !           106: RPC_STATUS RPC_ENTRY
        !           107: I_RpcFreeBuffer (
        !           108:     IN OUT RPC_MESSAGE PAPI * Message
        !           109:     );
        !           110: 
        !           111: typedef void * I_RPC_MUTEX;
        !           112: 
        !           113: void RPC_ENTRY
        !           114: I_RpcRequestMutex (
        !           115:     IN OUT I_RPC_MUTEX * Mutex
        !           116:     );
        !           117: 
        !           118: void RPC_ENTRY
        !           119: I_RpcClearMutex (
        !           120:     IN I_RPC_MUTEX Mutex
        !           121:     );
        !           122: 
        !           123: void RPC_ENTRY
        !           124: I_RpcDeleteMutex (
        !           125:     IN I_RPC_MUTEX Mutex
        !           126:     );
        !           127: 
        !           128: void PAPI * RPC_ENTRY
        !           129: I_RpcAllocate (
        !           130:     IN unsigned int Size
        !           131:     );
        !           132: 
        !           133: void RPC_ENTRY
        !           134: I_RpcFree (
        !           135:     IN void PAPI * Object
        !           136:     );
        !           137: 
        !           138: void RPC_ENTRY
        !           139: I_RpcPauseExecution (
        !           140:     IN unsigned long Milliseconds
        !           141:     );
        !           142: 
        !           143: typedef
        !           144: void
        !           145: (PAPI * PRPC_RUNDOWN) (
        !           146:     void PAPI * AssociationContext
        !           147:     );
        !           148: 
        !           149: RPC_STATUS RPC_ENTRY
        !           150: I_RpcMonitorAssociation (
        !           151:     IN RPC_BINDING_HANDLE Handle,
        !           152:     IN PRPC_RUNDOWN RundownRoutine,
        !           153:     IN void * Context
        !           154:     );
        !           155: 
        !           156: RPC_STATUS RPC_ENTRY
        !           157: I_RpcStopMonitorAssociation (
        !           158:     IN RPC_BINDING_HANDLE Handle
        !           159:     );
        !           160: 
        !           161: RPC_BINDING_HANDLE RPC_ENTRY
        !           162: I_RpcGetCurrentCallHandle(
        !           163:     void
        !           164:     );
        !           165: 
        !           166: RPC_STATUS RPC_ENTRY
        !           167: I_RpcGetAssociationContext (
        !           168:     OUT void PAPI * PAPI * AssociationContext
        !           169:     );
        !           170: 
        !           171: RPC_STATUS RPC_ENTRY
        !           172: I_RpcSetAssociationContext (
        !           173:     IN void PAPI * AssociationContext
        !           174:     );
        !           175: 
        !           176: #ifdef RPC_UNICODE_SUPPORTED
        !           177: 
        !           178: RPC_STATUS RPC_ENTRY
        !           179: I_RpcNsBindingSetEntryName (
        !           180:     IN RPC_BINDING_HANDLE Binding,
        !           181:     IN unsigned long EntryNameSyntax,
        !           182:     IN unsigned short PAPI * EntryName
        !           183:     );
        !           184: 
        !           185: #else /* RPC_UNICODE_SUPPORTED */
        !           186: 
        !           187: RPC_STATUS RPC_ENTRY
        !           188: I_RpcNsBindingSetEntryName (
        !           189:     IN RPC_BINDING_HANDLE Binding,
        !           190:     IN unsigned long EntryNameSyntax,
        !           191:     IN unsigned char PAPI * EntryName
        !           192:     );
        !           193: 
        !           194: #endif /* RPC_UNICODE_SUPPORTED */
        !           195: 
        !           196: #ifdef RPC_UNICODE_SUPPORTED
        !           197: 
        !           198: RPC_STATUS RPC_ENTRY
        !           199: I_RpcBindingInqDynamicEndpoint (
        !           200:     IN RPC_BINDING_HANDLE Binding,
        !           201:     OUT unsigned short PAPI * PAPI * DynamicEndpoint
        !           202:     );
        !           203: 
        !           204: #else /* RPC_UNICODE_SUPPORTED */
        !           205: 
        !           206: RPC_STATUS RPC_ENTRY
        !           207: I_RpcBindingInqDynamicEndpoint (
        !           208:     IN RPC_BINDING_HANDLE Binding,
        !           209:     OUT unsigned char PAPI * PAPI * DynamicEndpoint
        !           210:     );
        !           211: 
        !           212: #endif /* RPC_UNICODE_SUPPORTED */
        !           213: 
        !           214: typedef struct _RPC_TRANSFER_SYNTAX
        !           215: {
        !           216:     UUID Uuid;
        !           217:     unsigned short VersMajor;
        !           218:     unsigned short VersMinor;
        !           219: } RPC_TRANSFER_SYNTAX;
        !           220: 
        !           221: RPC_STATUS RPC_ENTRY
        !           222: I_RpcIfInqTransferSyntaxes (
        !           223:     IN RPC_IF_HANDLE RpcIfHandle,
        !           224:     OUT RPC_TRANSFER_SYNTAX PAPI * TransferSyntaxes,
        !           225:     IN unsigned int TransferSyntaxSize,
        !           226:     OUT unsigned int PAPI * TransferSyntaxCount
        !           227:     );
        !           228: 
        !           229: RPC_STATUS RPC_ENTRY
        !           230: I_UuidCreate (
        !           231:     OUT UUID PAPI * Uuid
        !           232:     );
        !           233: 
        !           234: RPC_STATUS RPC_ENTRY
        !           235: I_RpcBindingCopy (
        !           236:     IN RPC_BINDING_HANDLE SourceBinding,
        !           237:     OUT RPC_BINDING_HANDLE PAPI * DestinationBinding
        !           238:     );
        !           239: 
        !           240: /* Functions to do performace timing */
        !           241: 
        !           242: extern unsigned long TraceCallTime;    /* Time to call the trace system */
        !           243: extern unsigned long ChargeCallTime;   /* Time to call the Charge API */
        !           244: 
        !           245: typedef enum {
        !           246: 
        !           247:     TIME_RUNTIME = 0,
        !           248:     TIME_STUB,
        !           249:     TIME_TRANSPORT,
        !           250:     TIME_USER,
        !           251:     TIME_MAX,
        !           252:     TIME_LOST
        !           253: 
        !           254: } TIME_SLOT;
        !           255: 
        !           256: void RPC_ENTRY
        !           257: I_RpcTimeReset(
        !           258:     void
        !           259:     );
        !           260: 
        !           261: void RPC_ENTRY
        !           262: I_RpcTimeCharge(
        !           263:     IN TIME_SLOT Account
        !           264:     );
        !           265: 
        !           266: unsigned long * RPC_ENTRY
        !           267: I_RpcTimeGet(
        !           268:     char PAPI * ApiName
        !           269:     );
        !           270: 
        !           271: 
        !           272: #endif /* __RPCDCEP_H__ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.