Just following up my email of last week. Is there any interest in taking this patch to greylite? I would like to see it in the distro so I don't have to keep applying it over time.
C ---------------------------------------------------------------- Before moving to qpsmtpd I was using the (now-defunct) greylite package. This package had two good features that I miss in qpsmtpd: 1. Tracking by IP/sender/recip but subsequent whitelisting by IP only. What this means is that when we first hear from a server, we expect it to retry the same message (all parts of connection triple). Once the server has jumped through this hoop, however, we can assume it will do the same for any subsequent pair of sender and recipient. Further greylisting mail at this point will only annoy other local users who must wait for the inevitable black_timeout to pass before their mail gets through. I have added a new parameter (ip_only_whitelist) that implements the greylite model for this (default off). 2. Database Cleanup As bots spam us, we will tend to get more and more useless entries that bog down the system and take up filesystem space. Every 800 times through (on average) greylite would make a pass through its database to remove stale keys. I have added this functionality to the plugin, basing the "staleness" on the grey_timeout for non-whitelisted entries and the white_timeout for the rest. In my code the default is set to 800 (like greylite). 3. Logging For those of us using the syslog logging the log lines were set much too high, with regular messages being logged at CRIT. I have rationalized that. Let me know if there's anything else you need to commit this patch.