Compare commits
2 Commits
master
...
feature-en
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
74befd9468 | ||
|
|
c387b3f2d2 |
@@ -4,7 +4,7 @@ variables:
|
||||
BUILD_IMAGE_CENTOS8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
|
||||
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
|
||||
INSTALL_PREFIX: "/home/mesasoft/sapp_run/"
|
||||
INSTALL_DEPENDENCY_LIBRARY: libMESA_handle_logger-devel libcjson-devel libMESA_field_stat2-devel sapp-devel framework_env libMESA_prof_load-devel http-devel dns-devel ftp-devel mail-devel ssl-devel librdkafka-devel libmaatframe-devel tsg_master-devel libdocumentanalyze-devel libasan
|
||||
INSTALL_DEPENDENCY_LIBRARY: libMESA_handle_logger-devel libcjson-devel libMESA_field_stat2-devel sapp-devel framework_env libMESA_prof_load-devel http-devel dns-devel ftp-devel mail-devel ssl-devel librdkafka-devel libmaatframe-devel tsg_master-devel-5.8.13.8f6a3e1 libdocumentanalyze-devel libasan
|
||||
|
||||
stages:
|
||||
- build
|
||||
|
||||
@@ -136,6 +136,22 @@ static int fw_dns_send_log(struct streaminfo *a_stream, dns_info_t *dns_info, st
|
||||
return 0;
|
||||
}
|
||||
|
||||
int fw_dns_select_monitor_result(struct streaminfo *a_stream, dns_info_t *dns_info, struct Maat_rule_t *result, int result_num, int thread_seq)
|
||||
{
|
||||
for(int i=0; i<result_num; i++)
|
||||
{
|
||||
if(result[i].action!=TSG_ACTION_MONITOR)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
tsg_notify_hited_monitor_result(a_stream, &(result[i]), 1, thread_seq);
|
||||
fw_dns_send_log(a_stream, dns_info, &(result[i]), 1, thread_seq);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
extern "C" char FW_DNS_PLUG_ENTRY(stSessionInfo* session_info, void **pme, int thread_seq,struct streaminfo *a_stream,const void *a_packet)
|
||||
{
|
||||
int ret=0,hit_num=0;
|
||||
@@ -239,19 +255,32 @@ extern "C" char FW_DNS_PLUG_ENTRY(stSessionInfo* session_info, void **pme, int
|
||||
hit_num+=tsg_scan_fqdn_category_id(g_tsg_maat_feather, a_stream, result+hit_num,MAX_RESULT_NUM-hit_num, &mid, g_fw_dns_plug_info.table_qname_id, category_id, category_id_num, thread_seq);
|
||||
if(hit_num>0)
|
||||
{
|
||||
p_result=tsg_fetch_deny_rule(result, hit_num);
|
||||
if(p_result!=NULL)
|
||||
p_result=tsg_policy_decision_criteria(result, hit_num);
|
||||
switch(p_result->action)
|
||||
{
|
||||
case TSG_ACTION_BYPASS:
|
||||
fw_dns_send_log(a_stream, dns_info, p_result, 1, thread_seq);
|
||||
break;
|
||||
case TSG_ACTION_DENY:
|
||||
ret=tsg_is_do_deny_action_by_enforce_direction(a_stream, p_result);
|
||||
if(ret==0)
|
||||
{
|
||||
fw_dns_select_monitor_result(a_stream, dns_info, result, hit_num, thread_seq);
|
||||
break;
|
||||
}
|
||||
|
||||
state=tsg_deal_deny_action(a_stream, p_result, PROTO_DNS, ACTION_RETURN_TYPE_PROT, (const void *)dns_info);
|
||||
if(state!=PROT_STATE_GIVEME)
|
||||
{
|
||||
fw_dns_send_log(a_stream, dns_info, p_result, 1, thread_seq);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
case TSG_ACTION_MONITOR:
|
||||
tsg_notify_hited_monitor_result(a_stream, result, hit_num, thread_seq);
|
||||
fw_dns_send_log(a_stream, dns_info, result, hit_num, thread_seq);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user