Quoting Mark Martinec <[email protected]>:

Helga,

I have some 50 users (out of 10000) for whom I want to bypass
spamchecking. Instead of writing the addresses literally in amavisd.conf
I would prefer to store them in a file. Could this be done in
amavisd.conf or will I have to modify amavisd ?

Will the following code work ?

my $path_mailaddr = '/etc/postfix/bypass_spam_checks';
my @all_mailaddr = ();
open(MAILADDR, "<$path_mailaddr")
  || die "cannot open bypass_spam_checks\n";
@all_mailaddr = <MAILADDR>;

Stll need to strip newlines from each.

my %bypass_spam_checks = ();
map { $bypass_spam_checks{lc($_)}=1 } (@all_mailaddr);

You are making a local copy of %bypass_spam_checks with a my(),
instead of using the %Amavis::Conf::bypass_spam_checks,
so it has no effect.

close(MAILADDR);

/etc/postfix/bypass_spam_checks contains:

[email protected]
[email protected]
....
[email protected]

Why not just use a read_hash to do the work:

@bypass_spam_checks_maps = ( read_hash('/etc/postfix/bypass_spam_checks') );

Yes this works. I got on the wrong track when trying to replace
'qw (user1@mydomain ...)' instead of putting the value into the file as rhs.

Thank you
Helga




Helga Mayer
Universität Hohenheim
Kommunikations-, Informations- und Medienzentrum (630)
IT-Dienste | Mail

Schloss-Westhof-Süd | 70599 Stuttgart
Tel.:  +49 711 459-22838 | Fax: +49 711 459-23449
https://kim.uni-hohenheim.de


Reply via email to