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.
 
 
 
 
 
 

207 lines
7.5 KiB

/*++
Copyright (c) 1998 Microsoft Corporation
Module Name:
conext.h
Abstract:
This file contains all declarations
used in handling NBF connections.
Author:
Chaitanya Kodeboyina
Environment:
User Mode
--*/
#ifndef __CONEXT_H
#define __CONEXT_H
//
// Constants
//
// Linkage Type
#define LINKAGE 0
#define ADDRESS 1
#define ADDFILE 2
//
// Macros
//
#ifndef FIELD_OFFSET
#define FIELD_OFFSET(type, field) ((LONG)&(((type *)0)->field))
#endif//FIELD_OFFSET
#define OFFSET(field) FIELD_OFFSET(TP_CONNECTION, field)
//
// Helper Prototypes
//
UINT ReadConnection(PTP_CONNECTION pConnection, ULONG proxyPtr);
UINT PrintConnection(PTP_CONNECTION pConnection, ULONG proxyPtr, ULONG printDetail);
UINT FreeConnection(PTP_CONNECTION pConnection);
VOID PrintConnectionListOnAddress(PVOID ListEntryPointer, ULONG ListEntryProxy, ULONG printDetail);
VOID PrintConnectionListOnAddrFile(PVOID ListEntryPointer, ULONG ListEntryProxy, ULONG printDetail);
//
// Constants
//
StructAccessInfo ConnectionInfo =
{
"Connection",
{
{ "Type", OFFSET(Type), sizeof(CSHORT), NULL, LOW },
{ "Size", OFFSET(Size), sizeof(USHORT), NULL, LOW },
{ "ReferenceCount",
OFFSET(ReferenceCount), sizeof(ULONG), NULL, LOW },
{ "SpecialRefCount",
OFFSET(SpecialRefCount),sizeof(ULONG), NULL, LOW },
#if DBG
{ "RefTypes", OFFSET(RefTypes),
NUMBER_OF_CREFS*sizeof(ULONG), NULL, LOW },
#endif
{ "Flags", OFFSET(Flags), sizeof(ULONG), NULL, NOR },
{ "Flags2", OFFSET(Flags2), sizeof(ULONG), NULL, NOR },
{ "Link", OFFSET(Link), sizeof(PTP_LINK),
PrintDlcLinkFromPtr , NOR },
{ "AddressFile", OFFSET(AddressFile), sizeof(PTP_ADDRESS_FILE),
NULL, LOW },
{ "Device Context",
OFFSET(Provider), sizeof(PDEVICE_CONTEXT),NULL, LOW },
{ "@", 0, 0, NULL, LOW },
{ "FileObject", OFFSET(FileObject), sizeof(PFILE_OBJECT), NULL, NOR },
{ "@", 0, 0, NULL, LOW },
{ "Context", OFFSET(Context), sizeof(CONNECTION_CONTEXT),
NULL, LOW },
{ "ConnectionId", OFFSET(ConnectionId), sizeof(USHORT), NULL, LOW },
{ "SessionNumber",OFFSET(SessionNumber), sizeof(UCHAR), NULL, LOW },
{ "CalledAddress",
OFFSET(CalledAddress), sizeof(NBF_NETBIOS_ADDRESS),
PrintNbfNetbiosAddress, LOW },
{ "RemoteName", OFFSET(RemoteName), sizeof(CHAR *),
PrintStringofLenN, LOW },
{ "InProgressRequest",
OFFSET(InProgressRequest),
sizeof(LIST_ENTRY),
PrintRequestList, LOW },
{ "ConsecutiveReceives",
OFFSET(ConsecutiveReceives),
sizeof(ULONG), NULL, LOW },
{ "IndicationInProgress",
OFFSET(IndicationInProgress),
sizeof(UINT), NULL, LOW },
{ "SpecialReceiveIrp",
OFFSET(SpecialReceiveIrp),
sizeof(PIRP), NULL, LOW },
{ "CurrentReceiveIrp",
OFFSET(CurrentReceiveIrp),
sizeof(PIRP), NULL, LOW },
{ "CurrentReceiveMdl",
OFFSET(CurrentReceiveMdl),
sizeof(PMDL), NULL, LOW },
{ "MessageBytesReceived",
OFFSET(MessageBytesReceived),
sizeof(ULONG), NULL, LOW },
{ "MessageBytesAcked",
OFFSET(MessageBytesAcked),
sizeof(ULONG), NULL, LOW },
{ "MessageInitAccepted",
OFFSET(MessageInitAccepted),
sizeof(ULONG), NULL, LOW },
{ "ReceiveByteOffset",
OFFSET(ReceiveByteOffset),
sizeof(ULONG), NULL, LOW },
{ "ReceiveLength",
OFFSET(ReceiveLength),
sizeof(ULONG), NULL, LOW },
{ "ReceiveBytesUnaccepted",
OFFSET(ReceiveBytesUnaccepted),
sizeof(ULONG), NULL, LOW },
{ "ReceiveQueue",
OFFSET(ReceiveQueue),
sizeof(LIST_ENTRY), NULL, LOW },
{ "@", 0, 0, NULL, LOW },
{ "ConsecutiveSends",
OFFSET(ConsecutiveSends),
sizeof(ULONG), NULL, LOW },
{ "OnPacketWaitQueue",
OFFSET(OnPacketWaitQueue),
sizeof(UINT), NULL, LOW },
{ "PacketWaitLinkage",
OFFSET(PacketWaitLinkage),
sizeof(LIST_ENTRY), NULL, LOW },
{ "CloseIrp",
OFFSET(CloseIrp),
sizeof(PIRP), NULL, LOW },
{ "@", 0, 0, NULL, LOW },
#if PKT_LOG
{ "LastNRecvs", OFFSET(LastNRecvs), sizeof(PKT_LOG_QUE),
PrintPktLogQue, LOW },
{ "LastNSends", OFFSET(LastNSends), sizeof(PKT_LOG_QUE),
PrintPktLogQue, LOW },
{ "LastNIndcs", OFFSET(LastNIndcs), sizeof(PKT_IND_QUE),
PrintPktIndQue, LOW },
#endif
{ "", 0, 0, NULL, LOW },
0
}
};
#endif // __CONEXT_H