checkpatch: deprecate unbounded string functions.
Unbounded string functions are overflow risks. The 'n' versions of those functions should be used instead. Change-Id: Ice0fb3ebdae9aa88cc7e764ffdf68cbed857febf Signed-off-by: Gregory Bean <gbean@codeaurora.org> (cherry picked from commit 15e1e97d66dd6a6039c1ec2bd549a632fe361128) Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
This commit is contained in:
parent
1c82fe3903
commit
3bdbf8adfd
|
@ -4535,6 +4535,26 @@ sub process {
|
|||
$herecurr);
|
||||
}
|
||||
|
||||
# unbounded string functions are overflow risks
|
||||
my %str_fns = (
|
||||
"sprintf" => "snprintf",
|
||||
"strcpy" => "strlcpy",
|
||||
"strncpy" => "strlcpy",
|
||||
"strcat" => "strlcat",
|
||||
"strncat" => "strlcat",
|
||||
"vsprintf" => "vsnprintf",
|
||||
"strchr" => "strnchr",
|
||||
"strstr" => "strnstr",
|
||||
);
|
||||
foreach my $k (keys %str_fns) {
|
||||
if ($line =~ /\b$k\b/) {
|
||||
ERROR("UNBOUNDED_STRING_FNS",
|
||||
"Use of $k is deprecated: " .
|
||||
"use $str_fns{$k} instead.\n" .
|
||||
$herecurr);
|
||||
}
|
||||
}
|
||||
|
||||
# warn about #if 0
|
||||
if ($line =~ /^.\s*\#\s*if\s+0\b/) {
|
||||
WARN("IF_0",
|
||||
|
|
Loading…
Reference in New Issue