Commit Graph

881 Commits

Author SHA1 Message Date
Hanno Hecker
8bce5f0278 Consolidate plugin documentation in docs/plugins.pod
* Include missing stuff from README.plugins into docs/plugins.pod
* clear README.plugins to redirect to docs/plugins.pod
2009-02-10 20:51:52 -08:00
Karl Y. Pradene
059771d31d End of headers hook: data_headers_end
Hook after receiving all headers lines. Defaults to nothing,
just continue processing. At this step, sender does not wait for a reply,
but we can stop him from sending remaining data by disconnecting.

(Cleaned up by Robert for english and coding style.)

Signed-off-by: Ask Bjørn Hansen <ask@develooper.com>
Signed-off-by: Robert Spier <robert@perl.org>
2009-02-10 02:49:38 -05:00
Jared Johnson
ea86b9fdb2 Add notes to Qpsmtpd::Address class
standardize other notes calls
2009-02-08 22:38:03 -08:00
Steve Kemp
815c6d8223 PATCH: Log the name of plugins generating fatal errors
I've got many non-standard plugins and for a given
  fatal error it is non-trivial to determine which of
  them was to blame.

   Perhaps this patch would be useful?  (Against SVN,
 not git, but I think that shouldn't matter too much..)

Steve
--
Stop blog&forum spam
http://blogspam.net/
2009-02-08 22:19:44 -08:00
Jeff King
e4cb191047 Don't do printf interpolation on config('me')
The code feeds the results of $session->config('me') to
sprintf as part of the format string. In practice, this is
probably not a problem since hostnames don't contain percent
signs. However, it triggers a taint warning in perl 5.10,
making cram-md5 auth unusable.

This patch rewrites the sprintf to insert the 'me' value
using a %s format specifier.
2009-01-05 06:34:59 +00:00
Henry Baragar
4bbdd551b4 Ignore leading/trailing whitespace in config files
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@966 958fd67b-6ff1-0310-b445-bb7760255be9
2009-01-02 20:41:00 +00:00
Robert Spier
79c5a726a3 Trailing whitespace cleanup
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@965 958fd67b-6ff1-0310-b445-bb7760255be9
2008-12-31 21:46:40 +00:00
Jared Johnson
9e7a4c8e3b Allow configuration of spool_dir permissions
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@964 958fd67b-6ff1-0310-b445-bb7760255be9
2008-12-31 21:44:59 +00:00
Jared Johnson
a248ed56ad Allow local sites to override the definition of an email address.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@963 958fd67b-6ff1-0310-b445-bb7760255be9
2008-12-31 21:35:21 +00:00
Hanno Hecker
d4743d28b6 qpsmtpd (x)inetd: fix Can't call method "connected" on an undefined value at lib/Qpsmtpd/TcpServer.pm line 174.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@962 958fd67b-6ff1-0310-b445-bb7760255be9
2008-12-31 07:29:14 +00:00
Hanno Hecker
39f7e9163c update to latest commit (connection->local_*)
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@961 958fd67b-6ff1-0310-b445-bb7760255be9
2008-12-22 07:42:37 +00:00
Hanno Hecker
836e678e1b async: add connection->local_ip, connection->local_port
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@960 958fd67b-6ff1-0310-b445-bb7760255be9
2008-12-15 20:48:42 +00:00
Hanno Hecker
59ed062aa9 keep the square brackets around the IP as "remote_host" if the reverse lookup failed
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@957 958fd67b-6ff1-0310-b445-bb7760255be9
2008-11-16 08:28:29 +00:00
Hanno Hecker
e7bcc3fcf9 "chomp" DEBUG output - for logging/file
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@956 958fd67b-6ff1-0310-b445-bb7760255be9
2008-11-04 18:37:21 +00:00
Matt Sergeant
26f689191d Support returning 0 values in config files
(always worked on the second call due to the cache, but would return undef on the first call)

git-svn-id: https://svn.perl.org/qpsmtpd/trunk@955 958fd67b-6ff1-0310-b445-bb7760255be9
2008-10-27 09:49:22 +00:00
Hanno Hecker
eff638dd79 forkserver: fix wrong detection of closed connection
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@954 958fd67b-6ff1-0310-b445-bb7760255be9
2008-10-24 17:18:08 +00:00
Hanno Hecker
639c03357d prepare for 0.90, part 2 - hopefully [:-)] all important changes from "svn log"
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@953 958fd67b-6ff1-0310-b445-bb7760255be9
2008-10-21 19:38:37 +00:00
Ask Bjørn Hansen
37a117508d prepare releasing v0.90 - update STATUS file to not have version numbers; clean up a little
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@952 958fd67b-6ff1-0310-b445-bb7760255be9
2008-10-21 09:09:28 +00:00
John Peacock
94f9d91adf Update MANIFEST
Someone needs to remember to run `make manifest` more often, to catch
things added and deleted.  Most of this change is just reordering to be
alphabetical, but it does remove the old select-server stuff, adds one
new test file and a couple of new plugins.

