geoipdb builder: separate into functions

This commit is contained in:
Jan Engelhardt
2011-01-27 02:55:10 +01:00
parent f180c0e5c6
commit 80444b0d31

View File

@@ -35,6 +35,11 @@ foreach (qw(LE BE)) {
} }
} }
&collect();
&dump();
sub collect
{
while (my $row = $csv->getline(*ARGV)) { while (my $row = $csv->getline(*ARGV)) {
if (!defined($country{$row->[4]})) { if (!defined($country{$row->[4]})) {
$country{$row->[4]} = { $country{$row->[4]} = {
@@ -56,8 +61,18 @@ while (my $row = $csv->getline(*ARGV)) {
} }
print STDERR "\r\e[2K$. entries total\n"; print STDERR "\r\e[2K$. entries total\n";
}
sub dump
{
foreach my $iso_code (sort keys %country) { foreach my $iso_code (sort keys %country) {
&dump_one($iso_code);
}
}
sub dump_one
{
my $iso_code = shift @_;
my($file, $fh_le, $fh_be); my($file, $fh_le, $fh_be);
printf "%5u IPv6 ranges for %s %s\n", printf "%5u IPv6 ranges for %s %s\n",