]> source.dussan.org Git - rspamd.git/commitdiff
[Minor] Fix a check for bgpdump binary
authorAnton Yuzhaninov <citrin+git@citrin.ru>
Tue, 16 Jul 2019 20:53:32 +0000 (21:53 +0100)
committerAnton Yuzhaninov <citrin+git@citrin.ru>
Tue, 16 Jul 2019 20:53:32 +0000 (21:53 +0100)
While here sort 'use'.

utils/asn.pl

index d78277459a1a7387f015ad9432f9b565cebe46d0..1ef98c7e5455db7dbdb4da96507132e247cf9e07 100644 (file)
@@ -2,14 +2,16 @@
 
 use warnings;
 use strict;
-use Pod::Usage;
-use Getopt::Long;
+
+use File::Basename;
 use File::Fetch;
+use Getopt::Long;
+use IPC::Cmd qw/can_run/;
+use Pod::Usage;
+
 use LWP::Simple;
 use PerlIO::gzip;
-use File::Basename;
 use URI;
-use Data::Dumper;
 
 $LWP::Simple::ua->show_progress(1);
 
@@ -58,12 +60,8 @@ GetOptions(
 pod2usage(1) if $help;
 pod2usage( -exitval => 0, -verbose => 2 ) if $man;
 
-if ( -x bgpdump ) {
-    use_bgpdump = $1;
-} else {
-    warn "bgpdump is not found will try to use Net::MRT instead, results can be incomplete";
-}
-
+my $bgpdump_path = can_run('bgpdump')
+    or warn 'bgpdump is not found, will try to use Net::MRT instead; results can be incomplete';
 
 sub download_file {
     my ($u) = @_;
@@ -134,7 +132,7 @@ foreach my $u ( @{ $config{'bgp_sources'} } ) {
     my $parsed = URI->new($u);
     my $fname  = $download_target . '/' . basename( $parsed->path );
 
-    if ($use_bgpdump) {
+    if ($bgpdump_path) {
         use constant {
           F_MARKER => 0,
           F_TIMESTAMP => 1,
@@ -145,7 +143,7 @@ foreach my $u ( @{ $config{'bgp_sources'} } ) {
           F_ORIGIN => 7,
         };
 
-        open(my $bgpd, '-|', "bgpdump -v -M $fname") or die "can't start bgpdump: $!";
+        open(my $bgpd, '-|', "$bgpdump_path -v -M $fname") or die "can't start bgpdump: $!";
 
         while (<$bgpd>) {
             chomp;