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) Microsoft Corporation, 1996 - 1999
Module Name:
Loader.hxx
Abstract:
Global state for the transport interface
Author:
Mario Goertzel [MarioGo]
Revision History:
MarioGo 11/1/1996 Bits 'n pieces EdwardR 07/1/1997 Added MSMQ support.
--*/
#ifndef __LOADER_HXX
#define __LOADER_HXX
//
// Global state
//
extern DWORD gdwComputerNameLength; extern RPC_CHAR gpstrComputerName[];
extern const RPC_CHAR HexDigits[];
extern LONG g_NotifyRt;
#ifdef _INTERNAL_RPC_BUILD_
extern RPCLT_PDU_FILTER_FUNC gpfnFilter; #endif
//
// Transport interfaces defined by each protocol
//
extern const RPC_CONNECTION_TRANSPORT TCP_TransportInterface; #ifdef SPX_ON
extern const RPC_CONNECTION_TRANSPORT SPX_TransportInterface; #endif
extern const RPC_CONNECTION_TRANSPORT NMP_TransportInterface; #ifdef NETBIOS_ON
extern const RPC_CONNECTION_TRANSPORT NBF_TransportInterface; extern const RPC_CONNECTION_TRANSPORT NBT_TransportInterface; extern const RPC_CONNECTION_TRANSPORT NBI_TransportInterface; #endif
#if defined(APPLETALK_ON)
extern const RPC_CONNECTION_TRANSPORT DSP_TransportInterface; #endif
extern const RPC_CONNECTION_TRANSPORT HTTP_TransportInterface; extern const RPC_DATAGRAM_TRANSPORT UDP_TransportInterface; extern const RPC_DATAGRAM_TRANSPORT IPX_TransportInterface; extern const RPC_DATAGRAM_TRANSPORT CDP_TransportInterface; #ifdef NCADG_MQ_ON
extern const RPC_DATAGRAM_TRANSPORT MQ_TransportInterface; #endif
//
// Each protocol is assigned an ID here
//
typedef INT PROTOCOL_ID;
extern PROTOCOL_ID MapProtseq( IN const RPC_CHAR *Protseq );
extern PROTOCOL_ID MapProtseq( IN const CHAR *Protseq );
extern PROTOCOL_ID MapProtocolId ( IN UINT Protocol, IN UINT AddressFamily );
//
// Based on ID, each protocol is given an entry in the TransportTable
//
class BASE_CONNECTION; typedef BASE_CONNECTION *PCONNECTION;
typedef RPC_STATUS (*CO_READ_MESSAGE)(PCONNECTION, DWORD, BUFFER *, PUINT ); typedef RPC_STATUS (*CO_ABORT)(RPC_TRANSPORT_CONNECTION);
struct TRANSPORT_TABLE_ENTRY { UINT ProtocolTowerId; UINT AddressTowerId; RPC_TRANSPORT_INTERFACE pInfo; };
extern const TRANSPORT_TABLE_ENTRY TransportTable[]; extern const DWORD cTransportTable;
#endif // __LOADER_HXX
|