Peter J. Holzer wrote: > I always found the rcpt_ok plugin in trunk/plugins rather useless for > two reasons: > > 1) it can only check for the recipient domain, not the local part. So it > cannot reject mails to non-existent recipients. Accepting a mail and > later sending a DSN is IMHO not acceptable behaviour for an MX. > > 2) It returns OK on success. That means that any later plugins in the rcpt > hook will not be executed. But most plugins I only want to run after > I have established that the recipient is indeed a valid, local > adress.
You have to remember that the origin of qpsmtpd is as a replacement for Qmail's smtpd. As such, rcpt_ok has a very narrow mandate, as shown in the comment lines at the head of the plugin itself: # this plugin checks the standard rcpthosts config # # It should be configured to be run _LAST_! # It was specifically designed so that if you loaded no other rcpt plugin, it would work just like Qmail does. If you want to run _other_ rctp-time checks, just load them before rcpt_ok. FWIW, I run four: check_badmailfromto check_badmailfrom check_badrcptto check_finger the last of which actually hits the user database for each domain and confirms that the user (or an alias) is live at that moment in time. John