Changeset 3 for trunk/dnsbl/export-dnsbl


Ignore:
Timestamp:
09/09/09 15:18:13 (15 years ago)
Author:
Kris Deugau
Message:

/trunk/dnsbl

Fix another behavioural bug in export - don't export all classful entries

in a CIDR block if that block isn't OOB or volume-listed itself

Irrelevant test-case selections added in browse.cgi and export-dnsbl
Fix export for rbldnsd by passing the mode to export() on full export
Checkpoint segment of export-dnsbl that may not be needed due to above

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dnsbl/export-dnsbl

    r2 r3  
    1919my $ipref = \%iplist;
    2020
    21 my $mode = $ARGV[0] || 'cidr';
     21my $mode = $ARGV[0] || 'tiny';
    2222
    2323#$dnsbl->export($ipref,$mode,1,'65.60/18');
    2424#$dnsbl->export($ipref,$mode,1,'67.136.0.0/14');
    2525#$dnsbl->export($ipref,$mode,1,'83.76/15');
    26 #$dnsbl->export($ipref,$mode,1,'95.154.192.0/18');
    27 $dnsbl->export($ipref);
     26#$dnsbl->export($ipref,$mode,1,'76.73.0.0/17');
     27#$dnsbl->export($ipref,$mode,1,'174.36.0.0/15');
     28$dnsbl->export($ipref,$mode);
    2829
    2930##fixme - mode should pick actual output, not just export mode
    3031if ($mode eq 'cidr') {
     32  # more or less raw CIDR block-and-IP info
    3133  foreach (sort ipcmp keys %iplist) {
    32     print "$_\t$iplist{$_}\n";
     34    print "$_:127.0.0.$iplist{$_}:".
     35        ($iplist{$_} & 2 ? '$ relayed a reported spam' : 'Netblock listed on one or more criteria')."\n";
    3336  }
     37} elsif ($mode eq 'rbldnsd') {
     38  # need extra cmd args
     39  die "need subgroup spec (iplist, cidrlist) as well\n" if !$ARGV[1];
     40  if ($ARGV[1] eq 'iplist') {
     41    foreach (sort ipcmp keys %iplist) {
     42      print "$_:127.0.0.$iplist{$_}:\$ relayed a reported spam\n" if $iplist{$_} & 2;
     43    }
     44  } elsif ($ARGV[1] eq 'cidrlist') {
     45    foreach (sort ipcmp keys %iplist) {
     46      print "$_:127.0.0.$iplist{$_}:Netblock listed on one or more criteria\n" if ! ($iplist{$_} & 2);
     47    }
     48  }
     49  # no output if second arg is unknown.
    3450} else {
    3551  foreach (sort ipcmp keys %iplist) {
Note: See TracChangeset for help on using the changeset viewer.