2005-12-16 23:27:27 +01:00
|
|
|
0.40
|
|
|
|
|
2005-12-22 22:30:53 +01:00
|
|
|
0.31.1 - 2005/11/18
|
2005-12-16 23:27:27 +01:00
|
|
|
|
2005-12-22 22:30:53 +01:00
|
|
|
Add missing files to the distribution, oops... (Thanks Budi Ang!)
|
|
|
|
(exim plugin, tls plugin, various sample configuration files)
|
2005-12-16 23:27:27 +01:00
|
|
|
|
2005-12-22 22:30:53 +01:00
|
|
|
|
|
|
|
0.31 - 2005/11/16
|
|
|
|
|
|
|
|
STARTTLS support (see plugins/tls)
|
|
|
|
|
|
|
|
Added queue/exim-bsmtp plugin to spool accepted mail into an Exim
|
|
|
|
backend via BSMTP. (Devin Carraway)
|
|
|
|
|
|
|
|
New plugin inheritance system, see the bottom of README.plugins for
|
|
|
|
more information
|
2005-07-04 16:39:29 +02:00
|
|
|
|
2005-07-06 09:50:00 +02:00
|
|
|
qpsmtpd-forkserver: --listen-address may now be given more than once, to
|
|
|
|
request listening on multiple local addresses (Devin Carraway)
|
2005-07-06 23:52:45 +02:00
|
|
|
(also: no more signal problems making qpsmtpd-forkserver crash/loop
|
|
|
|
when forking).
|
2005-07-06 09:50:00 +02:00
|
|
|
|
2005-07-04 16:44:51 +02:00
|
|
|
qpsmtpd-forkserver: add an option for writing a PID file (pjh)
|
|
|
|
|
|
|
|
qpsmtpd-forkserver: set auxiliary groups (this is needed for the
|
|
|
|
postfix backend, which expects to have write permission to a fifo
|
|
|
|
which usually belongs to group postdrop). (pjh)
|
|
|
|
|
2005-12-22 22:30:53 +01:00
|
|
|
qpsmtpd-forkserver: if -d or --detach is given on the commandline,
|
|
|
|
forkserver will detach from the controlling terminal and daemonize
|
|
|
|
itself (Devin Carraway)
|
|
|
|
|
|
|
|
replace some fun smtp comments with boring ones.
|
|
|
|
|
|
|
|
example patterns for badrcptto plugin - Gordon Rowell
|
|
|
|
|
|
|
|
Extend require_resolvable_fromhost to include a configurable list of
|
|
|
|
"impossible" addresses to combat spammer forging. (Hanno Hecker)
|
|
|
|
|
|
|
|
Use qmail/control/smtpdgreeting if it exists, otherwise
|
|
|
|
show the original qpsmtpd greeting (with version information).
|
|
|
|
|
|
|
|
Apply slight variation on patch from Peter Holzer to allow specification of
|
|
|
|
an explicit $QPSMTPD_CONFIG variable to specify where the config lives,
|
|
|
|
overriding $QMAIL/control and /var/qmail/control if set. The usual
|
|
|
|
"last location with the file wins" rule still applies.
|
|
|
|
|
|
|
|
Refactor Qpsmtpd::Address
|
|
|
|
|
2005-07-04 16:39:29 +02:00
|
|
|
when disconncting with a temporary failure, return 421 rather than
|
|
|
|
450 or 451. (Peter J. Holzer)
|
|
|
|
|
2005-07-07 00:22:29 +02:00
|
|
|
The unrecognized_command hook now uses DENY_DISCONNECT return
|
|
|
|
for disconnecting the user.
|
2005-07-06 23:52:45 +02:00
|
|
|
|
2005-12-22 22:30:53 +01:00
|
|
|
If the environment variable $QPSMTPD_CONFIG is set, qpsmtpd will look
|
|
|
|
for its config files in the directory given therein, in addition to (and
|
|
|
|
in preference to) other locations. (Peter J. Holzer)
|
|
|
|
|
2005-07-06 23:52:45 +02:00
|
|
|
Updated documentation
|
|
|
|
|
2005-12-22 22:30:53 +01:00
|
|
|
Various minor cleanups
|
|
|
|
|
2005-07-04 16:39:29 +02:00
|
|
|
|
2005-07-02 02:20:21 +02:00
|
|
|
0.30 - 2005/07/05
|
2004-11-25 20:52:34 +01:00
|
|
|
|
2005-05-05 09:44:34 +02:00
|
|
|
Add plugable logging support include sample plugin which replicates
|
|
|
|
the existing core code. Add OK hook.
|
|
|
|
|
|
|
|
Add new logging plugin, logging/adaptive, which logs at different
|
|
|
|
levels depending on whether the message was accepted/rejected.
|
|
|
|
|
|
|
|
(See README.logging for information about the new logging system by
|
|
|
|
John Peacock)
|
|
|
|
|
|
|
|
plugins/auth/auth_ldap_bind - New plugin to authenticate against an
|
|
|
|
LDAP database. Thanks to Elliot Foster <elliotf@gratuitous.net>
|
|
|
|
|
2005-07-02 02:20:21 +02:00
|
|
|
new plugin: plugins/auth/auth_flat_file - flat file auth plugin
|
|
|
|
|
|
|
|
new plugin: plugins/auth/auth_cvm_unix_local - Only DENY if the
|
|
|
|
credentials were accepted but incorrect (bad password?). Interfaces
|
|
|
|
with Bruce Guenther's Credential Validation Module (CVM)
|
2005-05-05 09:44:34 +02:00
|
|
|
|
|
|
|
Revamp Qpsmtpd::Constants so it is possible to retrieve the text
|
|
|
|
representation from the numeric (for logging purposes).
|
|
|
|
|
2005-07-02 02:20:21 +02:00
|
|
|
new plugin: plugins/check_badrcptto_patterns - Match bad RCPTO
|
|
|
|
address with regex (Gordon Rowell)
|
|
|
|
|
|
|
|
new plugin: plugins/check_norelay - Carve out holes from larger
|
|
|
|
relay blocks (Also Gordon Rowell)
|
|
|
|
|
|
|
|
new plugin: plugins/virus/sophie - Uses SOPHOS Antivirus via Sophie
|
|
|
|
resident daemon.
|
|
|
|
|
2005-05-05 09:44:34 +02:00
|
|
|
Store mail in memory up to a certain threshold (default 10k).
|
|
|
|
|
|
|
|
Remove needless restriction on temp_file() to allow the spool
|
|
|
|
directory path to include dots (as in ../)
|
|
|
|
|
|
|
|
Fix off-by-one line numbers in warnings from plugins (thanks to
|
|
|
|
Brian Grossman).
|
|
|
|
|
2005-03-24 20:17:46 +01:00
|
|
|
Don't check the HELO host for rfc-ignorant compliance
|
2005-05-05 09:44:34 +02:00
|
|
|
|
|
|
|
body_write patches from Brian Grossman
|
|
|
|
|
|
|
|
Fix for corruption problem under Apache
|
2005-03-24 20:17:46 +01:00
|
|
|
|
2005-07-02 02:20:21 +02:00
|
|
|
Update Apache::Qpsmtpd to work with the latest Apache/mod_perl 2.0
|
|
|
|
API. Fix various bucket issues.
|
|
|
|
|
|
|
|
Replace $ENV{RELAYCLIENT} with $connection->relay_client in last plugin.
|
|
|
|
|
2005-06-29 11:37:10 +02:00
|
|
|
Fix typo in qpsmtpd-forkserver commandline help
|
2005-03-24 20:17:46 +01:00
|
|
|
|
2005-03-03 03:30:16 +01:00
|
|
|
0.29 - 2005/03/03
|
2005-02-15 22:42:52 +01:00
|
|
|
|
2005-03-01 21:11:09 +01:00
|
|
|
Store entire incoming message in spool file (so that scanners can read
|
|
|
|
the complete message) and ignore old headers before adding lines and
|
|
|
|
queuing for delivery.
|
|
|
|
|
|
|
|
New anti-virus scanners: hbedv (Hanno Hecker), bitdefender, and clamdscan
|
|
|
|
(John Peacock). Update clamav plugin to directly scan the spool file.
|
|
|
|
|
2005-02-22 03:47:39 +01:00
|
|
|
New temp_file() and temp_dir() methods; when used by plugins, they create
|
|
|
|
a filename or directory which will last only as long as the current
|
|
|
|
transaction. Also created a spool_dir() method which checks/creates the
|
|
|
|
spool_dir when the application starts up. All three methods are also
|
|
|
|
available in the base class where the temp_* objects are not automatically
|
|
|
|
limited to the transaction's lifetime. (John Peacock)
|
|
|
|
|
2005-02-15 22:42:52 +01:00
|
|
|
Added Gavin Carr's greylisting plugin
|
|
|
|
|
|
|
|
Renamed config/ to config.sample/
|
2004-07-15 01:58:47 +02:00
|
|
|
|
Changes by jpeacock@cpan.org (John Peacock)
o plugins/check_badmailfromto
- New plugin in the style of check_badmailfrom, which matches a pair
of FROM/TO and makes it seem like the recipient's address no longer
exists (but only from the matching sender's point of view). Useful
for stalkers and other harassment cases.
o plugins/dns_whitelist_soft
- New plugin to provide a DNS-based whitelist (good for distributed
sites).
o various files
- Replaced tab character with 8 spaces and adjusted line breaks for
better readability.
Changes by mct@toren.net (Michael C. Toren)
o lib/Qpsmtpd/SMTP.pm
- Assumes a MAIL FROM value of "<#@[]>" (utilized by qmail to
indicate a null sender when generating a doublebounce message)
is equivalent to "<>". Previously qpsmtpd complained that the
value could not be parsed.
- Adds LOGIN to the default list of supported auth mechanisms.
The documentation in Auth.pm indicated that auth-login was not
currently supported due to lack of functionality, however I can
confirm that LOGIN appears to work fine as tested by using msmtp
(http://msmtp.sourceforge.net/). Are there any indications that
LOGIN support is actually broken in the current implementation?
- Removes the "X-Qpsmtpd-Auth: True" header appended when a message
has been sent by an authenticated user. One problem with such a
header is that it's impossible to say which SMTP hop added it,
and it provides no information which could be used to backtrack
the transaction. I grepped through my mail archives a bit
looking for how other MTAs handled the problem, and decided it
would be best to place this information in the Received: header:
Received: from remotehost (HELO remotehost) (192.168.42.42)
(smtp-auth username foo, mechanism cram-md5)
by mail.netisland.net (qpsmtpd/0.28) with ESMTP; <date>
o lib/Qpsmtpd/Auth.pm:
- Documentation update for the arguments passed to an auth
handler; previously the $mechanism argument was not mentioned,
which threw off the argument offsets.
- Documentation update for auth-login removing the warning
that auth-login is not currently supported due to lack of
functionality.
- Fix to execute a generic auth hook when a more specific
auth-$mechanism hook does not exist. (Previously posted
to the list last week.)
- Upon authentication, sets $session->{_auth_user} and
$session->{_auth_mechanism} so that SMTP.pm can include them
in the Received: header.
o plugins/queue/qmail-queue
- Added a timestamp and the qmail-queue qp identifier to the
"Queued!" 250 message, for compatibility with qmail-smtpd, which
can be very useful for tracking message delivery from machine to
machine. For example, the new 250 message might be:
250 Queued! 1105927468 qp 3210 <1105927457@netisland.net>
qmail-smtpd returns:
250 ok 1106546213 qp 7129
Additionally, for consistency angle brackets are placed around
the Message-ID displayed in the 250 if they were missing in the
message header.
o plugins/check_badmailfrom:
- Changed the error message from "Mail from $bad not accepted
here" to "sorry, your envelope sender is in my badmailfrom
list", for compatibility with qmail-smtpd. I didn't see any
reason to share with the sender the value of $bad, especially
for situations where the sender was rejected resulting from a
wildcard.
o plugins/check_earlytalker:
o plugins/require_resolvable_fromhost:
- No longer checks for earlytalkers or resolvable senders if the
connection note "whitelistclient" is set, which is nice for
helping backup MX hosts empty their queue faster.
o plugins/count_unrecognized_commands:
- Return code changed from DENY_DISCONNECT, which isn't valid in
an unrecognized_command hook, to DENY, which in this context
drops the connection anyway. (Previously posted to the list
last week.)
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@356 958fd67b-6ff1-0310-b445-bb7760255be9
2005-01-28 04:30:50 +01:00
|
|
|
Qpsmtpd::Auth - document $mechanism option, improve fallback to generic
|
|
|
|
hooks, document that auth-login works now, stash auth user and method for
|
|
|
|
later use by Qpsmtpd::SMTP to generate authentication header.
|
|
|
|
(Michael Toren)
|
|
|
|
|
|
|
|
Qpsmtpd::SMTP - "MAIL FROM: <#@[]>" now works like qmail (null sender),
|
|
|
|
add LOGIN to default auth mechanisms, display auth user and method in
|
|
|
|
Received: line instead of X-Qpsmtpd-Auth header.
|
|
|
|
(Michael Toren)
|
|
|
|
|
|
|
|
check_badmailfromto - NEW PLUGIN - like check_badmailfrom except matches
|
|
|
|
both FROM: and TO:, and effectively makes it seem like the recipient
|
|
|
|
no longer exists for that sender (great for harassment cases).
|
|
|
|
(John Peacock)
|
|
|
|
|
|
|
|
check_earlytalker and require_resolvable_fromhost - short circuit test if
|
|
|
|
whitelistclient is set. (Michael Toren)
|
|
|
|
|
|
|
|
check_badmailfrom - Do not say why a given message is denied.
|
|
|
|
(Michael Toren)
|
|
|
|
|
|
|
|
dns_whitelist_soft - NEW PLUGIN - dns-based whitelist override for
|
|
|
|
other qpsmtpd plugins. Add suuport for whitelisthost to dnsbl.
|
|
|
|
(John Peacock)
|
|
|
|
|
|
|
|
auth/auth_vpopmail_sql - Support CRAM-MD5 (requires clear_passwd)
|
|
|
|
(John Peacock)
|
|
|
|
|
|
|
|
plugins/queue/qmail-queue - Added a timestamp and the qmail-queue qp
|
|
|
|
identifier to the "Queued!" message, for compatibility with qmail-smtpd
|
|
|
|
(Michael Toren)
|
|
|
|
|
2004-11-25 20:52:34 +01:00
|
|
|
Support qmail-smtpd's timeoutsmtpd config file
|
|
|
|
|
2004-11-09 16:25:52 +01:00
|
|
|
Many improvements to the forking server (qpsmtpd-forkserver)
|
|
|
|
|
|
|
|
Plugin testing framework (Matt)
|
|
|
|
|
|
|
|
Added Apache::Qpsmtpd (Apache/mod_perl 2.0 connection handler)
|
|
|
|
|
|
|
|
Allow for multiple instances of a single plugin by using plugin:0
|
|
|
|
notation (Robert)
|
|
|
|
|
|
|
|
Fix CDB support so the server can work without it
|
|
|
|
|
|
|
|
VRFY plugin support (Robert Spier)
|
|
|
|
|
|
|
|
Added Makefile.PL etc to make it easier to build a package (Matt).
|
2004-07-15 01:58:47 +02:00
|
|
|
|
2004-11-18 20:45:47 +01:00
|
|
|
Added Apache::Qpsmtpd to the distro.
|
|
|
|
|
|
|
|
Make the distro follow the CPAN module style (Makefile.PL, MANIFEST, etc)
|
|
|
|
|
2004-08-01 03:54:16 +02:00
|
|
|
Make the rhsbl plugin do DNS lookups in the background. (Mark Powell)
|
|
|
|
|
2004-07-28 19:06:45 +02:00
|
|
|
Fix warning in count_unrecognized_commands plugin (thanks to spaze
|
|
|
|
and Roger Walker)
|
|
|
|
|
2004-11-25 20:52:34 +01:00
|
|
|
Improve error messages from the Postfix module (Erik I. Bolsø,
|
2004-07-19 13:08:15 +02:00
|
|
|
<knan at mo.himolde.no>)
|
|
|
|
|
2004-11-09 16:25:52 +01:00
|
|
|
make the maildir plugin record who the message was to (with a bit of improvements
|
|
|
|
this could make a decent local delivery plugin)
|
|
|
|
|
|
|
|
Pass extra "stuff" to HELO/EHLO callbacks (to make it easier to
|
|
|
|
support SMTP extensions)
|
|
|
|
|
|
|
|
Renamed the *HARD return codes to DENY_DISCONNECT and
|
|
|
|
DENYSOFT_DISCONNECT (DENYSOFT_DISCONNECT is new)
|
|
|
|
|
2004-07-15 01:58:47 +02:00
|
|
|
Mail::Address does RFC822 addresses, we need SMTP addresses.
|
|
|
|
Replace Mail::Address with Peter J. Holzer's Qpsmtpd::Address module.
|
|
|
|
|
2004-11-09 16:25:52 +01:00
|
|
|
Don't keep adding ip addresses to the process status line ($0) when
|
|
|
|
running under PPerl.
|
|
|
|
|
|
|
|
Include the date and time the session started in the process status line.
|
|
|
|
|
2004-07-16 22:23:17 +02:00
|
|
|
Add "plugin/virus/uvscan" - McAfee commandline virus scanner
|
|
|
|
|
2004-08-02 00:35:49 +02:00
|
|
|
Inbound connections logged as soon as the remote host address is known
|
|
|
|
when running under tcpserver.
|
|
|
|
|
2004-11-09 16:25:52 +01:00
|
|
|
Add Qpsmtpd::Auth (authentication handlers! See plugins/auth/) (John Peacock)
|
|
|
|
|
|
|
|
Add a plugin hook for the DATA command
|
|
|
|
|
2004-08-02 00:35:49 +02:00
|
|
|
check_earlytalker -
|
|
|
|
+ optionally react to an earlytalker by denying all MAIL-FROM commands
|
|
|
|
rather than issuing a 4xx/5xx greeting and disconnecting. (Mark
|
|
|
|
Powell)
|
|
|
|
+ initial "awkward silence" period now configurable (Mark Powell)
|
|
|
|
+ DENY/DENYSOFT now configurable
|
2004-07-15 01:58:47 +02:00
|
|
|
|
2004-09-22 18:01:16 +02:00
|
|
|
Move relay flag to connection object (John Peacock):
|
|
|
|
+ add relay_client() method to Connection.pm
|
2004-09-23 15:51:09 +02:00
|
|
|
+ Remove $transaction->relaying() completely (due to popular demand)
|
2004-09-22 18:01:16 +02:00
|
|
|
|
|
|
|
Split check_relay plugin into two plugins (John Peacock):
|
|
|
|
+ check_relay now fires on connect and sets relay_client() flag
|
|
|
|
+ rcpt_ok runs last of rcpt plugins and performs final OK/DENY
|
|
|
|
+ change default config/plugins to reflect new order
|
|
|
|
|
2004-06-05 12:06:44 +02:00
|
|
|
0.28 - 2004/06/05
|
|
|
|
|
|
|
|
Don't keep adding ip addresses to the process status line ($0) when running under PPerl.
|
|
|
|
|
|
|
|
Include the date and time the session started in the process status line.
|
2004-03-05 10:26:36 +01:00
|
|
|
|
2004-05-24 13:36:04 +02:00
|
|
|
Added a "queue/maildir" plugin for writing incoming mails to a maildir.
|
2004-04-21 14:42:45 +02:00
|
|
|
|
|
|
|
Create temp files with permissions 0600 (thanks to Robert James Kaes again)
|
|
|
|
|
|
|
|
Fix warning in check_badrcptto plugin (Thanks to Robert James Kaes)
|
|
|
|
|
2004-03-11 05:12:15 +01:00
|
|
|
Proper "Log levels" with a configuration option
|
2004-03-05 10:26:36 +01:00
|
|
|
|
2004-03-11 05:12:15 +01:00
|
|
|
$Include feature in config/plugins
|
|
|
|
|
|
|
|
|
2004-05-24 13:36:04 +02:00
|
|
|
0.27.1 - 2004/03/11
|
2004-03-11 10:34:38 +01:00
|
|
|
|
|
|
|
SpamAssassin plugin Outlook compatibility fix (Thanks to Gergely Risko)
|
|
|
|
|
|
|
|
|
2004-03-11 05:12:15 +01:00
|
|
|
0.27 - 2004/03/10
|
2003-08-30 17:14:39 +02:00
|
|
|
|
2004-03-05 10:12:20 +01:00
|
|
|
Support for unix sockets in the spamassassin plugin (requires SA
|
|
|
|
2.60 or higher). Thanks to John Peacock!
|
|
|
|
|
2004-03-04 05:33:47 +01:00
|
|
|
Modified the dnsbl plugin to better support both A and TXT records and
|
|
|
|
support all of the RBLSMTPD functionality. (Thanks to Mark Powell)
|
|
|
|
|
2004-03-04 05:30:02 +01:00
|
|
|
reject bare carriage-returns in addition to the bare line-feeds
|
|
|
|
(based on a patch from Robert James Kaes, thanks!)
|
|
|
|
|
2004-03-04 05:14:09 +01:00
|
|
|
Bugfix to the count_unrecognized_commands plugin so it works
|
|
|
|
under PPerl (it wasn't resetting the count properly).
|
|
|
|
|
2004-02-24 11:31:12 +01:00
|
|
|
reset_transaction is called after disconnect plugins are called so
|
|
|
|
the Transaction objects DESTROY method is called. (Thanks to Robert
|
|
|
|
James Kaes <rjkaes@flarenet.com>)
|
|
|
|
|
2004-02-22 03:17:29 +01:00
|
|
|
Made the SpamAssassin plugin work with SA 2.6+ (thanks to numerous
|
|
|
|
contributors, thanks everyone!). Note that for now it's not
|
|
|
|
including the Spam: headers with the score explained. For that use
|
|
|
|
the spamassassin_spamc plugin from http://projects.bluefeet.net/
|
|
|
|
(for now).
|
|
|
|
|
2004-02-19 11:55:36 +01:00
|
|
|
Added Postfix queue plugin thanks to Peter J Holzer!
|
|
|
|
|
2004-02-13 14:11:50 +01:00
|
|
|
Took out the last "exit" call from the SMTP object; the "transport"
|
|
|
|
module ("TcpServer", "SelectServer") needs to do the right thing in
|
|
|
|
it's disconnect method.
|
|
|
|
|
2004-02-03 03:57:04 +01:00
|
|
|
Update the SPF plugin (Philip Gladstone, philip@gladstonefamily.net):
|
|
|
|
* Integrated with Mail::SPF::Query 1.991
|
|
|
|
* Don't do SPF processing when you are acting as a relay system
|
|
|
|
* Remove the MX changes as they are now inside Mail::SPF::Query
|
|
|
|
|
2003-09-15 12:50:27 +02:00
|
|
|
Take out Data::Dumper to save a few bytes of memory
|
|
|
|
|
2003-09-05 07:10:40 +02:00
|
|
|
Say Received: ... via ESMTP instead of via SMTP when the client
|
|
|
|
speaks ESMTP. (Hoping this can be a useful SpamAssassin rule).
|
|
|
|
|
|
|
|
Take out the X-SMTPD header.
|
|
|
|
|
|
|
|
Add pod documentation and sanity checking of the config to
|
|
|
|
check_badmailfrom
|
|
|
|
|
2003-08-30 17:14:39 +02:00
|
|
|
Use $ENV{QMAIL} to override /var/qmail for where to find the
|
|
|
|
control/ directory.
|
|
|
|
|
|
|
|
Enable "check_earlytalker" in the default plugins config
|
|
|
|
|
2003-10-01 22:57:11 +02:00
|
|
|
Added a milter plugin to allow use of sendmail milters
|
|
|
|
|
2003-11-02 12:22:59 +01:00
|
|
|
Don't store the Qpsmtpd object in the Plugin object any more (this
|
|
|
|
caused a circular reference)
|
|
|
|
|
|
|
|
Added a new qpsmtpd-server - a select() based server for qpsmtpd
|
|
|
|
|
|
|
|
Allow a config/relayclients and config/morerelayclients files to
|
|
|
|
define who can relay (useful with the select() server)
|
|
|
|
|
|
|
|
Fixed qpsmtpd unfolding all header lines
|
|
|
|
|
|
|
|
Speed up persistent qpsmtpd's by checking for plugin functions after
|
|
|
|
munging the name (the main breakage was with queue/qmail-queue)
|
|
|
|
|
|
|
|
Use dup2() instead of perl open("<&") style. POSIX seems to work better.
|
|
|
|
|
2004-03-05 10:17:38 +01:00
|
|
|
Added SPF, sender permitted from, plugin
|
|
|
|
|
|
|
|
More minor changes and probably a few big ones that we missed adding here :-)
|
|
|
|
|
2003-08-30 17:14:39 +02:00
|
|
|
|
2003-06-11 10:38:57 +02:00
|
|
|
0.26 - 2003/06/11
|
2003-03-25 13:50:07 +01:00
|
|
|
|
2003-06-10 12:03:58 +02:00
|
|
|
Add queue/smtp-forward plugin (Matt Sergeant)
|
|
|
|
|
|
|
|
Add documentation to Qpsmtpd::Transaction (Matt Sergeant)
|
|
|
|
|
|
|
|
Fix bug in dnsbl that made it sometimes ignore "hits" (thanks to
|
|
|
|
James H. Thompson <jht@lava.net>)
|
|
|
|
|
2003-04-23 05:36:36 +02:00
|
|
|
Fix bug hiding the error message when an existing configuration file
|
|
|
|
isn't readable.
|
|
|
|
|
2003-04-21 11:42:01 +02:00
|
|
|
If a plugin running the ehlo hook add something to the ARRAY
|
|
|
|
reference $self->transaction->notes('capabilities') then it will be
|
|
|
|
added to the EHLO response.
|
|
|
|
|
|
|
|
Add command_counter method to the SMTP object. Plugins can use this
|
|
|
|
to catch (or not) consecutive commands. In particular useful with
|
|
|
|
the unrecognized_command hook.
|
|
|
|
|
2003-04-21 10:28:12 +02:00
|
|
|
Filter out all uncommon characters from the remote_host
|
|
|
|
setting. (thanks to Frank Denis / Jedi/Sector One for the hint).
|
|
|
|
|
|
|
|
Added a check for the spool_dir having mode 0700.
|
|
|
|
|
2003-04-21 10:23:35 +02:00
|
|
|
Don't break under taint mode on OpenBSD. (thanks to Frank Denis /
|
|
|
|
Jedi/Sector One)
|
|
|
|
|
2003-04-16 18:45:57 +02:00
|
|
|
Have the qmail-queue plugin add the message-id to the "Queued!"
|
|
|
|
message we send back to the client (to help those odd sendmail using
|
|
|
|
people debug their logs)
|
|
|
|
|
2003-04-16 18:35:14 +02:00
|
|
|
Set the process name to "qpsmtpd [1.2.3.4 : host.name.tld]"
|
|
|
|
|
2003-04-15 20:10:44 +02:00
|
|
|
Fixed timeout bug when the client sent DATA and then stopped before
|
|
|
|
sending the next line. (Gergely Risko <risko@risko.hu>)
|
|
|
|
|
2003-04-15 19:39:03 +02:00
|
|
|
unrecognized_command hook and a count_unrecognized_commands
|
|
|
|
plugin. (Rasjid Wilcox)
|
|
|
|
|
2003-04-15 19:01:43 +02:00
|
|
|
check_earlytalker plugin. Deny the connection if the client talks
|
|
|
|
before we show our SMTP banner. (From Devin Carraway)
|
|
|
|
|
|
|
|
Patch Qpsmtpd::SMTP to allow connect plugins to give DENY and
|
|
|
|
DENYSOFT return codes. Based on patch from Devin Carraway.
|
|
|
|
|
2003-03-25 13:50:07 +01:00
|
|
|
Support morercpthosts.cdb
|
|
|
|
|
|
|
|
config now takes an extra "type" parameter. If it's "map" then a
|
|
|
|
reference to a tied hash will be returned.
|
|
|
|
|
|
|
|
|
2003-03-18 10:55:06 +01:00
|
|
|
0.25 - 2003/03/18
|
2003-01-20 12:04:36 +01:00
|
|
|
|
2003-02-06 06:17:28 +01:00
|
|
|
Use the proper RFC2822 date format in the Received headers. (Somehow
|
|
|
|
I had convinced myself that ISO8601 dates were okay). Thanks to
|
|
|
|
Kee Hinckley <nazgul@somewhere.com>.
|
|
|
|
|
|
|
|
Print the date in the local timezone instead of in -0000. (Not
|
|
|
|
entirely convinced this is a good idea)
|
|
|
|
|
2003-03-18 10:55:06 +01:00
|
|
|
Lots of changes from Rasjid Wilcox <rasjidw@openminddev.net>:
|
2003-01-20 12:04:36 +01:00
|
|
|
|
2003-03-18 10:55:06 +01:00
|
|
|
Fix error handling in queue/qmail-queue. (Rasjid)
|
|
|
|
|
2003-01-20 12:04:36 +01:00
|
|
|
Add option to queue/qmail-queue to specify an alternate qmail-queue
|
2003-03-18 10:55:06 +01:00
|
|
|
location. (Rasjid)
|
2003-01-20 12:04:36 +01:00
|
|
|
|
2003-03-18 10:55:06 +01:00
|
|
|
Add support for the QMAILQUEUE environment variable. (Rasjid)
|
2003-01-20 12:04:36 +01:00
|
|
|
|
2003-03-18 10:55:06 +01:00
|
|
|
PPerl compatibility (yay!) (Rasjid)
|
2003-01-20 12:04:36 +01:00
|
|
|
|
2003-03-18 10:55:06 +01:00
|
|
|
Allow mail to <abuse> and <postmaster> to go through. (Rasjid)
|
2003-01-20 12:04:36 +01:00
|
|
|
|
|
|
|
Add "deny" hook that gets called when another hook returns DENY or
|
2003-03-18 10:55:06 +01:00
|
|
|
DENYSOFT. (Rasjid)
|
|
|
|
|
|
|
|
Add list of required modules to the README. Thanks to Skaag Argonius
|
|
|
|
<skaag@skaag.net>.
|
|
|
|
|
|
|
|
Fix dnsbl plugin to give us all the results. (Patch from Matt
|
|
|
|
Sergeant <matt@sergeant.org>)
|
|
|
|
|
|
|
|
Disable identd lookups by passing -R to tcpserver. (Thanks to Matt)
|
|
|
|
|
|
|
|
add plugin hooks for HELO and EHLO (Devin Carraway
|
|
|
|
<qpsmtpd-list@devin.com>)
|
|
|
|
|
|
|
|
check_spamhelo plugin to deny mail from claimed senders from the
|
|
|
|
list specified in F<badhelo>. (For example aol.com or yahoo.com)
|
|
|
|
(Devin Carraway)
|
2003-01-20 12:04:36 +01:00
|
|
|
|
|
|
|
|
2002-12-09 10:08:44 +01:00
|
|
|
0.20 - 2002/12/09
|
2002-11-06 07:42:55 +01:00
|
|
|
|
2002-12-09 10:08:09 +01:00
|
|
|
Fix the "too many dots in the beginning of the line" bug.
|
|
|
|
|
2002-12-09 09:47:15 +01:00
|
|
|
Add munge_subject_threshold and reject_threshold options to the
|
|
|
|
spamassassin plugin. Add documentation to the spamassassin plugin.
|
|
|
|
|
2002-12-26 18:59:24 +01:00
|
|
|
Add -p to mkdir in log/run (Rasjid Wilcox <rasjidw@openminddev.net>)
|
2002-11-20 11:15:06 +01:00
|
|
|
|
2002-11-06 12:03:00 +01:00
|
|
|
clamav plugin, thanks to Matt Sergeant, matt@sergeant.org.
|
2002-11-06 12:07:14 +01:00
|
|
|
Enabling this might require you to increase your "softlimit" in
|
2002-11-06 12:03:00 +01:00
|
|
|
the run file. http://www.clamav.org/
|
|
|
|
|
|
|
|
Make the spamassassin plugin not stop the next content plugins from
|
|
|
|
running.
|
|
|
|
|
2002-11-06 07:42:55 +01:00
|
|
|
Store hooks runtime config globally so they will work within the
|
|
|
|
transaction objects too.
|
|
|
|
|
|
|
|
content_log plugin - log the content of all mails for
|
|
|
|
debugging. Robert Spier <robert@perl.org>.
|
|
|
|
|
|
|
|
http_config plugin - get configuration via http
|
|
|
|
|
|
|
|
plugins can take arguments via their line in the "plugins" file
|
|
|
|
|
|
|
|
make the quit_fortune plugin check that the fortune program exists
|
|
|
|
|
|
|
|
|
2002-10-17 09:42:22 +02:00
|
|
|
0.12 - 2002/10/17
|
|
|
|
|
|
|
|
Better error messages when a plugin fails
|
|
|
|
|
|
|
|
Remove some debug messages in the log
|
2002-10-14 07:47:25 +02:00
|
|
|
|
|
|
|
Fix NOOP command with perl 5.6.
|
2002-10-13 03:05:40 +02:00
|
|
|
|
2002-10-14 03:59:04 +02:00
|
|
|
Better installation instructions and error message when no plugin
|
|
|
|
allowed or denied relaying (thanks to Lars Rander
|
|
|
|
<lrNOSPAM@rander.dk>).
|
2002-10-14 07:47:25 +02:00
|
|
|
|
|
|
|
Use /usr/bin/perl instead of the non-standard /home/perl/bin/perl
|
2002-10-13 03:05:40 +02:00
|
|
|
|
2002-10-14 03:59:04 +02:00
|
|
|
|
|
|
|
0.11 - 2002/10/09
|
2002-10-10 03:51:53 +02:00
|
|
|
|
|
|
|
Make a "queue" plugin hook and move the qmail-queue functionality
|
|
|
|
to plugins/queue/qmail-queue. This allows you to make qpsmtpd
|
|
|
|
delivery mail via smtp or lmtp or into a database or whatever you want.
|
|
|
|
|
2002-09-24 12:56:35 +02:00
|
|
|
Reorganize most of Qpsmtpd.pm into Qpsmtpd/SMTP.pm.
|
|
|
|
|
|
|
|
Add spool_dir option (thanks to Ross Mueller <ross@visual.com>)
|
|
|
|
|
|
|
|
Add plugin name to the "hooks" data structure, so we can log plugin
|
|
|
|
module had an error when we run a hook.
|
|
|
|
|
2002-09-22 09:04:13 +02:00
|
|
|
Make klez filter run for mails bigger than 220KB; they are sometimes
|
|
|
|
bigger than that.
|
|
|
|
|
2002-09-20 20:55:41 +02:00
|
|
|
Avoid "use of uninitialized variable" warning when the "MAIL" or the
|
|
|
|
"RCPT" command is executed without a parameter.
|
|
|
|
|
|
|
|
Compatibility with perl 5.5.3.
|
|
|
|
|
2002-09-12 09:31:56 +02:00
|
|
|
Fix "Could not print" error message in the TcpServer object. (Thanks
|
|
|
|
to Ross Mueller <ross@visual.com>)
|
|
|
|
|
2002-09-10 15:36:58 +02:00
|
|
|
dnsbl plugin queues lookups in the background upon connect but
|
|
|
|
doesn't block for the results until they are needed, greatly
|
|
|
|
speeding up connection times. Also fix a typo in the dnsbl plugin
|
|
|
|
so it'll actually work(!).
|
|
|
|
|
2002-09-10 13:00:31 +02:00
|
|
|
check_badmailfrom and check_badrcptto plugins (Jim Winstead
|
|
|
|
<jimw@trainedmonkey.com>)
|
|
|
|
|
2002-09-10 11:49:35 +02:00
|
|
|
Better RFC conformance. (Reset transactions after the DATA command and
|
|
|
|
when the MAIL command is being done)
|
|
|
|
|
2002-07-04 03:45:19 +02:00
|
|
|
|
2002-10-14 03:59:04 +02:00
|
|
|
0.10 - 2002/09/08
|
2002-09-08 16:24:25 +02:00
|
|
|
|
2002-07-15 14:19:29 +02:00
|
|
|
New object oriented internals
|
|
|
|
|
|
|
|
Very flexible plugin
|
|
|
|
|
|
|
|
All functionality not core to SMTP moved to plugins
|
|
|
|
|
2002-09-08 12:07:34 +02:00
|
|
|
Can accept mails as large as your file system will allow (instead of
|
|
|
|
up to as much memory you would allow qpsmtpd to eat).
|
|
|
|
|
|
|
|
2002/09/08
|
|
|
|
Add klez_filter plugin
|
|
|
|
|
|
|
|
Support more return codes for data_post
|
|
|
|
|
|
|
|
Document data_post
|
|
|
|
|
|
|
|
Add plugin name to the log entries when plugins use log()
|
|
|
|
|
|
|
|
Add plugin_name method to the default plugin object.
|
|
|
|
|
|
|
|
Improve error handling in the spamassassin plugin
|
|
|
|
|
2002-07-15 14:19:29 +02:00
|
|
|
|
2002-08-06 14:27:35 +02:00
|
|
|
2002/08/06
|
|
|
|
Spool message bodies to a tmp file so we can support HUGE messages
|
|
|
|
|
|
|
|
API to read the message body (undocumented, subject to change)
|
|
|
|
|
|
|
|
data_post hook (undocumented)
|
|
|
|
|
|
|
|
SpamAssassin plugin (connects to spamd on localhost), see
|
|
|
|
plugins/spamassassin
|
|
|
|
|
|
|
|
|
2002-07-15 14:19:29 +02:00
|
|
|
2002/07/15
|
|
|
|
DNS RBL and RHSBL support via plugins.
|
|
|
|
|
|
|
|
More hooks.
|
|
|
|
|
2002-07-04 03:45:19 +02:00
|
|
|
2002/07/03
|
2002-09-08 12:07:34 +02:00
|
|
|
First (non functional) version of the new object oriented mail engine (0.10).
|
2002-07-04 03:45:19 +02:00
|
|
|
|
|
|
|
|
2002-07-15 14:19:29 +02:00
|
|
|
Changes on the old v0.0x branch:
|
|
|
|
|
2002-05-10 01:47:20 +02:00
|
|
|
2002/05/09
|
|
|
|
Klez filter (thanks to Robert Spier)
|
|
|
|
|
2002-04-21 05:21:23 +02:00
|
|
|
2002/04/20
|
2002-04-21 05:28:20 +02:00
|
|
|
Bumped version number to 0.07
|
|
|
|
|
2002-04-21 05:21:23 +02:00
|
|
|
Support comments in configuration files (prefix the line with #)
|
|
|
|
|
|
|
|
Support RELAYCLIENT like qmail-smtpd (thanks to Marius Kjeldahl
|
2002-04-21 05:34:13 +02:00
|
|
|
<marius@kjeldahl.net> and Zukka Zitting <jukka.zitting@iki.fi>)
|
2002-04-21 05:21:23 +02:00
|
|
|
|
2002-04-21 05:28:20 +02:00
|
|
|
If the connection fails while in DATA we would just accept the
|
|
|
|
message. Ouch! Thanks to Devin Carraway <qpsmtpd@devin.com> for the
|
|
|
|
patch.
|
|
|
|
|
2002-04-21 05:21:23 +02:00
|
|
|
|
2002-01-27 02:23:42 +01:00
|
|
|
2002/01/26
|
|
|
|
Allow [1.2.3.4] for the hostname when checking if the dns resolves
|
|
|
|
|
2002-01-21 13:58:05 +01:00
|
|
|
|
2002-01-21 15:24:32 +01:00
|
|
|
2002/01/21
|
2002-01-21 14:55:51 +01:00
|
|
|
assorted fixes; getting dnsbl's to actually work
|
|
|
|
|
|
|
|
fixing the maximum message size (databytes) stuff (thanks for the
|
|
|
|
spot to Andrew Pam <xanni@glasswings.com.au>)
|
|
|
|
|
2002-01-21 15:24:32 +01:00
|
|
|
support and enable taint checking (thanks to Devin Carraway
|
|
|
|
<qpsmtpd@devin.com>)
|
|
|
|
|
2002-01-22 04:53:48 +01:00
|
|
|
Make the MAIL FROM host dns check configurable. (thanks to Devin
|
|
|
|
Carraway).
|
|
|
|
|
|
|
|
Add more documentation to the README file.
|
|
|
|
|
2002-01-21 14:55:51 +01:00
|
|
|
|