--- doc/loncapafiles/sanitycheck.piml 2002/11/26 15:05:19 1.9 +++ doc/loncapafiles/sanitycheck.piml 2006/12/10 23:23:55 1.22 @@ -1,9 +1,8 @@ - - + /etc/httpd/conf/loncapa.conf +/etc/apache2/loncapa.conf open IN, "<"; my $hbug=-1; @@ -122,36 +150,39 @@ my $rbug=0; my $dbug=0; my $sbug=0; my $fbug=0; +my %line; +my $line=0; while (<IN>) { + $line++; + next if (/^(\#|\s*$)/); if (/\S/) { - $rbug=1 if /\r/; + if (/\r/) { $rbug=1; push(@{$line{'r'}},$line); } my @a=split(/\:/,$_); - $dbug=1 if $a[0]=~/\W/; - $dbug=1 if $a[0]=~/\_/; - $dbug=1 if $a[1]=~/\_/; - $dbug=1 if $a[1]=~/\W/; - $fbug=1 if (@a<5 || @a>6); + if ($a[0]=~/[^\w\-.]/ || + $a[1]=~/[^\w\-.]/ || + $a[0]=~/\_/ || + $a[1]=~/\_/ ) { $dbug=1; push(@{$line{'d'}},$line); } + if (@a<4 || @a>5) { $fbug=1; push(@{$line{'f'}},$line); } my $expr='\s.+$'; - $sbug=1 if ($a[0] =~ /$expr/ || - $a[1] =~ /$expr/ || - $a[2] =~ /$expr/ || - $a[3] =~ /$expr/ || - $a[4] =~ /$expr/ ) + if ($a[0] =~ /$expr/ || + $a[1] =~ /$expr/ || + $a[2] =~ /$expr/ || + $a[3] =~ /$expr/ ) { $sbug=1; push(@{$line{'s'}},$line); } ; } } close IN; if ($rbug) { - print "**** ERROR **** is DOS-formatted\n"; + print "**** ERROR **** is DOS-formatted (lines ".join(', ',@{$line{'r'}}).")\n"; } if ($dbug) { - print "**** ERROR **** has invalid host id or domain id\n"; + print "**** ERROR **** has invalid host id or domain id (lines ".join(', ',@{$line{'d'}}).")\n"; } if ($fbug) { - print "**** ERROR **** is lacking 5 or 6 columns for every row\n"; + print "**** ERROR **** is lacking 4 or 5 columns for every row (lines ".join(', ',@{$line{'f'}}).")\n"; } if ($sbug) { - print "**** ERROR **** has illegal whitespace character\n"; + print "**** ERROR **** has illegal whitespace character (lines ".join(', ',@{$line{'s'}}).")\n"; } @@ -160,12 +191,14 @@ open IN, "<"; my $rbug=0; my $dbug=0; my $sbug=0; -while (<IN>) { - if (/\S/) { - $rbug=1 if /\r/; - $dbug=1 if $_=~/\W.*\n$/; - $dbug=1 if $_=~/\_/; - $sbug=1 if /\s.+$/; +while (my $line = <IN>) { + if ($line =~ /\S/) { + $rbug=1 if $line=~/\r/; + if ($line =~ /\W.*\n/) { + $dbug=$line if ($line !~/\w:(?:primary|default)$/); + } + $dbug=$line if $line=~/\_/; + $sbug=1 if $line=~/\s.+$/; } } close IN; @@ -173,7 +206,7 @@ if ($rbug) { print "**** ERROR **** is DOS-formatted\n"; } if ($dbug) { - print "**** ERROR **** has invalid host id\n"; + print "**** ERROR **** has invalid host id ($dbug)\n"; } if ($sbug) { print "**** ERROR **** has illegal whitespace character\n";