diff options
| author | zhengchao <[email protected]> | 2020-07-06 16:46:41 +0800 |
|---|---|---|
| committer | zhengchao <[email protected]> | 2020-07-06 16:46:41 +0800 |
| commit | 41b3628b53becbeef60a8fca0794c8ec1dd46e2f (patch) | |
| tree | 4c451b9be1dd7614a9c9d30450a0962f7baab805 /src/entry/Maat_api.cpp | |
| parent | 639feb17b0c4d80c77c902478652195951ca68a3 (diff) | |
region_rule_inner中增加magic_num,以诊断region配置删除时可能发生的野指针访问;同时hierarchy增加对region_id查找的判空,以避免在一个region扫描命中后,hierarchy中该region又被删除,产生的空指针访问。
Diffstat (limited to 'src/entry/Maat_api.cpp')
| -rw-r--r-- | src/entry/Maat_api.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/entry/Maat_api.cpp b/src/entry/Maat_api.cpp index 2ae109d..fdff783 100644 --- a/src/entry/Maat_api.cpp +++ b/src/entry/Maat_api.cpp @@ -235,6 +235,7 @@ int region_compile(_Maat_feather_t*feather, struct Maat_hierarchy_compile_mid* c for(i=0; (size_t)i<region_hit_num;i++) { region=*(struct Maat_region_inner**)((char*)region_hit+region_type_size*i+user_data_offset); + assert(region->magic_num==REGION_RULE_MAGIC); if(region_hit_wraper->virtual_table_ids) { virtual_table_id=region_hit_wraper->virtual_table_ids[i]; |
