X-Git-Url: https://code.th-h.de/?p=usenet%2FINN.git;a=blobdiff_plain;f=filter%2Fcleanfeed.local;h=9f1fe0f4bac92369d1145aedbee52b822f839c86;hp=ef678c16dd31acb69eeb50bc5976832e75407802;hb=HEAD;hpb=0ed9a8166df528d403e3ad998e583224947b72ae diff --git a/filter/cleanfeed.local b/filter/cleanfeed.local index ef678c1..9f1fe0f 100644 --- a/filter/cleanfeed.local +++ b/filter/cleanfeed.local @@ -2,6 +2,7 @@ use MIME::Base64(); use Digest::SHA(); +use Digest::MD5(); # # local_filter_cancel @@ -68,20 +69,24 @@ sub verify_cancel_key($$$) { my %lock; for my $l(split(/\s+/, $cancel_lock)) { - next unless($l =~ m/^(sha1|md5):(\S+)/); + next unless($l =~ m/^(sha512|sha256|sha1|md5):(\S+)/); $lock{$2} = $1; } for my $k(split(/\s+/, $cancel_key)) { - unless($k =~ m/^(sha1|md5):(\S+)/) { + unless($k =~ m/^(sha512|sha256|sha1|md5):(\S+)/) { INN::syslog('notice', "Invalid Cancel-Key syntax '$k'.$msg"); next; } my $key; - if ($1 eq 'sha1') { - $key = Digest::SHA::sha1($2); } - elsif ($1 eq 'md5') { + if ($1 eq 'sha512') { + $key = Digest::SHA::sha512($2); + } elsif ($1 eq 'sha256') { + $key = Digest::SHA::sha256($2); + } elsif($1 eq 'sha1') { + $key = Digest::SHA::sha1($2); + } elsif ($1 eq 'md5') { $key = Digest::MD5::md5($2); } $key = MIME::Base64::encode_base64($key, '');