Hi Ask, The rearchitecting and plugin plans sound really cool.
FWIW, my goal is to be able to write a plugin that takes a simple text-file table of search strings and reject messages for each one; then run all the matches against the message (headers and body), and bounce as needed (kinda like the klez hacks built in to the current qpsmtd), but easier to add cases in a simple config file. Sample table of some rules I'd use for my server: ks_c_5601 Contains Korean Text; presumed spam =?euc-kr? Contains Korean Text; presumed spam Content-Type: audio/x-midi Contains audio attachment; presumed spam Content-Type: application Contains executable attachment; presumed virus -c >by the way, I am working on v0.10 which will have OO internals to >make it easy to write "plugins". The idea is that all checks, >rewrite rules, blocking rules, whatever can be written as a plugin. > >I think the object oriented design I worked out will allow it to be >really flexible and still reasonable efficient. > >It will also make it easier to use the internals in a different kind >of daemon (as in not running under tcpserver; but maybe a preforking >daemon or something like that). > > > - ask -- ------------------------------------------------------------------------ Chris Thorman (413) 473-0853 e-fax ------------------------------------------------------------------------
