Qpsmtpd::Transaction::body_filename() calls $self->body_spool() if the
message body has not already been spool to disk. This adds the same
check to Qpsmtpd::Transaction::body_fh()
It wasn't suitable to dup the body FH returned by plain old
body_fh(), so here's a separate function to return that.
Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>
This should help the prefork daemon to keep up with demand better without using
much more in the way of resources
Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>
Only ignore config, blib, pm_to_blib, cover_db at the top level.
Ignore any file (or more likely symlink) at the top level named
config. (This is so you can symlink config -> config.sample/)
Tomas Lee <j533xdbjwfgdbsv@jetable.net> pointed out that
cab7466c08 broke the default badmailfrom
reason.
This fixes that functionality and simplifies the code a little.
The patch below fixes many errors of the form:
*** WARNING: line containing nothing but whitespace in paragraph at line 37 in file writing.pod
*** WARNING: line containing nothing but whitespace in paragraph at line 40 in file writing.pod
There are also a couple of minor typo-fixes.
>> However, I'm back to seeing the connection processes being left behind,
>> despite an explicit quit from the remote host.
> It looks to me as though qpsmtpd should have started a new process
> group with the parent process, but hasn't. Or the developer assumed
> that qpsmtpd would be set up as leader of a process group, but it
> isn't in this circumstance.
Signed-off-by: Robert <rspier@pobox.com>
While writing a plugin for our new spamfilter implementation I noticed
some minor error in the documentation. From the documentation it
sounds like the hook_ok and hook_deny hooks get the previous hook as
parameter.. The truth is: it is the previous plugin.
Allows qpsmtpd-prefork to listen on multiple address/port combinations
simultaneously, based on the corresponding implementation in forkserver.
Signed-off-by: Robert <rspier@pobox.com>
forkserver uses --listen-address to specify the listening socket address, while
prefork uses --interface. Add the former as an alias for the latter, for
consistency & ease of integration. The two still aren't commandline-compatible,
but they're fairly close.
Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>
QP's connection to spamd unnecessarily persists beyond the run of the
spamassassin plugin itself. This closes the socket as soon as we're
finished using it.
Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>
from Tom Callahan <anomaly@abducted.us>
(reformatted by Robert)
Signed-off-by: Robert <rspier@pobox.com>
Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>
Improve Qpsmtpd::Transaction::add_recipient syntax
Update Qpsmtpd::Transaction::add_recipient to use slightly clearer
language, and add 'if $rcpt' to prevent undef recipients from
being added -- in this case, the '@_ and' syntax allowing this set
method to set undef is undesirable, since you shouldn't be adding undef as
a recipient.
Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>
import plugins/connection_time from SVN's contrib. Changes:
* perltidy run
* add one optional parameter: log level of the message, defaults
to LOGNOTICE (same as in SVN)
* updated docs
* use magic hooking with hook_rcpt
* add note about regexes being eval()ed => trusted users only
Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>