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