Commit Graph

1107 Commits

Author SHA1 Message Date
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
Hanno Hecker
a05b334b44 reset the original connection object like we reset all connection objects at the end of a connection
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@913 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-18 05:55:30 +00:00
Hanno Hecker
d7ef2ac660 prefork: post-connection hook was not called every time a client disconnects
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@912 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-17 09:33:33 +00:00
Robert Spier
fed6fe0311 Hostnames come in lowercase and longer than 8 characters too.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@911 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-17 03:55:18 +00:00
Robert Spier
7169c9f0bc Revert accidental commit 909.
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@910 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-17 03:54:24 +00:00
Robert Spier
6563dcc4f8 hostnames come in lower case, and might even be longer than 8 characters
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@909 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-17 03:52:00 +00:00
Ask Bjørn Hansen
b3eacea14f make the "this connection is whitelisted note" consistent between all plugins in the distribution
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@908 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-16 22:43:17 +00:00
Hanno Hecker
f0a27f8c37 prefork: --pid-file option now works
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@907 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-15 17:07:33 +00:00
Robert Spier
d0a8432c16 fix whitelisting support in uribl
(bug in extracting the "base" portion of the domain name.)


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@906 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-15 05:16:56 +00:00
Hanno Hecker
502e1d286e prefork: - add --detach option to daemonize like forkserver
- use user/group switching from forkserver to support secondary
	   groups (needed with plugins/queue/postfix-queue)


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@905 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-14 19:09:02 +00:00
Matt Sergeant
96d3f6d40a Remove obsolete qpsmtpd-server
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@904 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-12 17:25:44 +00:00
Matt Sergeant
4578cd6eff Make sure non-responding hooks are called appropriately
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@903 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-12 17:19:31 +00:00
Hanno Hecker
c7c6e3afb9 apache: add post-connection hook, connection->reset
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@902 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-12 15:33:28 +00:00
Hanno Hecker
e0c3eb2b4a plugin doc: update for pre- / post-connection hooks, other minor corrections
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@901 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-12 14:50:48 +00:00
Hanno Hecker
a9e2089ab7 async: check return values from pre-connection hook
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@900 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-12 14:42:41 +00:00
Hanno Hecker
b901440dfe oops, remove debug "warn ..."
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@899 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-10 06:03:57 +00:00
Hanno Hecker
4159df88de update Changes: async: pre/post conn hooks, all: conn->reset
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@898 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-10 06:01:52 +00:00
Hanno Hecker
7ad1054507 add connection->reset also for -async
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@897 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-10 05:55:56 +00:00
Hanno Hecker
104c8b1710 add pre- and post-connection hooks to -async
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@896 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-10 05:53:39 +00:00
Matt Sergeant
cbf652d96b Support original_string in Apache
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@895 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-09 18:17:38 +00:00
Hanno Hecker
b5d9135fb0 remove the workaround for -prefork, fixed by rev 893
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@894 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-09 17:41:59 +00:00
Hanno Hecker
ea243c2f2f add reset() to Qpsmtpd::Connection to clear the connection notes after
the post-connection hooks - needed for -prefork and STARTTLS


git-svn-id: https://svn.perl.org/qpsmtpd/trunk@893 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-09 17:40:31 +00:00
Matt Sergeant
b0cc017e9e Provide original_string in PollServer
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@892 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-09 15:27:11 +00:00
Matt Sergeant
e6df2f5072 Oopsie - IO::Socket::SSL required in UpgradeClientSSL for $SSL_ERROR
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@890 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-06 22:48:26 +00:00
Matt Sergeant
20fde2ef98 Don't require Danga::Socket in tls plugin
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@889 958fd67b-6ff1-0310-b445-bb7760255be9
2008-05-06 21:43:07 +00:00