On Wed, 2002-05-01 at 04:17, Craig R Hughes wrote:
> Bart Schaefer wrote:
> 
> BS> I just tried this, and (a) it croaks if invoked with perl 5.005 on the
> BS> "use warnings;" line, and (b) with perl 5.6.1, it didn't print anything
> BS> even though a strings of the file shows that there definitely are some
> BS> entries.
> 
> Bah!  I don't think we need the use warnings in there anyway.  Consider it gone.
> 
> BS> Hmm, this is interesting.  I don't have an auto-whitelist.db file; my
> BS> database appears to be directly in the file named auto-whitelist.  If I
> BS> delete from check_whitelist the
> BS> 
> BS> if (-f "$db.db")
> 
> Double bah!  I think Justin added that in before heading off on vacation.  It 
> doesn't play well with AnyDB which could be using any DB, and not necessarily 
> one that calls its files *.db -- I'll remove that line too.
> 
> BS> so as to let the block that it protects run, I get
> BS> 
> BS> [EMAIL PROTECTED] -> -1.6 (-200.9/127)
> BS> 
> BS> but nothing else.  What is supposed to be happening here?  Have I somehow
> BS> gotten a strange version of AnyDBM?
> 
> Probably what's happening is you're not using the AWL file you think you're 
> using.  Is spamd running as root and not dropping privs?  Try checking out the 
> contents of /root/.spamassassin/auto-whitelist.db instead...
> 
Here is some results I got:
Script started on Wed May  1 13:40:46 2002
$ cd SpamAssassin/*20
$ ls
Changes             blib                pm_to_blib          spamd
License             build               procmailrc.example  spamproxy
MANIFEST            contrib             qmail               sql
MANIFEST.SKIP       doc                 rules               t
Makefile            fixpath.pl          sample-nonspam.txt  tools
Makefile.PL         lib                 sample-spam.txt     windows_install.pl
README              masses              spamassassin
TODO                ninjabutton.png     spamassassin.raw
$ cd tools
$ ls
check_whitelist  z
$ rm z
$ vi chj eck _whitelist
7[?47h"check_whitelist" 21 lines, 496 characters 
#!/usr/bin/perl
use warnings ;
use strict ;
use Fcntl;
use AnyDBM_File ;
use vars qw( %h $k $v ) ;
my $db = $ENV{HOME}."/.spamassassin/auto-whitelist";    # is this right?
if (-f "$db.dir") {
  tie %h, "AnyDBM_File",$db, O_RDWR|O_CREAT|O_EXCL,0600
or die "Cannot open file $db: $!\n";
  my @k = grep(!/totscore$/,keys(%h));
  for my $key (@k)
  {
     my $t = $h{"$key|totscore"};
my $v = $h{$key};
if(defined($t)) { printf "%-40.40s -> % 2.1f %s\n",$key,$t/$v,"($t/$v)";
 };
  }
  untie %h;
}
~"check_whitelist" 21 lines, 496 characters












~




     


  

  

~ 
"check_whitelist" 19 lines, 474 characters 

[?47l8$ check _wwhitelist 
Cannot open file /home/ler/.spamassassin/auto-whitelist: File exists
$ ls -la ..  ~! /.sp/home/ler/.spamassassin/
total 1118
drwx------    2 ler      isis           1024 May  1 13:40 .
drwxr-xr-x  160 ler      other         12288 May  1 13:40 ..
-rw-r--r--    1 ler      isis              0 May  1 11:43 auto-whitelist
-rw-------    1 ler      sys            4096 May  1 08:11 auto-whitelist.dir
-rw-------    1 ler      sys         1007616 May  1 13:40 auto-whitelist.pag
-rw-r--r--    1 ler      isis           1247 Apr 26 17:10 user_prefs
$ rm ~.,  /.sp/home/ler/.spamassassin/auuto-whitelist
$ ls -la /home/ler/.spamassassin/
$ check _whitelist                
$ 
Cannot open file /home/ler/.spamassassin/auto-whitelist: File exists
$ rm /home/ler/.spamassassin/auto-whitelist
$ ls -la /home/ler/.spamassassin/          
$ 
total 1118
drwx------    2 ler      isis           1024 May  1 13:41 .
drwxr-xr-x  160 ler      other         12288 May  1 13:40 ..
-rw-------    1 ler      sys            4096 May  1 08:11 auto-whitelist.dir
-rw-------    1 ler      sys         1007616 May  1 13:41 auto-whitelist.pag
-rw-r--r--    1 ler      isis           1247 Apr 26 17:10 user_prefs
$ 
script done on Wed May  1 13:42:02 2002

and I'll attach the check_whitelist I used.


> C
> 
> 
> _______________________________________________________________
> 
> Have big pipes? SourceForge.net is looking for download mirrors. We supply
> the hardware. You get the recognition. Email Us: [EMAIL PROTECTED]
> _______________________________________________
> Spamassassin-talk mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/spamassassin-talk
> 
-- 
Larry Rosenman                     http://www.lerctr.org/~ler
Phone: +1 972-414-9812                 E-Mail: [EMAIL PROTECTED]
US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749
#!/usr/bin/perl
use warnings ;
use strict ;
use Fcntl;
use AnyDBM_File ;
use vars qw( %h $k $v ) ;

my $db = $ENV{HOME}."/.spamassassin/auto-whitelist";	# is this right?

  tie %h, "AnyDBM_File",$db, O_RDWR|O_CREAT|O_EXCL,0600
      or die "Cannot open file $db: $!\n";
  my @k = grep(!/totscore$/,keys(%h));
  for my $key (@k)
  {
	my $t = $h{"$key|totscore"};
	my $v = $h{$key};
	if(defined($t)) { printf "%-40.40s -> % 2.1f %s\n",$key,$t/$v,"($t/$v)"; };
  }
  untie %h;

Reply via email to