plugins/utils.h: avoiding warnings on empty printf statements
[monitoring-plugins.git] / NEWS
blob6e1d76cf8b8865cbd64b18b717e2c899d73346cc
1 This file documents the major additions and syntax changes between releases.
3 1.6 ...
4         FIXES
5         Don't let e.g. check_http's -C option reset SSL version if e.g. -S 1 -C 5 is specified
7         WARNINGS
8         check_procs now ignores its parent process to avoid unexpected results when invoked via certain shells
9         utils.sh no longer defines ECHO
11 1.5 2nd October 2013
12         ENHANCEMENTS
13         New check_dbi plugin for checking an (SQL) database using DBI
14         Let OpenSSL load its configuration file (see the OPENSSL_config(3) man page)
15         Add performance data to check_apt
16         Add performance data to check_procs
17         Added -4/-6 options to check_dig (Ville Mattila)
18         New check_oracle --connect option to perform real login
19         New check_nagios -t option to override the default timeout
20         New check_disk -f/--freespace-ignore-reserved option to ignore space reserved for root
21         New check_disk -N/--include-type option to limit the filesystem types to check
22         Allow for building the plugins in parallel
23         Add --without-{dbi,ldap,radius} options to ./configure
24         Made Verbose output of check_sensors compliant (Gabriele Tozzi)
25         New switch -E/--extended-perfdata for check_http to print additional performance data (Sebastian Nohn)
26         New check_http -d option to specify a string to expect within the response headers
27         New check_http -J/-K options for client certificate authentication support
28         Add support for executing queries to check_pgsql
29         Let check_pgsql accept a UNIX socket directory as hostname
30         New check_pgsql -o option to specify additional connection parameters
31         New check_fping -S option to specify the source IP address
32         New check_fping -I option to specify the interface to bind to
33         Let check_fping support IPv6
34         New check_procs -k option to ignore kernel threads (on Linux)
35         Let check_procs use /proc/<PID>/exe (if available) instead of getpid(2), unless -T is specified
36         Let check_mysql support SSL
37         Let check_mysql add perfromance metrics for all checks
38         New check_mysql -f option to specify a client options file
39         New check_mysql -g option to specify a client options group
40         New check_snmp --offset option to allow for adding/substracting an offset value to sensor data
41         Let check_snmp support an arbitrary number of OIDs
42         Let check_ide_smart support NetBSD
44         FIXES
45         Change the MAIL FROM command generated by check_smtp to be RFC compliant
46         Fix compilation of check_http without SSL support
47         Fix check_snmp reversed threshold ranges (backward-compatibility)
48         Fix check_snmp memory violation when using more than 8 oids (Robin Sonefors)
49         Fix check_apt security regular expression (Alex Bradley)
50         Fix check_http handling extra header (-k) containing semicolons (Richard Leitner)
51         Fix check_apt handling unknown exit codes from apt-get (Richard Leitner)
52         Fix deprecated imports of check_nmap.py (Fabio Rueda)
54         WARNINGS
55         check_http behaviour of -k/--header changed since it does not seperate multiple headers by semicolons anymore. Use multiple -k switches instead.
56         check_http's --proxy_authorization option is now called --proxy-authorization (it was always documented this way)
57         The contrib directory has been removed from this distribution
59 1.4.16 27th June 2012
60         ENHANCEMENTS
61         check_nt UPTIME accepts warning/critical thresholds (Ryan Kelly)
62         check_disk_smb now allows spaces in share names (#990948, #1370031, Debian #601699)
63         check_http now uses standard threshold functions (enables floating point and ranges)
64         check_http now checks for and prints the certificate cn (hostname) in SSL certificate checks (Stéphane Urbanovski)
65         check_http now supports an optional -S/--ssl value to choose the SSL protocol version (#3066166 - Jason Lunn)
66         Add perfdata to check_ssh (#3244097 - Marco Beck)
67         New option to check_smtp to ignore failures when sending QUIT (#3358348 - Duncan Ferguson)
68         New check_by_ssh -F option which allows for specifying an alternative ssh_config(5) file (#2895334 - Sven Nierlein)
69         check_sensors now detects faulty sensors unless --ignore-fault is specified (Jan Wagner)
70         utils.sh now provides a check_range function (Alex Griffin)
71         Improved the performance of check_users (Marc Remy)
72         Add perfdata to check_disk_smb (Debian #654259 - Charles-Henri Larose)
73         Updated Nagios::Plugin perl module
74         Add warning threshold to certificate expiration checks of check_tcp/http/smtp (William Leibzon)
75         Add --perf-oids option for check_snmp (Jochen Bern)
77         FIXES
78         Fix check_disk free space calculation if blocksizes differ within a disk group (Bekar - #2973603)
79         check_disk_smb now handles NT_STATUS_ACCESS_DENIED properly (Debian #601696)
80         Make check_snmp work more like v1.4.14 with regard to using special values (Timeticks, STRING) as numeric thresholds
81         Fix check_ldap overriding the port when --ssl was specified after -p
82         Fix check_procs where regex input of '|' would get displayed in output - now replaced with ','
83         Fix segfault in check_host when hostname returns multiple IP addresses (Sebastian Harl)
84         Fix check_smtp and check_tcp where duplicate messages were displayed for certificate errors
85         Fix check_ping's parsing of ping6(1) output (#1894850, Debian #514588, Debian #662638 - Matej Vela)
86         Fix a check_dhcp bug which was triggered by checking Windows 2003 DHCP servers (#3503921)
87         Disable RFC4507 support, to work around SSL negotiation issues with (at least) some Tomcat versions
88         Fix performance data label containing spaces in check_snmp (Jochen Bern)
90 1.4.15 27th July 2010
91         ENHANCEMENTS
92         New check_ntp_peer -m and -n options to check the number of usable time sources ("truechimers")
93         New check_disk_smb -a option which allows for specifying the IP address of the remote server
94         New check_radius -N option which allows for specifying the value of the NAS-IP-Address attribute
95         New check_snmp --rate option to store differences between invocations. Saves state in PREFIX/var/{plugin}
96         check_snmp -l label option now also changes the perfdata label. See WARNINGS
97         check_snmp has an --invert-search option which reverses status of the string and regexp searches
98         check_http now displays the missing search string and the URL in the output when failed (Duncan Ferguson - #2999924)
99         Updated Nagios::Plugin perl module
100         Updated gnulib to June 2010
102         FIXES
103         Fix check_ircd binding to wrong interface (#668778)
104         Add proxy-authorization option to check_http (Marcel Kuiper - #1323230, Bryan Irvine - #2863925)
105         check_icmp now increment the sequence counter in each packet
106         Fix usage of repeated -o options in check_snmp
107         Try to detect arguments passed via --with-ping[6]-command and set options accordingly (#2908236)
108         Fix memory leak in check_http for large pages (Jimmy Bergman - #2957455)
109         Fix compilation with GCC 2.96 (Konstantin Khomoutov - #2977105)
110         Fix regression introduced in #1867716 where partially valid performance strings would not be printed anymore
111         Fix regression in check_http ssl checks on some servers - make SNI an option
112         Fix guest mode support in check_disk_smb
113         Fix check_disk_smb and check_ircd failures when run via ePN
114         check_ldap now allows for specifying an empty LDAP base
115         Fix compilation error of pst3 in Solaris 8
116         Fix check_radius returning OK on unexpected results (Craig Leres - #2911752)
117         Fix translations when extra-opts aren't enabled (Jan Wagner - #2832884)
118         Fix parsing of multi-line strings in check_snmp (broken in 1.4.14) and enhance output in such case (#2832451)
119         Fix detection of pst3 64-bit compile flags with Sun CC
120         Fix cmd_run overwriting the environment, which would break some commands that needed it
121         Allow check_ifstatus to accept version=2c - used to only allow version=2 (Brian Landers)
122         Fix examples in check_disk, where it implied was possible to suffix unit values to warn/crit parameters
124         WARNINGS
125         Updated developer documentation to say that performance labels should not have an equals sign or
126         single quote in the label
127         check_http 1.4.14 introduced SSL SNI support - you now have to enable it explicitly with "--sni"
128         check_snmp -l label option is also used for the performance label. This could change history from previous uses
130 1.4.14 16th September 2009
131         check_http has options to specify the HTTP method (#2155152)
132         check_users thresholds were not working exactly as documented (>= rather than >)
133         Updated tinderbox_build script to point to new tinderbox server
134         check_ifoperstatus -n flag now works as expected (sf.net #1569488)
135         check_ifoperstatus now supports ifType based lookup for ifIndex
136         check_ups now sends a LOGOUT string (debian bug #387001)
137         Extra-opts (C plugins) now allows both '#' and ';' for comments (like N::P)
138         Extra-opts (C plugins) does not allow trailing comments anymore (like N::P)
139         Fixed dependency issue on libtap when ./configure --enable-libtap used. Warning: will install libtap
140         Fixed segfault in extra-opts under some circumstance when reading multiple sections
141         Fix long options parsing in check_disk, check_dns, check_mrtg, check_mrtgtraf and check_tcp
142         Add missing long options for check_nt (for use with extra-opts)
143         check_icmp now reports min and max round trip time perfdata (Steve Rader)
144         Fixed check_http bug where additional headers with redirection caused a segfault (Dieter Van de Walle - 2089159)
145         check_disk: make autofs mount paths specified with -p before we determine the mount list (Erik Welch)
146         Fixed buffer overflow in check_ntp/check_ntp_peer (#1999319, Ubuntu #291265)
147         Re-bundled libtap as a built-in library (--enable-libtap): detects system library as pre-1.4.13 and does not install the built-in library anymore
148         Fixed check_mrtg returning UNKNOWN instead of OK (bug #2378068)
149         Fixed check_http behaviour: all check are now performed as long as a valid response is returned (sf.net #1460312)
150         check_http --onredirect=sticky follows using the same IP address (sf.net #2550208)
151         check_http --onredirect=stickyport also follows the same port
152         Fixed coredump from check_nt when invalid drive is specified (#2179754 - Olli Hauer)
153         Fixed crash from check_nt when -H unspecified or given multiple times (sf.net #2731755, debian #521097)
154         Fixed passing of quotes in OID for check_snmp (#1985230 - Jan Wagner, patch by John Barbuto)
155         Fixed check_http sending HTTP/1.0 with v1.1 headers (#2638765)
156         Fixed check_http not timing-out on redirects
157         Fixed negate not printing the real timeout in ALRM handler when left to default
158         negate timeout result is now configurable
159         Fixed segfault in check_mysql with old slaves (#2696823 - Oskar Ahner)
160         check_nt can return UNKNOWN on timeouts (-u)
161         Fixed typos for check_disk (Chris Pepper)
162         Fixed check_mysql* not using password set in my.cnf (#2531905 - Ben Timby) - Specify an empty password explicitly if you need to override it.
163         Fixed awk subst.in/subst script path error (#2722832 - Martin Foster)
164         check_http: Add SSL/TLS hostname extension support (SNI) - (#1939022 - Joe Presbrey)
165         Fixed wrong perfdata label for output traffic in check_mrtgtraf (#2654308 - Gavin Williams)
166         Fixed check_by_ssh interpretation of quotes in -C parameter (#1985246, #2268675)
167         check_snmp now supports standard threshold ranges and doubles (floating numbers) in thresholds
168         check_fping now supports passing target timeout and interval to fping (#2347686 - Martin Foster)
169         Fixed SNMPv3 behaviour of check_ifoperstatus and check_ifstatus. Added -P to define privprotocol (#2343438 - Robin Schroeder)
170         check_ifoperstatus and check_ifstatus are now more user-friendly in case of missing arguments
171         pst3 compile fix for Sun Studio Compiler (Grant Byers)
173 1.4.13 25th Sept 2008
174         Fix Debian bug #460097: check_http --max-age broken (Hilko Bengen)
175         Optimised pst3 for systems with large number of processes (Duncan Ferguson)
176         Updated Nagios::Plugin to 0.27
177         Fix Debian bug #479013: check_dig's -l is mandatory now (sf.net #1986306)
178         check_dig now returns CRITICAL instead of WARNING when no answer section is found
179         check_procs now captures stderr in external command and adds to plugin output
180         check_snmp now only prints perfdata for non numeric values (#1867716)
181         check_icmp now supports packet size modification
182         check_http -e now accepts a comma-delimited list of expected status codes (Sven Nierlein)
183         libtap now included with this distribution for easier testing. Run ./configure with --enable-libtap
184         check_ntp_peer/check_ntp_time used to show port in --help but ignored the argument - now implemented
185         Fix possible segfault in check_ntp_peer with deliberately invalid packets
187 1.4.12 27th May 2008
188         Added ./check_nt -v INSTANCES to count number of instances (Alessandro Ren)
189         New check_icmp -s option to specify the source IP address
190         check_dns now sorts addresses for testing results for more than one returned IP (Matthias Urlichs)
191         Fix segfault in check_ntp_time and (deprecated) check_ntp (Bug #1862300)
192         check_disk should now work with large file systems (2TB+) on all archs that supports it
193         Fixed check_disk disk usage calculation when using --group=NAME (related to bug #1348746)
194         Fix help text of check_ntp* (Bug #1880095)
195         Fix bugs and flaws in best offset server selection of check_ntp_time and (deprecated) check_ntp
196         check_ntp_peer now checks for the LI_ALARM flag
197         Sync to latest Gnulib (includes new floorf function)
198         check_pgsql now successfully builds with postgres lib v8.3 (Bug #1878972)  
199         check_procs now accepts --ereg-argument-array for a regular expression match to the argument array
200         Reverted back to using pst3 for Solaris systems. Fixed issues re: -m64 needed to compile on 64bit systems
201         If applicable, Gettext linked dynamically instead of statically
202         check_dig can now pass arguments to dig by using -A/--dig-arguments (#1874041/#1889453)
203         check_ntp and check_ntp_peer now show proper jitter/stratum thresholds longopts in --help
204         check_dns now allow to repeat -a to match multiple possibly returned address (common with load balancers)
205         check_mysql and check_radius now try clearing password in processlist just like check_mysql_query
206         check_mysql and check_mysql_query now support sockets explicitely (-s, --socket)
207         negate now has the ability to replace the status text as well (-s, --substitute)
208         Added performance data to check_ping (Christian Schneemann)
209         Added support for --extra-opts in all C plugins (disabled by default, see configure --help)
210         Fixed passive option in check_by_ssh
211         On non-skipped stderr, check_by_ssh now returns UNKNOWN or worse (result from command) instead of always UNKNOWN.
212         Fix linking against OpenSSL where libdl is required
214 1.4.11 13th December 2007
215         Fixed check_http regression in 1.4.10 where following redirects to
216           relative URLs on virtual hosts failed if both "-H" and "-I" were used
217         Merged two new checks that deprecates check_ntp: check_ntp_peer and check_ntp_time.
218           You should read the --help output so see which one is suitable for you. check_ntp_peer
219           implement stratum thresholds support (feature request #1703823).
220         check_ntp now returns UNKNOWN instead of WARNING if jitter is unavailable (jitter=-1.000000)
221           as long as the thresholds range include -1. If no offset threshold is specified
222           and the offset is unavailable, will return UNKNOWN as well.
223           NOTE: If jitter thresholds are specified as integers it will return CRITICAL if jitter
224           is "-1" as the default range starts at 0. See Examples in --help output.
225         Fixed broken usage2 in check_snmp and check_cluster
226         check_cluster now accepts all valid characters in its thresholds ("-", "@", "~")
227         Fixed check_disk reporting OK if disk usage grows over 100% (bug #1348746).
228           The problem happens to be in Gnulib but a workaround have been implemented in check_disk.c
229         Fixed check_load argument handling when not passing triplets (bug #1831890)
230         Fixed buffer overflow in check_snmp (CVE-2007-5623)
231         Tinderbox builds now runs tests in a verbose mode
232         Updated Nagios::Plugin to 0.22
233         VPATH problem fixed for compiling plugins-root
235 1.4.10 28th September 2007
236         Fix check_http buffer overflow vulnerability when following HTTP redirects (CVE-2007-5198)
237         check_http now explicitly asks HTTP/1.1 servers to close the connection
238           after completion of the response
239         Check_ldaps' guessing which secure method to use (starttls vs. ssl on connect)
240           is now deprecated. See --help for further information.
241         Check_disk now calls stat() on all filesystems to check. (Old: only the ones selected using -p)
242           A meaningful error message (eg "Stale NFS Handle") is printed if stat fails.
243         New check_disk option -L: Only check local filesystems, but call stat() on remote ones, too.
244           Thus accessibility of remote filesystems can be checked without any threshold comparison.
245         Check_disk's --help now prints some examples for the new features introduced in 1.4.8
246         New check_disk -i/-I option to ignore pathes/partitions based on regular expressions
247         New check_disk -A option to select all filesystems explicitly
248         WARNING: check_disk's -E option must now be passed before -p or -r/-R arguments
249           Passing -E after -p or -r results in UNKNOWN state, now
250           This is needed due to the new ignore feature
251         Fix check_disk bug when mixing case sensitive and case insensitive regex arguments
252         New check_dhcp -u/--unicast option for emulating a DHCP relay in order
253           to check DHCP servers on remote networks
254         New check_dhcp -m/--mac option which allows for specifying the MAC
255           address to use in the DHCP request
256         The check_dhcp -r and -s options now accept host names, too
257         Fix possible check_icmp bus errors on some (non-x86/AMD64) platforms
258         Fix check_smtp's handling of multiple-packet server responses
259         WARNING: Fix for negate which may break existing commands:
260           - stop evaluating command line options through shell twice
261           - enforce a full path for the command to run
262         The "negate" utility can now remap custom states
263         Check_radius now supports radiusclient-ng
264         The (undocumented) positional parameter parsing which check_radius used
265           instead of getopt(3) if 8 arguments were given is no longer available
266         Check_by_ssh now supports multiline output
267         IPv6 support can now be disabled using ./configure --without-ipv6
268         Fix check_ntp now honor ntp flags
270 1.4.9 4th June 2007
271         Inclusion of contrib/check_cluster2 as check_cluster with some improvements
272         New/improved -E/--skip-stderr and -S/--skip-stdout options for check_by_ssh
273         check_snmp now supports Counter64
274         Fix compilation of check_ldap, check_radius and check_pgsql
275         check_load can optionally divide by number of cpus
276         Fix check_time returning wrong OK when time is before the epoch on some arch
277         Make check_http output more consistent
278         Fix possible check_http segfaults when following HTTP redirects
279         check_snmp don't warn anymore if something is printed on stderr
280         Fix check_tcp segfault when multiple expect strings are given
281         New option for check_tcp: -A/--all to test if all given expect strings match
283 1.4.8 11th April 2007
284         Respects --without-world-permissions for setuid plugins
285         check_disk extra options for regex matching of filesystems and grouping of filesystems
286         for collective thresholds
287         Better configure test for mysqlclient availability
288         Various check_ntp fixes
290 1.4.7 29th March 2007
291         check_procs uses /usr/ucb/ps if available - fixes pst3 problems on Solaris
292         Fixed MKINSTALLDIRS problem in po/
293         ./configure now detects if possible to compile check_mysql
294         Fixed broken HELO in check_smtp
295         check_icmp now allows to set a minimum number of hosts required for successs (-m)
296         check_icmp fix for *BSD when running for long time
297         check_ping times out 1 second quicker if host is unreachable
298         Root plugins installed with world executable
299         check_sybase from contrib now maintained in MonitoringExchange
300         --with-nagios-user/group reinstated ./configure option
301         New --without-world-permissions ./configure option
303 1.4.6 5th February 2007
304         Reduced number of DNS lookups in check_ping and netutils.c for IPv6 configurations
305         Fixed compile problems with *BSD re: alloca.h
306         Fixed Solaris problems with check_swap (tested on Solaris 9)
307         Fixed check_swap for HP/UX where swapinfo command was incorrect
308         Fixed check_disk inode threshold checks, regressed at r1.4.4.
309         Fixed crit/warn for check_disk perf data
310         Fixed buffer overflow in check_procs
311         Fixed error handling for UNIX sockets in netutils.c
312         New -q and -o options for check_by_ssh which are handed over to ssh(1) as is
313         Synced with latest GNUlib
314         Fixed check_jabber always returns warning
316 1.4.5
317         Fixed bug in perl's is_hostname routine
319 1.4.4
320         New C based check_ntp. The perl version is now deprecated.
321         New check_apt plugin
322         Notice: plugins in contrib/ will start to be removed from this distribution.
323           Please check at http://www.monitoringexchange.org for contributed plugins
324         Major bug fixes to check_disk where values were incorrectly calculated and alerted on.
325         check_udp2 removed. check_udp is now linked to check_tcp.c
326         check_mailq now errors if the sub-program run returns non-zero return code. This would appear
327           as if mailqs were okay when the nagios user could not query the mail-queues
328         Compile problems with check_snmp fixed
330 1.4.3
331         Setuid plugins (check_dhcp, check_icmp) separated into plugins-root/. Run make install as root to install
332         SSL plugins work with gnutls as well as OpenSSL
333         check_mysql_query added to run arbitrary SQL commands, with threshold checking
334         libtool now required for development systems
335         Notice: check_udp (compiled from check_udp.c) will be deprecated in the next release.
336           check_udp2 should be used instead and will be renamed to check_udp
338 1.4.2
339         Fix for Redhat ES4 for check_dns and check_dig
342         IPv6 support in check_ping, check_by_ssh, check_http, check_ldap, check_smtp, check_tcp
343         Internationalisation support
344         Performance data added to most plugins
345         check_disk now using GNU coreutils code
346         New plugins - check_dhcp, check_icmp
347         contrib/check_citrix has been replaced by contrib/check_ica* (requires packet_utils.pm in libexec)
348         check_http --min changed to --pagesize, added max so min:max in check
349         check_vsz and check_rss deprecated - functionality moved into check_procs
350         check_swap % thresholds changed to measure amount free, instead of amount used
351         check_disk syntax changes for -p, -m/-M, defaults to MB instead of kB
352         check_procs -C expects no path for the command name