Commit Graph

627 Commits

Author SHA1 Message Date
Jared Johnson
179d6427fc Consolidate greylist exclusions into exclude()
This makes for an easily overridden method for excluding hosts from greylisting with custom rules
2014-10-27 17:24:06 -05:00
Matt Simerson
4c314eb642 patch from Carlos Canau <Carlos@Canau.COM> 2014-10-02 15:25:57 -07:00
Matt Simerson
c3aa4c10d2 stunnel: cleanups 2014-09-17 23:00:31 -07:00
Matt Simerson
b289d38f53 more cleanups 2014-09-17 22:22:44 -07:00
Jonathan Hall
897a1fd8aa Remove a ton of 'return ()', and a few other minor readability tweaks. 2014-09-17 20:28:51 -05:00
Matt Simerson
1e82ae1bc7 async removed
1. the known users of async don't upgrade
2. async becomes a win when concurrent connections exceed a few hundred simultaneous
3. anyone that needs async should be looking at Haraka instead
4. the perl async dependencies aren't maintained
2014-09-17 11:38:40 -07:00
Matt Simerson
5155e5c32f POD fixups 2014-09-16 23:27:19 -07:00
Jonathan Hall
3d97773827 Reverse sense of is_not_multipart to is_multipart. 2014-09-16 13:57:15 -05:00
Jonathan Hall
ba3122bd82 Style cleanup
* no more 'return ()'
 * Explicit 'return 0'
2014-09-16 13:51:19 -05:00
Jonathan Hall
44cafde7d4 More complete clamdcscan tests
* construct our own Qpsmtpd::Transaction object for testing, so we're sure
   to have a pristine state
 * Move some logic into a should_scan() sub, to help separate scan_all from
   is_not_multipart (since the multipart state of a message has nothing to
   do with any configuration parameters)
2014-09-16 13:48:19 -05:00
Jonathan Hall
9faa1e1903 Fix clamdscan configuration handling
- Honor configured 'false' values
 - Treat 'scan_all' consistently with other options--permitting 0, 1, 'yes', or 'no' as values
2014-09-16 12:03:49 -05:00
Matt Simerson
ebdb25a4bd extracted config*() from Qpsmtpd.pm -> Config.pm
* includes full test converage for Qpsmtpd::Config
    * folded t/config.t into t/qpsmtpd-config.t
* includes additional tests for Qpsmtpd
    * folded t/tempstuff into t/qpsmtpd.t
* PBP adjustments here and there
* other tweaks to handle test warnings
2014-09-15 23:41:31 -07:00
Matt Simerson
710894cd49 moved Qpsmtpd::Utils -> Base.pm 2014-09-15 18:53:30 -07:00
Matt Simerson
851e1b54ee META updates, tidy, PBP tweaks
* update manifest
* perltidy
* replace postfix if/unless with brackets
* reduce useless indention by exiting sooner
2014-09-15 15:57:12 -07:00
Jared Johnson
4b7af20f49 Fix pattern substitution in user_config plugin 2014-09-15 17:06:47 -05:00
Jared Johnson
50cc469881 Add docs and flexible path to user_config plugin
I needed to make the path modifyable for testing anyway, might as well make it
actually usable.  Not yet tested.
2014-09-15 17:01:39 -05:00
Jared Johnson
8d032d8b50 Follow upstream convention in shebang
Our fork uses '#!/perl (Editor hint)' but upstream normally uses '#!perl'.  Conforming to upstream.

