File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11
2- - [ TCA-Armory-Q1工具介绍] ( #tca-armory-q1工具介绍 )
3- - [ 规则详情] ( #规则详情 )
4- - [ 线程锁检查] ( #线程锁检查 )
5- - [ missing_lock] ( #missing_lock )
6- - [ 代码示例] ( #代码示例 )
7- - [ dead_lock] ( #dead_lock )
8- - [ 规则参数] ( #规则参数 )
9- - [ 代码示例] ( #代码示例-1 )
10- - [ 资源泄漏检查] ( #资源泄漏检查 )
11- - [ resource_leak] ( #resource_leak )
12- - [ 代码示例] ( #代码示例-2 )
13- - [ TODO] ( #todo )
14- - [ 无效值检查] ( #无效值检查 )
15- - [ unused_value] ( #unused_value )
16- - [ 代码示例] ( #代码示例-3 )
17- - [ 数组溢出检查] ( #数组溢出检查 )
18- - [ array_overflow] ( #array_overflow )
19- - [ 代码示例] ( #代码示例-4 )
20- - [ TODO] ( #todo-1 )
21- - [ buff_overflow] ( #buff_overflow )
22- - [ 代码示例] ( #代码示例-5 )
23- - [ 指针检查] ( #指针检查 )
24- - [ func_ret_null] ( #func_ret_null )
25- - [ 代码示例] ( #代码示例-6 )
26- - [ use_after_free] ( #use_after_free )
27- - [ 代码示例] ( #代码示例-7 )
28- - [ forward_null] ( #forward_null )
29- - [ 规则参数] ( #规则参数-1 )
30- - [ 代码示例] ( #代码示例-8 )
31- - [ reverse_null] ( #reverse_null )
32- - [ 代码示例] ( #代码示例-9 )
33- - [ glob_null_pointer] ( #glob_null_pointer )
34- - [ 代码示例] ( #代码示例-10 )
35- - [ 函数重写] ( #函数重写 )
36- - [ function_override] ( #function_override )
37- - [ 代码示例] ( #代码示例-11 )
2+
383# TCA-Armory-Q1工具介绍
394TCA-Armory-Q1, 又名 tca_ql_cpp 主要用于分析Cpp质量问题。
405
@@ -210,8 +175,6 @@ void leak_example3(int c) {
210175}
211176```
212177
213- ##### TODO
214- 指针为返回值目前不会进行上报与检查,需要后期增加对返回值是否释放的检查
215178
216179## 无效值检查
217180包含规则
@@ -310,8 +273,6 @@ void test(int i) {
310273}
311274```
312275
313- ##### TODO
314- - 提供规则参数支持函数参数作为数组或索引的情况检查
315276
316277#### buff_overflow
317278buff_overflow 检查` strcpy ` ,` strcat ` 字符串复制/拼接过程中长度不当导致的溢出, 同样` gets ` ` scanf ` 函数也视为不安全
Original file line number Diff line number Diff line change 1- # Cpp代码质量缺陷规则包
1+ # 【C/C++】代码质量缺陷规则包
22采用自研工具检查Cpp代码缺陷,需要使用license;属于 TCA 增强分析模块的能力之一,请参考[ 增强分析模块部署] ( https://tencent.github.io/CodeAnalysis/zh/quickStarted/enhanceDeploy.html ) 文档进行部署。
33
44
5- ## 规则
65
7- - [ array_overflow] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#array_overflow )
8- - [ buff_overflow] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#buff_overflow )
9- - [ dead_lock] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#dead_lock )
10- - [ func_ret_null] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#func_ret_null )
11- - [ missing_lock] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#missing_lock )
12- - [ resource_leak] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#resource_leak )
13- - [ unused_value] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#unused_value )
6+
7+ ## [ array_overflow] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#array_overflow )
8+ ## [ buff_overflow] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#buff_overflow )
9+ ## [ dead_lock] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#dead_lock )
10+ ## [ func_ret_null] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#func_ret_null )
11+ ## [ missing_lock] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#missing_lock )
12+ ## [ resource_leak] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#resource_leak )
13+ ## [ unused_value] ( https://tencent.github.io/CodeAnalysis/zh/guide/代码检查/工具/TCA-Armory-Q1.html#unused_value )
You can’t perform that action at this time.
0 commit comments