]> gitweb.michael.orlitzky.com - postfix-logwatch.git/blob - Changes
Changes: add the one change in v1.40.05.
[postfix-logwatch.git] / Changes
1 2021-07-31 (version: 1.40.04)
2 - New maintainer: Michael Orlitzky.
3 - Support for modern versions of Postfix and Perl.
4
5 2014-09-03 (version: 1.40.03)
6 - Fix: Corrected typo in RE for postscreen PREGREET & HANGUP fix was lost in merge.
7 Thanks: Michael Orlitzky
8
9 2014-08-28 (version: 1.40.02)
10 - Fix: Commented out some code which was accidentally left enabled, preventing the
11 script from running.
12
13 2014-08-01 (version: 1.40.01)
14 - Fix: Correct TLS matching for Postfix 2.11 and later. Thanks: John Wilcock
15 - Fix: Ignore cfg_get_str debug lines. Thanks: Bas Mevissen
16 - Fix: Ignore sacl_check:... lines. Thanks: Jonathan Herbach
17
18 2012-01-11 (version: 1.40.00)
19 - Change: License is now the MIT/X-Consortium License:
20 http://www.opensource.org/licenses/mit-license.php
21 This allows re-inclusion into the logwatch project.
22 - Fix: Ignore additional debug lines. Thanks: Peter Smrcak
23 - Fix: Corrected typo in RE for postscreen PREGREET & HANGUP.
24
25 2011-09-26 (version: 1.39.07)
26 - New: Support 2.9's enable_long_queue_ids via command line option
27 --[no]long_queue_ids and config file var $postfix_Enable_Long_Queue_Ids.
28 Default is disabled. There will be issues with existing logs that contain
29 both formats.
30 - Fix: Support postscreen's WHITELIST VETO.
31 - Thanks: Noel Jones
32
33 2011-09-23 (version: 1.39.06)
34 - New: Support postscreen from postfix 2.8. Updated for minor dnsblog
35 log changes. Note: tlsproxy messages are ignored for now.
36 - Change: Section dnsblog primary sort key is now listing site.
37 - Fix: Some "improper command pipelining" log lines were unmatched
38 (section: smtpprotocolviolation).
39 - Fix: Ignore proxy-reject w/no SMTP reply code. Occurs after a queue file
40 size lmit exceeded warning by smtpd.
41 - New: Postfix 2.8.1 changes FCRDNS warning messages (section: hostnameverification).
42 See: http://article.gmane.org/gmane.mail.postfix.user/218112
43 - Internal: Removed remaining $re_IP in rblerror section, from v1.39.05.
44 - Thanks: Noel Jones, Tonio, Jase Thew, Alex, Michael Orlitzky
45
46 2010-11-12 (version: 1.39.05)
47 - Fix: Check input value to commify() against undef; required for perl 5.12.
48 Thanks: Michael Orlitzky
49 - Fix: Eliminate use of $re_IP, as it is too complicated, expensive, and did
50 not correctly match all valid IPv6 addresses. Note: one remains in
51 RBL lookup error section, as parsing out IP is nontrivial w/IPv6.
52 - Internal: Update URL to Sourceforge.
53
54 2010-03-23 (version: 1.39.04)
55 - Fix: Support Postfix 2.8's reject_rhsbl_reverse_client in RejectRBL.
56 Thanks: Noel Jones
57
58 2010-03-06 (version: 1.39.03)
59 - Fix: Support for reject_rhsbl_helo in RejectRBL section.
60 Thanks: Steve Bytnar
61
62 2010-03-03 (version: 1.39.02)
63 - Change: Merged section SaslAuthRelay into SaslAuth. The purported SASL
64 sender is now included after an existing SASL_username.
65
66 2010-03-02 (version: 1.39.01)
67 - New: Allow enabling/disabling the summary section in config file, using
68 var $postfix_Show_Summary and command line option --[no]summary.
69 Thanks: Benedikt Bohm
70
71 2010-01-11 (version: 1.39.00)
72 - New: Support 2.7 experimental branch logging:
73 + smtpd's proxy-reject: placed in standard reject sections.
74 + smtpd's proxy-accept: ignored.
75 + postfix/postscreen: new section 'postscreen'.
76 Note: memory intensive, so limiter is set to 1, showing only counts
77 of various postscreen result.
78 + postfix/dnsblog: new section 'dnsblog'.
79 Note: memory intensive, so limiter is set to 1, showing only a list
80 of DNSBL'd IPs. Disable this section by setting limiter to 0.
81 + postfix/verify: currently ignored
82 Thanks: Stefan Forster, Noel Jones
83 - New: Support 2.6 access(5) action BCC. New section 'bcced'.
84 - New: New option --[no]unknown to show/suppress output of hostname of
85 'unknown' in formatted ip/hostname pairs. Default: on.
86 - New: Updated postfix-logwatch.conf files to include instructions on how to
87 increase log scanning performance when not using policy services such as
88 policy-spf, etc. See "Performance Note" in the .conf files.
89 - Change/Fix: Warning sections 'ratelimit and 'concurrenclylimit merged into
90 a new, generic 'anvil' section, which includes all of anvil's various limit
91 exceeded messages. If you see errors after updating about these unknown
92 limiters, be sure to replace these two deprecated limiters with the new
93 one to your config file(s).
94 - Change: Use DSN from delivery verification probes as first level
95 key (section: 'deliverable').
96 - Change: Replace databasegeneration section header 'Database file
97 needs update' with 'Database is older than source file', as per request
98 on the Postfix mailing list.
99 - Fix: Handle more, and restructure, SASL authentication failed messages.
100 Thanks: Stefan
101 - Fix: Ignore some smtpd cache lines; handle postmaster delay notifications.
102 Thanks: Gabriele Beltrame
103 - Fix: Handle more postfwd lines.
104 - Fix: Prevent useless level 3 ':' output in section 'saslauthfail'.
105 Thanks: Armin Tüting
106 - Fix: Corrected some typos in man page.
107 - Fix: Added missing Error section (how was this missed!).
108 - Fix: Handle unmatched milter-{reject,hold,discard} lines that do not
109 include smtpd envelope data.
110 - Fix: reduce memory footprint for Delays reports (~30Mb per 1Mb log file).
111 - Fix: performance increases.
112
113 2009-07-14 (version: 1.38.01)
114 - Fix: RE typo caused policydweight lines to be unmatched.
115 - Fix: Reduce to-be-ignored RE list searching by moving most common
116 REs to head of the list.
117
118 2009-07-10 (version: 1.38.00pre6)
119 - Fix: Handle Softfail and Temperror in pypolicyd-spf (PolicySPF).
120 postfix/policy-spf. Thanks: Chris Burton.
121
122 2009-07-10 (version: 1.38.00pre5)
123 - Fix: Comment out extra OnlyService line in postfix-logwatch.conf* files,
124 leaving as a sample. The duplicate causes logwatch to filter out postgrey,
125 postfwd, and policyd-spf lines. Also include '-' in the RE to capture
126 postfix/policy-spf. Thanks: Malte Koestner, Chris Burton.
127
128 2009-07-07 (version: 1.38.00pre4)
129 - New: Error and diagnostic output from non-postfix programs will be moved
130 into the WarningsOther section.
131 - Fix: Added Tarpit whitelisted to postgrey output.
132 - Fix: Handle additional output for pypolicyd-spf, postgrey, and postfix.
133 - Fix: Add policyd-spf to postfix_Syslog_Name and OnlyService.
134 Thanks: Chris Burton
135 - Fix: logic error which inadvertently incremented Notification Sent counter
136 on ignored postfix/bounce lines.
137 - Fix: Add -T to interpreter line (removed inadvertently to use perl debugger).
138 - Change: Remove 'postgrey' from default syslog_name. This only affects users
139 without a configuration file, where it is enabled by default.
140
141 2009-07-06 (version: 1.38.00pre3)
142 - New: Handle pypolicyd-spf. Thanks: Chris Burton
143 - New: ConnectionInbound section shows IP/hostname. Disabled by default,
144 for performance reasons. Requested by: Jernej Porenta
145 - Change: MxErrors changed to DNSErrors, generalizing DNS lookup errors.
146 A beneficial side affect is the removal of the numerous DNS lookup
147 informational "warnings" from the top of the Summary section; they
148 can also, of course, be disabled in the Detailed section.
149 - Fix: Handle END-OF-MESSAGE stage in reject code.
150
151 2009-07-02 (version: 1.38.00pre2)
152 - Fix: Remove debug print
153 - New: Section SMTP protocol violation (smtpprotocolviolation)
154 - Change: Removed section "toomanyerrors", merging it into new section
155 smtpprotocolviolation.
156 - Fix: Handle "improper command pipelining ..." messages in new section
157 smtpprotocolviolation.
158 - Fix: Ignore more debug lines and miscellaneous canonicalization.
159
160 2009-06-29 (version: 1.38.00pre1)
161 - New: Support milter-hold (aka: "quarantine") and milter-discard lines.
162 Stats are located in "hold" and "discarded" sections, respectively.
163 Requested by: Gary Casterline;
164 - Fix: Perl v5.10 introduces tighter taint control in sprintf format
165 strings. Perform strict data checking on $Opts{'ipaddr_width'} to
166 untaint it, as it is used directly as an sprintf() field width specifier.
167 Thanks: Dudi Goldenberg
168 - Fix: Some Policy-SPF lines were unmatched, due to log format change
169 in Mail::SPF v2.006, which changed "identify=mfrom" to "identity=mailfrom".
170 Thanks: Chris Burton
171 - Fix: Resolved several bugs in the Policy-SPF module: some missing return
172 return statements, which for certain unmatched log lines would both add to
173 the Unmatched list and increment a PolicySPF hit counter; a few older
174 log lines would show blank IP addresses.
175 - Fix: Postgrey whitelisted lines that did not include a host IP address
176 were reported as unmatched.
177 - Fix: Relax email address capture in to=, orig_to=, and from= fields in
178 log lines.
179 - Fix: Better diagnostic when limiter level is not specified on
180 the command line using the --limit option. Eg:
181 "--limit rejectbody" v. "--limit rejectbody=10"
182 - Fix: Remove bogus --content_filter option from man page (feature not yet
183 implemented). Thanks: David DeFranco
184 - Fix: Better handle "Delivery temporarily suspended: conversation with xxx timed
185 out..." deferred messages.
186 - Fix: Handle multi-word XYZ in "blocked using XYZ" in RejectRBL.
187 Thanks: Sergey Pylinsky
188 - Fix: Ignore lines from postlog service.
189 - Change: Detail level now included in Detail title
190 - Internal: Support variable hash key lengths, but using the special key
191 sequence of two ASCII bell's ("\a\a"). This removes the existing
192 requirement that dummy keys must be used at the end of the %Counts
193 accumulator hash.
194 - Internal: Test data generation
195
196 2008-10-21 (version: 1.37.08)
197 - Fix: Saslauth messages were not being detected if the only field in a
198 smtpd "client=..." line was "sasl_sender=".
199
200 2008-10-20 (version: 1.37.07)
201 - New: Support "Temporary lookup failure" temporary rejects. New reject
202 limiter 'XXXrejectlookupfailure', where XXX is any of the set of
203 reject codes in effect.
204 - New: Support smtp_body_checks and smtp_*header_checks.
205 Requested by: Noel Jones
206 - Fix: Previous fix to support reload log line that includes postfix
207 version number broke previous postfix reload log lines.
208 Thanks: Armin Tüting
209 - Fix: Setting recipient_delimiter caused RE failure, due to missing
210 \Q \E quoting. Thanks: Armin Tüting
211 - Fix: BCC action support from 1.37.06 had a "if" vs. "elsif" typo.
212 Thanks: Noel Jones
213 - Fix: Allow postgrey filter to handle absent recipient= field.
214 Thanks: Alexander Kolesnik
215 - Fix: Limiters were not case insensitive on the command line.
216 - Fix: Use of bare reject limiters did not set each reply code variant of
217 the given limiter after using --nodetail, resulting in no output for the
218 given section.
219 - Fix: Change Logwatch's OnlyService variable in the postfix-logwatch.conf
220 file to also capture postfwd and postgrey. Thanks: Alex Schuilenburg
221 - Fix: Ignore more debug lines.
222
223 2008-08-22 (version: 1.37.06)
224 - New: Handle message_reject_characters cleanup rejects. New reject
225 limiter 'XXXrejectcontent', where XXX is any of the set of reject
226 reply codes in effect.
227 - New: Support BCC action from 2.6 experimental branch. New limiter
228 'bcced'.
229 - Fix: Ignore "mapping DSN status" lines.
230 - Fix: Support reload log line including postfix version number.
231 Postfix snapshot 2.6-2008081
232 - Thanks: Noel Jones
233 - Fix: Ignore more debug lines.
234
235 2008-08-19 (version: 1.37.05)
236 - New: Initial implementation of Postfwd reporting.
237 Requested by: Sahil Tandon
238 - Change: Undeliverable (address verification) section now
239 grouped by DSN, canonicalized host reply, domainpart, localpart,
240 and formatted host/hostip. This dramatically cleans up this
241 section's output for systems that perform many address verifications.
242 - Fix: Postgrey lines were being ignored due to change made to
243 implement Ignore_Service.
244 - Fix: handle "status=undeliverable-but-not-cached" address verification
245 response, which is coerced into a simple "status=undeliverable".
246 If there is any value in distinguishing the two status types, let me
247 known and I'll create a new limiter. Thanks: Gary Casterline
248 - Fix: missed conversion of keyword "next" to "return" in postfix_postsuper
249 routine after inline code was converted into the subroutine.
250
251 2008-07-22 (version: 1.37.04)
252 - Fix: recognize "approximately" in TooManyErrors section messages
253 starting introduced in Postfix 2.6 20080621. Thanks: Noel Jones
254 - Fix: Reset to level 0 the inadvertently changed EnvelopeSenders
255 and EnvelopeSenderDomains (in postfix-logwatch.conf).
256
257 2008-07-18 (version: 1.37.03)
258 - Change: TimeoutInbound will include byte count if available;
259 default level changed to 1 to reduce noise.
260 - Change: some additional canonicalization is performed on
261 various "host XXX said: yyy" messages in sections like Deferrals.
262 Much of the "said" verbiage from some large mail houses is redundant
263 or excessive, and causes additional memory consumption. If this
264 canonicalization presents problems, I may include an additional level
265 of detail to present the raw message. Feedback welcome.
266 - Fix: Supplemental sections could not be re-enabled after using
267 --nodetail.
268 - Fix: Handle some additional RejectRBL variants, esp. the
269 "day old bread" list (dob.sibl.support-intelligence.net).
270 Thanks: Michael Monnerie
271 - Fix: Present the remote MTAs reply code/DSN, if available, at the
272 beginning of canonicalized "host XXX said: yyy" messages.
273 Thanks: Jorey Bump
274 - Fix: Provide remote MTAs SMTP reply code/DSN if available
275 in various Delay, Deferral, etc. reports. Some additional
276 canonicalization is performed on various flavors of deferral
277 replies.
278 - Fix: recognize "approximately" in lost connection byte count
279 messages starting introduced in Postfix 2.6 20080621.
280 Thanks: Noel Jones
281 - Internal: Ignored lines are now placed into a list, instead of
282 hard coded into the code. In the future, this will allow users
283 to configure ignore patterns without making code modifications.
284 In doing this, I discovered and reported a bug in perl (#56202),
285 but worked around the problem.
286 - Internal: move postsuper, panic, and fatal message processing into
287 their own subroutines.
288
289 2008-05-30 (version: 1.37.02)
290 - Change: Some changes in Delays report. Now includes total delay
291 time as reported in delivery agent log entry delay=x. Removed
292 leading numbers in row titles, and cleaned up the title names.
293 Also, reduced fields to 2 decimal places.
294 - New: By IP (permanent) Reject report controlled with ByIpRejects
295 limiter. Disabled by default.
296 - Fix: Two minor fixes to PolicydWeight module: it was not the required
297 importing inc_unmatched, and ignore diagnostic "master: ..." lines.
298 - Fix: Eliminate some extraneous newline output.
299 - Fix: Ignore more debug log lines.
300
301 2008-05-09 (version: 1.37.01)
302 - Change: level limiters are no longer unique command line options,
303 but are now parameters to the single option "--level" or "-l".
304 This reduces the number of command line options in the help list,
305 and simplifies the code added to support reject_reply_patterns.
306 For example, the config file level limiter $postfix_Sent = 2,
307 the command line option would be --limit sent=2 or -l sent=2,
308 rather than the previous --sent=2. This also means the --no
309 variants for level limiters are gone (eg. --nosent; instead use
310 -l sent=0). There is no change within the configuration files.
311 Limiters can still be abbreviated so long as they are unambiguous.
312 - Change: Section connectionlostoverload is removed, by being merged
313 into connectionlostinbound.
314 - Change: PrematureEOI is now AttrError, broadened to include errors
315 reading attributes from services.
316 - New: Support RFC 4954 Enhanced status codes (postfix 2.5+).
317 - New: Report "status=deferred (bounce failed)" messages under
318 Summary section "Bounce failed".
319 - New: Support postfix 2.6+ check_reverse_client_hostname_access
320 Includes new reject config variable: RejectUnverifiedClient.
321 - New: option --line_style specifies how to handle lines lengths
322 longer than max_report_width. Options are "wrap", "full", or
323 "truncate" (default). The older --detail >= 11 is equivalent
324 to line_style=full; line_style=truncate or line_style=wrap has
325 higher precedence and will dictate how long lines are handled.
326 Alternative options are --truncate, --wrap, or --full.
327 - New: The beginnings of a Top N config file is provided in
328 postfix-logwatch.conf-topn. Suggestions and improvements welcome.
329 - New: single letter options for some long options; run with
330 --help to see list. More may be added in the future.
331 - New: Option --ignore_services (config var $postfix_Ignore_Services)
332 provides a mechanism to ignore postfix/SERVICE log lines, where
333 SERVICE is a regular expression pattern.
334 - Fix: Support Anonymous TLS in TlsServerConnect (postfix 2.5+).
335 - Fix: Ignore output from "postfix status" command (postfix 2.5+)
336 - Fix: Ignore more debug log lines.
337 - Fix: When postsuper held more than one message in a given call,
338 the Hold count shown in the Summary section indicated how many
339 messages were held, but the Detail section showed how many
340 postsuper calls were made. Thanks: Stefan Jakobs
341 - Fix: Postgrey sender and recipient fields improperly reported
342 - Fix: Allow ":unknown" as an acceptable port in smtpd's "client=..."
343 log lines. Occurs in pre-queue content_filter setup.
344 Thanks: Robert Brooks
345 - Fix: At detail > 10, log lines were truncated to max_report_width.
346 - Fix: Documentation cleanup. Thanks: Chris Pepper
347 - Fix: Relax capture RE for resent-message-id which may contain
348 < or > chars. Thanks: Stefan Jakobs
349 - Fix: Reason for deferral/bounce would sometimes be incorrectly
350 shown as unknown recipient.
351 - Fix: Better handle the trigger subject (SMTP_NAME_*) in discard,
352 filter, hold, redirect, and warn actions (eg. Client host, Sender
353 address, Recipient Address, Client certificate, etc.).
354 - Change: reduce length of some extended status codes for readability.
355 - Change: remove hard-coded "postgrey" from the syslog name pattern
356 matching code, and instead add it to the configuration variable
357 postfix_Syslog_Name.
358 - Internal: converted all Section key names to lowercase to avoid
359 silly case errors due to hash key case differences in Sections,
360 Opts, and Collecting hashes.
361 - Internal: debug output is now controlled by keywords.
362
363 2008-05-09 (version: 1.36.13)
364 Final version skipped
365
366 2008-01-14 (version: 1.36.13pre7)
367 - New: Support ETRN rejects (option: RejectEtrn).
368 - Fix: Include optional text in L1 output for header/body checks Hold
369 messages.
370 - Fix: Accept "unknown" as an IP in Connection rate limit messages.
371 Thanks: Stefan Jakobs
372 - Fix: Improve MxError captures
373 - Fix: Ignore "sql auxprop plugin ..." messages
374 - Fix: Ignore more debug_peer_level=2 messages
375 - Fix: Correct failure to ignore "connect to subsystem..." debug lines
376 - Fix: Add missing RejectVerify to config file
377
378 2007-12-15 (version: 1.36.13pre6)
379 - Fix: in BounceLocal and EnvelopeSenderDomains, set null domain
380 and formatted host to '*unknown'.
381 - Fix: Move postfix_warning before postfix_cleanup, as some cleanup
382 warnings were caught as unmatched.
383 - Fix: An Accepted message is now triggered by smtpd "client=..."
384 and pickup "uid=..." log entries, instead of qmgr's "from=xxx,
385 size=nnn, nrcpt=nnn" log lines. A message may have been accepted
386 during a previous time period, but delivery delays result in
387 multiple qmgr delivery attempts, resulting in over counting
388 Accepted messages. Thanks: Stefan Jakobs
389 - New: Bytes delivered is now broken down by Bytes sent via SMTP,
390 LMTP, and forwarded, to be orthogonal with message counts.
391 - Fix: Resent messages no longer reduce the number of messages
392 accepted - this was a naive attempt at not counting, for example,
393 messages released and re-queued from a content filter's quarantine.
394
395 2007-11-14 (version: 1.36.13pre5)
396 - New: Threshold limiting and Top N lists for every level in each
397 Detail section. Every level in each section can now be limited
398 with minimum count thresholds and top N lists. See the updated
399 README file, the comments in the postfix-logwatch.conf file, and
400 the new postfix-logwatch man page. Requested by: Pavel Urban
401 - New: Rejects can now be categorized by reject reply code. A new
402 option/variable "reject_reply_patterns" is a list of reject reply
403 code regular expressions, which are used for categorizing rejects.
404 This feature allows, for example, distinguishing 421 transmission
405 channel closes from 45x errors. (eg. 450 mailbox unavailable, 451
406 local processing errors, 452 insufficient storage). The default
407 list is: "5.. 4.. Warn" which creates three groups of rejects:
408 permanent rejects, temporary failures, and reject warnings (as in
409 warn_if_reject). Requested by: Noel Jones
410 - New: postfix-logwatch man page created (net yet complete)
411 - New: Support for all access(5) actions. See the "Level Limiter
412 Options" section in the postfix-logwatch(1) man page, and "Common
413 access control actions" in postfix-logwatch.conf.
414 - New: Added envelope senders and envelope sender domains reports.
415 These are disabled by default. Enable with level limiter options
416 --envelopesenders 1 and --envelopesenderdomains 1 (or 2 to
417 also see senders listed under domains). See also the
418 postfix-logwatch.conf file. Suggested by: Brendan
419 - Change: Uncomment all variables in the config file. This should
420 help ensure the variables in the config file stay in sync with
421 those used in the source.
422 - Change: Merged sections SenderDelayNotification, DSNDelivered, and
423 DSNUndelivered into NotificationSent, with sub-sections indicating
424 the type of notification. This gives the total number of sent
425 notifications in the Summary section, and the breakdown by type
426 of notification in the Detailed section.
427 - Change: Removed "msgs" prefix from several options: msgsdeferred,
428 msgsdelivered, msgsforwarded, msgsresent, msgssent, and msgssentlmtp
429 are now deferred, delivered, forwarded, resent, sent and sentlmtp.
430 The old options are still usable.
431 - Change: force --help output to 80 chars.
432 - Change: Taint mode is now on by default in standalone mode. It is
433 disabled upon installation in logwatch mode, as logwatch fails with
434 taint mode enabled.
435 - Change: Set the primary key in tlsserverconnect/tlsclientconnect
436 options to type/cipher to reduce excessive level 2 output.
437 - Change: Reported values that cannot be determined or are unavailable
438 are prefixed with an asterisk (Eg. *unknown, *unspecified).
439 - Change: Warn section title 'Warn action logged' changed simply to
440 "Warned", to be consistent with other access/header_ and body_checks.
441 The option is --warned, but --warn is still acceptable.
442 - Fix: Significantly reduce memory footprint when detail < 5.
443 - Fix: Usage and --help now correctly show only detail section
444 level limiter options that are available. Previously, summary-
445 only counts were also display as level limiter options.
446 - Fix: "too many errors after DATA" and "timeout after DATA" may
447 include a byte count, as in "(348 bytes)". Thanks: John Beaver
448 - Fix: Ignore postgrey 'delayed ...' lines
449 - Fix: Allow logwatch --debug option to pass into postfix-logwatch
450 - Fix: configuration file reading code was not properly warning on
451 non-existent files
452 - Fix: "filter" actions were incremented on "redirect" actions
453 - Fix: Give more room to percentiles in delays percentiles table.
454 A 5 day delay is 432000.000 seconds, and the previous table width
455 was not sufficient.
456 - Fix: --show_sect_vars command line option inadvertently required an
457 argument; the name has been shortened to --sect_vars/--nosect_vars
458 and correctly no longer requires an argument. The longer names
459 --[no]show_sect_vars work as well. Thanks: Noel Jones
460 - Fix: Handle some unmatched connect to failures in section
461 ConnectToFailure. Cleanup and consolidate several similar messages;
462 add additional detail at level 3.
463 - Fix: Increment postsuper Hold messages by the number of messages
464 placed on hold.
465 - Fix: Add "non-ESMTP response ..." messages to SmtpConversationError.
466 First level is now the general SMTP error description.
467 - Internal: Converted source to be package-based to allow code sharing
468 with amavis-logwatch. The single-file executable is auto-generated
469 from the packages.
470 - Internal: internal gen_test_log function to create sample log data
471 for testing. Reads '#TD' comments from within postfix-logwatch.
472
473 2007-10-16 (version: 1.36.13pre4)
474 - Fix: Handle messages "SSL_connect error to example.com: 0" and
475 "Cannot start TLS: handshake failure" by coercing into warnings
476 Thanks: Rob Sterenborg
477
478 2007-10-15 (version: 1.36.13pre3)
479 - Fix: Handle "postmaster" DSNs
480 - Fix: Handle "discarding EHLO keywords:" (ignored)
481 - Internal: create bounce subroutine to handle bounce messages
482
483 2007-10-05 (version: 1.36.13pre2)
484 - New: Initial support for postgrey (http://postgrey.schweikert.ch/)
485 Requested by: Sebastian Wolfgarten
486
487 2007-10-05 (version: 1.36.13pre1)
488 - New: Support for policy-spf software postfix-policyd-spf-perl
489 Requested by: Nicodemo P. and Rob Sterenborg
490
491 2007-10-05 (version: 1.36.12)
492 - New: support postfix 2.5 log changes (20071004, 20071003)
493 - Incompatible Change: Config variable/command line option name change:
494 * WarningHeader changed to Warn
495 * MsgsRedirected changed to Redirected
496 * ConnectionLost split into ConnectionLost{Inbound,Outbound}
497 - Incompatible Change: Distinguish inbound (smtpd) vs. outbound (smtp),
498 which replaces ConnectionsLost with ConnectionsLostInbound and
499 ConnectionsLostOutbound. ConnectionsLostInbound includes number of
500 bytes received if the connection was lost during DATA. Encouraged by
501 2.5 20071003 change in logging.
502 - New: Support for all header_checks(5)/body_checks(5) actions. See
503 also postfix-logwatch.conf for "Common access control actions"
504 - New: Option show_sect_vars shows names of section configuration
505 variables/command line options in titles of detailed report sections.
506 This allows easy correlation of corresponding configuration file
507 variables/command line option for each section. [ Default: 0 ]
508 - Fix: catch postsuper's pluralized form of Delete message"s".
509 - New: handle "cannot load Certificate Authority data" as Misc. warning
510 - Fix: Makefile: no -D option to install in FreeBSD. Use -d instead
511 - Change: ConnectionLostInbound now defaults to level 1 only
512 - Internal: Numerous code cleanups, re-factoring and restructuring
513 - Internal: Test data migrating to include the correct postfix service, as
514 internal code moves towards using the service name as an initial log
515 line match qualifier
516
517 2007-09-13 (version: 1.36.11)
518 - Incompatible Change: All TempRejectXXX and RejectWarnXXX options/config vars
519 have been renamed for easier identification in the code, and consistency.
520 Now, all Reject variants look like RejectXXXyyy, where XXX is the
521 given reject name (Helo, RBL, etc), and yyy is the optional reject type
522 of "Warn" (warn_if_reject) or "Temp" (4xx temporary rejects).
523 For example, the previously named RejectRelay, RejectWarnRelay and
524 TempRejectRelay are now named RejectRelay, RejectRelayWarn and RejectRelayTemp.
525 See the usage information or the .conf file to see the list.
526 - Fix: A %Counts accumulator must use the same number of keys consistently.
527 This error caused some totals to be wildly incorrect, and the fatal perl error:
528 "Can't use string ("XXX") as a HASH ref while "strict refs" in use ..."
529 Fortunately, this error only occurred with a specific set of data, which
530 seemed not too common.
531 - Fix: remove Temp and Warn variants of RejectHeader and RejectBody - they
532 don't exist.
533 - Fix: Add Temp variant of RejectMilter
534 - New: Add ProcessLimit section for 2.5 stress messages
535 - New: accommodate postfix patch which also logs HELO name in smtpd's
536 "QID: client=..." log entries.
537 - Thanks: Noel Jones
538
539 2007-09-09 (version: 1.36.10)
540 - New: handle "reject: DATA from ... <DATA>: Data command rejected: ..."
541 - New: ignore "fingerprint=20:..." lines
542 - Thanks Farkas Levente
543
544 2007-09-01 (version: 1.36.9)
545 - Fix: remove rooted path in md5 file
546 - Fix: Makefile install-logwatch rule was missing a parenthesis
547 - Fix: Makefile updates from Till Mass
548
549 2007-08-31 (version: 1.36.8)
550 - Change: Include GPLv2 license
551 - Change: Include version number in tarball file name
552 - Internal: Move CVS log comments to Changes file
553
554 2007-08-31 (version: 1.36.7)
555 - Fix: capture older postfix RCPT from RBL reject entries. Thanks
556 Hugo van der Kooij
557
558 2007-08-15 (version: 1.36.6)
559 - Changed: for sorting purposes, lowercase localpart of rejected email addresses
560 - Change: Output help and version info on STDOUT for easier pipelines to a pager
561 - New: option --nodetail zeros out all detail levels, to more easily obtain
562 only specified detailed reports (eg: --nodetail --rejecthelo 1) will
563 only show a list of rejected HELOs in the details section.
564 - New: option --nosummary disables the summary section
565 - New: detailed section command line arguments can now be specified with the
566 prefix "no", to set the level to 0 (eg. --nomsgssent is equivalent to
567 --msgssent 0).
568 - Internal: split printReports into printSummaryReport and printDetailReport
569 - Internal: change variable Formats to the more obvious named Sections
570
571 2007-08-03 (version: 1.36.5)
572 - Changed: rejected addresses collected by domain, then localpart
573 - New: delay percentiles report. Config vars: show_delays and
574 delays_percentiles; command line --[no]delays
575 - Fix: Yes/True and No/False config values weren't being read properly
576 in standalone
577
578 2007-08-01 (version: 1.36.4)
579 - New: option --config_file allows specifying a configuration file via
580 command line. Options in configuration file act as though they were
581 set on the command line in order, with earlier settings being over-
582 ridden by most recent settings. Multiple config_file options may
583 be specified.
584 - Change: Summary title includes syslog_name in standalone mode
585 - Change: Remove some extraneous newlines
586
587 2007-07-24 (version: 1.36.3)
588 - Refine anvil connection rate exceeded messages
589
590 2007-07-13 (version: 1.36.2)
591 - Support FreeBSD (<facility.priority> precedes hostname in syslog)
592 - Thanks Clemens Fischer
593
594 2007-07-10
595 - Ignore "nss_ldap: reconnected to LDAP server ..."
596 - Handle "discard: header/body: messages
597 - Thanks Jay Chandler
598
599 2007-07-03
600 - Corrected some minor typos
601
602 2007-06-08
603 - Changed titles shown for sender notifications of (non-)delivery
604 and delay
605 - Corrected some incorrect config file variable names. Thanks: Nicolas
606
607 2007-06-02
608 - Do not strip <> when address is '<>' in Illegal address syntax
609
610 2007-06-01
611 - Changed warning output for smtpd messages:
612 "lost connection after CONNECT from unknown[unknown]".
613 Previous warning erroneously attributed this to pre-queue content
614 filter overloads, but the problem indicates a more general
615 smtpd overload.
616
617 2007-05-31
618 - Fix bug which caused config file to be required in standalone mode
619
620 2007-05-30
621 - Support delay_reject=no (debian: 426726)
622 - Ignore additional unmatched TLS debug messages
623 - Initial support for redirect messages
624 - Some corrected typos
625 - Thanks Jusin Pryzby
626
627 2007-05-25
628 - Experimental: syntax to limit Top N level 1 output lines. Variables
629 that control depth levels in detailed reports can be specified as
630 m.n, where m is the maximum level to output, and n specifies the number
631 of level 1 items output. Eg: $postfix_MsgsSent=2.10, will output
632 the top 10 level 1 items, with each item providing 2 levels of detail.
633 - Protect interpolated recipient addresses in cleanhostreply with \Q \E
634 e Add zero-width assertions and use strict IP RE in bycount sort subroutine
635 to match IP addresses more reliably
636
637 2007-05-09
638 - Ignore a few more policydweigh child or cache entries
639 - Escape metacharacters from being interpreted in recipient_delimiter
640 - Never split mailer-daemon, double-bounce, or when recipient_delimiter
641 is a "-" (dash) never split owner- or -request localparts
642
643 2007-05-08
644 - Support for running in standalone mode (independent of logwatch)
645 - Renamed script to "postfix-logwatch" to avoid confusion when running
646 in standalone mode. See the README.
647 - Add relay=virtual to "local" class for local vs. remote bounces
648
649 2007-05-07
650 - Handle and report postfix/policydweight lines (postfix_PolicydWeight)
651 - Handle and report Host offered STARTTLS lines
652 - Generalize "maildrop: Unable to create a dot-lock at <path>" messages
653 - Corrected typo that prevented fatal errors from being output
654
655 2007-04-26
656 - Consolidate similar MX errors
657 - set IP address to 127.0.0.1 when from=local, and reporting both host/hostip
658 - More cleanup (re-factor common code, replace most global variables with lexicals,
659 lowercase non-global variable names, shorten variable names, etc.)
660 - Capture postsuper hold messages
661
662 2007-04-25
663 - Support postfix 2.5 TLS message changes (smtpd_tls_loglevel > 0)
664 - Move 4xx temporary rejects into their own section (experimental feature)
665
666 2007-04-18
667 - Allow for hold messages that do not contain a recipient (Thanks John Wilcock)
668
669 2007-03-26
670 - Lowercase recipient addresses in several Reject sections
671
672 2007-03-22
673 - Accept spf.pobox.com URLs in Reject recipient address
674
675 2007-03-21
676 - Handle spf lines from older version of postfix-spf, and spf.pobox.com URLs
677
678 2007-03-20
679 - Capture and report postfix-spf lines
680 - New config variable postfix_PolicySPF
681
682 2007-03-13
683 - Capture and report reject_unknown_reverse_client_hostname.
684 Thanks Michael M.
685
686 2007-03-09
687 - Capture and report as config warning: "looking for plugins" NSF error
688
689 2007-03-03
690 - fix reject header|body RE to allow "local" as host/ip
691 - really ignore lines that don't match SyslogName;
692 - add inc_unmatched subroutine for easier debug of unmatched lines
693
694 2007-02-27
695 - Capture and summarize postfix-script output (starts, stops, refresh, etc.)
696 - Remove redundant chomps
697
698 2007-02-26
699 - Fix problem in sort routine where IP addresses were being captured
700 anywhere in an output line for comparison via pack 'C4' - only
701 attempt IP comparison if an IP address is the start of an output line
702 Thanks: Ian
703 - Provide support for syslog_name in Postfix 2.4 via postfix.conf
704 variable postfix_Syslog_Name
705 - Classify PIX workarounds based on type (there are several)
706 - Change summary output criteria to check for any non-zero Totals
707
708 2007-02-25
709 - Do not interpolate log lines into printf; they may contain % chars
710
711 2007-02-17
712 - Ensure no output occurs when nothing is captured
713
714 2007-02-15
715 - Place recipients and senders in their own keys, instead of combined
716
717 2007-02-14
718 - Fix countdown bug in Deliveries, as ncrpt does not account for always_bcc
719
720 2007-02-14
721 - Make reject and warn_if_reject distinct sections
722 - Track Qids to properly report messages and bytes sent / accepted
723 - Also track messages deferred (each of which may have many deferrals)
724 - Consider reject VRFY a reject and accumulate in reject totals
725 - Move header/body reject code in with the rest of the reject code
726 - Move 'MAIL from' reject code in with the rest of the reject code
727 - Remove unused variable
728 - Print row heading separator lines only when appropriate
729 - Move printing of report headings into printReports
730 - Change Sent header to Sent via SMTP (orthogonal to Sent via LMTP)
731
732 2007-02-09
733 - Better processing of remote server "host...said" replies
734 - Made maximum report width configurable in postfix.conf
735 - All lines in report now obey max report width
736
737 2007-02-07
738 - Changed all From -> To lines to To <- From. From address is often bogus
739 and To is more interesting to see.
740
741 2007-02-06
742 - Added new configuration variable "postfix_Recipient_Delimiter", which
743 can be set to match the postfix variable "recipient_delimiter".
744 When set, allows Delivered and Sent reports to be grouped by
745 email addresses minus their address extension.
746 - Liberalized the RE for capturing VFRY rejects
747 - Reverted change of primary SASL authenticated messages; primary
748 key is once again User, followed by Method. Unknown is reported
749 when these keys are not available.
750 - Created a SASL authenticated relayed messages which hits with
751 sasl_sender is present in smtpd messages
752 - Split orig_to email addresses into a subkey. Allows reports
753 to be grouped by primary "to" address, instead of various aliases.
754 - Move Host/HostIP into their own keys for Bounce Remote section
755 - For Pix Workaround section, format HostIP / Host the same as others
756 - Add 'o' option where missing in REs
757 - Fix configuration variable importing
758
759 2007-02-03
760 - Added VFRY reject section
761 - Changed primary key for SASL authentication section to IP/hostname,
762 as any of sasl_{method,sender,user} may be absent
763 - Added RFC 3463 DSN code messages to bounce/deferred sections
764 - More parsing of various "host...said" remote server messages
765 - Add Sent via LMTP section, removing lmtp-delivered mail out of Delivered.
766 Allows users with lmtp-based content filters to avoid double counting
767 (but only for message counts; byte counts are still about 50% too large).
768 Config variable postfix_MsgsSentLmtp controls display
769
770 2007-01-28
771 - Added pre-queue content-filter overload section
772 - Reworked Bounce (local/remote) and Deferred sections
773 - Fixed several reversed captures of Host and HostIP
774 - Format Host and HostIP in Numeric hostname section
775 - Thanks: Mike Horwath
776
777 2007-01-28
778 - Made Reason the primary key in Deliverable/Undeliverable 'sendmail -bv' tests
779 - Modified re_DSN RE to capture DSNs missing 3 number response code
780 - Enhanced SASL authenticated messages to capture missing log lines
781 - Added milter-reject section
782 - Updated 'Reject server configuration error' RE for older postfix versions
783 - Fix copy/paste error which caused use of incorrect variable in bad size limit
784 - Add Concurrency limit reached section
785 - Add "maildrop" to the list of relay's considered local in Bounce section
786
787 2007-01-23
788 - Aggregate recipient/sender address verification lines (Thanks Harald Geiger)
789 - Uppercase message in reject recipient section
790
791 2007-01-22
792 - Update REs to allow null sender in sender addresses
793
794 2007-01-19
795 - Capture and summarize "triggers FILTER" messages (Thanks Eray Aslan)
796 - Fix overly permissive Server configuration error RE (Thanks Harald Geiger)
797 - Add "Server configuration error" rejects to Reject totals
798 - Add "Insufficient system storage" rejects to Reject totals
799 - Make RejectSize report consistent with others
800
801 2007-01-17
802 - Update IP RE to support IPV6 (Thanks Harald Geiger)
803 - Aggregate reject recipient address caused by SPF (Thanks Harald Geiger)
804
805 2007-01-16
806 - Made Reject HELO/EHLO report consistent with others: demoted Helo=xxx
807 string (Thanks: Jorey Bump)
808 - Fixed incorrect TotalRejects summation (typo)
809 - "Accepted" / "Rejected" summation is no longer based on "Connection";
810 now Total = Accepted + Rejected
811 * Client may or may not close connection properly after reject
812 * Multiple rejects for single connection can occur
813 - ConnectToFailure header incorrectly indicated connection was "inbound"
814 - Included Makefile for ease of installation during this testing phase (Thanks: Jorey Bump)
815
816 2006-12-16
817 - Add pcre map warnings
818 - Reordered headings to produce more obvious correlation with percentage breakdowns
819 - Second key sort is now the illegal address in illegal address in SMTP command
820 - More optimization of log entry capturing
821 - Added Sent category capturing outbound SMTP connections
822 requires modified /usr/share/logwatch/default.conf/services/postfix.conf or
823 /etc/logwatch/conf/services/postfix.con
824 - Added ability to control max print depth on a per section basis
825 - Renamed Received to Accepted (to indicate accepted for delivery, and better opposite of Reject)
826 NOTE: Accepted shows less than that of pflogsumm's Received, which incorrectly
827 increments rejected messages
828 - Reduce Accepted by Deferred and Resent, which cause double counting
829 - Removed erroneous a-z in RE for capturing QIDs
830 - Added Panic section for postfix panic messages
831 - Fixed bug which failed to increment watchdog timers
832 - Started work on better debug capability
833
834 2006-12-13
835 - Removed extra blank line for Detail <= 5
836 - Filter many more debug lines
837 - Catch and group additional warning and fatal messages
838
839 2006-12-12
840 - Made reject header/body output consistent with each other
841 - Sort reject header/body first by recipient address, for tighter groupings - reject reason is typically random
842 - Trimmed excess whitespace in reject header/body reasons
843 - Added extra line between level 1 headings
844 - Group SASL authenticated messages by sasl_username
845 - Filter TLS and SASL debug messages (smtpd_tls_loglevel = 2)
846
847 Rewrite by Mike Cappella (MrC)
848 Revision 1.29 2007/01/27 20:21:46 mrc
849 - Provide more useful information and summaries
850 - Provide increasing detail as requested via --detail
851 - Provide ability to configure per section maximum detail
852 - Optimize and combine the numerous REs
853 - Capture and summarize many more log lines
854 - Pin important errors to top of report
855 - Sort by hits, IP, and lexically
856 - Handle IPv6 addresses
857 - Generalize log line capturing and reporting
858 - Eliminate excessive copy/paste reporting code
859 - Requires updated postfix.conf file
860 - Thanks: Eray Aslan, Jorey Bump, Harald Geiger, Bill Hudacek,
861 Frederic Jacquet, Geert Janssens, Leon Kolchinsky, Rob Myroon
862
863 Revision 1.28 2006/12/15 06:24:49 bjorn
864 Filtering "sender non-delivery notification", by Ivana Varekova.
865
866 Revision 1.27 2006/12/15 05:00:41 bjorn
867 Filter all held message logs, by Hugo van der Kooij.
868
869 Revision 1.26 2006/10/20 16:51:50 bjorn
870 Additional matching of sasl messages, by Willi Mann.
871
872 Revision 1.25 2006/08/13 21:25:55 bjorn
873 Updates to work with the Postfix 2.3.x series (due to log format changes),
874 by Mike Cappella.
875
876 Revision 1.24 2006/03/22 17:43:46 bjorn
877 Changes by Harald Geiger:
878 - ignore additional statistics: messages (Postfix 2.2)
879 - replaced several 5xx Codes by [0-9]+
880 (main reason is to make them match on 4xx if in soft_bounce=yes mode)
881 - a more generic "Client host rejected" reporting
882 - changed "Messages rejected:" to "Messages rejected from sender:"
883
884 Revision 1.23 2005/12/19 15:47:47 bjorn
885 Updates from Mike Cappella:
886 - Catches some of the Unknown Users messages from newer versions of postfix
887 - Consolidates a couple of REs
888 - Adds a cumulative total to each of the Unknown users and Header content rejection headers
889 - Adds a Body content rejection section
890
891 Revision 1.22 2005/11/22 18:30:47 bjorn
892 Detecting 'virtual alias table', by Kevin Old.
893
894 Revision 1.21 2005/08/23 23:54:38 mike
895 Fixed typo probably from Roland Hermans -mgt
896
897 Revision 1.20 2005/07/25 22:26:28 bjorn
898 Added "Sender address" to "554 Service unavailable" regexp, by Who Knows
899
900 Revision 1.19 2005/04/22 13:48:28 bjorn
901 This patch catches (un)deliverable messages and many more, which were
902 missing until now on mu new postfix-2.1.*, from Paweł Gołaszewski
903
904 Revision 1.18 2005/04/17 23:12:28 bjorn
905 Patches from Peter Bieringer and Willi Mann: ignoring more lines and
906 some blank spaces
907
908 Revision 1.17 2005/02/24 17:08:05 kirk
909 Applying consolidated patches from Mike Tremaine
910
911 Revision 1.7 2005/02/16 00:43:28 mgt
912 Added #vi tag to everything, updated ignore.conf with comments,
913 added emerge and netopia to the tree from Laurent -mgt
914
915 Revision 1.6 2005/02/13 23:50:42 mgt
916 Tons of patches from Pawel and PLD Linux folks...Thanks! -mgt
917
918 Revision 1.5 2004/10/06 21:42:53 mgt
919 patches from Pawel quien-sabe -mgt
920
921 Revision 1.4 2004/07/29 19:33:29 mgt
922 Chmod and removed perl call -mgt
923
924 Revision 1.3 2004/07/10 01:54:35 mgt
925 sync with kirk -mgt
926
927 Revision 1.13 2004/06/23 15:01:17 kirk
928 - Added more patches from blues@ds.pg.gda.pl
929
930 Revision 1.12 2004/06/21 14:59:05 kirk
931 Added tons of patches from Pawe? Go?aszewski" <blues@ds.pg.gda.pl>
932 Thanks, as always!
933
934 Revision 1.11 2004/06/21 13:42:02 kirk
935 From: Matthew Wise <matt@oatsystems.com>
936 This is more of a suggestion than a true patch submission. On a busy
937 postfix server the messages sent by section is really long and not
938 helpful. This patch finds and lists the top 10 senders by number of
939 messages.
940
941 Revision 1.10 2004/06/21 13:41:04 kirk
942 Patch from rod@nayfield.com
943
944 Revision 1.9.1 2004/02/22 16:44:01 rod
945 Added patch from rod@nayfield.com
946
947 Revision 1.9 2004/02/03 03:25:02 kirk
948 Added patch from quien-sabe@metaorg.com
949
950 Revision 1.8 2004/02/03 02:45:26 kirk
951 Tons of patches, and new 'oidentd' and 'shaperd' filters from
952 Pawe? Go?aszewski" <blues@ds.pg.gda.pl>
953
954 Revision 1.7 2003/12/15 18:35:03 kirk
955 Tons of patches from blues@ds.pg.gda.pl
956
957 Revision 1.6 2003/12/15 18:09:23 kirk
958 Added standard vi formatting commands at the bottom of all files.
959 Applied many patches from blues@ds.pg.gda.pl
960
961 Revision 1.5 2003/12/15 17:45:09 kirk
962 Added clamAV update log filter from lars@spinn.dk
963
964 Revision 1.4 2003/11/26 14:36:30 kirk
965 Applied patch from blues@ds.pg.gda.pl
966
967 Revision 1.3 2003/11/18 14:04:05 kirk
968 More patches from blues@ds.pg.gda.pl
969
970 Revision 1.2 2003/11/18 04:02:21 kirk
971 Patch from blues@ds.pg.gda.pl
972
973 Revision 1.1 2003/11/03 04:49:18 kirk
974 Added postfix filter from Sven Conrad <sconrad@receptec.net>
975
976 Revision 1.1 2002/03/29 15:32:14 kirk
977 Added some filters found in RH's release
978
979 Revision ??? 2000/07/12 Simon Liddington <sjl@zepler.org>
980 converted from sendmail to postfix Sven Conrad <scon@gmx.net>
981 added unknown users, relay denials
982
983 Revision 1.1 2003/03/21 21:10 sven
984 Initial revision
985 filters all postfix/<process> messages