CONNID dwConnID, En_HP_SocketOperation enOperation, int iErrorCode);
8 EnHandleResult __stdcall OnShutdown(HP_Agent pSender);
9
10 int main(int argc, char* const argv[])
11 {
12 HP_TcpPullAgentListener s_listener;
13 HP_TcpPullAgent s_agent;
14
15 // 1. Create listener object
16 s_listener = ::Create_HP_TcpPullAgentListener();
17 // 2. Create component object (and binding with listener object)
18 s_agent = ::Create_HP_TcpPullAgent(s_listener);
19
20 /* Set listener callbacks */
21 ::HP_Set_FN_Agent_OnConnect(s_listener, OnConnect);
22 ::HP_Set_FN_Agent_OnSend(s_listener, OnSend);
23 ::HP_Set_FN_Agent_OnPullReceive(s_listener, OnReceive);
24 ::HP_Set_FN_Agent_OnClose(s_listener, OnClose);
25 ::HP_Set_FN_Agent_OnShutdown(s_listener, OnShutdown);
26
27 // 3. Start component object
28 if(::HP_Agent_HasStarted(s_agent))
29 exit(1);
30
31 // 4. Connect to dest host
32 ::HP_Agent_Connect(s_agent, "remote.host.1", REMOTE_PORT_1, nullptr);
33 ::HP_Agent_Connect(s_agent, "remote.host.2", REMOTE_PORT_2, nullptr);
34 ::HP_Agent_Connect(s_agent, "remote.host.3", REMOTE_PORT_3, nullptr);
35
36 /* wait for exit */
37 // ... ...
38
39 // 6. (optional) Stop component object
40 ::HP_Agent_Stop(s_agent)
41
42 // 7. Destroy component object
43 ::Destroy_HP_TcpPullAgent(s_agent);
44 // 8. Destroy listener object
45 ::Destroy_HP_TcpPullAgentListener(s_listener);
46
47 return 0;
48 }
组件列表
HP-Socket for Linux v1.0目前发布了一系列基础组件,后续版本将会陆续发布SSL组件和HTTP组件。
|