Add test for no change following an HRR
[openssl.git] / util / ck_errf.pl
index 01ed905fe5719932476345ace156be4c9fb293ed..ada23523fc813929fe15d99650326798465b38fd 100755 (executable)
 # perl util/ck_errf.pl */*.c */*/*.c
 #
 
+use strict;
+use warnings;
+
 my $err_strict = 0;
-my $bad = 0;
+my $bad        = 0;
+
+foreach my $file (@ARGV) {
+    if ( $file eq "-strict" ) {
+        $err_strict = 1;
+        next;
+    }
+    open( IN, "<$file" ) || die "Can't open $file, $!";
+    my $func = "";
+    while (<IN>) {
+        if ( !/;$/ && /^\**([a-zA-Z_].*[\s*])?([A-Za-z_0-9]+)\(.*([),]|$)/ ) {
+            /^([^()]*(\([^()]*\)[^()]*)*)\(/;
+            $1 =~ /([A-Za-z_0-9]*)$/;
+            $func = $1;
+            $func =~ tr/A-Z/a-z/;
+        }
+        if ( /([A-Z0-9]+)err\(([^,]+)/ && !/ckerr_ignore/ ) {
+            my $errlib = $1;
+            my $n      = $2;
 
-foreach $file (@ARGV)
-       {
-       if ($file eq "-strict")
-               {
-               $err_strict = 1;
-               next;
-               }
-       open(IN,"<$file") || die "unable to open $file\n";
-       $func="";
-       while (<IN>)
-               {
-               if (!/;$/ && /^\**([a-zA-Z_].*[\s*])?([A-Za-z_0-9]+)\(.*([),]|$)/)
-                       {
-                       /^([^()]*(\([^()]*\)[^()]*)*)\(/;
-                       $1 =~ /([A-Za-z_0-9]*)$/;
-                       $func = $1;
-                       $func =~ tr/A-Z/a-z/;
-                       }
-               if (/([A-Z0-9]+)err\(([^,]+)/ && ! /ckerr_ignore/)
-                       {
-                       $errlib=$1;
-                       $n=$2;
+            if ( $func eq "" ) {
+                print "$file:$.:???:$n\n";
+                $bad = 1;
+                next;
+            }
 
-                       if ($func eq "")
-                               { print "$file:$.:???:$n\n"; $bad = 1; next; }
+            if ( $n !~ /([^_]+)_F_(.+)$/ ) {
+                #print "check -$file:$.:$func:$n\n";
+                next;
+            }
+            my $lib = $1;
+            $n   = $2;
 
-                       if ($n !~ /([^_]+)_F_(.+)$/)
-                               {
-               #               print "check -$file:$.:$func:$n\n";
-                               next;
-                               }
-                       $lib=$1;
-                       $n=$2;
+            if ( $lib ne $errlib ) {
+                print "$file:$.:$func:$n [${errlib}err]\n";
+                $bad = 1;
+                next;
+            }
 
-                       if ($lib ne $errlib)
-                               { print "$file:$.:$func:$n [${errlib}err]\n"; $bad = 1; next; }
+            $n =~ tr/A-Z/a-z/;
+            if ( $n ne $func && $errlib ne "SYS" ) {
+                print "$file:$.:$func:$n\n";
+                $bad = 1;
+                next;
+            }
 
-                       $n =~ tr/A-Z/a-z/;
-                       if (($n ne $func) && ($errlib ne "SYS"))
-                               { print "$file:$.:$func:$n\n"; $bad = 1; next; }
-       #               print "$func:$1\n";
-                       }
-               }
-       close(IN);
+            #          print "$func:$1\n";
         }
+    }
+    close(IN);
+}
 
-if ($bad && $err_strict)
-       {
-       print STDERR "FATAL: error discrepancy\n";
-       exit 1;
-       }
-
+if ( $bad && $err_strict ) {
+    print STDERR "FATAL: error discrepancy\n";
+    exit 1;
+}