summaryrefslogtreecommitdiff
path: root/platform/src/proxy.cpp
diff options
context:
space:
mode:
authorluqiuwen <[email protected]>2019-06-18 16:09:20 +0800
committerluqiuwen <[email protected]>2019-06-18 18:21:00 +0800
commit10ea3ba54efda66026d1595d248b4a0ef25d50f7 (patch)
tree167c0c37ab18233bbac9ce42b6632ba3aa794ff7 /platform/src/proxy.cpp
parentcb95cef46d1475ef8cea780b6903e33064a7f533 (diff)
增加对KNI的Watchdog实现双向保活。
Diffstat (limited to 'platform/src/proxy.cpp')
-rw-r--r--platform/src/proxy.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/platform/src/proxy.cpp b/platform/src/proxy.cpp
index 38ea2d5..d623291 100644
--- a/platform/src/proxy.cpp
+++ b/platform/src/proxy.cpp
@@ -40,6 +40,7 @@
#include <tcp_stream.h>
#include <acceptor_kni_v1.h>
#include <acceptor_kni_v2.h>
+#include <watchdog_kni.h>
extern struct ssl_policy_enforcer* ssl_policy_enforcer_create(void* logger);
extern enum ssl_stream_action ssl_policy_enforce(struct ssl_stream *upstream, void* u_para);
@@ -441,6 +442,10 @@ int main(int argc, char * argv[])
g_default_proxy->scm_sender = sender_scm_init(main_profile, "kni", g_default_logger);
CHECK_OR_EXIT(g_default_proxy->scm_sender != NULL, "Failed at creating scm sender, Exit.");
+ /* Watchdog KNI */
+ g_default_proxy->watchdog_kni = watchdog_kni_create(g_default_proxy, main_profile, g_default_logger);
+ CHECK_OR_EXIT(g_default_proxy->watchdog_kni != NULL, "Failed at creating KNI watchdog, Exit.");
+
/* PLUGIN INIT */
unsigned int plugin_iterator = 0;
for (struct tfe_plugin * plugin_iter = tfe_plugin_iterate(&plugin_iterator);
@@ -450,8 +455,8 @@ int main(int argc, char * argv[])
CHECK_OR_EXIT(ret >= 0, "Plugin %s init failed. Exit. ", plugin_iter->symbol);
TFE_LOG_INFO(g_default_logger, "Plugin %s initialized. ", plugin_iter->symbol);
}
+
//ugly here. g_business_maat is available after plugin initiate.
-
g_default_proxy->ssl_ply_enforcer=ssl_policy_enforcer_create(g_default_logger);
ssl_manager_set_new_upstream_cb(g_default_proxy->ssl_mgr_handler, ssl_policy_enforce, g_default_proxy->ssl_ply_enforcer);
ret = tfe_proxy_work_thread_run(g_default_proxy);