diff options
| author | liuxueli <[email protected]> | 2023-07-04 11:56:11 +0800 |
|---|---|---|
| committer | liuxueli <[email protected]> | 2023-07-04 11:56:11 +0800 |
| commit | 02e880ebd080078bc1f911e6a262490fb6d8cfc5 (patch) | |
| tree | 62ccbeeadf0629be6bc3d10bd7f66527b58b3ee1 | |
| parent | 80e337c3b40368499582c536a5a020f3380be6b9 (diff) | |
master命中DNS协议执行动作出现异常时,交由firewall插件处理v6.0.30
| -rw-r--r-- | src/tsg_action.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/tsg_action.cpp b/src/tsg_action.cpp index e07cd15..3aa332e 100644 --- a/src/tsg_action.cpp +++ b/src/tsg_action.cpp @@ -954,6 +954,11 @@ static unsigned char tsg_do_deny_action(const struct streaminfo *a_stream, struc unsigned char tsg_enforing_deny_application(const struct streaminfo *a_stream, struct maat_rule *p_result, enum TSG_PROTOCOL protocol, int app_id, enum ACTION_RETURN_TYPE type, const void *user_data) { + if(protocol==PROTO_DNS && type==ACTION_RETURN_TYPE_APP && user_data==NULL) + { + return APP_STATE_GIVEME; + } + struct app_id_dict *dict=(struct app_id_dict *)matched_rule_cites_app_id_dict(g_tsg_maat_feather, (long long)app_id); if(dict==NULL || user_data==NULL) { @@ -997,6 +1002,11 @@ unsigned char tsg_enforing_deny(const struct streaminfo *a_stream, struct maat_r return ((type==ACTION_RETURN_TYPE_PROT) ? PROT_STATE_DROPME : APP_STATE_GIVEME); } + if(protocol==PROTO_DNS && type==ACTION_RETURN_TYPE_APP && user_data==NULL) + { + return APP_STATE_GIVEME; + } + struct maat_compile *maat_compile=(struct maat_compile *)matched_rule_cites_security_compile(g_tsg_maat_feather, p_result->rule_id); if(maat_compile==NULL || maat_compile->user_region==NULL || user_data==NULL) { |
