filter_innd: Add missing module.
[usenet/INN.git] / filter / cleanfeed.local
index ef678c1..9f1fe0f 100644 (file)
@@ -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, '');
This page took 0.011931 seconds and 4 git commands to generate.