#!/usr/bin/perl
# script to fetch current dnsbl.ins.pl and whois.ins.pl
#

use strict;

my $libdir = '/var/lib/hinfo';
my $wget = '/usr/bin/wget';
my $options = '';
my $blars = 'http://www.blars.org/hinfo/';
my @getlist = ( 'dnsbl.ins.pl', 'whois.ins.pl', );


my $verbose = '-nv';
my $quiet = 0;

while ($_ = shift @ARGV) {
    if (/^-quiet$/) {
	$quiet = 1;
    } elsif (/^-verbose$/) {
        $verbose = '';
    } elsif (/^-nonverbose$/) {
        $verbose = '-nv';
    } elsif (/^--$/) {
        last;
    } else {
        die "Unknown option: $_";
    }
}

my $capt = '';
if (-e $wget && -d $libdir) {
    my $c = "$wget -r -N -nd $verbose -P $libdir $options";
    foreach (@ARGV) {
        $c .= " $_";
    }
    foreach (@getlist) {
        $c .= " $blars$_";
    }
    $c .= ' 2>&1';
    open WGET, "-|", $c or die "Could not execute: $c";
    if ($quiet) {
	$capt .= $_ while ($_ = <WGET>);
    } elsif ($verbose eq '-nv') {
	while ($_ = <WGET>) {
	    $capt .= $_;
	    if (/^FINISHED/) {
		$capt .= $_ while ($_ = <WGET>);
	    } elsif (! /^$/) {
	        print STDERR $capt;
		print STDERR $_ while ($_ = <WGET>);
		$capt = '';
	    }
	}
    } else {
	print STDERR $_ while ($_ = <WGET>);
    }
}
print STDERR $capt if ($?);

exit($?);

