Browse Source

[Minor] Fix download

tags/1.4.0
Vsevolod Stakhov 7 years ago
parent
commit
32a4e9d755
1 changed files with 12 additions and 7 deletions
  1. 12
    7
      utils/asn.pl

+ 12
- 7
utils/asn.pl View File

@@ -47,7 +47,7 @@ sub download_file {

print "Fetching $u\n";
my $ff = File::Fetch->new( uri => $u );
my $where = $ff->fetch($download_target) or die $ff->error;
my $where = $ff->fetch( to => $download_target ) or die $ff->error;

return $where;
}
@@ -64,12 +64,16 @@ if ($download_bgp) {
}
}

if ( $download_asn || $download_bgp ) {
exit 0;
}

# Now load BGP data
my $networks = {};

foreach my $u ( @{ $config{'bgp_sources'} } ) {
my $parsed = URI->new($u);
my $fname = $download_target . basename( $parsed->path );
my $fname = $download_target . '/' . basename( $parsed->path );
open( my $fh, "<:gzip", $fname )
or die "Cannot open $fname: $!";

@@ -93,7 +97,7 @@ foreach my $u ( @{ $config{'bgp_sources'} } ) {
# Now roughly detect countries
foreach my $u ( @{ $config{'asn_sources'} } ) {
my $parsed = URI->new($u);
my $fname = $download_target . basename( $parsed->path );
my $fname = $download_target . '/' . basename( $parsed->path );
open( my $fh, "<", $fname ) or die "Cannot open $fname: $!";

while (<$fh>) {
@@ -108,17 +112,18 @@ foreach my $u ( @{ $config{'asn_sources'} } ) {
for ( my $as = $as_start ; $as < $as_end ; $as++ ) {
if ( $networks->{"$as"} ) {
$networks->{"$as"}->{'country'} = $elts[1];
$networks->{"$as"}->{'rir'} = $elts[0];
$networks->{"$as"}->{'rir'} = $elts[0];
}
}
}
}
}

while ( my ( $k, $v ) = each(%{$networks}) ) {
foreach my $n (@{$v->{'nets'}}) {
while ( my ( $k, $v ) = each( %{$networks} ) ) {
foreach my $n ( @{ $v->{'nets'} } ) {

# "15169 | 8.8.8.0/24 | US | arin |" for 8.8.8.8
if ($v->{'country'}) {
if ( $v->{'country'} ) {
printf "%s %s|%s|%s|%s|\n", $n, $k, $n, $v->{'country'}, $v->{'rir'};
}
else {

Loading…
Cancel
Save