summaryrefslogtreecommitdiff
path: root/lib/checksrc.pl
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2015-03-17 13:53:12 +0100
committerDaniel Stenberg <daniel@haxx.se>2015-03-17 13:57:37 +0100
commit0037eb58052b19bad7ce55b2317a19283c644637 (patch)
tree59d8ac20e4edbd7bb27e5addc07ae268ca0d256a /lib/checksrc.pl
parent9395999543eaad251d61a83b50f461cc29884cd2 (diff)
downloadcurl-0037eb58052b19bad7ce55b2317a19283c644637.tar.gz
checksrc: introduce a whitelisting concept
Diffstat (limited to 'lib/checksrc.pl')
-rwxr-xr-xlib/checksrc.pl20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/checksrc.pl b/lib/checksrc.pl
index cd4314b51..190f00c93 100755
--- a/lib/checksrc.pl
+++ b/lib/checksrc.pl
@@ -26,13 +26,31 @@ my $indent = 2;
my $warnings;
my $errors;
+my $supressed; # whitelisted problems
my $file;
my $dir=".";
my $wlist;
+my %whitelist;
+
+sub readwhitelist {
+ open(W, "<checksrc.whitelist");
+ my @all=<W>;
+ for(@all) {
+ chomp;
+ $whitelist{$_}=1;
+ }
+ close(W);
+}
+
sub checkwarn {
my ($num, $col, $file, $line, $msg, $error) = @_;
+ if($whitelist{$line}) {
+ $supressed++;
+ return;
+ }
+
my $w=$error?"error":"warning";
if($w) {
@@ -78,6 +96,8 @@ if(!$file) {
exit;
}
+readwhitelist();
+
do {
if("$wlist" !~ / $file /) {
my $fullname = $file;