4.3.13 -errsecurity=v
可使用 -errsecurity 选项检查代码中的安全漏洞。
v 必须是下列值之一:
表 4–5
-errsecurity 标志
值
|
含义
|
core
|
此级别检查的源代码构造几乎始终是不安全或难以验证的。此级别的检查包括:
-
将可变格式字符串与 printf() 和 scanf() 系列函数一起使用
-
在 scanf() 函数中使用无限制字符串 (%s) 格式
-
使用无安全用法的函数:gets()、cftime()、ascftime() 和 creat()
-
错误地使用 open() 和 O_CREAT
将在此级别生成警告的源代码视为错误。应更改有问题的源代码。在所有情况下,都应采用更安全简单的代码。
|
standard
|
此级别检查包括 core 级别的所有检查,以及可能安全、但有更好的可用替代代码的构造的检查。检查新近编写的代码时建议采用此级别检查。此级别的其他检查包括:
|
extended
|
此级别检查包含几乎所有检查,包括 Core 级别和 Standard 级别的所有检查。此外,还会生成许多有关在某些情况下可能不安全的构造的警告。此级别的检查可用作检查代码的辅助措施,但无需将这些检查用作判断源代码是否可接受的标准检查。此级别的其他检查包括:
|
%none
|
关闭 -errsecurity 检查
|
如果未指定 -errsecurity 的设置,lint 会将它设置为 -errsecurity=%none。如果在指定 -errsecurity 时未指定参数,lint 会将它设置为 -errsecurity=standard。