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_
|