TSG-1531 TFE 新增 DOH 插件
1.DOH 协议解析 2.DOH 协议还原 3.DOH POST请求 early response 4.DOH 策略扫描 5.tfe plugin 支持多个 bussiness 插件调用 6.Maat_feather 的创建从 pangu 剥离(涉及pangu/doh/ssl-policy) 7.增加 kafka 日志 8.增加测试用例
This commit is contained in:
@@ -153,11 +153,12 @@ int http_frame_raise_session_begin(struct http_frame_session_ctx * ht_frame,
|
||||
struct tfe_plugin * plugin_info_iter;
|
||||
TFE_PLUGIN_FOREACH(plugin_info_iter, &__for_each_iterator)
|
||||
{
|
||||
__plugin_id++;
|
||||
if (plugin_info_iter->on_session_begin == NULL) continue;
|
||||
|
||||
/* Calling ctx, in callback can fetch by calling frame_plugin_status_get_XXX */
|
||||
ht_frame->calling_plugin = plugin_info_iter;
|
||||
ht_frame->calling_plugin_status = &ht_frame->plugin_status[__plugin_id];
|
||||
ht_frame->calling_plugin_status = &ht_frame->plugin_status[__plugin_id - 1];
|
||||
|
||||
/* Call session begin */
|
||||
void ** calling_pme = &ht_frame->calling_plugin_status->pme;
|
||||
@@ -179,11 +180,12 @@ void http_frame_raise_session_end(struct http_frame_session_ctx * ht_frame, cons
|
||||
|
||||
TFE_PLUGIN_FOREACH(plugin_info_iter, &__for_each_iterator)
|
||||
{
|
||||
__plugin_id++;
|
||||
if (plugin_info_iter->on_session_end == NULL) continue;
|
||||
|
||||
/* Calling ctx, in callback can fetch by calling frame_plugin_status_get_XXX */
|
||||
ht_frame->calling_plugin = plugin_info_iter;
|
||||
ht_frame->calling_plugin_status = &ht_frame->plugin_status[__plugin_id];
|
||||
ht_frame->calling_plugin_status = &ht_frame->plugin_status[__plugin_id - 1];
|
||||
|
||||
/* Call session end */
|
||||
void ** calling_pme = &ht_frame->calling_plugin_status->pme;
|
||||
@@ -207,6 +209,7 @@ void http_frame_raise_event(struct http_frame_session_ctx * ht_frame,
|
||||
struct tfe_plugin * plugin_info_iter;
|
||||
TFE_PLUGIN_FOREACH(plugin_info_iter, &__for_each_iterator)
|
||||
{
|
||||
__plugin_id++;
|
||||
if (plugin_info_iter->on_session_data == NULL)
|
||||
{
|
||||
continue;
|
||||
@@ -214,7 +217,7 @@ void http_frame_raise_event(struct http_frame_session_ctx * ht_frame,
|
||||
|
||||
/* Calling ctx, in callback can fetch by calling frame_plugin_status_get_XXX */
|
||||
ht_frame->calling_plugin = plugin_info_iter;
|
||||
ht_frame->calling_plugin_status = &ht_frame->plugin_status[__plugin_id];
|
||||
ht_frame->calling_plugin_status = &ht_frame->plugin_status[__plugin_id - 1];
|
||||
|
||||
if (ht_frame->calling_plugin_status->detached)
|
||||
{
|
||||
@@ -222,7 +225,10 @@ void http_frame_raise_event(struct http_frame_session_ctx * ht_frame,
|
||||
}
|
||||
|
||||
void ** calling_pme = &ht_frame->calling_plugin_status->pme;
|
||||
plugin_info_iter->on_session_data(stream, ht_session, event, data, datalen, thread_id, calling_pme);
|
||||
if (plugin_info_iter->on_session_data(stream, ht_session, event, data, datalen, thread_id, calling_pme) == NO_CALL_NEXT_PLUGIN)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
ht_frame->calling_plugin = NULL;
|
||||
|
||||
Reference in New Issue
Block a user