summaryrefslogtreecommitdiff
path: root/entry/src
diff options
context:
space:
mode:
authorfumingwei <[email protected]>2023-10-17 15:43:14 +0800
committerfumingwei <[email protected]>2023-10-18 19:01:45 +0800
commit9b969289a69d6df5096fe6c27279cb6e9a677289 (patch)
treec214cb6d4e95030bc1b036e845137bff284b34c3 /entry/src
parentce6433ed71942b81bae0349a4b5334a8a4b753a3 (diff)
bugfix:TSG-17106:修改kni proxy_rule_hits写入pinning status值错误的bugHEADv5.1.9develop-5.0
Diffstat (limited to 'entry/src')
-rw-r--r--entry/src/kni_entry.cpp5
-rw-r--r--entry/src/kni_fieldstat.cpp2
2 files changed, 5 insertions, 2 deletions
diff --git a/entry/src/kni_entry.cpp b/entry/src/kni_entry.cpp
index a5f2484..2073fc1 100644
--- a/entry/src/kni_entry.cpp
+++ b/entry/src/kni_entry.cpp
@@ -326,7 +326,8 @@ static void set_proxy_rule_hits_metric(struct pme_info *pmeinfo, int thread_id)
metric_tag.action = pmeinfo->maat_rule.action;
metric_tag.rule_id = pmeinfo->maat_rule.rule_id;
metric_tag.vsys_id = pmeinfo->maat_rule.vsys_id;
- metric_tag.pinning_status = pmeinfo->ssl_intercept_state;
+ metric_tag.pinning_status = pmeinfo->ssl_pinningst;
+ metric_tag.pinning_status_active = pmeinfo->ssl_pinningst_active;
proxy_set_metric_value(g_kni_handle->proxy_fieldstat, &metric_tag,
metric_value, thread_id);
@@ -2536,6 +2537,7 @@ static int wrapped_kni_cmsg_get(struct pme_info *pmeinfo, struct kni_cmsg *cmsg,
break;
case TFE_CMSG_SSL_PINNING_STATE:
memcpy((char*)&(pmeinfo->ssl_pinningst), value, value_size);
+ pmeinfo->ssl_pinningst_active = 1;
break;
case TFE_CMSG_SSL_CERT_VERIFY:
memcpy((char*)&(pmeinfo->ssl_cert_verify), value, value_size);
@@ -2579,6 +2581,7 @@ static long traceid2pme_htable_search_cb(void *data, const uchar *key, uint size
can_destroy = judge_stream_can_destroy(pmeinfo, CALLER_TFE);
if(can_destroy == 1){
traceid2pme_htable_del(pmeinfo);
+ set_proxy_rule_hits_metric(pmeinfo, g_kni_handle->thread_count);
stream_destroy(pmeinfo);
}
}
diff --git a/entry/src/kni_fieldstat.cpp b/entry/src/kni_fieldstat.cpp
index a72764f..51eeecc 100644
--- a/entry/src/kni_fieldstat.cpp
+++ b/entry/src/kni_fieldstat.cpp
@@ -17,7 +17,7 @@ static int read_fieldstat_tags(struct proxy_metric_tag *metric_tags,
tags[n_tags].value_int = metric_tags->rule_id;
n_tags++;
- if(metric_tags->pinning_status == 1)
+ if(metric_tags->pinning_status_active == 1)
{
tags[n_tags].key = "pinning_status";
tags[n_tags].value_type = 0;