FWIW, the Kate editor recognizes the former as perl for the purpose of syntax highlighting but does not recognize the latter. But the one guy I know who uses Kate didn't take the opportunity to object :)
2014-09-15 16:53:09 -05:00
Jared Johnson
3379248c45 Add user_config example plugin
Add a plugin to read qpsmptd-style configuration files from users' home
directories.  Little to no testing yet.
2014-09-15 16:53:09 -05:00
Matt Simerson
0b38c21f40 auth_vpopmail_sql: wrap DB connect attempt in eval 2014-09-15 14:36:09 -07:00
Jonathan Hall
921139e0ca Update POD to reflect proper ->notes() calling convention. 2014-09-15 11:04:14 -05:00
Matt Simerson
b114e051c7 earlytalker: corrected POD note name 2014-09-13 17:08:12 -07:00
Matt Simerson
6cc5f78826 added POD for earlytalker_wait 2014-09-12 13:54:37 -07:00
Matt Simerson
a53c692c7b earlytalker: check connection note for wait length
Issue #58
reputation databases can set $connection->notes(earlytalker_wait)
2014-09-12 13:32:08 -07:00
Matt Simerson
96ff5746bd early: minor style tweaks 2014-09-12 09:53:41 -07:00
Matt Simerson
ca96ddf4eb added Utils->is_valid_ip, IPv6 ready
resolves Issue #82
2014-09-11 13:34:32 -07:00
Matt Simerson
5960cb4d87 helo: make NXDOMAIN time out faster 2014-09-11 11:37:46 -07:00
Matt Simerson
04a984bbab helo: improved invalid_localhost detection 2014-09-10 15:12:52 -07:00
Matt Simerson
91f8133f5c 2x: use Utils->is_localhost() to detect loopback
* it's IPv6 compatible
* plugins/helo, plugins/fcrdns
2014-09-10 14:22:06 -07:00
Matt Simerson
39c454c95e helo: added IPv6 support to invalid_localhost
and also suppress a test warning
2014-09-10 13:52:56 -07:00
Matt Simerson
88bef54283 resolve issue #77 and PR #32 2014-09-09 14:24:33 -07:00
Matt Simerson
0bbd209431 auth_cvm: added check for null char in username
see issue #53
2014-08-23 11:20:41 -07:00
Matt Simerson
c74564b4c8 Merge pull request #44 from priyadi/master
munge_subject_threshold did not previously work
2014-06-03 22:12:00 -07:00
Matt Simerson
3300994f97 Merge pull request #49 from luzluna/master
looks good, thanks for this.
2014-06-03 21:44:25 -07:00
luzluna park
a4c319acf8 stunnel proxy protocol remote ip,port setting feature added for smtps.
reference : http://www.stunnel.org/static/stunnel.html
protocol spec : http://haproxy.1wt.eu/download/1.5/doc/proxy-protocol.txt
2014-06-03 17:48:46 +09:00
Matt Simerson
bdeb92e01b Merge pull request #48 from priyadi/spamassassin
spamassassin: Fix extra newlines between headers and body.
2014-06-03 00:39:32 -07:00
Priyadi Iman Nurcahyo
2775e992a1 Fix extra newlines between headers and body. This caused problems with DKIM verification in SpamAssassin 2014-06-03 07:24:29 +00:00
Priyadi Iman Nurcahyo
59f0c4426c loadcheck: Provide meaningful rejection message to clients 2014-05-15 13:12:47 +00:00
Priyadi Iman Nurcahyo
bb03a785ef munge_subject_threshold did not previously work 2014-05-15 12:21:09 +00:00
Matt Simerson
d1ce56657a loadcheck: refactored. See =CHANGES section 2014-03-21 21:03:46 -07:00
Matt Simerson
767a797dbd loadcheck: perltidy 2014-03-21 09:33:16 -07:00
Matt Simerson
2e356a7cab helo: fix doc typo 2014-03-21 09:28:30 -07:00
Matt Simerson
8e6ef9385f Merge pull request #42 from rsiddall/master
Added Peter Eisch's load checking plugin, see: http://www.nntp.perl.org/...
2014-03-21 08:46:28 -07:00
Richard Siddall
aabefce3b9 Added warning about expense of forking/exec to determine system load. Added SEE ALSO links to the postings containing the plugin and an alternate. 2014-03-21 09:56:32 -04:00
Richard Siddall
ab965b585c Minor perldoc fix. 2014-03-21 09:48:49 -04:00
Richard Siddall
5df4dec48d Bumped the plugin version number for the variant with caching. Fixed a typo in the perldoc. 2014-03-21 09:42:54 -04:00
Richard Siddall
04fc9327b7 Found the improved version of Peter Eisch's plugin attached to http://www.nntp.perl.org/group/perl.qpsmtpd/2006/03/msg4710.html. This includes caching of the system load and adds a cache_time config parameter. 2014-03-21 09:40:01 -04:00
Richard Siddall
95102e68c5 Added Peter Eisch's load checking plugin, see: http://www.nntp.perl.org/group/perl.qpsmtpd/2006/01/msg4422.html, and Steve Kemp's alternative at: http://www.nntp.perl.org/group/perl.qpsmtpd/2008/03/msg7814.html 2014-02-13 21:42:56 -05:00
Matt Simerson
f9d84d94c7 Add Postfix XCLIENT support to smtp-forward plugin
manually merged in PR #2 from cventers

XCLIENT support allows Qpsmtpd to forward client information, such as
the IP address and HELO information, to Postfix such that it can use
that information in access control decisions and logging.

XCLIENT is documented here: http://www.postfix.org/XCLIENT_README.html

This patch adds a "xclient" argument to smtp-forward which enables the
use of the XCLIENT verb if it is advertised by the server smtp-forward
is delivering mail to.
2014-02-13 12:53:33 -08:00
tpoindessous
9f404f52bf Add the message id in log
There is no message id in logfile so it's difficult to debug a message sent through qpsmtpd.
2014-01-24 15:11:39 +01:00
Matt Simerson
0fee545794 domainkeys: fixed doc typo 2014-01-10 21:55:09 -08:00