git-svn-id: https://svn.perl.org/qpsmtpd/trunk@951 958fd67b-6ff1-0310-b445-bb7760255be9
2008-10-07 13:56:03 +00:00
John Peacock
9f59ca626f Sometimes Perl is too smart for its own good. Precedence rules sux...
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@950 958fd67b-6ff1-0310-b445-bb7760255be9
2008-10-07 13:48:45 +00:00
Matt Sergeant
14314f3f10 Lower log level of rcpt/from addresses
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@949 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-30 03:22:34 +00:00
Radu Greab
f4afd7a18d Diego warned me that the construct I used, signal sent to negative PID, is not portable. Replaced it with his construct, the negative signal. Also added the short sleep after socket close, as in his patch.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@948 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-29 10:11:33 +00:00
Matt Sergeant
77582b0b10 Fix bug in -async where the body_file (via body_filename) wouldn't have the headers in it.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@947 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-26 18:59:12 +00:00
Matt Sergeant
59b826d4bb Fix to check client is writable before writing to it.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@946 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-26 17:40:04 +00:00
Matt Sergeant
858fdbc11c Fix to check all MX hosts, not just the first
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@945 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-26 17:39:42 +00:00
Diego d'Ambra
03c2bf7608 prefork: improve shutdown of parent (and children) on very busy systems
To improve the shutdown of parent and children, send the exiting signal
 to the process group (maybe %children is not up to date on very busy
 systems).

git-svn-id: https://svn.perl.org/qpsmtpd/trunk@943 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-04 11:43:52 +00:00
Radu Greab
ab6dd83b6c Clean up exit codes.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@942 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-04 11:43:08 +00:00
Diego d'Ambra
409372ce58 Detect and reset locked shared memory.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@941 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-04 11:42:35 +00:00
Radu Greab
aa802e6844 Untaint the value of the --interface option.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@940 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-04 11:41:48 +00:00
Radu Greab
e4f0cb0f8c Inside the main loop skip the sleep when children have exited. Instead, proceed directly to the pool adjustment. While at it, simplify processing by moving the update of shared memory from the SIGCHLD handler to the main loop.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@939 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-04 11:41:13 +00:00
Diego d'Ambra
18d1b9f1da Detach and daemonize only after reading the configuration and loading the plugins, to give the init scripts a chance to detect failed startups due to broken configuration or plugins.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@938 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-04 11:38:54 +00:00
Radu Greab
0d96de470d Close the SSL socket created by duplicating the connection file descriptor. This allows the server to close the connection file descriptor without getting errors like:
Can't call method "close" on an undefined value at
  /usr/share/perl5/IO/Socket/SSL.pm line 780.

git-svn-id: https://svn.perl.org/qpsmtpd/trunk@937 958fd67b-6ff1-0310-b445-bb7760255be9
2008-09-04 11:37:38 +00:00
Radu Greab
6ad7e24315 Set the Return-Path header when queuing into maildir mailboxes.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@936 958fd67b-6ff1-0310-b445-bb7760255be9
2008-08-05 09:06:07 +00:00
Ask Bjørn Hansen
3c8766f683 update documentation (issue #26)
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@935 958fd67b-6ff1-0310-b445-bb7760255be9
2008-07-31 20:32:32 +00:00
Robert Spier
29ea951680 Recreate the Geo::IP object for each message. (Otherwise it will hold the underlying database file handle open, and it doesn't like when that file changes underneath it.)
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@933 958fd67b-6ff1-0310-b445-bb7760255be9
2008-07-04 02:03:56 +00:00
Robert Spier
d5c81c31d8 Fix missing capture group
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@932 958fd67b-6ff1-0310-b445-bb7760255be9
2008-07-04 02:02:26 +00:00
Hanno Hecker
37e441e70e queue/maildir - multi user / multi domain support added
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@931 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-28 08:14:14 +00:00
Guy Hulbert
1d10542af0 - Fix duplication of com|net|org|biz|info - Fix broken travel (missing |)
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@929 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-16 04:52:59 +00:00
Hanno Hecker
f88c8abbd6 update Changes: SIGHUP reload for prefork/forkserver
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@928 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-15 09:30:59 +00:00
Hanno Hecker
a64742cc7c prefork, forkserver: restart on SIGHUP: * reset to defaults * clear config cache * reload all plugins (includes compiling, register()/init())
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@927 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-15 09:28:02 +00:00
Hanno Hecker
28f4cd51c1 clarify what "return values are ignored or discarded" means
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@925 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-03 16:09:59 +00:00
Radu Greab
6fc25099b0 Revert #923, there are objections against it because it is good to know why the reverse DNS lookup failed.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@924 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-03 07:35:59 +00:00
Radu Greab
6db489e4f9 Set connection remote_host only when the reverse DNS lookup is successful.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@923 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-02 16:48:57 +00:00
Radu Greab
b03dddcb48 Send data to the remote server in large chunks.
Reduces a lot the sending time when running on slow CPUs.

git-svn-id: https://svn.perl.org/qpsmtpd/trunk@922 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-02 16:48:20 +00:00
Radu Greab
4c93c85f55 Create async version of dns_whitelist_soft, rhsbl and uribl plugins.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@921 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-02 15:51:04 +00:00
Radu Greab
7f07f16a44 perltidy
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@920 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-02 15:41:30 +00:00
Radu Greab
d63102cd7e Add user documentation.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@919 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-02 15:41:08 +00:00
Radu Greab
98d529c596 This async plugin needs the same change as #908: make the "this connection is whitelisted note" consistent between all plugins in the distribution.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@918 958fd67b-6ff1-0310-b445-bb7760255be9
2008-06-02 15:32:39 +00:00
John Peacock
14a77718f8 Preserve connection notes as part of cloning the object (e.g. after STARTTLS). Typo noticed in plugins/tls.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@917 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-26 21:25:44 +00:00
Robert Spier
356ec2f08d standardize hostname regex. use latest list of tlds. import constants so we can syntax check
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@914 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-19 07:22:51 +00:00