Peter J. Holzer wrote:
On 2006-05-14 11:56:08 -0700, Elliot Foster wrote:

Elliot Foster wrote:

I noticed that I hadn't received any of my danga mailing list content in a while, and checked my logs to find:

@4000000044662b4a2f63f34c 28892 D check_earlytalker 207.7.148.197:56598 216.218.240.174:25 Connecting host started transmitting before SMTP greeting

Which appears to be the danga list server.  Is anyone else seeing this?

I sent an email to the list manager of the danga lists, and whipped up ye olde plugin. What are other people using for whitelist purposes?


I use client_options (oops, I just notice that that's neither on my web
page nor in the wiki. It will be in the contrib directory RSN, though).
It basically just sets transaction notes based on the IP address or
domain name of the client. Other plugins then check for these notes.

For example, my $config/client_options contains the line

66.218.66.64/26:        denysoft_greylist/skip=1

and my customized denysoft_greylist plugin contains the check

  if (my $co = $self->qp->connection->notes('client_options')) {
    if ($co->{denysoft_greylist}{skip}) {
      $self->log(LOGINFO, "client is whitelisted, skipping greylist checks");
      return DECLINED·
    }
  }

so greylisting is skipped if the client has an IP address between
66.218.66.64 and 66.218.66.127 (which happens to be the Yahoo groups
cluster).

Peter, this sounds great. It would be nice to have the same function that hooks into a DB, though. I suppose the DB lookup would only have to happen once on connection (or at 'mail from'/'rcpt to' if you want whitelists based on that input as well). If you could put up the plugin so that I might see it/use it, I would appreciate it.

I would use devin carraway's whitelist plugin, but it appears to be an all-or-nothing whitelist, whereas I would like to have different levels of whitelist. Allowing someone to be an earlytalker but still perform a spam scan on it, for example.


Yup. That's why I wrote client_options. Actually, I use the same scheme
for sender and recipient addresses, too, not just for client addresses.
Unfortunately, it needs cooperation from the plugins, so I have to
modify all plugins for which I want whitelisting. There have been a few
discussions for a generalized scheme which all plugins could use, but
none of them came to a conclusion.

It would be very nice to have some sort of uniform method to do this (plugin behavior modification based on criteria), I agree. Of course, there shouldn't be any harm in making modifications to the plugins that check for certain variables, since the plugin will behave normally without those variables. Is there a strong argument against that?

Reply via email to