From 18d1ec2cf6a7a2b610d7c9b88b24ecd3839c7981 Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Wed, 4 Sep 2002 01:47:01 +0000 Subject: Write total number of unique remailers to echolot.html Work around broken remailers that insert newlines. --- Echolot/Pinger.pm | 11 +++++++++-- Echolot/Stats.pm | 6 +++++- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'Echolot') diff --git a/Echolot/Pinger.pm b/Echolot/Pinger.pm index 07ee0f8..b31e339 100644 --- a/Echolot/Pinger.pm +++ b/Echolot/Pinger.pm @@ -1,7 +1,7 @@ package Echolot::Pinger; # (c) 2002 Peter Palfrader -# $Id: Pinger.pm,v 1.19 2002/09/03 17:14:26 weasel Exp $ +# $Id: Pinger.pm,v 1.20 2002/09/04 01:47:01 weasel Exp $ # =pod @@ -119,7 +119,14 @@ sub receive($$$) { my $now = time(); my $body; - $body = Echolot::Tools::crypt_symmetrically($msg, 'decrypt') if $msg =~ /^-----BEGIN PGP MESSAGE-----/m; + if ($msg =~ /^-----BEGIN PGP MESSAGE-----/m) { + # work around borken middleman remailers that have a problem with some + # sort of end of line characters and randhopping them through reliable + # remailers.. + # they add an empty line between each usefull line + $msg =~ s/(\r?\n)\r?\n/$1/g if ($msg =~ /^-----BEGIN PGP MESSAGE-----\r?\n\r?\n/m); + $body = Echolot::Tools::crypt_symmetrically($msg, 'decrypt'); + }; $body = $msg unless defined $body; my ($addr) = $body =~ /^remailer: (.*)$/m; diff --git a/Echolot/Stats.pm b/Echolot/Stats.pm index 82bef86..9b8ae81 100644 --- a/Echolot/Stats.pm +++ b/Echolot/Stats.pm @@ -1,7 +1,7 @@ package Echolot::Stats; # (c) 2002 Peter Palfrader -# $Id: Stats.pm,v 1.31 2002/08/23 08:17:21 weasel Exp $ +# $Id: Stats.pm,v 1.32 2002/09/04 01:47:01 weasel Exp $ # =pod @@ -481,6 +481,7 @@ sub build_lists() { my $pubrems; my %stats; + my %addresses; my $broken1 = read_file( Echolot::Config::get()->{'broken1'}, 1); my $broken2 = read_file( Echolot::Config::get()->{'broken2'}, 1); @@ -494,6 +495,7 @@ sub build_lists() { build_list2( $pubrems, $broken1, $broken2, $sameop, Echolot::Config::get()->{'resultdir'}.'/'.'mlist2', Echolot::Config::get()->{'templates'}->{'mlist2'}); $stats{'mix_total'} = scalar @$pubrems; $stats{'mix_98'} = scalar grep { $_->{'stats'}->{'avr_reliability'} >= 0.98 } @$pubrems; + $addresses{$_->{'address'}}=1 for @$pubrems; if (Echolot::Config::get()->{'combined_list'}) { $clist->{'mix'} = $rems; $pubclist->{'mix'} = $pubrems; $pubrems = undef; @@ -507,6 +509,7 @@ sub build_lists() { build_list2( $pubrems, $broken1, $broken2, $sameop, Echolot::Config::get()->{'resultdir'}.'/'.'rlist2', Echolot::Config::get()->{'templates'}->{'rlist2'}); $stats{'cpunk_total'} = scalar @$pubrems; $stats{'cpunk_98'} = scalar grep { $_->{'stats'}->{'avr_reliability'} >= 0.98 } @$pubrems; + $addresses{$_->{'address'}}=1 for @$pubrems; if (Echolot::Config::get()->{'combined_list'} && ! Echolot::Config::get()->{'seperate_rlists'}) { $clist->{'cpunk'} = $rems; $pubclist->{'cpunk'} = $pubrems; $pubrems = undef; @@ -551,6 +554,7 @@ sub build_lists() { build_clist( $pubclist, $broken1, $broken2, $sameop, Echolot::Config::get()->{'resultdir'}.'/'.'clist', Echolot::Config::get()->{'templates'}->{'clist'}); }; + $stats{'unique_addresses'} = scalar keys %addresses; Echolot::Tools::write_HTML_file( Echolot::Config::get()->{'resultdir'}.'/'.Echolot::Config::get()->{'indexfilebasename'}, Echolot::Config::get()->{'templates'}->{'indexfile'}, -- cgit v1.2.3