On Wed, Feb 21, 2007, Guy Hulbert <[EMAIL PROTECTED]> said: > On Wed, 2007-21-02 at 14:26 +0000, [EMAIL PROTECTED] wrote: >> > My wish would be: I can configure inside the plugins-config which >> > plugins where used normally and which are used while relaying. >> >> i can see several ways to do this: >> >> 1. each plugin gets a 'skip_relayclients' boolean config option >> 2. a special 'accept_relay' plugin gets loaded repeatedly, once per >> hook, in just the right spot to break before certain plugins >> 3. have just two plugins in control/plugins, check_relay and >> 'uber_plugin' >> which will read control/relay_plugins and control/nonrelay_plugins, >> and >> will rebuild the hook chains based on the relay status. >> >> 2 is easiest, 1 and 3 more flexible. >> >> comments? > > This seems to require major changes to the core code. >
#3 certainly does. #1 and #2 are just plugin changes, with #2 only requiring that we cutout the relay handling from existing plugins, and add a new plugin. control/plugins looks something like: check_relay sender_permitted_from accept_relay:0 hook=mail_from greylisting accept_relay:1 hook=rcpt_to .. note that those are complete gibberish, but you get the idea- you can break out of any hook chain at any point. unfortunately, it does require you to understand exactly which hooks each plugin uses... allan -- m. allan noah IT Director, TfHS.net ph# (804) 355-5489 tf# (866) 724-9722 fx# (804) 355-0477
