-
Notifications
You must be signed in to change notification settings - Fork 1.6k
/
Copy pathmymodule.h
58 lines (48 loc) · 1.58 KB
/
mymodule.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/*
* ModSecurity for Apache 2.x, http://www.modsecurity.org/
* Copyright (c) 2004-2013 Trustwave Holdings, Inc. (http://www.trustwave.com/)
*
* You may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* If any of the files related to licensing are missing or if you have any
* other questions related to licensing please contact Trustwave Holdings, Inc.
* directly using the email address [email protected].
*/
#ifndef __MY_MODULE_H__
#define __MY_MODULE_H__
// The module implementation.
// This class is responsible for implementing the
// module functionality for each of the server events
// that it registers for.
class CMyHttpModule : public CHttpModule
{
public:
HANDLE m_hEventLog;
DWORD m_dwPageSize;
CRITICAL_SECTION m_csLock;
REQUEST_NOTIFICATION_STATUS
OnBeginRequest(
IN IHttpContext * pHttpContext,
IN IHttpEventProvider * pProvider
);
REQUEST_NOTIFICATION_STATUS
OnSendResponse(
IN IHttpContext * pHttpContext,
IN ISendResponseProvider * pProvider
);
REQUEST_NOTIFICATION_STATUS
OnPostEndRequest(
IN IHttpContext * pHttpContext,
IN IHttpEventProvider * pProvider
);
HRESULT ReadFileChunk(HTTP_DATA_CHUNK *chunk, char *buf);
CMyHttpModule();
~CMyHttpModule();
void Dispose();
BOOL WriteEventViewerLog(LPCSTR szNotification, WORD category = EVENTLOG_INFORMATION_TYPE);
BOOL status_call_already_sent;
};
#endif