73 lines
1.6 KiB
C
73 lines
1.6 KiB
C
|
|
||
|
/*++
|
||
|
|
||
|
Copyright (c) 1996 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
Spud.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Contains structures and declarations for SPUD. SPUD stands for the
|
||
|
Special Purpose Utility Driver. This driver enhances the performance
|
||
|
of IIS.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
John Ballard (jballard) 21-Oct-1996
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _SPUD_
|
||
|
#define _SPUD_
|
||
|
|
||
|
#define SPUD_VERSION 0x00010000
|
||
|
|
||
|
typedef enum {
|
||
|
TransmitFileAndRecv,
|
||
|
SendAndRecv,
|
||
|
} REQ_TYPE;
|
||
|
|
||
|
typedef struct _SPUD_REQ_CONTEXT {
|
||
|
REQ_TYPE ReqType;
|
||
|
IO_STATUS_BLOCK IoStatus1;
|
||
|
IO_STATUS_BLOCK IoStatus2;
|
||
|
PVOID KernelReqInfo;
|
||
|
} SPUD_REQ_CONTEXT, *PSPUD_REQ_CONTEXT;
|
||
|
|
||
|
typedef struct _SPUD_COUNTERS {
|
||
|
ULONG CtrTransmitfileAndRecv;
|
||
|
ULONG CtrTransRecvFastTrans;
|
||
|
ULONG CtrTransRecvFastRecv;
|
||
|
ULONG CtrTransRecvSlowTrans;
|
||
|
ULONG CtrTransRecvSlowRecv;
|
||
|
ULONG CtrSendAndRecv;
|
||
|
ULONG CtrSendRecvFastSend;
|
||
|
ULONG CtrSendRecvFastRecv;
|
||
|
ULONG CtrSendRecvSlowSend;
|
||
|
ULONG CtrSendRecvSlowRecv;
|
||
|
} SPUD_COUNTERS, *PSPUD_COUNTERS;
|
||
|
|
||
|
#if 0
|
||
|
typedef struct _SPUD_REQUEST_ITEM {
|
||
|
HANDLE Socket;
|
||
|
DWORD RequestIoctl;
|
||
|
union {
|
||
|
AFD_TRANSMIT_FILE_INFO TransmitFileInfo;
|
||
|
AFD_SEND_INFO SendInfo;
|
||
|
AFD_RECV_INFO RecvInfo;
|
||
|
} AfdRequest;
|
||
|
IO_STATUS_BLOCK StatusBlock;
|
||
|
} SPUD_REQUEST_ITEM, *PSPUD_REQUEST_ITEM;
|
||
|
|
||
|
typedef struct _SPUD_BATCH_REQUEST {
|
||
|
ULONG RequestCount;
|
||
|
PSPUD_REQUEST_ITEM RequestList;
|
||
|
} SPUD_BATCH_REQUEST, *PSPUD_BATCH_REQUEST;
|
||
|
#endif
|
||
|
|
||
|
#endif // ndef _SPUD_
|