Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 832 lines (505 sloc) 27.319 kB
e4f0cb0 Inside the main loop skip the sleep when children have exited. Instea…
Radu Greab authored
1 prefork: the children pool size was sometimes not adjusted immediately
2 after the exit of children (reported by Diego d'Ambra)
3
18d1b9f Detach and daemonize only after reading the configuration and loading…
Diego d'Ambra authored
4 async, prefork: detach and daemonize only after reading the configuration
5 and loading the plugins, to give the init scripts a chance to detect
6 failed startups due to broken configuration or plugins (Diego d'Ambra)
7
0d96de4 Close the SSL socket created by duplicating the connection file descr…
Radu Greab authored
8 plugins/tls: close the file descriptor for the SSL socket
9
6ad7e24 Set the Return-Path header when queuing into maildir mailboxes.
Radu Greab authored
10 Set the Return-Path header when queuing into maildir mailboxes.
11
f88c8ab @vetinari update Changes: SIGHUP reload for prefork/forkserver
vetinari authored
12 prefork, forkserver: restart on SIGHUP (reload all modules, with register() /
13 init() phase).
14
4c93c85 Create async version of dns_whitelist_soft, rhsbl and uribl plugins.
Radu Greab authored
15 Create async version of dns_whitelist_soft, rhsbl and uribl plugins.
16
4159df8 @vetinari update Changes: async: pre/post conn hooks, all: conn->reset
vetinari authored
17 async: added pre- and post-connection hooks
18
19 Qpsmtpd::Connection->notes are now reset on end of connection (currently
20 not in Apache). The workaround plugins/tls for -prefork is no longer
21 needed now.
22
b173471 Update with my changes
Radu Greab authored
23 async: Dereference the DATA deny message before sending it to the client
24
25 Change async/require_resolvable_fromhost to match the logic of
26 the non-async version and other MTAs
27
28 async: Handle End-of-data marker split across packets
29
30 Allow plugins to use the post-fork hook
41d00e8 @abh Add qpsmtpd-prefork to the install targets (Robin Bowes)
abh authored
31
32 Add qpsmtpd-prefork to the install targets (Robin Bowes)
33
bc5fd11 @abh bump version to 0.43rc1; update Changes
abh authored
34 0.43 - February 5, 2008
35
36 (This release was mostly done by Matt Sergeant and Hanno Hecker)
37
38 Allow qpsmtpd-async to detatch (Chris Lewis).
39
40 plugins/tls: work-around for failed connections in -prefork after
41 STARTTLS connection (Stefan Priebe, Hanno Hecker)
42
43 Make the cleanup socket location parameter in the postfix plugin work
44 (ulr...@topfen.net)
45
46 Implement config caching properly (for async).
47
48 Hook/plugin caching
49
50 Remove the connection / transaction id feature (never released)
51
52 Option to clamdscan to scan all messages, even if there are no attachments
53
54 add new clamd_user parameter that sets the user we pass to clamd
55
56 async: Support for HUPing the server to clear the cache. Wake-one child support.
57
58 async: Don't listen for readiness in the parent any more - breaks
59 under high load.
60
61 Made user() and host() setters as well as getters in
62 Qpsmtpd::Address. Suggested by mpelzer@gmail.com.
63
64 Pluggable "help", based on patch by Jose Luis Martinez.
65
66 Updated plugin documentation.
67
68
69 0.42 - October 1, 2007 - Never released
ce9e0cb @vetinari Changes file: add hook_help, add config caching for qpsmtpd-async
vetinari authored
70
67ffd9f @vetinari Update Changes file: add hook_noop()
vetinari authored
71 Pluggable hook "noop"
72
ce9e0cb @vetinari Changes file: add hook_help, add config caching for qpsmtpd-async
vetinari authored
73 Pluggable hook "help" (based on patch by Jose Luis Martinez)
74
75 async: better config caching (of flat files, not results from hook_config
76 or .cdb files), send SIGHUP to clear cache
c2f0067 @abh prepare 0.41
abh authored
77
78 New docs/plugins.pod documentation!
79
4752036 @abh Add X-Spam-Level header in spamassassin plugin (idea from Werner Fleck)
abh authored
80 Add X-Spam-Level header in spamassassin plugin (idea from Werner Fleck)
81
c2f0067 @abh prepare 0.41
abh authored
82 prefork: support two or more parallel running instances (on different
83 ports; the first 4 digits of the port number must be different for each
84 instance - see IPC::Sharable).
85
1d4eca3 @abh update changes and manifest
abh authored
86 prefork: Fix sporadic bug showing itself after millions of
87 connections (S. Priebe)
88
c0fedf9 @abh Remove the auth/authnull sample plugin (there are plenty proper exa…
abh authored
89 Remove the auth/authnull sample plugin (there are plenty proper examples now
90 so we don't have to include this insecure plugin)
91
4be7bb4 @abh POD syntax cleanup (Steve Kemp)
abh authored
92 POD syntax cleanup (Steve Kemp)
93
c2f0067 @abh prepare 0.41
abh authored
94 Fix Qpsmtpd::Plugins::isa_plugin() with multiple plugin dirs (Gavin Carr)
95
1d4eca3 @abh update changes and manifest
abh authored
96 Fix false positives in check_for_hi_virus plugin (Jerry D. Hedden)
97
86c0d8d @abh Make connection->local_ip available from the Apache transport (Peter …
abh authored
98 Make connection->local_ip available from the Apache transport (Peter Eisch)
99
c2f0067 @abh prepare 0.41
abh authored
100 Support checking for early talkers at DATA
101
102 Make the documented DENY{,SOFT}_DISCONNECT work in the data-post hook
103
104 Allow buffered writes in Postfix plugin (from Joe Schaefer)
105
2361ca6 @abh Cleanup spamassassin plugin code a little
abh authored
106 Cleanup spamassassin plugin code a little
107
c2f0067 @abh prepare 0.41
abh authored
108 Fix bug which breaks queue plugins that implement continuations
109
b141eed @abh Fix false positives in check_for_hi_virus plugin (Jerry D. Hedden)
abh authored
110 Fix false positives in check_for_hi_virus plugin (Jerry D. Hedden)
111
c2f0067 @abh prepare 0.41
abh authored
112 Unrecognized command fix (issue #16)
113
114 Updated documentation (Apache 2.2, more)
115
85f0d91 @aqua Merge uribl plugin
aqua authored
116 Add uribl plugin (Devin Carraway)
86c0d8d @abh Make connection->local_ip available from the Apache transport (Peter …
abh authored
117
2ef46f4 @abh change version numbers to 0.40
abh authored
118 0.40 - June 11, 2007
5aeb37f @abh prepare 0.40_01 for tagging
abh authored
119
120 Add async server - uses epoll/kqueue/poll where available. (Matt Sergeant)
121
122 Add preforking qpsmtp server (Lars Roland)
123
124 Support SMTPS (John Peacock)
125
126 Support "module" plugins ("My::Plugin" in the config/plugins file)
127
128 Added IPv6 support. (Mike Williams)
e31d3e3 @abh documentation typo in clamav, update changes file a bit
abh authored
129
313f285 @abh Added tests for the rcpt_ok plugin (Guy Hulbert, issue #4)
abh authored
130 Added tests for the rcpt_ok plugin (Guy Hulbert, issue #4)
131
0a1cabf @abh Fix logging when dropping a mail due to size (m. allan noah /
abh authored
132 Fix logging when dropping a mail due to size (m. allan noah /
133 kitno455, issue #13)
51287f0 Updated to 0.33 release
Matt Sergeant authored
134
135 Don't drop privileges in forkserver if we don't have to.
0a1cabf @abh Fix logging when dropping a mail due to size (m. allan noah /
abh authored
136
5c9e3d6 @abh greylisting: fix db_dir configuration option so it actually works
abh authored
137 greylisting: fix db_dir configuration option so it actually works
138 (kitno455, issue #6)
139
140 Correct header parsing of "space only" lines (Joerg Meyer, issue #11)
e6ee4c4 @abh Correct header parsing of "space only" lines (Joerg Meyer)
abh authored
141
e7d6426 @abh Update the sample configuration to use zen.spamhaus.org
abh authored
142 Update the sample configuration to use zen.spamhaus.org
143
cab7466 @abh Make the badmailfrom plugin support (optional) rejection messages a…
abh authored
144 Make the badmailfrom plugin support (optional) rejection messages after the
145 rejection pattern (Robin Hugh Johnson)
146
ad541f6 @vetinari Qpsmtpd::Transaction: add body_fh(), body_length() and data_size(),
vetinari authored
147 The ill-named $transaction->body_size() is depreceated now, use
148 $transaction->data_size() instead. Check your logs for LOGWARN messages
149 about "body_size" and fix your plugins. (Hanno Hecker)
51287f0 Updated to 0.33 release
Matt Sergeant authored
150
151 Support pluggable Received headers (Matt Sergeant)
152
153 RFC3848 support for ESMTP. (Nick Leverton)
ad541f6 @vetinari Qpsmtpd::Transaction: add body_fh(), body_length() and data_size(),
vetinari authored
154
51287f0 Updated to 0.33 release
Matt Sergeant authored
155 Updated the list of DNSBLs in the default config
156
b7f4684 Fixup qpsmtpd-prefork, et al, to correctly load Constants.
John Peacock authored
157 Instead of failing with cryptic message, ignore lines in config/plugins
158 for uninstalled plugins. (John Peacock)
51287f0 Updated to 0.33 release
Matt Sergeant authored
159
160 Clean up some of the logging (hjp)
161
b7f4684 Fixup qpsmtpd-prefork, et al, to correctly load Constants.
John Peacock authored
162 Patch to prefork code to make it run (Leonardo Helman). Add --pretty
163 option to qpsmtpd-prefork to change $0 for child processes (John Peacock).
164
af5f025 @aqua (Working) support for multiple plugin directories, with a fix from Nick
aqua authored
165 Add support for multiple plugin directories, whose paths are given by the
166 'plugin_dirs' configuration. (Devin Carraway, Nick Leverton)
167
b52b7b5 @aqua Support configured greylisting db location, and look in the distro-fr…
aqua authored
168 Greylisting DBs may now be stored in a configured location, and are
169 looked for by default in /var/lib/qpsmtpd/greylisting in addition to the
170 previous locations relative to the qpsmtpd binary. (Devin Carraway)
171
0786b60 Script to generate Qpsmtpd::Postfix::Constants from the Postfix source.
John Peacock authored
172 New Qpsmtpd::Postfix::Constants to encapsulate all of the current return
173 codes from Postfix, plus script to generate it. (Hanno Hecker)
174
da93a9c Add log socket support to syslog plugin. (Peter Eisch)
John Peacock authored
175 Add ability to specific socket for syslog (Peter Eisch)
176
d218bfe Correctly handle the case where a given AUTH mechanism is requested by a
John Peacock authored
177 Do the right thing for unimplemented AUTH mechanisms (Brian Szymanski)
178
3837fab Ask and ye shall receive
John Peacock authored
179 relay_only plugin for smart relay host. (John Peacock)
00a7302 @abh r4522@g5: ask | 2006-02-27 13:41:42 -0800
abh authored
180
84b7363 @abh r3826@embla: ask | 2006-07-09 02:34:33 -0700
abh authored
181 Enhance the spamassassin plugin to support connecting to a remote
182 spamd process (Kjetil Kjernsmo).
51287f0 Updated to 0.33 release
Matt Sergeant authored
183
184 Add domainkeys plugin (John Peacock)
84b7363 @abh r3826@embla: ask | 2006-07-09 02:34:33 -0700
abh authored
185
25d9fe8 Two patches from Robin Johnson:
John Peacock authored
186 Add SSL encryption method to header to mirror other qmail/SSL patches.
187 Add tls_before_auth to suppress AUTH unless TLS has already been
188 established (Robin Johnson).
189
b3bc12e @abh r3599@embla: ask | 2006-06-15 17:15:06 -0700
abh authored
190 Fix "help" command when there's no "smtpgreeting" configured (the default)
191 (Thanks to Thomas Ogrisegg)
51287f0 Updated to 0.33 release
Matt Sergeant authored
192
7c6cbdd Move the Qpsmtpd::Auth POD to a top-level README to be more obvious.
John Peacock authored
193 Move the Qpsmtpd::Auth POD to a top-level README to be more obvious.
194
8fcb461 Add Qpsmtpd::Command to gather all parsing logic in one place (Hanno
John Peacock authored
195 Add Qpsmtpd::Command to gather all parsing logic in one place (Hanno
196 Hecker)
51287f0 Updated to 0.33 release
Matt Sergeant authored
197
198 Support multiline responses from plugins (Charlie Brady)
199
200 Added queue_pre and queue_post hooks (John Peacock)
201
202 Implement multiple host/port listening for qpsmtpd-forkserver (Devin
203 Carraway)
a07ed2c @aqua Oops. Don't emit a newline between header and body when queueing ove…
aqua authored
204
8fcb461 Add Qpsmtpd::Command to gather all parsing logic in one place (Hanno
John Peacock authored
205 Fix a spurious newline at the start of messages queued via exim (Devin
206 Carraway)
00a7302 @abh r4522@g5: ask | 2006-02-27 13:41:42 -0800
abh authored
207
8fcb461 Add Qpsmtpd::Command to gather all parsing logic in one place (Hanno
John Peacock authored
208 Make the clamdscan plugin temporarily deny mail if if can't talk to clamd
209 (Filippo Carletti)
210
211 Improve Qpsmtpd::Transaction documentation (Fred Moyer)
3f8ab06 @abh r4523@g5: ask | 2006-02-27 13:42:54 -0800
abh authored
212
00a7302 @abh r4522@g5: ask | 2006-02-27 13:41:42 -0800
abh authored
213
af79e2f @abh r4516@g5: ask | 2006-02-26 05:02:30 -0800
abh authored
214 0.32 - 2006/02/26
ffd453d @aqua Import file & syslog log plugins. File plugins include strftime(3) f…
aqua authored
215
216 Add logging/file plugin for simple logging to a file (Devin Carraway and
217 Peter J. Holzer).
218
219 Add logging/syslog plugin for logging via the syslog facility (Devin
220 Carrway)
221
3361b73 Document changes to branch in preparation for releasing 0.32
John Peacock authored
222 Add Qpsmtpd::DSN to return extended SMTP status codes from RFC-1893 and
223 patch existing plugins to use it when appropriate (Hanno Hecker).
224
225 Add plugins/tls_cert to generate appropriately shaped self-signed certs for
226 TLS support. Add explicit use of CA used to sign cert. Abstract clone()ing
d8d7b7a @abh r4445@g5: ask | 2006-02-17 11:00:12 -0800
abh authored
227 of connection information when switching to TLS. Fix the AUTH code to work
3361b73 Document changes to branch in preparation for releasing 0.32
John Peacock authored
228 correctly with TLS.
229
230 Add hosts_allow plugin to support pre- and post-connection hooks as well
231 as move --max-from-ip tests out of core (Hanno Hecker).
232
233 Improve postfix-queue plugin to support the known processing flags (Hanno
234 Hecker).
235
d8d7b7a @abh r4445@g5: ask | 2006-02-17 11:00:12 -0800
abh authored
236 Drop root privileges before loading plugins, rather than after.
237
238 A few fixes to the clamdscan plugin (Dave Rolsky)
239
240 Various minor fixes and improvements
241
242
27975f5 @abh r6471@embla: ask | 2005-11-18 01:37:48 -0800
abh authored
243 0.31.1 - 2005/11/18
244
245 Add missing files to the distribution, oops... (Thanks Budi Ang!)
246 (exim plugin, tls plugin, various sample configuration files)
247
248
440068c @abh Update Changes file
abh authored
249 0.31 - 2005/11/16
250
251 STARTTLS support (see plugins/tls)
252
253 Added queue/exim-bsmtp plugin to spool accepted mail into an Exim
254 backend via BSMTP. (Devin Carraway)
255
256 New plugin inheritance system, see the bottom of README.plugins for
257 more information
df5a2e9 @abh bump version to 0.31-dev
abh authored
258
1fbfe51 @aqua Implement listening on multiple local addresses simultaneously, if sp…
aqua authored
259 qpsmtpd-forkserver: --listen-address may now be given more than once, to
260 request listening on multiple local addresses (Devin Carraway)
4f0c4d9 @abh The unrecognized_command hook now understands the DENY_DISCONNECT return
abh authored
261 (also: no more signal problems making qpsmtpd-forkserver crash/loop
262 when forking).
1fbfe51 @aqua Implement listening on multiple local addresses simultaneously, if sp…
aqua authored
263
03f8c0d @abh
abh authored
264 qpsmtpd-forkserver: add an option for writing a PID file (pjh)
265
266 qpsmtpd-forkserver: set auxiliary groups (this is needed for the
267 postfix backend, which expects to have write permission to a fifo
268 which usually belongs to group postdrop). (pjh)
269
81f71b4 @aqua Mention --detach in changelog
aqua authored
270 qpsmtpd-forkserver: if -d or --detach is given on the commandline,
271 forkserver will detach from the controlling terminal and daemonize
272 itself (Devin Carraway)
273
440068c @abh Update Changes file
abh authored
274 replace some fun smtp comments with boring ones.
275
276 example patterns for badrcptto plugin - Gordon Rowell
277
278 Extend require_resolvable_fromhost to include a configurable list of
279 "impossible" addresses to combat spammer forging. (Hanno Hecker)
280
281 Use qmail/control/smtpdgreeting if it exists, otherwise
282 show the original qpsmtpd greeting (with version information).
283
284 Apply slight variation on patch from Peter Holzer to allow specification of
285 an explicit $QPSMTPD_CONFIG variable to specify where the config lives,
286 overriding $QMAIL/control and /var/qmail/control if set. The usual
287 "last location with the file wins" rule still applies.
288
289 Refactor Qpsmtpd::Address
290
df5a2e9 @abh bump version to 0.31-dev
abh authored
291 when disconncting with a temporary failure, return 421 rather than
292 450 or 451. (Peter J. Holzer)
293
254b4fd @abh return 500 rather than 521 for DENY in the unrecognized_command hook
abh authored
294 The unrecognized_command hook now uses DENY_DISCONNECT return
295 for disconnecting the user.
4f0c4d9 @abh The unrecognized_command hook now understands the DENY_DISCONNECT return
abh authored
296
deb3380 @aqua Apply slight variation on patch from Peter Holzer to allow specificat…
aqua authored
297 If the environment variable $QPSMTPD_CONFIG is set, qpsmtpd will look
298 for its config files in the directory given therein, in addition to (and
299 in preference to) other locations. (Peter J. Holzer)
300
4f0c4d9 @abh The unrecognized_command hook now understands the DENY_DISCONNECT return
abh authored
301 Updated documentation
302
440068c @abh Update Changes file
abh authored
303 Various minor cleanups
304
df5a2e9 @abh bump version to 0.31-dev
abh authored
305
9eda52c @abh update changes file for 0.30.
abh authored
306 0.30 - 2005/07/05
4394fa0 @rspier Support qmail-smtpd's timeoutsmtpd config file
rspier authored
307
6ca4bc3 @abh Fix off-by-one line numbers in warnings from plugins (thanks to
abh authored
308 Add plugable logging support include sample plugin which replicates
309 the existing core code. Add OK hook.
310
311 Add new logging plugin, logging/adaptive, which logs at different
312 levels depending on whether the message was accepted/rejected.
313
314 (See README.logging for information about the new logging system by
315 John Peacock)
316
317 plugins/auth/auth_ldap_bind - New plugin to authenticate against an
318 LDAP database. Thanks to Elliot Foster <elliotf@gratuitous.net>
319
9eda52c @abh update changes file for 0.30.
abh authored
320 new plugin: plugins/auth/auth_flat_file - flat file auth plugin
321
322 new plugin: plugins/auth/auth_cvm_unix_local - Only DENY if the
323 credentials were accepted but incorrect (bad password?). Interfaces
324 with Bruce Guenther's Credential Validation Module (CVM)
6ca4bc3 @abh Fix off-by-one line numbers in warnings from plugins (thanks to
abh authored
325
326 Revamp Qpsmtpd::Constants so it is possible to retrieve the text
327 representation from the numeric (for logging purposes).
328
9eda52c @abh update changes file for 0.30.
abh authored
329 new plugin: plugins/check_badrcptto_patterns - Match bad RCPTO
330 address with regex (Gordon Rowell)
331
332 new plugin: plugins/check_norelay - Carve out holes from larger
333 relay blocks (Also Gordon Rowell)
334
335 new plugin: plugins/virus/sophie - Uses SOPHOS Antivirus via Sophie
336 resident daemon.
337
6ca4bc3 @abh Fix off-by-one line numbers in warnings from plugins (thanks to
abh authored
338 Store mail in memory up to a certain threshold (default 10k).
339
340 Remove needless restriction on temp_file() to allow the spool
341 directory path to include dots (as in ../)
342
343 Fix off-by-one line numbers in warnings from plugins (thanks to
344 Brian Grossman).
345
aef508c @abh Don't check the HELO host for rfc-ignorant compliance (maybe this sho…
abh authored
346 Don't check the HELO host for rfc-ignorant compliance
6ca4bc3 @abh Fix off-by-one line numbers in warnings from plugins (thanks to
abh authored
347
348 body_write patches from Brian Grossman
349
350 Fix for corruption problem under Apache
aef508c @abh Don't check the HELO host for rfc-ignorant compliance (maybe this sho…
abh authored
351
9eda52c @abh update changes file for 0.30.
abh authored
352 Update Apache::Qpsmtpd to work with the latest Apache/mod_perl 2.0
353 API. Fix various bucket issues.
354
355 Replace $ENV{RELAYCLIENT} with $connection->relay_client in last plugin.
356
2847144 @aqua Fix typo in forkserver commandline help
aqua authored
357 Fix typo in qpsmtpd-forkserver commandline help
aef508c @abh Don't check the HELO host for rfc-ignorant compliance (maybe this sho…
abh authored
358
e31d3e3 @abh documentation typo in clamav, update changes file a bit
abh authored
359
db546fe @abh prepare 0.29
abh authored
360 0.29 - 2005/03/03
40a1f2f @abh add Gavin's greylisting plugin
abh authored
361
1679397 * Changes
John Peacock authored
362 Store entire incoming message in spool file (so that scanners can read
363 the complete message) and ignore old headers before adding lines and
364 queuing for delivery.
365
366 New anti-virus scanners: hbedv (Hanno Hecker), bitdefender, and clamdscan
367 (John Peacock). Update clamav plugin to directly scan the spool file.
368
bb36c60 Abstracted spool_dir creation and added temp_file() and temp_dir() su…
John Peacock authored
369 New temp_file() and temp_dir() methods; when used by plugins, they create
370 a filename or directory which will last only as long as the current
371 transaction. Also created a spool_dir() method which checks/creates the
372 spool_dir when the application starts up. All three methods are also
373 available in the base class where the temp_* objects are not automatically
374 limited to the transaction's lifetime. (John Peacock)
375
40a1f2f @abh add Gavin's greylisting plugin
abh authored
376 Added Gavin Carr's greylisting plugin
377
378 Renamed config/ to config.sample/
87323ed @abh Mail::Address does RFC822 addresses, we need SMTP addresses.
abh authored
379
c840a1d Changes by jpeacock@cpan.org (John Peacock)
John Peacock authored
380 Qpsmtpd::Auth - document $mechanism option, improve fallback to generic
381 hooks, document that auth-login works now, stash auth user and method for
382 later use by Qpsmtpd::SMTP to generate authentication header.
383 (Michael Toren)
384
385 Qpsmtpd::SMTP - "MAIL FROM: <#@[]>" now works like qmail (null sender),
386 add LOGIN to default auth mechanisms, display auth user and method in
387 Received: line instead of X-Qpsmtpd-Auth header.
388 (Michael Toren)
389
390 check_badmailfromto - NEW PLUGIN - like check_badmailfrom except matches
391 both FROM: and TO:, and effectively makes it seem like the recipient
392 no longer exists for that sender (great for harassment cases).
393 (John Peacock)
394
395 check_earlytalker and require_resolvable_fromhost - short circuit test if
396 whitelistclient is set. (Michael Toren)
397
398 check_badmailfrom - Do not say why a given message is denied.
399 (Michael Toren)
400
401 dns_whitelist_soft - NEW PLUGIN - dns-based whitelist override for
402 other qpsmtpd plugins. Add suuport for whitelisthost to dnsbl.
403 (John Peacock)
404
405 auth/auth_vpopmail_sql - Support CRAM-MD5 (requires clear_passwd)
406 (John Peacock)
407
408 plugins/queue/qmail-queue - Added a timestamp and the qmail-queue qp
409 identifier to the "Queued!" message, for compatibility with qmail-smtpd
410 (Michael Toren)
411
4394fa0 @rspier Support qmail-smtpd's timeoutsmtpd config file
rspier authored
412 Support qmail-smtpd's timeoutsmtpd config file
413
8c390be @abh moved config to config.sample
abh authored
414 Many improvements to the forking server (qpsmtpd-forkserver)
415
416 Plugin testing framework (Matt)
417
418 Added Apache::Qpsmtpd (Apache/mod_perl 2.0 connection handler)
419
420 Allow for multiple instances of a single plugin by using plugin:0
421 notation (Robert)
422
423 Fix CDB support so the server can work without it
424
425 VRFY plugin support (Robert Spier)
426
427 Added Makefile.PL etc to make it easier to build a package (Matt).
87323ed @abh Mail::Address does RFC822 addresses, we need SMTP addresses.
abh authored
428
f945e75 Some of my changes
Matt Sergeant authored
429 Added Apache::Qpsmtpd to the distro.
430
431 Make the distro follow the CPAN module style (Makefile.PL, MANIFEST, etc)
432
0a77877 @abh Make the rhsbl plugin do DNS lookups in the background. (Mark Powell)
abh authored
433 Make the rhsbl plugin do DNS lookups in the background. (Mark Powell)
434
2ab4613 @abh Fix warning in count_unrecognized_commands plugin (thanks to spaze
abh authored
435 Fix warning in count_unrecognized_commands plugin (thanks to spaze
436 and Roger Walker)
437
4394fa0 @rspier Support qmail-smtpd's timeoutsmtpd config file
rspier authored
438 Improve error messages from the Postfix module (Erik I. Bolsø,
e275340 @abh Improve error messages from the Postfix module (Erik I. Bols�,
abh authored
439 <knan at mo.himolde.no>)
440
8c390be @abh moved config to config.sample
abh authored
441 make the maildir plugin record who the message was to (with a bit of improvements
442 this could make a decent local delivery plugin)
443
444 Pass extra "stuff" to HELO/EHLO callbacks (to make it easier to
445 support SMTP extensions)
446
447 Renamed the *HARD return codes to DENY_DISCONNECT and
448 DENYSOFT_DISCONNECT (DENYSOFT_DISCONNECT is new)
449
87323ed @abh Mail::Address does RFC822 addresses, we need SMTP addresses.
abh authored
450 Mail::Address does RFC822 addresses, we need SMTP addresses.
451 Replace Mail::Address with Peter J. Holzer's Qpsmtpd::Address module.
452
8c390be @abh moved config to config.sample
abh authored
453 Don't keep adding ip addresses to the process status line ($0) when
454 running under PPerl.
455
456 Include the date and time the session started in the process status line.
457
96ec52d Add "plugin/virus/uvscan" - McAfee commandline virus scanner
John Peacock authored
458 Add "plugin/virus/uvscan" - McAfee commandline virus scanner
459
cbb7b5d @aqua Note logging changes to TcpServer.pm, makeover to check_earlytalker
aqua authored
460 Inbound connections logged as soon as the remote host address is known
461 when running under tcpserver.
462
8c390be @abh moved config to config.sample
abh authored
463 Add Qpsmtpd::Auth (authentication handlers! See plugins/auth/) (John Peacock)
464
465 Add a plugin hook for the DATA command
466
cbb7b5d @aqua Note logging changes to TcpServer.pm, makeover to check_earlytalker
aqua authored
467 check_earlytalker -
468 + optionally react to an earlytalker by denying all MAIL-FROM commands
469 rather than issuing a 4xx/5xx greeting and disconnecting. (Mark
470 Powell)
471 + initial "awkward silence" period now configurable (Mark Powell)
472 + DENY/DENYSOFT now configurable
87323ed @abh Mail::Address does RFC822 addresses, we need SMTP addresses.
abh authored
473
f92e99b * plugins/check_relay
John Peacock authored
474 Move relay flag to connection object (John Peacock):
475 + add relay_client() method to Connection.pm
b9646ee Remove the $transaction->relaying() code completely
John Peacock authored
476 + Remove $transaction->relaying() completely (due to popular demand)
f92e99b * plugins/check_relay
John Peacock authored
477
478 Split check_relay plugin into two plugins (John Peacock):
479 + check_relay now fires on connect and sets relay_client() flag
480 + rcpt_ok runs last of rcpt plugins and performs final OK/DENY
481 + change default config/plugins to reflect new order
482
a9f0538 @abh Don't keep adding ip addresses to the process status line ($0) when…
abh authored
483 0.28 - 2004/06/05
484
485 Don't keep adding ip addresses to the process status line ($0) when running under PPerl.
486
487 Include the date and time the session started in the process status line.
f59721e @abh start on 0.28-dev ...
abh authored
488
d1599b3 @abh maildir queue plugin
abh authored
489 Added a "queue/maildir" plugin for writing incoming mails to a maildir.
bbc3667 @abh + Create temp files with permissions 0600 (thanks to Robert James Ka…
abh authored
490
491 Create temp files with permissions 0600 (thanks to Robert James Kaes again)
492
493 Fix warning in check_badrcptto plugin (Thanks to Robert James Kaes)
494
8a0cca8 @abh 2004 license
abh authored
495 Proper "Log levels" with a configuration option
f59721e @abh start on 0.28-dev ...
abh authored
496
8a0cca8 @abh 2004 license
abh authored
497 $Include feature in config/plugins
498
499
d1599b3 @abh maildir queue plugin
abh authored
500 0.27.1 - 2004/03/11
5c972e5 @abh SpamAssassin plugin Outlook compatibility fix (Thanks to Gergely Risko)
abh authored
501
502 SpamAssassin plugin Outlook compatibility fix (Thanks to Gergely Risko)
503
504
8a0cca8 @abh 2004 license
abh authored
505 0.27 - 2004/03/10
53efac2 @abh Use $ENV{QMAIL} to override /var/qmail for where to find the
abh authored
506
b005a30 @abh spamd_socket support -- thanks to John Peacock
abh authored
507 Support for unix sockets in the spamassassin plugin (requires SA
508 2.60 or higher). Thanks to John Peacock!
509
964242f @abh Modified the dnsbl plugin to better support both A and TXT records and
abh authored
510 Modified the dnsbl plugin to better support both A and TXT records and
511 support all of the RBLSMTPD functionality. (Thanks to Mark Powell)
512
22523ea @abh reject bare carriage-returns in addition to the bare line-feeds
abh authored
513 reject bare carriage-returns in addition to the bare line-feeds
514 (based on a patch from Robert James Kaes, thanks!)
515
87802c4 @abh Bugfix to the count_unrecognized_commands plugin so it works
abh authored
516 Bugfix to the count_unrecognized_commands plugin so it works
517 under PPerl (it wasn't resetting the count properly).
518
9523d55 @abh reset_transaction is called after disconnect plugins are called so
abh authored
519 reset_transaction is called after disconnect plugins are called so
520 the Transaction objects DESTROY method is called. (Thanks to Robert
521 James Kaes <rjkaes@flarenet.com>)
522
03a53ba @abh + Made the SpamAssassin plugin work with SA 2.6+ (thanks to numerous
abh authored
523 Made the SpamAssassin plugin work with SA 2.6+ (thanks to numerous
524 contributors, thanks everyone!). Note that for now it's not
525 including the Spam: headers with the score explained. For that use
526 the spamassassin_spamc plugin from http://projects.bluefeet.net/
527 (for now).
528
5abf363 @abh Added Postfix queue plugin thanks to Peter J Holzer!
abh authored
529 Added Postfix queue plugin thanks to Peter J Holzer!
530
72a4a02 @abh exit calls ...
abh authored
531 Took out the last "exit" call from the SMTP object; the "transport"
532 module ("TcpServer", "SelectServer") needs to do the right thing in
533 it's disconnect method.
534
773ca08 @abh + Update the SPF plugin (Philip Gladstone, philip@gladstonefamily.net):
abh authored
535 Update the SPF plugin (Philip Gladstone, philip@gladstonefamily.net):
536 * Integrated with Mail::SPF::Query 1.991
537 * Don't do SPF processing when you are acting as a relay system
538 * Remove the MX changes as they are now inside Mail::SPF::Query
539
2a76892 @abh don't use Data::Dumper
abh authored
540 Take out Data::Dumper to save a few bytes of memory
541
891778b @abh Say Received: ... via ESMTP instead of via SMTP when the client
abh authored
542 Say Received: ... via ESMTP instead of via SMTP when the client
543 speaks ESMTP. (Hoping this can be a useful SpamAssassin rule).
544
545 Take out the X-SMTPD header.
546
547 Add pod documentation and sanity checking of the config to
548 check_badmailfrom
549
53efac2 @abh Use $ENV{QMAIL} to override /var/qmail for where to find the
abh authored
550 Use $ENV{QMAIL} to override /var/qmail for where to find the
551 control/ directory.
552
553 Enable "check_earlytalker" in the default plugins config
554
a1cf0ae Milter plugin
Matt Sergeant authored
555 Added a milter plugin to allow use of sendmail milters
556
fe550b6 Big chunk-O changes
Matt Sergeant authored
557 Don't store the Qpsmtpd object in the Plugin object any more (this
558 caused a circular reference)
559
560 Added a new qpsmtpd-server - a select() based server for qpsmtpd
561
562 Allow a config/relayclients and config/morerelayclients files to
563 define who can relay (useful with the select() server)
564
565 Fixed qpsmtpd unfolding all header lines
566
567 Speed up persistent qpsmtpd's by checking for plugin functions after
568 munging the name (the main breakage was with queue/qmail-queue)
569
570 Use dup2() instead of perl open("<&") style. POSIX seems to work better.
571
6e3ebe8 @abh 0.27.0
abh authored
572 Added SPF, sender permitted from, plugin
573
574 More minor changes and probably a few big ones that we missed adding here :-)
575
53efac2 @abh Use $ENV{QMAIL} to override /var/qmail for where to find the
abh authored
576
d99eea0 @abh release 0.26
abh authored
577 0.26 - 2003/06/11
c10b6fb @abh Support morercpthosts.cdb
abh authored
578
03e00bf @abh Fix bug in dnsbl that made it sometimes ignore "hits" (thanks to
abh authored
579 Add queue/smtp-forward plugin (Matt Sergeant)
580
581 Add documentation to Qpsmtpd::Transaction (Matt Sergeant)
582
583 Fix bug in dnsbl that made it sometimes ignore "hits" (thanks to
584 James H. Thompson <jht@lava.net>)
585
9b150df @abh Fix bug hiding the error message when an existing configuration file
abh authored
586 Fix bug hiding the error message when an existing configuration file
587 isn't readable.
588
c2b8e8a @abh Add not even halfbaked saslauth plugin. Hopefully it'll give us
abh authored
589 If a plugin running the ehlo hook add something to the ARRAY
590 reference $self->transaction->notes('capabilities') then it will be
591 added to the EHLO response.
592
593 Add command_counter method to the SMTP object. Plugins can use this
594 to catch (or not) consecutive commands. In particular useful with
595 the unrecognized_command hook.
596
1223c26 @abh Filter out all uncommon characters from the remote_host
abh authored
597 Filter out all uncommon characters from the remote_host
598 setting. (thanks to Frank Denis / Jedi/Sector One for the hint).
599
600 Added a check for the spool_dir having mode 0700.
601
c68e306 @abh Don't break under taint mode on OpenBSD. (thanks to Frank Denis /
abh authored
602 Don't break under taint mode on OpenBSD. (thanks to Frank Denis /
603 Jedi/Sector One)
604
b1fc4ca @abh Have the qmail-queue plugin add the message-id to the "Queued!"
abh authored
605 Have the qmail-queue plugin add the message-id to the "Queued!"
606 message we send back to the client (to help those odd sendmail using
607 people debug their logs)
608
4c4360d @abh Set the process name to "qpsmtpd [1.2.3.4 : host.name.tld]"
abh authored
609 Set the process name to "qpsmtpd [1.2.3.4 : host.name.tld]"
610
933d76e @abh Fixed timeout bug when the client sent DATA and then stopped before
abh authored
611 Fixed timeout bug when the client sent DATA and then stopped before
612 sending the next line. (Gergely Risko <risko@risko.hu>)
613
f27b77a @abh unrecognized_command hook and a count_unrecognized_commands
abh authored
614 unrecognized_command hook and a count_unrecognized_commands
615 plugin. (Rasjid Wilcox)
616
22ca786 @abh check_earlytalker plugin. Deny the connection if the client talks
abh authored
617 check_earlytalker plugin. Deny the connection if the client talks
618 before we show our SMTP banner. (From Devin Carraway)
619
620 Patch Qpsmtpd::SMTP to allow connect plugins to give DENY and
621 DENYSOFT return codes. Based on patch from Devin Carraway.
622
c10b6fb @abh Support morercpthosts.cdb
abh authored
623 Support morercpthosts.cdb
624
625 config now takes an extra "type" parameter. If it's "map" then a
626 reference to a tied hash will be returned.
627
628
b5f6468 @abh 0.25
abh authored
629 0.25 - 2003/03/18
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
630
883b184 @abh Use the proper RFC2822 date format in the Received headers. (Somehow
abh authored
631 Use the proper RFC2822 date format in the Received headers. (Somehow
632 I had convinced myself that ISO8601 dates were okay). Thanks to
633 Kee Hinckley <nazgul@somewhere.com>.
634
635 Print the date in the local timezone instead of in -0000. (Not
636 entirely convinced this is a good idea)
637
b5f6468 @abh 0.25
abh authored
638 Lots of changes from Rasjid Wilcox <rasjidw@openminddev.net>:
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
639
b5f6468 @abh 0.25
abh authored
640 Fix error handling in queue/qmail-queue. (Rasjid)
641
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
642 Add option to queue/qmail-queue to specify an alternate qmail-queue
b5f6468 @abh 0.25
abh authored
643 location. (Rasjid)
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
644
b5f6468 @abh 0.25
abh authored
645 Add support for the QMAILQUEUE environment variable. (Rasjid)
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
646
b5f6468 @abh 0.25
abh authored
647 PPerl compatibility (yay!) (Rasjid)
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
648
b5f6468 @abh 0.25
abh authored
649 Allow mail to <abuse> and <postmaster> to go through. (Rasjid)
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
650
651 Add "deny" hook that gets called when another hook returns DENY or
b5f6468 @abh 0.25
abh authored
652 DENYSOFT. (Rasjid)
653
654 Add list of required modules to the README. Thanks to Skaag Argonius
655 <skaag@skaag.net>.
656
657 Fix dnsbl plugin to give us all the results. (Patch from Matt
658 Sergeant <matt@sergeant.org>)
659
660 Disable identd lookups by passing -R to tcpserver. (Thanks to Matt)
661
662 add plugin hooks for HELO and EHLO (Devin Carraway
663 <qpsmtpd-list@devin.com>)
664
665 check_spamhelo plugin to deny mail from claimed senders from the
666 list specified in F<badhelo>. (For example aol.com or yahoo.com)
667 (Devin Carraway)
e7c263d @abh All major changes in the this release where by Rasjid Wilcox
abh authored
668
669
6aac8fc @abh release 0.20
abh authored
670 0.20 - 2002/12/09
f9113eb @abh http_config plugin
abh authored
671
efeb191 @abh Fix the "too many dots in the beginning of the line" bug.
abh authored
672 Fix the "too many dots in the beginning of the line" bug.
673
99fb59a @abh Add munge_subject_threshold and reject_threshold options to the
abh authored
674 Add munge_subject_threshold and reject_threshold options to the
675 spamassassin plugin. Add documentation to the spamassassin plugin.
676
50451c0 @abh fix typo in Rasjid's email address
abh authored
677 Add -p to mkdir in log/run (Rasjid Wilcox <rasjidw@openminddev.net>)
2ceb0a8 @abh Add -p to mkdir in log/run (Rasjid Wilcox <rasjid@openminddev.net>)
abh authored
678
dc562f7 @abh make the spamassassin plugin not stop processing of content plugins
abh authored
679 clamav plugin, thanks to Matt Sergeant, matt@sergeant.org.
3d29cd8 @abh more about the clamav support
abh authored
680 Enabling this might require you to increase your "softlimit" in
dc562f7 @abh make the spamassassin plugin not stop processing of content plugins
abh authored
681 the run file. http://www.clamav.org/
682
683 Make the spamassassin plugin not stop the next content plugins from
684 running.
685
f9113eb @abh http_config plugin
abh authored
686 Store hooks runtime config globally so they will work within the
687 transaction objects too.
688
689 content_log plugin - log the content of all mails for
690 debugging. Robert Spier <robert@perl.org>.
691
692 http_config plugin - get configuration via http
693
694 plugins can take arguments via their line in the "plugins" file
695
696 make the quit_fortune plugin check that the fortune program exists
697
698
849be5b @abh 0.12
abh authored
699 0.12 - 2002/10/17
700
701 Better error messages when a plugin fails
702
703 Remove some debug messages in the log
208a0cd @abh fix NOOP
abh authored
704
705 Fix NOOP command with perl 5.6.
c45dbfc @abh Use /usr/bin/perl instead of the non-standard /home/perl/bin/perl
abh authored
706
97610b6 @abh Better installation instructions and error message when no plugin
abh authored
707 Better installation instructions and error message when no plugin
708 allowed or denied relaying (thanks to Lars Rander
709 <lrNOSPAM@rander.dk>).
208a0cd @abh fix NOOP
abh authored
710
711 Use /usr/bin/perl instead of the non-standard /home/perl/bin/perl
c45dbfc @abh Use /usr/bin/perl instead of the non-standard /home/perl/bin/perl
abh authored
712
97610b6 @abh Better installation instructions and error message when no plugin
abh authored
713
714 0.11 - 2002/10/09
415c7d9 @abh qmail-queue changes
abh authored
715
716 Make a "queue" plugin hook and move the qmail-queue functionality
717 to plugins/queue/qmail-queue. This allows you to make qpsmtpd
718 delivery mail via smtp or lmtp or into a database or whatever you want.
719
806fcf2 @abh Reorganize most of Qpsmtpd.pm into Qpsmtpd/SMTP.pm.
abh authored
720 Reorganize most of Qpsmtpd.pm into Qpsmtpd/SMTP.pm.
721
722 Add spool_dir option (thanks to Ross Mueller <ross@visual.com>)
723
724 Add plugin name to the "hooks" data structure, so we can log plugin
725 module had an error when we run a hook.
726
e342c0b @abh Make klez filter run for mails bigger than 220KB; they are sometimes
abh authored
727 Make klez filter run for mails bigger than 220KB; they are sometimes
728 bigger than that.
729
499d1e6 @abh fix "use of uninitialized variable" warnings
abh authored
730 Avoid "use of uninitialized variable" warning when the "MAIL" or the
731 "RCPT" command is executed without a parameter.
732
733 Compatibility with perl 5.5.3.
734
eed27e5 @abh Fixed "could not print ..." log warning.
abh authored
735 Fix "Could not print" error message in the TcpServer object. (Thanks
736 to Ross Mueller <ross@visual.com>)
737
a7ac715 @abh async dns lookups in dnsbl plugin
abh authored
738 dnsbl plugin queues lookups in the background upon connect but
739 doesn't block for the results until they are needed, greatly
740 speeding up connection times. Also fix a typo in the dnsbl plugin
741 so it'll actually work(!).
742
e9b02cb @abh new plugins from Jim Winstead
abh authored
743 check_badmailfrom and check_badrcptto plugins (Jim Winstead
744 <jimw@trainedmonkey.com>)
745
f2bcad4 @abh Better RFC conformance. (Reset transactions after the DATA command and
abh authored
746 Better RFC conformance. (Reset transactions after the DATA command and
747 when the MAIL command is being done)
748
bcd0d6d @abh data method; we can now receive mails with this...
abh authored
749
97610b6 @abh Better installation instructions and error message when no plugin
abh authored
750 0.10 - 2002/09/08
6588ac3 @abh v0.10 released
abh authored
751
e561b69 @abh add more notes about recent changes
abh authored
752 New object oriented internals
753
754 Very flexible plugin
755
756 All functionality not core to SMTP moved to plugins
757
3fae01e @abh update documentation
abh authored
758 Can accept mails as large as your file system will allow (instead of
759 up to as much memory you would allow qpsmtpd to eat).
760
761 2002/09/08
762 Add klez_filter plugin
763
764 Support more return codes for data_post
765
766 Document data_post
767
768 Add plugin name to the log entries when plugins use log()
769
770 Add plugin_name method to the default plugin object.
771
772 Improve error handling in the spamassassin plugin
773
e561b69 @abh add more notes about recent changes
abh authored
774
1e11372 @abh spamassassin plugin
abh authored
775 2002/08/06
776 Spool message bodies to a tmp file so we can support HUGE messages
777
778 API to read the message body (undocumented, subject to change)
779
780 data_post hook (undocumented)
781
782 SpamAssassin plugin (connects to spamd on localhost), see
783 plugins/spamassassin
784
785
e561b69 @abh add more notes about recent changes
abh authored
786 2002/07/15
787 DNS RBL and RHSBL support via plugins.
788
789 More hooks.
790
bcd0d6d @abh data method; we can now receive mails with this...
abh authored
791 2002/07/03
3fae01e @abh update documentation
abh authored
792 First (non functional) version of the new object oriented mail engine (0.10).
bcd0d6d @abh data method; we can now receive mails with this...
abh authored
793
794
e561b69 @abh add more notes about recent changes
abh authored
795 Changes on the old v0.0x branch:
796
3851980 @abh klez filter (thanks to robert spier)
abh authored
797 2002/05/09
798 Klez filter (thanks to Robert Spier)
799
f4f1427 @abh Support comments in configuration files (prefix the line with #)
abh authored
800 2002/04/20
e2cc2f7 @abh If the connection fails while in DATA we would just accept the
abh authored
801 Bumped version number to 0.07
802
f4f1427 @abh Support comments in configuration files (prefix the line with #)
abh authored
803 Support comments in configuration files (prefix the line with #)
804
805 Support RELAYCLIENT like qmail-smtpd (thanks to Marius Kjeldahl
44a5199 @abh give credit to Zukka too for the RELAYCLIENT thing
abh authored
806 <marius@kjeldahl.net> and Zukka Zitting <jukka.zitting@iki.fi>)
f4f1427 @abh Support comments in configuration files (prefix the line with #)
abh authored
807
e2cc2f7 @abh If the connection fails while in DATA we would just accept the
abh authored
808 If the connection fails while in DATA we would just accept the
809 message. Ouch! Thanks to Devin Carraway <qpsmtpd@devin.com> for the
810 patch.
811
f4f1427 @abh Support comments in configuration files (prefix the line with #)
abh authored
812
0a91332 @abh Allow [1.2.3.4] for the hostname when checking if the dns resolves
abh authored
813 2002/01/26
814 Allow [1.2.3.4] for the hostname when checking if the dns resolves
815
97bfabe @abh initial changes and readme files
abh authored
816
97a9e4d @abh enable taint checking
abh authored
817 2002/01/21
9155e06 @abh fix databytes
abh authored
818 assorted fixes; getting dnsbl's to actually work
819
820 fixing the maximum message size (databytes) stuff (thanks for the
821 spot to Andrew Pam <xanni@glasswings.com.au>)
822
97a9e4d @abh enable taint checking
abh authored
823 support and enable taint checking (thanks to Devin Carraway
824 <qpsmtpd@devin.com>)
825
7d4409c @abh Make the MAIL FROM host dns check configurable. (thanks to Devin
abh authored
826 Make the MAIL FROM host dns check configurable. (thanks to Devin
827 Carraway).
828
829 Add more documentation to the README file.
830
9155e06 @abh fix databytes
abh authored
831
Something went wrong with that request. Please try again.