⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tdittcp.h

📁 网络驱动开发
💻 H
字号:
/////////////////////////////////////////////////////////////////////////////
//// INCLUDE FILES

#ifndef __TDITTCP_H__
#define __TDITTCP_H__

#include	"NDIS.H"
#include	"TDI.H"
#include	"TDIKRNL.H"

#include "TTCPAPI.h"

#include "KSUtil.h"

#include "TcpServer.h"
#include "TcpClient.h"
#include "UdpServer.h"
#include "UdpClient.h"


// Copyright And Configuration Management ----------------------------------
//
//              Header For TDI Test TCP (TTCP) Driver - TDITTCP.h
//
//                  PCAUSA TDI Client Samples For Windows NT
//
//      Copyright (c) 1999-2000 Printing Communications Associates, Inc.
//                                - PCAUSA -
//
//                             Thomas F. Divine
//                           4201 Brunswick Court
//                        Smyrna, Georgia 30080 USA
//                              (770) 432-4580
//                            tdivine@pcausa.com
//
// End ---------------------------------------------------------------------


/////////////////////////////////////////////////////////////////////////////
//// STRUCTURE DEFINITIONS

typedef
VOID
(*PDEVICE_UNLOAD) (
    IN struct _DEVICE_OBJECT *DeviceObject
    );

typedef
struct _DEVICE_EXTENSION
{
   PDEVICE_OBJECT       pDeviceObject;
   PDRIVER_DISPATCH     MajorFunction[IRP_MJ_MAXIMUM_FUNCTION + 1];
   PDEVICE_UNLOAD       DeviceUnload;

   union
   {
      TCPS_DEVICE_CONTEXT  TcpServerContext;
      TCPC_DEVICE_CONTEXT  TcpClientContext;
      UDPS_DEVICE_CONTEXT  UdpServerContext;
      UDPC_DEVICE_CONTEXT  UdpClientContext;
   };
}
   DEVICE_EXTENSION, *PDEVICE_EXTENSION;



/////////////////////////////////////////////////////////////////////////////
//// GLOBAL DATA

extern PDRIVER_OBJECT   g_pTheDriverObject;

#define  UDP_GUARD_BUFFER_LENGTH 4


/////////////////////////////////////////////////////////////////////////////
//// Device Dispatch Functions

NTSTATUS
TDITTCPDeviceCleanup(
    IN PDEVICE_OBJECT pDeviceObject,
    IN PIRP pFlushIrp
    );


NTSTATUS
TDITTCPDeviceOpen(
    IN PDEVICE_OBJECT pDeviceObject,
    IN PIRP pIrp
    );

NTSTATUS
TDITTCPDeviceClose(
    IN PDEVICE_OBJECT pDeviceObject,
    IN PIRP pIrp
    );

NTSTATUS
TDITTCPDeviceRead(
    IN PDEVICE_OBJECT pDeviceObject,
    IN PIRP pIrp
    );

NTSTATUS
TDITTCPDeviceWrite(
    IN PDEVICE_OBJECT pDeviceObject,
    IN PIRP pIrp
    );

NTSTATUS
TDITTCPDeviceIoControl(
    IN PDEVICE_OBJECT pDeviceObject,
    IN PIRP pIrp
    );

VOID
TDITTCPDriverUnload(
   IN PDRIVER_OBJECT DriverObject
   );


/////////////////////////////////////////////////////////////////////////////
//// DEBUG/UTILITY Functions

void TDITTCP_FillPatternBuffer( PUCHAR cp, int cnt );


#ifdef DBG

NTSTATUS
TDITTCP_DumpTestParams(
   PTDITTCP_TEST_PARAMS pTestParams
   );

#endif

#endif // __TDITTCP_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -