On Sun, 22 Nov 2020 13:24:24 -0500 Dianne Skoll <mimedefang@lists.roaringpenguin.com> wrote:
> Anyway... I'd really like to see MIMEDefang development activity pick > up again. I'm hoping The McGrail Foundation will attract more > interest in the project. Specifically... these are things I would do differently if I were starting MIMEDefang now instead of 20 years ago. :) The C code is mostly fine; the milter and the multiplexor work pretty well. The Perl code is atrocious. mimedefang.pl is over 7500 lines of Perl in one ugly file with a ton of global variables. It needs a major overhaul. I would start by writing a MD::Filter base class and storing state in the MD::Filter object. Callbacks could be implemented as methods and users could subclass MD::Filter to implement their behaviour. Functions like md_check_against_smtp_server, etc. should be broken out into helper modules. The actual filter file would be a very simple thing that simply instantiates a (subclass of) MD::Filter and calls $filter->run() to run the main mimedefang.pl loop. Comments/thoughts/etc? Regards, Dianne. _______________________________________________ NOTE: If there is a disclaimer or other legal boilerplate in the above message, it is NULL AND VOID. You may ignore it. Visit http://www.mimedefang.org and http://www.roaringpenguin.com MIMEDefang mailing list MIMEDefang@lists.roaringpenguin.com http://lists.roaringpenguin.com/mailman/listinfo/mimedefang