Oops, I think the plugin is not standard, so here is the source in case
anyone else on the list is curious:
------------------------------------------------------------------
# this plugin checks if the rcpt to email address actually exists.
# Unlike other plugins which work similarly, this plugin relies upon
# an external utility to do the actual verification of the email address.
# This means this plugin can work with any address store.
sub register {
my ($self, $qp) = @_;
$self->register_hook("rcpt", "check_address");
}
sub check_address {
my ($self, $transaction, $recipient) = @_;
return (DECLINED) unless $recipient->host && $recipient->user;
my $host = lc $recipient->host;
my $from = lc($recipient->user) . '@' . $host;
my $check_script = '/usr/local/vpopmail/bin/vpopaccountexists';
return DECLINED unless -e $check_script;
# Always allow relayclients and whitelisted hosts/senders
return DECLINED if $self->qp->connection->relay_client();
return DECLINED if $self->qp->connection->notes('whitelisthost');
return DECLINED if $transaction->notes('whitelistsender');
my @result = `$check_script $from`;
my $exit_value = $? >> 8;
$self->log(LOGDEBUG, 'Exit code for ' . $from . ' was ' . $exit_value );
return (DENY, "mail to $from not accepted here") if $exit_value ne '1';
return (DECLINED);
}
--------------------------------------------------------------------
Rick wrote:
There's a binary called vpopaccountexists that will check vpopmail
virtual domains. I use it with check_anyrcptto.
I think the domain that hosted the source for vpopaccountexists is
down, so I'll attach that and the scrip I used to compile it.
check_anyrcptto: my $check_script =
'/usr/local/vpopmail/bin/vpopaccountexists';
-Rick
Frank Precissi wrote:
Hi everyone! Long time lurker/qpsmtpd user, first time poster.
I've searched everywhere, checked the repos, and the pages for plugin
writers.
Is there a good working vpopmail valid-email plugin for qpsmtpd? One
that will:
1. Search .qmail files in /var/qmail/vpopmail/domains/* (including ezmlm
files)
2. Query the vpopmail database for aliases there.
3. Not choke on catchall addresses.
I'm running a vanilla vpopmail installation with multiple domains.
There used to be one that relied on setuid-perl, but for the life of me
I cant find it (and are unsure if it will run on the latest version of
qpsmtpd).
Thanks everyone!
Frank