-
Notifications
You must be signed in to change notification settings - Fork 0
/
OcciIOCP.h
89 lines (74 loc) · 2.48 KB
/
OcciIOCP.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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#define SystemAddResource theService.ServiceResources.AddResource
#define SystemGetResource theService.ServiceResources.GetResource
#define SystemRemoveAllResource theService.ServiceResources.RemoveAllResource
class CTelnetApplication : public CApplication
{
public:
CTelnetApplication() : CApplication("\r\n", 2, NULL, 0) {};
long OnClientRead(CContextItem* mContext, CListItem* &mBuffer, long size, long opSide);
};
class CSystemApplication : public CTelnetApplication
{
public:
CTCPProtocol* pTCP;
CTCPReadProtocol* pTCPRead;
// CTCPProtocol* pTCP2;
CSingleUDPProtocol* pUDPSingle;
CUDPProtocol* pUDP;
CFileProtocol* pFile;
CFileReadProtocol* pFileRead;
CDirectoryProtocol* pDir;
CDirectoryReadProtocol* pDirRead;
// COciProtocol* pOci;
// CEchoApplication* pEcho;
// CForwardApplication* pForward;
CForwardApplication* pForwardDup;
CDNSApplication* pDNS;
CTunnelProtocol* pTunnelPro;
CTunnelApplication* pTunnel;
// #ifdef FORWARDLOOP_FUNCTION
// CForwardLoopApplication* pForwardLoop;
// #endif FORWARDLOOP_FUNCTION
CWebApplication* pWeb;
// CInterApplication* pSSL;
// #ifdef WITH_HTTPS
CInterProtocol* pInter;
CInterProtocol* pInterNest;
CInterProtocol* pInterNest2;
CInterProtocol* pInterSerNest2;
CInterProtocol* pInterSerNest;
CInterProtocol* pInterSer;
CInterApplication* pInterApp;
CInterApplication* pInterAppNest;
CInterApplication* pInterAppNest2;
CInterApplication* pInterAppSerNest2;
CInterApplication* pInterAppSerNest;
CInterApplication* pInterAppSer;
CSSLServerApplication* pSSLSerMode;
CSSLClientApplication* pSSLCliMode;
CPassbyApplication* pPassby;
CPrintApplication* pPrint;
// #endif WITH_HTTPS
// COracleApplication* pOracle;
// CTelnetApplication* pTelnet;
#ifdef SIMSERVER_APPLICATION
CSimServer* pSim;
#endif SIMSERVER_APPLICATION
#ifdef CONTENTPAD_APPLICATION
CContentPadServer* pContentPad;
#endif CONTENTPAD_APPLICATION
#ifdef PROXY_FUNCTION
CProxyApplication *pProxy;
#endif PROXY_FUNCTION
#ifdef PROXYSERVER_APPLICATION
CProxyServerApplication *pProxySer;
#endif PROXYSERVER_APPLICATION
public:
CSystemApplication() : CTelnetApplication() {};
long InitProcess(void);
long ExitProcess(void);
long OnAccept(CContextItem* mContext, CListItem* &mBuffer, long size, long opSide);
long OnClientRead(CContextItem* mContext, CListItem* &mBuffer, long size, long opSide);
private:
long AnalysisCommand(CContextItem* mContext, CListItem* &mBuffer, long size);
};