aboutsummaryrefslogtreecommitdiffstats
path: root/lib/MGA/Mirrors/DB.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/MGA/Mirrors/DB.pm')
-rw-r--r--lib/MGA/Mirrors/DB.pm10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/MGA/Mirrors/DB.pm b/lib/MGA/Mirrors/DB.pm
index 2e54847..1f59614 100644
--- a/lib/MGA/Mirrors/DB.pm
+++ b/lib/MGA/Mirrors/DB.pm
@@ -10,6 +10,8 @@ use DBI;
use File::Temp qw(tempfile);
use Net::DNS;
+my $timeout = 10; # timeout connecting to remote servers
+
sub configfile { '/etc/mga-mirrors.ini' }
sub new {
@@ -284,13 +286,11 @@ sub check_distributions {
sub _check_url {
my ($self, $furi) = @_;
- my ($fh, $filename) = tempfile();
- close($fh);
my $cmd =
- $furi->scheme =~ /^http|ftp$/ ? "wget -q --no-check-certificate -nv -t 1 -T 4 -O $filename " . $furi->as_string :
- $furi->scheme eq 'rsync' ? "rsync --timeout 4 -q " . $furi->as_string . " $filename" : '';
+ $furi->scheme =~ /^http|ftp$/ ? "wget -q --no-check-certificate -nv -t 1 -T $timeout -O /dev/null " . $furi->as_string :
+ $furi->scheme eq 'rsync' ? "rsync --dry-run --timeout $timeout -q " . $furi->as_string . " /dev/null 2>/dev/null" : '';
my $ok = (system($cmd) == 0);
- unlink($filename);
+ #print STDERR "Result of \"$cmd\" was " . ($ok ? "ok" : "failure") . "\n";
return $ok
}