sub ReadConfig($) { my $ConfigFile=shift; my %Config; my $Item; open CONFIG,"<$ConfigFile" or return %Config; while() { chomp; next if ((/^#/)||(/^\s*$/)); # Yeah, I'm sorry for the .* here... if (/^\[(.*)\]$/) {$Item=$1;next;}; if($Item) { my ($SubOption,$Value)=split /\=/; if ($Value) { push @{$Config{$Item}{$SubOption}},$Value; } else push @{$Config{$Item}},$_; }; }; close CONFIG; return(%Config); };