Jared Johnson
dcdda3a5e7
Don't interpret invalid return codes as OK
2015-02-03 17:01:52 -06:00
Matt Simerson
b24f766cc5
Merge pull request #221 from jaredj/run-continuation-logging-tests
...
Tests for error logging in run_continuation()
2015-02-03 14:48:48 -08:00
Jared Johnson
f6b952ce8e
Comment out broken test exposed by some test fixes
2015-02-03 16:44:06 -06:00
Jared Johnson
b3f8ce6b07
Tests for error logging in run_continuation()
2015-02-03 16:44:06 -06:00
Jared Johnson
7af1f770a5
Fix hook testing order
...
This exposes a bug with handling invalid return codes
2015-02-03 16:15:16 -06:00
Tom Li
a44c70232c
tls_cert: fix a misused quotes
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-03 03:49:22 +08:00
Tom Li
2cc6d3f938
tls: checking if dhparam is empty, using "undef" instead of "" for clarity.
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-02 20:50:37 +08:00
Tom Li
edea4c239d
tls_cert: unified cert name between tls and tls_cert.
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-02 18:36:51 +08:00
Tom Li
845760969b
tls: fix a typo.
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-02 18:30:54 +08:00
Tom Li
2e2e6c70c6
tls: style fixes.
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-02 18:19:13 +08:00
Tom Li
acbbf66806
tls_cert: adding dhparam generating.
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-02 17:55:40 +08:00
Tom Li
d5954ce249
tls: adding support of dhparam.
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-02 17:55:22 +08:00
Tom Li
e6ee356925
tls: respect the order of specified ciphers.
...
Signed-off-by: Tom Li <biergaizi2009@gmail.com>
2015-02-02 17:37:15 +08:00
Matt Simerson
262857b1cb
Merge pull request #219 from jaredj/run-continuation-tests
...
Moar testing for Qpsmtpd::run_continuation()
2015-01-29 23:53:35 -08:00
Jared Johnson
e2556a4ee9
Moar testing for Qpsmtpd::run_continuation()
2015-01-30 01:50:54 -06:00
Jared Johnson
a053ac7a32
Merge pull request #217 from msimerson/log-file
...
make sure $transaction->notes is blessed before
2015-01-29 15:32:41 -06:00
Matt Simerson
d9ac50f383
make sure $transaction->notes is blessed before
...
calling it as such. It doesn't resolve #199 but it does help there.
I'm not sure initializing Qpsmtpd::transaction as {} is a brilliant idea, but I haven't a better solution for that yet.
2015-01-29 11:25:14 -08:00
Jared Johnson
0d79c1ef8e
Merge pull request #215 from msimerson/qmd
...
delete qmail-deliverable BEGIN block
2015-01-29 05:39:15 -06:00
Jared Johnson
a17b44de25
Merge pull request #214 from msimerson/summarize
...
log/summarize: ignore init msg from logging/*
2015-01-29 05:37:55 -06:00
Jared Johnson
194cde52af
Merge pull request #213 from msimerson/geoip-debug
...
geoip: change a couple INFO -> DEBUG
2015-01-29 05:37:12 -06:00
Matt Simerson
fddf571988
Merge pull request #216 from msimerson/tcpserver2
...
Tcpserver2
2015-01-29 00:23:07 -08:00
Matt Simerson
cad4f2b1d6
TcpServer: don't 'use parent Qpsmtpd::Base'
...
it breaks stuff. Instead, grab a base object and use it
2015-01-29 00:15:43 -08:00
Matt Simerson
11ddf03164
disable qmail-deliverable BEGIN block
...
because FindBin has some undesirable global effects
2015-01-29 03:10:56 -05:00
Matt Simerson
98d148a0bf
refactor start_connection
2015-01-29 00:04:13 -08:00
Matt Simerson
d7dd17085e
log/summarize: ignore init msg from logging/*
2015-01-28 22:54:32 -08:00
Matt Simerson
bc4e7e61a5
geoip: change a couple INFO -> DEBUG
2015-01-28 22:10:06 -08:00
Matt Simerson
d81b2d4331
Merge pull request #147 from msimerson/tcpserver
...
update tcpenv and lrpip calls to use -> syntax
2015-01-28 20:08:53 -08:00
Matt Simerson
be9f4aef0c
update tcpenv and lrpip calls to use -> syntax
...
don't load plugins twice.
Not exactly sure where that feature crept in some time ago. It was suppressed by checking to see if a queue plugin was already registered, and then bailing out on subsequent register_hook runs. I noticed it in testing, b/c I didn't have a queue plugin loaded. This removes the duplicate calls to register_hook.
* adds caching of the AUTH methods. You can't add new plugins or register new
hooks w/o restarting QP, so cache the list and avoid having to generate it on every connection.
* other PBP changes (early exits, less indention, fewer unnecessary parens, etc.)
2015-01-28 19:58:58 -08:00
Matt Simerson
575c0b09e3
Merge pull request #209 from jaredj/notight
...
No tight square brackets or curly braces
2015-01-28 19:57:27 -08:00
Matt Simerson
04914bf4c9
Merge pull request #212 from salvis/dkim-doc-tweak
...
plugins/dkim doc tweak
2015-01-28 19:45:46 -08:00
Hans Salvisberg
c1e3652beb
Tweak plugins/dkim doc to clarify the d= issue and add a third email reflector.
2015-01-29 02:05:28 +01:00
Matt Simerson
17d0c42d58
Merge pull request #211 from jaredj/test-register-hook
...
Tests for Qpsmtpd::Plugin::register_hook()
2015-01-28 15:57:18 -08:00
Jared Johnson
f5b58d08e8
Merge pull request #210 from smtpd/dns
...
use perl DNS methods instead of shell cmds
2015-01-28 17:33:20 -06:00
Jared Johnson
3b0d60545d
Tests for Qpsmtpd::Plugin::register_hook()
2015-01-28 17:23:21 -06:00
Matt Simerson
31dbe00514
use perl DNS methods instead of shell cmds
2015-01-28 10:23:03 -08:00
Jared Johnson
88818c1cc9
No tight square brackets or curly braces
...
> Likewise, the parameter -sbt=n or --square-bracket-tightness=n controls the
> space within square brackets, as illustrated below.
>
> $width = $col[ $j + $k ] - $col[ $j ]; # -sbt=0
> $width = $col[ $j + $k ] - $col[$j]; # -sbt=1 (default)
> $width = $col[$j + $k] - $col[$j]; # -sbt=2
> Curly braces which do not contain code blocks are controlled by the
> parameter -bt=n or --brace-tightness=n.
>
> $obj->{ $parsed_sql->{ 'table' }[0] }; # -bt=0
> $obj->{ $parsed_sql->{'table'}[0] }; # -bt=1 (default)
> $obj->{$parsed_sql->{'table'}[0]}; # -bt=2
As with PR #201 , I can't find any previous concensus on introducing this
and for myself, I prefer the default.
FTR I can't find anything else in .perltidyrc that I have any bones with :)
2015-01-27 19:35:55 -06:00
Matt Simerson
45bc5cfffc
Merge pull request #207 from jaredj/zap-db-file
...
Get rid of Qpsmtpd::DB::File
2015-01-27 13:57:17 -08:00
Jared Johnson
113becf8be
Get rid of Qpsmtpd::DB::File
...
DBM is probably the only file format we'll ever support anyhow
2015-01-27 15:55:53 -06:00
Matt Simerson
ce97a0eb41
Merge pull request #206 from jaredj/t-tmp
...
Better handling of testing temp files
2015-01-27 12:43:46 -08:00
Jared Johnson
3bf1a7f48c
Better handling of testing temp files
...
Rather than creating and ignoring a bunch of random files, create files in
t/tmp, ignored in .gitignore and cleaned up with 'make clean'
2015-01-27 14:41:15 -06:00
Matt Simerson
178c5f6884
Merge pull request #196 from msimerson/dmarc
...
dmarc: add error handling and tests
2015-01-27 10:30:28 -08:00
Matt Simerson
cfce4e44d0
Merge pull request #201 from jaredj/default-parens
...
Don't enforce tight parens with perltidy
2015-01-27 10:30:10 -08:00
Matt Simerson
343a7ee686
Merge pull request #204 from jaredj/faster-prune
...
Speed up greylisting prune_db() for Redis
2015-01-27 10:29:59 -08:00
Jared Johnson
b6311caae0
Pass multiple keys to del() to speed up prune_db()
2015-01-27 11:50:55 -06:00
Jared Johnson
1320a01f46
Speed up prune_db() with new Qpsmtpd::DB::mget()
...
This reduces round trips to Redis, speeding up DB pruning,
especially over a network
2015-01-27 10:59:47 -06:00
Jared Johnson
0dcafcffb6
Add testing for prune_db() in plugins/greylisting
2015-01-27 10:45:10 -06:00
Matt Simerson
3ed568f9d4
Merge pull request #202 from jaredj/greylist-storage-opts
...
Make Redis optional
2015-01-23 14:22:21 -08:00
Jared Johnson
5a58e02e80
Scarier error message for redis failures
2015-01-23 15:23:18 -06:00
Jared Johnson
462a2ae367
Rename 'redis_server' arg to 'redis'
2015-01-23 15:15:04 -06:00
Jared Johnson
4f9af75e48
Make Redis optional
...
Previously the greylist plugin tried to use redis and fell back to DBM. This means that if a system already had an established DBM database, but happened to have Redis running, the existing DBM db would be abandoned for a new Redis DB. This would inevitably lead to more delays for legitimate mail, and possibly lost mail.
This adds a 'redis_server' argument which enables Redis and sets the location of the redis server; if it is not explicitly set, DBM is used instead.
If the redis server is unavailable, rather than failing to start QP, we instead fail to register the plugin.
2015-01-23 14:24:23 -06:00