diff --git a/kerneldriver/cases/memory_corruption/secDetector_memory_corruption.c b/kerneldriver/cases/memory_corruption/secDetector_memory_corruption.c index 7432edcb377c0a4c60539b7199ed3d1368596a9a..7dc31935a73ac724200c2f9a87c20dbd2834c02b 100644 --- a/kerneldriver/cases/memory_corruption/secDetector_memory_corruption.c +++ b/kerneldriver/cases/memory_corruption/secDetector_memory_corruption.c @@ -13,7 +13,7 @@ #include "secDetector_mc_kmodule_list.h" -#define TIME_INTERVAL 10000 +#define TIME_INTERVAL 100 DEFINE_MUTEX(case_mc_mutex); diff --git a/kerneldriver/core/secDetector_manager.c b/kerneldriver/core/secDetector_manager.c index 27c9ace00114f3d7086b15d8c2eb4351fde03ef3..692222f33c7dbacd10f64e3aa58ab854bd2bd46d 100644 --- a/kerneldriver/core/secDetector_manager.c +++ b/kerneldriver/core/secDetector_manager.c @@ -91,6 +91,7 @@ static void secDetector_collect_analyze_response_unit_padding( sr[i].response_type = i; sr[i].response_func = response_units[i]; } + wf->response_array = sr; } else { // 自定义response list for (i = 0; i < wf->response_array_len; i++) { if (sr[i].response_type < RESPONSE_CUSTOMIZATION) diff --git a/kerneldriver/core/secDetector_workflow.c b/kerneldriver/core/secDetector_workflow.c index 630a5b0a896b4a4e914d8debcf5b3a0fd04b02cb..2a6fb9d14f76adabd9e564510e8406c298c62244 100644 --- a/kerneldriver/core/secDetector_workflow.c +++ b/kerneldriver/core/secDetector_workflow.c @@ -33,7 +33,10 @@ void preset_workflow(secDetector_workflow_t *wf) repsonse_id = wf->analyze_func(&collect_data_list, &(wf->analyze_status), &rd); - wf->response_array[repsonse_id].response_func(&rd); + if (repsonse_id >= 0) { + wf->response_array[repsonse_id].response_func(&rd); + } + free_collect_data_list(&collect_data_list); free_response_data_no_rd(repsonse_id, &rd); } \ No newline at end of file diff --git a/kerneldriver/include/secDetector_response_type.h b/kerneldriver/include/secDetector_response_type.h index 91dbd1a769468c3b26bc4197388fbf2eb3802bb9..d8c1e67ec754c881e1b8ad8404a7802f51bf9fdd 100644 --- a/kerneldriver/include/secDetector_response_type.h +++ b/kerneldriver/include/secDetector_response_type.h @@ -12,8 +12,8 @@ enum RESPONSE_TYPE { RESPONSE_OK, RESPONSE_REPORT, - RESPONSE_REJECT, RESPONSE_KILL, + RESPONSE_REJECT, RESPONSE_CUSTOMIZATION, NR_RESPONSE, };