Jared Johnson
72c9c79f31
Move the rest of DBM operations to Qpsmtpd::DB
2014-11-26 16:06:24 -06:00
Jared Johnson
1d29db66ff
Move some DBM functions to Qpsmptd::DB::File::DBM
...
Not everything is moved and Qpsmtpd::DB* does not yet have test coverage
2014-11-25 17:52:18 -06:00
Jared Johnson
a0c8baae8d
Add POD section pointing to per-recip db support
2014-11-25 10:42:47 -06:00
Jared Johnson
0c1498d44d
Drop documentation too
2014-11-24 18:48:40 -06:00
Jared Johnson
20cbbad9e8
Drop support for per-recipient greylist dbm files
...
This does not drop support for including the recipient in the greylist key.
Note that this was already broken for an indeterminate (long) amount of time
2014-11-24 18:18:21 -06:00
Jared Johnson
5fe9d80f9b
Clarify DBM-specific functions
...
This changes function names only
2014-11-24 17:09:42 -06:00
Jared Johnson
57985252dc
Add some POD
2014-11-21 16:54:27 -06:00
Jared Johnson
30dd9cafeb
Add some p0f results to message headers
2014-11-21 16:51:19 -06:00
Jared Johnson
ffefb6b1ec
Fix GeoIP add_headers() return code
2014-11-17 14:24:17 -06:00
Matt Simerson
fd11777892
Merge pull request #144 from grtodd/master
...
Add auth_imap plugin.
2014-11-15 12:08:25 -08:00
Matt Simerson
9966c34fd8
Merge pull request #149 from msimerson/fortune
...
fortune: fix bin detection
2014-11-14 13:22:45 -08:00
Jared Johnson
cf09a662ad
New convention for calling Qpsmtpd::Base stuff
...
I think
2014-11-13 16:29:52 -06:00
Jared Johnson
a3ae6c51f4
Shorter lines and more explicit default
2014-11-13 14:55:17 -06:00
Jared Johnson
0975b22582
Get rid of a warning
2014-11-13 14:19:34 -06:00
Jared Johnson
575dc73cdf
Use 'command line' instead of config() call
...
It's awful, but consistent
2014-11-13 13:40:04 -06:00
Jared Johnson
943b1fcaf3
Remove country_name header which is redundant
2014-11-13 11:13:15 -06:00
Jared Johnson
0f0495f09e
Explicit return
2014-11-13 11:13:15 -06:00
Jared Johnson
cf0d87610c
Make GeoIP headers optional
2014-11-13 11:13:15 -06:00
Jared Johnson
d22396c298
Add headers with GeoIP data
2014-11-13 11:13:15 -06:00
Jared Johnson
da3ed5ebbf
Fix missing $self
2014-11-13 11:13:15 -06:00
Jared Johnson
462e974d1e
leave register() if neither geoip module loads
2014-11-13 11:13:15 -06:00
Matt Simerson
26a77511b0
fortune: fix bin detection
2014-11-12 22:58:06 -08:00
Jared Johnson
3ffee33d33
Remove extraneous semicolons
...
They confuse my editor
2014-11-11 16:59:40 -06:00
Matt Simerson
03e7ef722c
geoip: skip lookups for localhost
2014-11-11 01:49:46 -05:00
Matt Simerson
3acc6dd3d9
updated MANIFEST with new bin/ file
2014-11-10 16:29:59 -08:00
Matt Simerson
4acf8602bd
update docs with geoip_asn note addition
2014-11-10 13:32:28 -08:00
Jared Johnson
2655e7b452
Add tests for exclude files
2014-11-06 17:02:27 -06:00
Jared Johnson
7fb80f35ab
Fix some broken variable names
2014-11-06 16:23:29 -06:00
Jared Johnson
81b55eb1ac
Support postgrey-style greylist exclusion files
...
Not yet tested
2014-11-06 16:21:10 -06:00
Graham Todd
fc50cc2629
Update pull request with suggested changes from feedback.
2014-11-06 15:37:40 -05:00
Matt Simerson
38d5523b35
Base: consistent DNS handling
2014-11-06 11:15:18 -08:00
Graham Todd
ceb7419578
Add auth_imap plugin.
2014-11-06 13:00:52 -05:00
Matt Simerson
954fa45f2d
added call to ->set_asn
2014-11-05 14:30:23 -08:00
Matt Simerson
54abd60239
strip off AS prefix
2014-11-05 14:30:23 -08:00
Matt Simerson
f2eda74074
ASN lookups now work
2014-11-05 14:30:22 -08:00
Matt Simerson
4eba2a39bc
remove unused var
2014-11-05 14:30:22 -08:00
Matt Simerson
c61dbb5734
added GeoIP2 support, partial ASN support
2014-11-05 14:30:22 -08:00
Matt Simerson
9862cdc042
geoip: simplify the get/set data bits
2014-11-05 14:30:22 -08:00
Jared Johnson
289c5b2ca6
Add RFC link
2014-11-03 16:14:51 -06:00
Jared Johnson
e9400cc085
Add missing $self and explicit return
2014-10-28 14:37:56 -05:00
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
Matt Simerson
3a47dd2ac2
dmarc: skip processing for null sender
2014-01-08 19:22:16 -05:00
Matt Simerson
4d1b9ffe32
headers: use a more descriptive variable name
2014-01-08 16:11:04 -08:00
Matt Simerson
3353578d8b
clamdscan: add support for remote TCP/IP clamd
...
previous version only worked when clamd was running on the same machine and had access to the spool file. This version also works with a remote clamd.
2013-12-20 00:22:09 -05:00
Matt Simerson
2d4f4a299a
naughty: legibility improvement
2013-12-18 00:17:37 -05:00
Matt Simerson
45316487e3
anglebrackets: increase penalty, prefix log msgs
2013-12-18 00:16:41 -05:00
Matt Simerson
bcc6adae19
helo: add karma penalty for no HELO hostname
2013-12-18 00:16:02 -05:00
Matt Simerson
02da55e06d
karma: added penalty for spammy TLDs
2013-12-18 00:15:20 -05:00
Matt Simerson
9f88e374c2
tls: reduced importants of an info message
...
from WARN to INFO
2013-12-18 00:11:53 -05:00
Matt Simerson
a4695cec8b
geoip: added named array for invalid args
...
so it passes Perl::Critic tests
2013-12-18 00:02:07 -05:00
Matt Simerson
96dfb08d87
headers: added POD descripting each header
2013-12-18 00:00:52 -05:00