Add some basic validation to config parser.
We check for empty mandatory options for starters. Fixes #13 ... so we can release RSN :) Signed-off-by: Thomas Hochstein <thh@inter.net>
This commit is contained in:
parent
d28168419e
commit
db7696e550
14
NewsStats.pm
14
NewsStats.pm
|
@ -99,7 +99,19 @@ sub ReadConfig {
|
|||
### IN : $ConfFile: config filename
|
||||
### OUT: reference to a hash containing the configuration
|
||||
my ($ConfFile) = @_;
|
||||
return Config::Auto::parse($ConfFile, format => 'equal');
|
||||
# mandatory configuration options
|
||||
my @Mandatory = ('DBDriver','DBHost','DBUser','DBPw','DBDatabase',
|
||||
'DBTableRaw','DBTableGrps');
|
||||
# read config via Config::Auto
|
||||
my $ConfR = Config::Auto::parse($ConfFile, format => 'equal');
|
||||
my %Conf = %{$ConfR};
|
||||
# check for mandatory options
|
||||
foreach (@Mandatory) {
|
||||
&Bleat(2,sprintf("Mandatory configuration option %s is not set!",$_))
|
||||
if (!defined($Conf{$_}));
|
||||
}
|
||||
# $Conf{'TLH'} is checked in gatherstats.pl
|
||||
return $ConfR;
|
||||
};
|
||||
################################################################################
|
||||
|
||||
|
|
Loading…
Reference in a new issue