Commit Graph

301 Commits

Author SHA1 Message Date
Matt Simerson
c55fa030f8 Address: remove useless undef
and added tests to validate that they really are useless
2014-09-17 22:22:44 -07:00
Matt Simerson
72f1a7a962 Merge pull request #119 from flimzy/return_cleanups
Remove a ton of 'return ()', and a few other minor readability tweaks.
2014-09-17 22:19:53 -07:00
Jonathan Hall
555c87c52f Silence a noisy test by passing an expected data type. 2014-09-17 21:08:34 -05: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
519bb12503 simplify config->from_file by not requiring full
file path. Instead, figure it out the same way as the 4 of the 5 caller do (by calling config_dir). Allow the 2nd arg to be the file name.
2014-09-17 13:03:46 -07:00
Matt Simerson
1e5d249224 added tests for run_hooks & run_hooks_no_respond 2014-09-17 13:03:46 -07:00
Matt Simerson
9a38850f13 added test for run_continuation 2014-09-17 13:03:46 -07:00
Matt Simerson
0499317912 Qpsmtpd: style changes in hook_responder 2014-09-17 13:02:44 -07:00
Matt Simerson
9cd8b165a0 qpsmtpd.t: added tests for hook_responder 2014-09-17 13:01:29 -07: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
ed3e550d7f Merge pull request #110 from msimerson/tests
remove test counters from plugin tests
2014-09-17 10:19:13 -07:00
Matt Simerson
a5420149bd remove test counters from plugin tests
replace with done_testing(), which provides the same "make sure to kvetch if tests fail to run" without requiring humans to do the bookkeeping.
2014-09-17 00:11:32 -07:00
Matt Simerson
1ebe5ea6ec put git version detection code into a sub 2014-09-17 00:08:33 -07:00
Matt Simerson
d5481df3dd Q::hooks(), accept a hook name argument
and return a useful result
2014-09-16 21:22:36 -07:00
Matt Simerson
13f445596a Merge pull request #104 from flimzy/clam-opts
Fix clamdscan configuration handling
2014-09-16 12:10:18 -07:00
Jonathan Hall
f2bcd3736a New tests to cover new handling of register-time configuration. 2014-09-16 14:04:37 -05:00
Jonathan Hall
3d97773827 Reverse sense of is_not_multipart to is_multipart. 2014-09-16 13:57:15 -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
8344bf8439 Working toward functional virus/clamdscan tests. 2014-09-16 12:56:32 -05:00
Matt Simerson
a473c2732d updated Config::defaults() to behave as before
and added additional tests for it
2014-09-16 09:52:05 -07:00
Matt Simerson
b153c0ab99 more tests for Qpsmtpd::Config
* fix for cache clearing that didn't work
* imported a sample .cdb file for testing
2014-09-16 00:54:47 -07:00
Matt Simerson
75cb416b62 added diagnostics for failed spool_dir test
likely due to config caching
2014-09-16 00:03:28 -07: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
f8e2fdb966 more tests for Qpsmtpd.pm 2014-09-15 18:54:10 -07:00
Matt Simerson
b60c14a7c1 t/q-base, s/utils/base/ 2014-09-15 18:53:30 -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
f052543154 Correct number of user_config tests 2014-09-15 17:06:47 -05:00
Jared Johnson
de742dc95e Add tests for user_config plugin 2014-09-15 17:06:47 -05:00
Jared Johnson
23ce6002cf Qpsmtpd::config() tests 2014-09-15 17:06:47 -05:00
Jared Johnson
cda40f970b Remove an unintentionally commited subroutine 2014-09-15 17:03:52 -05:00
Jared Johnson
fb8f582055 Use a loop to make test data clearer 2014-09-15 17:03:52 -05:00
Jared Johnson
41a71f5d79 Move test sub definition to the bottom 2014-09-15 17:03:52 -05:00
Jared Johnson
18bfc45d0b Fall back correctly between config methods
hook_user_config no falls back to global hook_config followed by
file-based config followed by %defaults
2014-09-15 17:01:39 -05:00
Jared Johnson
eb482aad0a Tests for Qpsmtpd::Address::config()
Tests for the new Qpsmtpd::Address::config() which should call hook_user_config plugins
2014-09-15 17:01:39 -05:00
Matt Simerson
7396dbbf5f more tests for Qpsmtpd.pm 2014-09-15 11:53:28 -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
2cc57f6db3 Merge pull request #95 from msimerson/helo
helo: make NXDOMAIN time out faster
2014-09-12 01:06:21 -07:00
Jared Johnson
cc25532593 Replace warning with slightly better testing
Testing LOGWARN was generating a real warning that polluted test output.
Instead, let's catch the warning and test that it actually happens.
2014-09-12 01:23:09 -05: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
Jared Johnson
bf2cfcf4e3 Merge pull request #92 from msimerson/master
tests for Qpsmtpd/SMTP
2014-09-11 13:18:03 -05:00
Jared Johnson
f15a38dfe3 Merge pull request #94 from msimerson/rpm-version
add test to assure RPM VERSION is up-to-date (#80)
2014-09-11 13:00:25 -05:00
Matt Simerson
847db53e0d updated fault test in qpsmtpd-smtp.t 2014-09-11 10:53:09 -07:00
Matt Simerson
e7a4ca2b08 update MANIFEST and suppress helo test error 2014-09-11 10:46:29 -07:00
Matt Simerson
fabbdae960 tests for Qpsmtpd/SMTP
* order the ‘use’  pragmas
* compact the new() method
* move fault() tests into t/qpsmtpd-smtp.t
2014-09-11 10:46:29 -07:00
Matt Simerson
bcacb2778c add test to assure RPM VERSION is up-to-date (#80) 2014-09-11 10:37:56 -07:00
Jonathan Hall
8b1ff67604 Update fault()'s output to inidcate the possibly meaninglessness of the reported system error. 2014-09-11 11:58:31 -05:00
Matt Simerson
8f8463e91e Merge pull request #87 from flimzy/misc-tests
Silence misc.t STDOUT by testing for it.
2014-09-11 09:09:48 -07:00
Matt Simerson
04a984bbab helo: improved invalid_localhost detection 2014-09-10 15:12:52 -07:00
Matt Simerson
60877da4ed added Utils::is_localhost and t/qpsmtpd-utils.t
resolves Issue #89
2014-09-10 13:52:56 -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
Jonathan Hall
7b3018c660 Remove reference to 'No such file or directory', as there's no guarantee
this is what $!  will return when this code is called during testing.
2014-09-10 10:15:43 -05:00
Jonathan Hall
11f47cb2ab Silence misc.t STDOUT by testing for it. 2014-09-10 08:55:17 -05:00
Matt Simerson
c9a780576f added tests for lib/Qpsmtpd.pm (Issue #67) 2014-09-08 22:58:27 -07:00
Priyadi Iman Nurcahyo
bef79d3b7d Fix test for munge_subject_threshold 2014-05-15 14:45:33 +00:00
Matt Simerson
a19b7de787 updated DMARC plugin tests
disabled for now, b/c they tested methods which no longer exist in new plugin
2013-12-18 00:09:10 -05:00
Matt Simerson
c652d4c9e4 dmarc test: comments in the public list was
allowing certain org domain searches to fail (plus.google.com, b/c a google.com email address was in the public list). Now I anchor the searches to the start of the line. This test also catches edge cases like co.uk, which isn't listed, but a wildcard *.uk is.
2013-08-05 15:05:37 -07:00
Matt Simerson
9c96ae78e4 find . -name '*.t' -exec perltidy -b {} \; 2013-08-05 15:05:15 -07:00
Matt Simerson
5b06929e95 find . -name '*.pm' -exec perltidy -b {} \; 2013-08-05 15:05:15 -07:00
Matt Simerson
fc3117fe60 fix dmarc plugin tests 2013-08-05 15:05:14 -07:00
Matt Simerson
db8ec50c3a new plugin: dmarc 2013-08-05 15:05:14 -07:00
Matt Simerson
b64bb2f9e4 a collection of DKIM enhancements
* disable Mail::DKIM::TextWrap (causes mangled messages for some clients)
* pod improvements
* don't log the entire DKIM signature when signing
* add dkim_pass_domains connection note with DKIM signer domains that pass
* enable dkim tests
2013-08-05 15:05:14 -07:00
Matt Simerson
8b548e392d test fixes for badmailfrom,headers plugins 2013-08-05 15:05:13 -07:00
Matt Simerson
50973aebf3 moved author tests from t/ to xt/ 2013-08-05 15:05:13 -07:00
Matt Simerson
a2bba68af6 several adjustments for tests 2013-08-05 15:05:10 -07:00
Matt Simerson
85cead39f8 SPF: removed test for removed is_in_relayclients() 2013-08-05 15:05:09 -07:00
Matt Simerson
b70f29c008 fixed test for commit 78cab52582 2013-08-05 15:05:09 -07:00
Matt Simerson
af55a8d6dd SPF: use $conn->relay_client instead of duplicated
is_in_relayclients method. Expects relay plugin to have set relay_client, a reasonable assumption.
2013-08-05 15:05:09 -07:00
Matt Simerson
1a7615ca7e dnsbl test: don't cry about test failures that
depend on working network & DNS.
2013-08-05 15:05:09 -07:00
Matt Simerson
8d52a3f548 dnsbl: fixed plugin test failure 2013-08-05 15:05:09 -07:00
Matt Simerson
21ce00cc90 fix relayclient test after commit b8baa4b91b
which added example IPv6 IPs to the config file
2013-08-05 15:05:09 -07:00
Matt Simerson
b1c2fa16b5 drop the check_ prefix from the last 3 plugins 2013-08-05 15:01:52 -07:00
Matt Simerson
47151f165b resolveable_fromhost: updated tests 2013-08-05 15:01:51 -07:00
Matt Simerson
208dfc3a21 rename require_resolvable_fromhost to resolvable_fromhost 2013-08-05 15:01:51 -07:00
Matt Simerson
e4d50a27d9 dnsbl test: remove hook_disconnect test 2013-08-05 15:01:50 -07:00
Matt Simerson
cf9b10a52f badmailfromto: fixed tests (rename cleanups) 2013-08-05 15:01:50 -07:00
Matt Simerson
f7c5f49946 rcpt_ok: shorten test messages 2013-08-05 15:01:50 -07:00
Matt Simerson
14767f9b18 updated SPF tests 2013-08-05 15:01:50 -07:00
Matt Simerson
b245d30e9e dnsbl: process DNS queries immediately
rather than deferring until RCPT. This greatly improves efficiency, since most connections will get marked naughty much sooner, having run fewer tests.
2013-08-05 15:01:49 -07:00
Matt Simerson
a259fec536 badrcptto: dropped check_ prefix from name 2013-08-05 15:01:49 -07:00
Matt Simerson
5ea1eb0f4c badrcptto: log tweaks, better regex detection 2013-08-05 15:01:49 -07:00
Matt Simerson
35b9b32895 relay: logging tweak 2013-08-05 15:01:49 -07:00
Matt Simerson
4a3452f486 p0f: POD & log message updates 2013-08-05 15:01:48 -07:00
Matt Simerson
964eab3b2b dspam: changed to only train on error
per suggestions by the dspam author
2013-08-05 15:01:48 -07:00
Matt Simerson
08256232a8 clamdscan: make sure headers exist before operating on them 2013-08-05 15:01:48 -07:00
Matt Simerson
47488650b3 badmailfrom rename fixups 2013-08-05 15:01:48 -07:00
Matt Simerson
7c798e45e6 badmailfrom rename: update test config/plugins 2013-08-05 15:01:48 -07:00
Matt Simerson
1fff417405 rename check_badmailfrom -> badmailfrom 2013-08-05 15:01:48 -07:00
Matt Simerson
e4133127d5 badmailfrom: remove rcpt hook (uses naughty instead) 2013-08-05 15:01:48 -07:00
Matt Simerson
046bc43e8e t/config: add missing test config files 2013-08-05 15:01:48 -07:00
Matt Simerson
5a424e8940 t/config/plugins: update test plugin list 2013-08-05 15:01:48 -07:00
Matt Simerson
e2c84987f3 helo: refine plugin tests 2013-08-05 15:01:48 -07:00
Matt Simerson
97fda310ee headers: plugin tests, deprecate check_basicheaders 2013-08-05 15:01:48 -07:00
Matt Simerson
d460dc86e3 spamassassin: add explicit default reject_type
consolidate the two data_post methods into one (more linear, simpler)
more informative log message
add new headers to top of headers (not bottom (consistent MTA behavior))
2013-08-05 15:01:48 -07:00
Matt Simerson
eba0a10132 badmailfrom: removed tests for rcpt_handler
and shorten test response messages in badmailfromto
2013-08-05 15:01:48 -07:00
Matt Simerson
7ff2d050f3 initial import - based on my qpsmtpd fork
which will merge into the main branch fairly easily
2013-08-05 15:01:47 -07:00
Matt Simerson
7d19bc6d5e restore validate_password test
not sure how/why that got removed, but it wasn't intentional
2013-08-05 12:38:39 -07:00
Matt Simerson
b7cb9eaf3d auth: adding tests (should have attached with a previous commit) 2013-08-05 12:38:38 -07:00
Matt Simerson
4e2ae484a2 Merge pull request #15 from msimerson/early
consolidated chunks of code duplicated 4x into log_and_deny and log_and_...
2013-08-05 12:33:42 -07:00
Matt Simerson
fd646b0d27 Merge pull request #29 from msimerson/helo
Helo
2013-08-05 12:30:59 -07:00
Matt Simerson
44db1fecf6 helo: loosen up matching DNS requirements
added X-HELO header to message
added timeout option
quieted down debug logging
2012-06-13 17:49:25 -04:00
Matt Simerson
74ae957936 helo: new plugin
helo - validate a HELO message delivered from a connecting host.

Includes the following tests:

	is_in_badhelo
	invalid_localhost
	is_plain_ip
	is_address_literal [N.N.N.N]
	is_forged_literal
	is_not_fqdn
	no_forward_dns
	no_reverse_dns
	no_matching_dns
2012-06-11 22:27:01 -04:00
Matt Simerson
9c1e62371b added new t/config directory, with developer tests
run when $ENV{QPSMTPD_DEVELOPER} is set

plugins file is same as in config.sample, but with more stuff enabled
2012-06-04 03:34:48 -04:00
Matt Simerson
85982d00f8 restore validate_password test
not sure how/why that got removed, but it wasn't intentional
2012-06-04 03:34:47 -04:00
Matt Simerson
9e70da4951 auth: adding tests (should have attached with a previous commit) 2012-06-04 03:34:47 -04:00
Matt Simerson
55b5f34365 auth_vpopmail_sql test, eval 'use DBI' before testing 2012-06-04 03:34:47 -04:00
Matt Simerson
732202ae37 another test tweak, for switching from 192.168 to 192.0 2012-06-04 03:34:47 -04:00
Matt Simerson
8795d4fd6e relay: use IETF IP testing addresses 2012-06-04 03:34:47 -04:00
Matt Simerson
974f1a95e8 new relay plugin, with tests!
replaces functionality of previous 3 relay plugins
2012-06-04 03:34:47 -04:00
Matt Simerson
57a0e4ba7b updated plugins to use QP::Plugins::is_immune 2012-06-04 03:26:16 -04:00
Matt Simerson
2a371a2c6e consolidated chunks of code duplicated 4x into log_and_deny and log_and_pass
in apr_*_handler subs, return DECLINED when connection is not available to read (like during tests)

added 23 tests

deprecate action argument
	'action log' did nothing, better logging controls available with loglevel
	'action deny'  ->  reject 1
	'action denysoft' =>  reject 1 reject_type temp

POD
use head2 for config options (instead of over, item, back)
added loglevel section
updated for replacement of action with reject options
2012-06-04 03:23:14 -04:00
Ask Bjørn Hansen
0e2384cceb Make all plugins use $self->connection rather than $self->qp->connection
Merge remote-tracking branch 'msimerson/connect'

Conflicts:
	plugins/async/require_resolvable_fromhost
	plugins/require_resolvable_fromhost
2012-06-03 23:53:43 -07:00
Matt Simerson
0a16621f02 connection consistency
-  $self->qp->connection->notes
+  $self->connection->notes

and all tests pass.
2012-06-02 00:46:33 -04:00
Matt Simerson
2f49cafcd6 resolvable_fromhost: refactored, added: POD, tests, reject, reject_type 2012-05-23 23:39:43 -04:00
Ask Bjørn Hansen
9e239fd83d Merge pull request #16 from msimerson/geoip
Geoip plugin improvements
2012-05-23 15:39:10 -07:00
Matt Simerson
e07488d4f6 hrmm, why didn't Test::Qpsmtpd::Plugin::log work? 2012-05-22 17:41:40 -04:00
Matt Simerson
2dcd34467e geoip: eval loading of Geo::IP, tests, enabled in config
eval Geo::IP and log an error if missing
added 2 tests
enabled in config/plugins
2012-05-22 17:40:02 -04:00
Matt Simerson
521aa4919f basicheaders, add reject option, loglevel
added reject option
document the existence of the loglevel option
factored date validity tests into their own sub
added tests
improved POD
2012-05-21 21:30:02 -04:00
Matt Simerson
9d0c2f8469 dnsbl, POD tweaks, DENY type tests
consolidated POD at top of file
added example options to reject_type POD head
added an example loglevel entry

consolidated DENY[SOFT|DISCONNECT] logic into get_reject_type
added tests for get_reject_type
2012-05-21 17:07:37 -04:00
Matt Simerson
51486d0b04 SPF plugin: refactored, tests, new config option
added POD description of spfquery note

changed spf_deny -> reject  (and offered 4 more options, see POD for reject)
	backwards compatible with old config settings
	replicates qmail-smtpd SPF patch behavior

improved logging (again)

uses a stringy eval 'use Mail::SPF' in the register sub. If missing, warn and log the error, and don't register any hooks. This is much nicer error than the current, "*** Remote host closed connection unexpectedly." broken mail server that results from enabling the SPF plugin without Mail::SPF installed.

background: I noticed I was deferring valid emails with the SPF plugin at 'spf_deny 1', and without changing the code, there wasn't a way to change how ~all records were handled. This provides that flexibility.
2012-05-21 04:19:45 -04:00
Matt Simerson
e8919beb0d increment test counter declaration 2012-05-20 23:40:39 -07:00
Matt Simerson
96144a6a16 improve portability of basicheader plugin tests
replaced `date` with POSIX qw(strftime);
2012-05-20 23:40:35 -07:00
Matt Simerson
49dc8bc117 basicheaders: added log messages, tests, named args
added log messages at each exit point
added tests
added reject_type option (defer -vs- deny)
added named argument parsing
2012-05-20 23:39:54 -07:00
Matt Simerson
f37fba7c2b badrcptto: merged plugins, refactored, tests
merged badrcptto_pattern into badrcptto
refactored into smaller methods
added unit tests for each method
2012-05-20 23:39:38 -07:00
Matt Simerson
e206763428 test hostname before failing the test.
Test machine might have qmail installed with another hostname configured.
2012-05-20 23:39:24 -07:00
Matt Simerson
be28372dca permit tests for async and ident plugins to work 2012-05-20 23:39:20 -07:00
Matt Simerson
19927a117e spamassassin: added spam status to log messages
added additional values to tests, to suppress test warnings
2012-05-20 23:39:03 -07:00
Matt Simerson
c3d1f6b16e p0f: tests, tests, tests, backward compat
minor changes to facilitate testing
improved error reporting of several failures
added p0f v2 compatibility to p0f v3 results: in addition to all the newer values, also report the old ones too.
2012-05-20 23:38:48 -07:00
Matt Simerson
25a099e20b dspam: added check for autolearn
don't try to use autolearn if it's not set
added tests that exercise and exorcise the bug
2012-05-20 23:38:42 -07:00
Matt Simerson
9b8c5a1be4 rcpt_ok: refactored and added tests 2012-05-20 23:37:37 -07:00
Matt Simerson
ae3fe2e4d5 cleanups for Auth::validate_password commit
one for testing to work again
and one to remove MD5 dependency in Plugin.pm
2012-05-20 23:37:16 -07:00
Matt Simerson
35e1ce9883 consolidate auth logic into Qpsmtpd::Auth
These 3 auth plugins all have a data store they fetch the reference
password or hash from. They then match the attemped password or hash
against the reference. This consolidates the latter portion (validating
the password/hash) into Auth.pm.

* less duplicated code in the plugins.
* Pass validation consistently handled for these 3 plugins.
* less work to create new auth plugins

Also caches the CRAM-MD5 ticket. It could also cache user/pass info if
this was desirable.
2012-05-20 23:37:06 -07:00
Matt Simerson
915b9830dc greylisting: reset transaction for immunity tests 2012-05-20 23:35:59 -07:00
Matt Simerson
6b9881c32e greylisting, refactored and many changes
fixed the vestiges of old plugin name 'denysoft_greylisting'

added ability to bypass greylisting based on geoip

deprecated 'mode [denysoft | testonly | off]
	off wasn't useful
	testonly & denysoft replaced by reject [ 0 | 1 ]

renamed DB from denysoft_greylist to greylist.dbm. Will use existing/legacy DB if present.

added DB pruning feature. Automatically prune the DB when qpsmtpd registers the plugin. Perhaps this should be a config option to enable?

added DB upgrade feature. Convert dotted quad IP addresses in DB to integers. Makes greylisting IPv6 compatible, since DB records are colon delimited.

exempt TLS connections from greylisting. The vast majority (perhaps all) of the SMTP clients that request encryption to my server are legit. We could add a config option for this, but this plugin already has a multitude of config options.

refactored much of the greylisting method into discreet subs

added 30 tests

added additional DEBUG level logging for p0f matches

POD changes:
	replaced over, item N, back, with head2 (better formatted output)
	better describe the current behavior of the plugin (some past behaviors no longer exist)
	added TRIPLET section with example
	added loglevel section
2012-05-20 23:35:46 -07:00
Matt Simerson
5e76d66c66 count_unrecognized_commands
simplified logic in a couple places
consolidated duplicated message
added 4 tests
2012-05-20 23:34:58 -07:00
Matt Simerson
99cf4e69d1 removed useless unused void constant 2012-05-08 22:55:16 -07:00
Matt Simerson
57d72b3cb4 auth_vpopmail_sql, refactor, log, tests
added strict and warnings pragma
refactored
added tests
added more logging
standard log prefixes
tests run pretests to assure tests can succeed
2012-05-07 09:53:03 -07:00
Matt Simerson
adbbfe6f67 auth_vpopmail: refactored, added tests, logging
added more logging
standard log prefixes
tests run a pretest to make sure tests have a chance to succeed
2012-05-07 09:52:46 -07:00
Matt Simerson
54f1a11b46 added logging and tests to auth_checkpassword 2012-05-07 09:47:15 -07:00
Matt Simerson
a1b073cfe2 refactored dnsbl, sprinkling logs and tests on it 2012-05-06 16:21:09 -07:00
Matt Simerson
77ff89d6ca only test POD for developers 2012-05-06 16:18:56 -07:00
Matt Simerson
205120f26f dspam: a batch of improvements:
expanded POD
cleaned up stray EOL spaces
added lots of logging, with standardized [ pass | fail | skip ] prefixes
added reject_type option
use split for parsing dspam headers
use SA note instead of parsing headers
added reject = agree option
store & fetch dspam results in a note
2012-05-06 16:18:38 -07:00
Matt Simerson
d644c24c83 spamassassin updates
refactored into small subs with unit tests.
parse SA header with split instead of regexp (more reliable)
store SA results in a 'spamassassin' transaction note
add strict and warnings pragma
renamed reject_threshold -> reject (backwards compatible)
added relayclient skip option and POD. Skips SA processing when relayclient is set
added MULTIPLE RECIPIENT BEHAVIOR topic to POD
2012-05-06 16:18:22 -07:00
Matt Simerson
5285774285 refactored Qpsmtpd::Auth::SASL
unit tests for new methods are in t/auth.t

added PLAIN and LOGIN tests in auth_flat_file

Most tests are disabled unless an interactive terminal is detected and $ENV{QPSMTPD_DEVELOPER} is set.
2012-05-06 16:17:02 -07:00
Matt Simerson
ccf166a7e9 extend syntax tests to test directory
lets see what Travis thinks of this...
2012-05-06 16:16:26 -07:00
Matt Simerson
eabc5429be instead of skipping test errors, handle them 2012-05-06 16:15:57 -07:00
Matt Simerson
0a49ea07cb more shebang fixes for tests 2012-05-06 16:11:54 -07:00
Matt Simerson
0c7ee4941b added logging and tests to check_badmailfrom
refactored several checks out of hook_mail and added LOGDEBUG

added tests for is_immune method
2012-05-06 16:08:28 -07:00
Matt Simerson
1910fabf0e badmailfromto: added strictures, tests, and
rearranged portionsn of logic for ease of reading
2012-05-06 16:02:43 -07:00