I've got an idea for making the SpamAssassin configuration process 
more flexible, and I'd love to hear your suggestions and comments 
before I jump in and make a mess of the code ;-)

I'm in the process of deploying SpamAssassin on a distributed mail 
farm. The farm environment causes a number of headaches, many of 
which are solved by moving virtually all configuration into a SQL db.

The existing ConfSourceSQL.pm module will let us do most of what we 
want. However, it doesn't let us completely configure the filter 
because the SQL is only consulted for non-privileged config options 
by default.

I can easily hack the config to force the existing SQL module to pull 
all the configs, but I'd like to create a more elegant solution.

Basically I'd like to move virtually all configuration to a new 
extensible factory object.  The resulting config object would be 
dynamically customized to its environment via subclass selection.

This would allow most users to continue using a traditional 
file-based config, but would let people with complex setups drop in, 
for example, a SQL-based config without having to change any code 
within the rest of SpamAssassin or its client programs.  The client 
code would just ask the conf object questions and it would be up to 
the conf subclass to answer them.

This model would let the same basic code base work with text files, 
SQL, LDAP, DBM, etc. The backend that got used would be easily 
configurable and could, potentially, even be changed on the fly.

The complete description of the class structure and planned 
interaction with the config files is rather long, so I'll omit it for 
now.

Is this model (or at least the flexibility it would provide) 
something that other people would find useful?

If the general response is positive I'll be happy to implement the 
system and contribute it to the SpamAssassin project.

Thanks!
Richard Sonnen

-- 
Richard Sonnen                                      | Front Range 
Internet, Inc.
[EMAIL PROTECTED]                                     | www.frii.com 
[EMAIL PROTECTED]
Web Programmer                                      | 970-212-0731 
800-935-6527

_______________________________________________
Spamassassin-talk mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/spamassassin-talk

Reply via email to