> > What is the reason for making it a plugin? It's part of the basic > > function of qmail-smtpd, just like the check for message size, for > > example. And not having it allows what are essentially DoS attacks on > > the server, so it's not really an optional function. > > Because we like to keep what can go into plugins as plugins. It keeps the > core clean, and facilitates easier updates. > > Matt.
Does qpsmtpd have separate hooks for header and body? When I was writing Advenge SMTPD I had a hook that fired after the header was all in, and if the header wasn't good there was a dummy body routine that just ate until the dot then issued the rejection code. Hop counting is a fundamental part of reading the body -- as a plugin, it would need to go in a per-body-line hook that is called for header lines, so the rest of the message can be thrown out.
