summaryrefslogtreecommitdiff
path: root/platform/src/proxy.cpp
diff options
context:
space:
mode:
authorfengweihao <[email protected]>2019-09-16 14:01:14 +0800
committerfengweihao <[email protected]>2019-09-16 14:01:14 +0800
commit4b0235d1999e200437939688e0490d575a3da5cc (patch)
tree5816ceef6e31f2c5e4e22ea2a20520ece643480f /platform/src/proxy.cpp
parent8baa823231618e34e49b7a09aee22ec607e92aff (diff)
修改key_keeper请求为post
修改key_keeper请求连接为长连接 修改HTTP2流id设置时机
Diffstat (limited to 'platform/src/proxy.cpp')
-rw-r--r--platform/src/proxy.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/platform/src/proxy.cpp b/platform/src/proxy.cpp
index 74ddd43..90a653b 100644
--- a/platform/src/proxy.cpp
+++ b/platform/src/proxy.cpp
@@ -44,7 +44,7 @@
#include <acceptor_kni_v1.h>
#include <acceptor_kni_v2.h>
#include <watchdog_kni.h>
-
+#include <key_keeper.h>
/* Breakpad */
#include <client/linux/handler/exception_handler.h>
#include <common/linux/http_upload.h>
@@ -243,6 +243,7 @@ void tfe_proxy_work_thread_create_ctx(struct tfe_proxy * proxy)
proxy->work_threads[i]->thread_id = i;
proxy->work_threads[i]->evbase = event_base_new();
proxy->work_threads[i]->dnsbase = evdns_base_new(proxy->work_threads[i]->evbase, EVDNS_BASE_INITIALIZE_NAMESERVERS);
+ proxy->work_threads[i]->evhttp = key_keeper_evhttp_init(proxy->work_threads[i]->evbase, proxy->work_threads[i]->dnsbase, proxy->key_keeper_handler);
}
return;
}
@@ -657,8 +658,12 @@ int main(int argc, char * argv[])
g_default_proxy->gcev = event_new(g_default_proxy->evbase, -1, EV_PERSIST, __gc_handler_cb, g_default_proxy);
CHECK_OR_EXIT(g_default_proxy->gcev, "Failed at creating GC event. Exit. ");
+ /* KEY_KEEP INIT */
+ g_default_proxy->key_keeper_handler = key_keeper_init(main_profile, "key_keeper", g_default_logger);
+ CHECK_OR_EXIT(g_default_proxy->key_keeper_handler, "Failed at init Key keeper. Exit.");
+
/* SSL INIT */
- g_default_proxy->ssl_mgr_handler = ssl_manager_init(main_profile, "ssl", g_default_proxy->evbase, g_default_logger);
+ g_default_proxy->ssl_mgr_handler = ssl_manager_init(main_profile, "ssl", g_default_proxy->evbase, g_default_proxy->key_keeper_handler, g_default_logger);
CHECK_OR_EXIT(g_default_proxy->ssl_mgr_handler, "Failed at init SSL manager. Exit.");
for (size_t i = 0; i < (sizeof(signals) / sizeof(int)); i++)
@@ -719,11 +724,17 @@ struct event_base * tfe_proxy_get_work_thread_evbase(unsigned int thread_id)
assert(thread_id < g_default_proxy->nr_work_threads);
return g_default_proxy->work_threads[thread_id]->evbase;
}
+
struct evdns_base* tfe_proxy_get_work_thread_dnsbase(unsigned int thread_id)
{
assert(thread_id < g_default_proxy->nr_work_threads);
return g_default_proxy->work_threads[thread_id]->dnsbase;
+}
+struct evhttp_connection* tfe_proxy_get_work_thread_evhttp(unsigned int thread_id)
+{
+ assert(thread_id < g_default_proxy->nr_work_threads);
+ return g_default_proxy->work_threads[thread_id]->evhttp;
}
struct event_base * tfe_proxy_get_gc_evbase(void)