66 lines
1.4 KiB
C++
66 lines
1.4 KiB
C++
#ifndef _ISAPICONTEXT_HXX_
|
|
#define _ISAPICONTEXT_HXX_
|
|
|
|
class ISAPI_STREAM_CONTEXT : public STREAM_CONTEXT
|
|
{
|
|
public:
|
|
|
|
ISAPI_STREAM_CONTEXT( UL_CONTEXT * pUlContext )
|
|
: STREAM_CONTEXT( pUlContext ),
|
|
_pvContext( NULL )
|
|
{
|
|
}
|
|
|
|
HRESULT
|
|
ProcessRawReadData(
|
|
RAW_STREAM_INFO * pRawStreamInfo,
|
|
BOOL * pfReadMore,
|
|
BOOL * pfComplete
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
Initialize(
|
|
STREAM_FILTER_CONFIG * pStreamConfig
|
|
);
|
|
|
|
static
|
|
VOID
|
|
Terminate(
|
|
VOID
|
|
);
|
|
|
|
HRESULT
|
|
ProcessRawWriteData(
|
|
RAW_STREAM_INFO * pRawStreamInfo,
|
|
BOOL * pfComplete
|
|
);
|
|
|
|
VOID
|
|
ProcessConnectionClose(
|
|
VOID
|
|
);
|
|
|
|
HRESULT
|
|
ProcessNewConnection(
|
|
CONNECTION_INFO * pConnectionInfo
|
|
);
|
|
|
|
static
|
|
HRESULT
|
|
SendDataBack(
|
|
PVOID pvStreamContext,
|
|
RAW_STREAM_INFO * pRawStreamInfo
|
|
);
|
|
|
|
private:
|
|
PVOID _pvContext;
|
|
|
|
static PFN_PROCESS_RAW_READ sm_pfnRawRead;
|
|
static PFN_PROCESS_RAW_WRITE sm_pfnRawWrite;
|
|
static PFN_PROCESS_CONNECTION_CLOSE sm_pfnConnectionClose;
|
|
static PFN_PROCESS_NEW_CONNECTION sm_pfnNewConnection;
|
|
};
|
|
|
|
#endif
|