Compare commits

..

No commits in common. "master" and "upstream" have entirely different histories.

191 changed files with 31774 additions and 21303 deletions

View file

@ -1,8 +1,8 @@
Installation Instructions
*************************
Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2021 Free
Software Foundation, Inc.
Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software
Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@ -225,7 +225,7 @@ order to use an ANSI C compiler:
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
HP-UX 'make' updates targets which have the same timestamps as their
HP-UX 'make' updates targets which have the same time stamps as their
prerequisites, which makes it generally unusable when shipped generated
files such as 'configure' are involved. Use GNU 'make' instead.

View file

@ -1,6 +1,6 @@
## Process this file with automake to produce Makefile.in
SUBDIRS = gl tap lib plugins plugins-scripts plugins-root @PERLMODS_DIR@
SUBDIRS = gl tap lib plugins plugins-scripts plugins-root po @PERLMODS_DIR@
EXTRA_DIST = config.rpath \
ABOUT-NLS ACKNOWLEDGEMENTS AUTHORS CODING ChangeLog FAQ NEWS \

View file

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# Makefile.in generated by automake 1.16.3 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -163,7 +163,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libcurl.m4 \
$(top_srcdir)/gl/m4/nocrash.m4 $(top_srcdir)/gl/m4/off_t.m4 \
$(top_srcdir)/gl/m4/open-cloexec.m4 \
$(top_srcdir)/gl/m4/open-slash.m4 $(top_srcdir)/gl/m4/open.m4 \
$(top_srcdir)/gl/m4/pathmax.m4 $(top_srcdir)/gl/m4/printf.m4 \
$(top_srcdir)/gl/m4/pathmax.m4 $(top_srcdir)/gl/m4/pid_t.m4 \
$(top_srcdir)/gl/m4/printf.m4 \
$(top_srcdir)/gl/m4/pthread_rwlock_rdlock.m4 \
$(top_srcdir)/gl/m4/realloc.m4 \
$(top_srcdir)/gl/m4/reallocarray.m4 \
@ -176,6 +177,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libcurl.m4 \
$(top_srcdir)/gl/m4/sockets.m4 $(top_srcdir)/gl/m4/socklen.m4 \
$(top_srcdir)/gl/m4/sockpfaf.m4 $(top_srcdir)/gl/m4/ssize_t.m4 \
$(top_srcdir)/gl/m4/stat-time.m4 $(top_srcdir)/gl/m4/stat.m4 \
$(top_srcdir)/gl/m4/std-gnu11.m4 \
$(top_srcdir)/gl/m4/stdalign.m4 \
$(top_srcdir)/gl/m4/stddef_h.m4 $(top_srcdir)/gl/m4/stdint.m4 \
$(top_srcdir)/gl/m4/stdint_h.m4 $(top_srcdir)/gl/m4/stdio_h.m4 \
@ -193,6 +195,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/libcurl.m4 \
$(top_srcdir)/gl/m4/time_r.m4 $(top_srcdir)/gl/m4/timegm.m4 \
$(top_srcdir)/gl/m4/ungetc.m4 $(top_srcdir)/gl/m4/unistd_h.m4 \
$(top_srcdir)/gl/m4/unlocked-io.m4 \
$(top_srcdir)/gl/m4/vararrays.m4 \
$(top_srcdir)/gl/m4/vasnprintf.m4 \
$(top_srcdir)/gl/m4/vasprintf.m4 \
$(top_srcdir)/gl/m4/visibility.m4 \
@ -266,10 +269,12 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(srcdir)/test.pl.in $(top_srcdir)/build-aux/compile \
$(top_srcdir)/build-aux/config.guess \
$(srcdir)/test.pl.in $(top_srcdir)/build-aux/config.guess \
$(top_srcdir)/build-aux/config.rpath \
$(top_srcdir)/build-aux/config.sub \
$(top_srcdir)/build-aux/install-sh \
@ -277,11 +282,10 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(top_srcdir)/build-aux/missing \
$(top_srcdir)/build-aux/mkinstalldirs \
$(top_srcdir)/pkg/solaris/pkginfo.in ABOUT-NLS AUTHORS COPYING \
ChangeLog INSTALL NEWS README THANKS build-aux/compile \
build-aux/config.guess build-aux/config.rpath \
build-aux/config.sub build-aux/install-sh build-aux/ltmain.sh \
build-aux/missing build-aux/mkinstalldirs config.rpath \
mkinstalldirs
ChangeLog INSTALL NEWS README THANKS build-aux/config.guess \
build-aux/config.rpath build-aux/config.sub \
build-aux/install-sh build-aux/ltmain.sh build-aux/missing \
build-aux/mkinstalldirs config.rpath mkinstalldirs
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@ -352,8 +356,6 @@ CFLAGS = @CFLAGS@
CFLAG_VISIBILITY = @CFLAG_VISIBILITY@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CYGPATH_W = @CYGPATH_W@
DBILIBS = @DBILIBS@
DEFS = -DLOCALEDIR=\"$(localedir)\"
@ -373,7 +375,6 @@ ENOLINK_VALUE = @ENOLINK_VALUE@
EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@
EOVERFLOW_VALUE = @EOVERFLOW_VALUE@
ERRNO_H = @ERRNO_H@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXTRAS = @EXTRAS@
EXTRAS_ROOT = @EXTRAS_ROOT@
@ -1745,8 +1746,6 @@ install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = $(datadir)/locale
localedir_c = @localedir_c@
localedir_c_make = @localedir_c_make@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
@ -1766,7 +1765,7 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
with_trusted_path = @with_trusted_path@
SUBDIRS = gl tap lib plugins plugins-scripts plugins-root @PERLMODS_DIR@
SUBDIRS = gl tap lib plugins plugins-scripts plugins-root po @PERLMODS_DIR@
EXTRA_DIST = config.rpath \
ABOUT-NLS ACKNOWLEDGEMENTS AUTHORS CODING ChangeLog FAQ NEWS \
NP-VERSION-GEN REQUIREMENTS SUPPORT THANKS \
@ -1952,6 +1951,7 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

59
NEWS
View file

@ -1,64 +1,5 @@
This file documents the major additions and syntax changes between releases.
2.4.0 25th Jul 2024
FIXES
* check_dbi: Compiler warning for uninitialized variable
* check_curl: Initialize pointer before usage
* check_ntp: Initialize intermediate results in any case
* Fixes for -Wsign-compare
* check_tcp: Fixes an error with using the wrong type for a variable
* check_mailq: exit on empty strings and exit early
* check_users: Change option for sanity checking arguments to avoid segfault
* check_users: Update help to properly show that thresholds are ranges
* check_users: fix segfault
* check_dbi: Fix compiler warning for uninitialized variable
* check_curl: Initialize pointer before usage
* check_ntp: Initialize intermediate results in any case
* Fix logic in is_uint64_t to fix type-limit warning
* check_ntp_peer: Fixes for Wmaybe-unitialized and some restructuring
* check_dns: Remove unused variable
* check_ntp_peer: Fixes for Wmaybe-unitialized and some restructuring
* check_dns: Remove unused variable
* check_disk: fix ignore-missing in combination with includes
* check_procs: ignore our own children
* Prevent -lcrypto from showing up in Makefile dependencies
* Change irritating NULL assignment
* check_http: Remove self assignment of a variable and add some comments
* check_snmp: Remove unused variable
* check_dhcp: Make implicit conversion explicit to dismiss warning
* check_http: Remove self assignment of a variable and add some comments
* check_dhcp: Make implicit conversion explicit to dismiss warning
* Ini Parser: Avoid freeing symbols from text section
* check_icmp: keep performance data order in case of none-reachable hosts
* check_swap: Change another fake boolean to a real one
* check_swap: Rename type since *_t is reserved for C standard types
* check_ssh: Fix a typo in "remote-protocol parameter
* check_ssh: Handle non-alpha software versions
* check_ssh: properly parse a delayed version control string
* check_disk: Fail on missing arguments for --warning and --critical and fix a test case
* check_disk: Use new test function for percentage expressions
* check_load: remove unused code
* check_curl/check_http: clarified format of POST data
ENHANCEMENTS
* Use C99 booleans
* check_mailq: remove trailing whitespaces
* check_mailq: unify tabs/spaces
* check_oracle: Shellcheck fixes
* check_ups: output ups.realpower if supported
* check_disk: add -n short option for --ignore-missing
* check_procs: Improve help text, mentioning excluded processes
* check_procs: Generalise wording, remove mentioning of nrpe
* check_curl: add haproxy protocol option
* Improve negate plugin helptext
* check_disk: increase alert precision
* check_ircd: IPv6 support
* check_nwstat: adds percentage used space
* Add new test function for percentage expressions
* check_swap: Possibility to run check_swap without thresholds
* check_ups: additional alarm conditions
* check_http/check_curl: added a --regex-state option to change the state of a regex check
2.3.5 18th Oct 2023
FIXES
* Include maxfd.h in lib Makefile

View file

@ -6,7 +6,7 @@
SRC_ROOT=`dirname $0`
NPVF=NP-VERSION-FILE
DEF_VER=2.4.0
DEF_VER=2.3.5
LF='
'

43
THANKS
View file

@ -2,18 +2,18 @@ This software is brought to you by the Monitoring Plugins Development Team. Howe
there have been many contributors to this project. Everyone below has helped in
raising bug reports, creating patches or contributing new plugins.
Matthias Hähnel
dag rob?le
Diego Elio Pettenò
Elan Ruusamäe
Thoralf Rickert-Wendt
Aksel Sjögren
fabiodds
Nicolai Søborg
Arkadiusz Miśkiewicz
Wolfgang Karall-Ahlborn
dag rob?le
Matthias Döhler
Marc Sánchez
Wolfgang Karall-Ahlborn
Thoralf Rickert-Wendt
Diego Elio Pettenò
Nicolai Søborg
Elan Ruusamäe
Matthias Hähnel
fabiodds
Aksel Sjögren
Randy O'Meara
Oskar Ahner
Lance Albertson
@ -25,8 +25,8 @@ Felipe Gustavo de Almeida
Michael Almond
Michael Anthon
Bernd Apfel
Paula Arnold
Bernd Arnold
Paula Arnold
Kondoros Attila
Daniel Austin
Karol Babioch
@ -89,9 +89,9 @@ Lee Clemens
Ben Clewett
Jean-Claude Computing
Lionel Cons
Charlie Cook
Garry Cook
Ollie Cook
Garry Cook
Charlie Cook
Luca Corti
Greg Cox
Jason Crawford
@ -135,8 +135,8 @@ Paulo Fessel
James Fidell
Tobias Fiebig
Roman Fiedler
Bernhard Fischer
Johan Fischer
Bernhard Fischer
Matthias Flacke
Martin Foster
Felix Frank
@ -149,12 +149,11 @@ Tim Gates
Sven Geggus
Jonas Genannt
Robby Giffin
Florian Gleixner
Flo Gleixner
Florian Gleixner
Evgeni Golov
Joseph Gooch
Aravind Gottipati
Ralph Gottschalkson
Kev Green
Steve Greenland
Roberto Greiner
@ -167,11 +166,10 @@ Sebastien Guay
Linda Guo
Jon Hallett
Steve Hanselman
Jacob Hansen
Ask Bjoern Hansen
Jacob Hansen
Sebastian Harl
Michael Haro
Sven Hartge
Olli Hauer
Gunnar Hellekson
Stuart Henderson
@ -206,7 +204,6 @@ Konstantin Khomoutov
Serhan Kiymaz
Alexander A. Klimov
Denis Knauf
Eric Knibbe
Harald Koch
Tilman Koschnick
John Koyle
@ -250,8 +247,8 @@ Gerardo Malazdrewicz
Ricardo Maraschini
Michael Markstaller
John Marquart
Ernst-Dieter Martin
Jason Martin
Ernst-Dieter Martin
Christopher Maser
Mathieu Masseboeuf
Alexander Matey
@ -296,7 +293,6 @@ Remi Paulmier
Tom Payerle
Nick Peelman
Fabian Pehla
Alvar Penning
Chris Pepper
Matt Perry
Matthew Peters
@ -322,7 +318,6 @@ Abid Rasheed
Patrick Rauscher
Jeremy Reed
Spenser Reinhardt
Eunice Remoquillo
Marc Remy
Alessandro Ren
Joe Rhett
@ -330,7 +325,6 @@ Cliff Rice
Alain Richard
Didi Rieder
Steve Rigler
Emmanuel Riviere
Josip Rodin
Kenny Root
Wolfgang Rosenauer
@ -341,13 +335,12 @@ Sascha Runschke
Dietmar Ruzicka
Ralph Rye
Alen Salamun
Louis Sautier
Sven Schaffranneck
Christoph Schell
Thomas Schimpke
Benjamin Schmid
Sebastian Schmidt
Christian Schmidt
Sebastian Schmidt
Henning Schmiedehausen
Christian Schneemann
Cove Schneider
@ -423,8 +416,8 @@ Shawn Wills
Rob Windsor
Mario Witte
Alexander Wittig
Brian De Wolf
Tobias Wolf
Brian De Wolf
Eric Wunderlin
Patric Wust
Jamie Zawinski

769
aclocal.m4 vendored

File diff suppressed because it is too large Load diff

View file

@ -1,348 +0,0 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN* | MSYS*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/* | msys/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:

1500
build-aux/config.guess vendored

File diff suppressed because it is too large Load diff

2867
build-aux/config.sub vendored

File diff suppressed because it is too large Load diff

View file

@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by

View file

@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify

View file

@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 2011-2021 Free Software Foundation, Inc.
# Copyright (C) 2011-2020 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -105,11 +105,8 @@ trap "st=130; $do_exit" 2
trap "st=141; $do_exit" 13
trap "st=143; $do_exit" 15
# Test script is run here. We create the file first, then append to it,
# to ameliorate tests themselves also writing to the log file. Our tests
# don't, but others can (automake bug#35762).
: >"$log_file"
"$@" >>"$log_file" 2>&1
# Test script is run here.
"$@" >$log_file 2>&1
estatus=$?
if test $enable_hard_errors = no && test $estatus -eq 99; then
@ -131,7 +128,7 @@ esac
# know whether the test passed or failed simply by looking at the '.log'
# file, without the need of also peaking into the corresponding '.trs'
# file (automake bug#11814).
echo "$res $test_name (exit status: $estatus)" >>"$log_file"
echo "$res $test_name (exit status: $estatus)" >>$log_file
# Report outcome to console.
echo "${col}${res}${std}: $test_name"

View file

@ -338,7 +338,8 @@
may be supplied by this distribution. */
#undef HAVE_ALLOCA
/* Define to 1 if <alloca.h> works. */
/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
*/
#undef HAVE_ALLOCA_H
/* Define to 1 if you have the <arpa/inet.h> header file. */
@ -859,6 +860,9 @@
/* Define to 1 if you have the `memmove' function. */
#undef HAVE_MEMMOVE
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the <minix/config.h> header file. */
#undef HAVE_MINIX_CONFIG_H
@ -1060,9 +1064,6 @@
/* Define to 1 if you have the <stdio_ext.h> header file. */
#undef HAVE_STDIO_EXT_H
/* Define to 1 if you have the <stdio.h> header file. */
#undef HAVE_STDIO_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
@ -1075,7 +1076,7 @@
/* Define to 1 if you have the `strdup' function. */
#undef HAVE_STRDUP
/* Define if you have `strerror_r'. */
/* Define to 1 if you have the `strerror_r' function. */
#undef HAVE_STRERROR_R
/* Define to 1 if you have the <strings.h> header file. */
@ -1835,9 +1836,9 @@
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at runtime.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
#undef STACK_DIRECTION
/* Define if the block counts reported by statfs may be truncated to 2GB and
@ -1873,9 +1874,7 @@
/* Define if statvfs64 should be preferred over statvfs. */
#undef STAT_STATVFS64
/* Define to 1 if all of the C90 standard headers exist (not just the ones
required in a freestanding environment). This macro is provided for
backward compatibility; new code need not use it. */
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define to 1 if strerror_r returns char *. */
@ -1896,8 +1895,7 @@
/* Define to 1 if time_t is signed. */
#undef TIME_T_IS_SIGNED
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. This
macro is obsolete. */
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Define to 1 if your <sys/time.h> declares `struct tm'. */

20606
configure vendored

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.64)
AC_INIT(monitoring-plugins,2.4.0)
AC_INIT(monitoring-plugins,2.3.5)
AC_CONFIG_SRCDIR(NPTest.pm)
AC_CONFIG_FILES([gl/Makefile])
AC_CONFIG_AUX_DIR(build-aux)
@ -1923,6 +1923,7 @@ AC_OUTPUT(
plugins-scripts/utils.sh
test.pl
pkg/solaris/pkginfo
po/Makefile.in
)

15
debian/.gitlab-ci.yml vendored
View file

@ -1,15 +0,0 @@
---
include:
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml
variables:
RELEASE: 'unstable'
SALSA_CI_DISABLE_APTLY: 0
SALSA_CI_DISABLE_AUTOPKGTEST: 0
SALSA_CI_DISABLE_BLHC: 1
SALSA_CI_DISABLE_LINTIAN: 0
SALSA_CI_DISABLE_PIUPARTS: 0
SALSA_CI_DISABLE_REPROTEST: 0
SALSA_CI_DISABLE_BUILD_PACKAGE_ALL: 0
SALSA_CI_DISABLE_BUILD_PACKAGE_ANY: 0
SALSA_CI_ENABLE_BUILD_PACKAGE_TWICE: 1

114
debian/NEWS vendored
View file

@ -1,114 +0,0 @@
monitoring-plugins (2.4.0-3) unstable; urgency=medium
The check_http plugin was deprecated. Please migrate the check command
definitions over to the drop-in replacement check_curl. It should be
sufficient to replace check_http with check_curl in your command definitions.
The check_curl plugin was moved to the monitoring-plugins-basic package for
a smoother migration path. For making things easy, update-alternatives can
be used to change the check_http alternative. This can be done with the
command: update-alternatives --config check_http
-- Jan Wagner <waja@cyconet.org> Mon, 21 Apr 2025 11:00:59 +0200
monitoring-plugins (2.1.2-3) unstable; urgency=medium
We switched again over to another radius library. This time radcli
to fix #822337. This makes it again necessary to migrate your radius
credentials from /etc/radiusclient/servers to /etc/radcli/servers
in case you are using check_radius.
Please install the new dependencies in this case if you don't install
Recommends by default. Those dependencies can be found in
/usr/share/doc/monitoring-plugins-standard/README.Debian.plugins.
-- Jan Wagner <waja@cyconet.org> Wed, 02 Nov 2016 23:59:10 +0100
monitoring-plugins (2.0-1) unstable; urgency=medium
This software project was renamed by upstream. For more information
see https://www.monitoring-plugins.org/news/new-project-name.html.
We renamed the package(s) also, but we kept the directories
/etc/nagios-plugins/ and /usr/lib/nagios/plugins for now, cause
many other packages rely on them. Maybe we have to change that later.
We decided to set capabilities(7) for check_icmp and check_dhcp, when
possible. This means libcap2-bin needs to be installed and the
kernel (in our case this is linux) needs to support that. This
makes it possible to avoid suid bit set for those plugins.
We even switched over to freeradius-client to fix #721621. This makes
it necessary to migrate you radius credentials from
/etc/radiusclient-ng/servers to /etc/radiusclient/servers in case you
are using check_radius.
check_snmp is now evaluating negative values properly, but it might be
returning CRITICALs where it used to return OK and was ignored, if a
negative value turns out to actually be a valid value.
If negative values are valid, this can be worked around, by adding "~:"
to the warning/critical threshold : 100 -> ~:100
-- Jan Wagner <waja@cyconet.org> Mon, 23 Jun 2014 08:34:45 +0200
nagios-plugins (1.4.15-6) unstable; urgency=low
Created a nagios-plugins-common package which ships files possibly needed
also by other plugin packages and should installed as dependency
Removed check_bgpstate and check_linux_raid, which are shiped in upstream
contrib/ and are not maintained there anymore. If you need a replacement
for check_linux_raid, have a look into check_raid from
nagios-plugins-contrib package.
-- Jan Wagner <waja@cyconet.org> Tue, 15 May 2012 13:41:33 +0200
nagios-plugins (1.4.15-4) unstable; urgency=low
Moved linked libraries against nagios-plugins-standard from Depends to
Recommends and mention them in
/usr/share/doc/nagios-plugins-standard/README.Debian.plugins.
-- Jan Wagner <waja@cyconet.org> Sun, 13 Feb 2011 22:51:54 +0100
nagios-plugins (1.4.14-2) unstable; urgency=low
Moved check_mailq to nagios-plugins-standard, because it requires the mailq
binary and it is shipped with postfix, exim, sendmail and qmail, which is
the plugin is intended to check.
-- Jan Wagner <waja@cyconet.org> Thu, 11 Mar 2010 13:24:23 +0100
nagios-plugins (1.4.14-1) unstable; urgency=low
If your are using check_linux_raid.pl or check_bgpstate (respectively the
check_snmp_bgpstate), they will be removed sometime in the future, as
upstream will remove they shortly ... so be prepared!
The qstat package is not a dependency any more but recommanded. As Recommands
installed by default these days, there shouldn't much users effected. If you
have turned off the installation of recommanded packages and you are using
check_quake, please install the qstat package again.
For all non linux archs, we depend on inetutils-ping, since now. As actually
inetutils-ping doesn't support a deadlines option (see #565137), it will be
likely, that you will get plugin timeouts from check_ping. As iputils-ping
is not an option here, due it's not available, you have to deal with that.
The suggestion would be in this case, to migrate over to check_icmp.
-- Jan Wagner <waja@cyconet.org> Sun, 20 Dec 2009 20:01:07 +0100
nagios-plugins (1.4.12-1) unstable; urgency=low
Removed default port of check_radius definition in favor of the ability to
specify it as 4th argument.
-- Jan Wagner <waja@cyconet.org> Fri, 06 Jun 2008 12:25:59 +0200
nagios-plugins (1.4.5-3) unstable; urgency=low
ifstatus.cfg has changed. Now you have to provide a community in the first
argument ($ARG1$). Description and IfIndex moved to second argument ($ARG2$).
E.g.: use "check_ifstatus!public" instead of "check_ifstatus" as
check_command!
-- Jan Wagner <waja@cyconet.org> Thu, 11 Jan 2007 14:56:47 +0100

95
debian/README.Debian vendored
View file

@ -1,95 +0,0 @@
================================================================================
monitoring-plugins for Debian
================================================================================
below is a collection of various bits of information that might be
helpful to users of monitoring-plugins in debian.
================================================================================
plugins and dependencies
================================================================================
some plugins require additional libraries and programs. to prevent you from
having to install dozens of further packages that you don't actually need,
there is no strict dependency on some of them.
see /usr/share/doc/monitoring-plugins-standard/README.Debian.plugins for details.
================================================================================
how to use plugins
================================================================================
- you can invoke the plugins with "--help" to get help how to use the plugins
- a short usage can be usually obtained by just running the check without
arguments
- if you need more information, how to use plugins, have a look at:
http://www.monitoring-plugins.org/doc/faq/index.html
================================================================================
predefined / shipped check commands
================================================================================
we are shipping predefined checks, to make users life easier. at the first look,
this seems really nice. providing checks for every special case (see check_http)
may end up in a unsupportable state of our package.
for example one check is testing a service on a special port, where we provide
a check command. after some time, this service changes its port after some time,
cause the developers of this software decided for any reason to do so. changing
the port in the existing check will break installations, which are using the
service with the old behavior. new users will getting confused of not using the
correct port for their shiny service.
cause of this conflict, we try to provide flexible checks, which may look
complicated at first, but giving the user more power.
a good example for using such a general approach is check_nt / check_nscp. some
3rd party sources (guessing they can traced back to one) are suggesting using
two args in some way like:
define command {
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$
}
beside specifying not the port, we are not using "$ARG2$", cause all arguments
of "$ARG2$" can just be used in "$ARG1$" without any problem.
this gives you the possibility to use every check in your service definition,
without the problem about changes in your environment. you can easily change
your service definition as soon your environment changes without breaking the
command definition.
================================================================================
different plugin packages and how to avoid installing massive dependencies
================================================================================
if you're frustrated by all the crap being brought in by monitoring-plugins (for
example if you're installing nrpe or nsca on a remote host), try the
monitoring-plugins-basic package.
================================================================================
plugins needing root privilege or capabilities(7) set
================================================================================
the check_dhcp, check_icmp and maybe others plugins require root privileges or
capabilities(7) to run, because of the low-level packet mangling that they
perform. but, in the interest of the "safe default", these plugins will not
be installed with the suid bit set.
if setcap is able set the necessary capabilities, you are fine. if the setcap
binary is not installed or not able to set the capabilities, you need to
either set the capabilities (eg. cap_net_raw+ep) for your own or provide root
privileges. You could go the lazy way and install libcap2-bin and run the
following afterwards:
# /var/lib/dpkg/info/monitoring-plugins-basic.postinst configure
there are two recommended ways about providing root priviles to your plugins
on your system:
- set the suid bit with dpkg-statoverride:
# dpkg-statoverride --update --add root nagios 4750 $plugin
where $plugin is the specific plugin you want to grant such privileges.
- use sudo to grant the permissions and modify your plugin config
of these two, the first is recommended because it's the simplest and
has the same effect as the second.

View file

@ -1,61 +0,0 @@
monitoring-plugins on Debian
============================
Some plugins require additional libraries and programs. To prevent you from
having to install dozens of further packages that you don't actually need,
there is no strict dependency on some of them. Rather, they are listed as
recommendations and suggests.
apt-get(8) and aptitude(8) will install recommended packages automatically by
default. If you did not disable this feature you will have everything in place
to operate all plugins when installing the "monitoring-plugins-standard"
package, beside the packages listed as suggests.
Else you have to install missing dependencies manually (see the section "Plugin
dependencies" below).
Plugin dependencies:
--------------------
check_bgpstate:
* libnet-snmp-perl
* whois
check_breeze:
* snmp
check_disk_smb:
* smbclient
check_dns:
* dnsutils
check_fping:
* fping
check_game:
* qstat
check_ifoperstatus:
* libnet-snmp-perl
check_ifstatus:
* libnet-snmp-perl
check_mailq:
* sendmail binary of qmail or one of the following packages
- postfix
- sendmail-bin
- exim4-daemon-heavy
- exim4-daemon-light
* sudo
check_oracle:
* procps
check_rpc:
* rpcbind
check_wave:
* snmp
@PLUGIN_DEPS@

24
debian/README.source vendored
View file

@ -1,24 +0,0 @@
We use dpatch for patch handling inside our package(s). Please see
/usr/share/doc/dpatch/README.source.gz (if you have installed dpatch) for
documentation about dpatch.
Since Version 1.5.0 we are repackaging the upstream tarball to stop providing:
* perlmods/
Therefor you should use the script debian/bin/repack.sh:
repack.sh <upstream-tarball>
This can also be automatically done with 'uscan --force-download'
Creating a sufficiant tarball from latest git snapshot:
* Install 'autoconf automake' beside the build-depends
* Following RELEASING[1] you need
- cd /tmp/monitoringlug
- tools/setup
- ./configure
- make dist
[1] https://github.com/monitoring-plugins/monitoring-plugins/blob/master/doc/RELEASING

View file

@ -1,106 +0,0 @@
#! /usr/bin/perl
#
# collectd - gen_plugin_deps.pl
# Copyright (C) 2007 Sebastian Harl
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; only version 2 of the License is applicable.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
# Author:
# Sebastian Harl <sh at tokkee.org>
use strict;
use warnings;
# actual not needed
my $extra_deps = {
# sensors => [ 'lm-sensors' ],
};
my $infile = "debian/README.Debian.plugins.in";
my $outfile = "debian/README.Debian.plugins";
my ($ifile, $ofile);
if (! open($ifile, "<", $infile)) {
print STDERR "Could not open file '$infile': $!\n";
exit 1;
}
if (! open($ofile, ">", $outfile)) {
print STDERR "Could not open file '$outfile': $!\n";
exit 1;
}
while (my $line = <$ifile>) {
if ($line !~ m/^\@PLUGIN_DEPS\@\n$/) {
print $ofile $line;
}
else {
print_plugin_deps($ofile);
}
}
close($ofile);
close($ifile);
sub print_plugin_deps
{
my $fh = shift;
my $pdir = undef;
my $i = 0;
my $plugindir = "debian/monitoring-plugins-standard/usr/lib/nagios/plugins/";
if (! opendir($pdir, $plugindir)) {
print STDERR "Could not open directory '$plugindir': $!\n";
exit 1;
}
foreach my $dirent (sort readdir($pdir)) {
# if ($dirent !~ m/^(\w+).so$/) {
if ($dirent !~ m/^check_(\w+)$/) {
next;
}
my $name = $1;
my $deps = `dpkg-shlibdeps -O $plugindir/$dirent`;
chomp $deps;
$deps =~ s/^shlibs:Depends=//;
my @deps = grep !m/^libc6\b/, split m/, /, $deps;
if (scalar @deps) {
if (0 < $i) {
print $fh "\n";
}
++$i;
print $fh "check_$name:\n";
if (defined $extra_deps->{$name}) {
unshift @deps, @{$extra_deps->{$name}};
}
foreach my $dep (@deps) {
print $fh " * $dep\n";
}
}
}
}
# vim: set tw=78 sw=4 ts=4 noexpandtab :

39
debian/bin/repack.sh vendored
View file

@ -1,39 +0,0 @@
#!/bin/bash
# Borrowed from Raphael Geissert's Debian PHP repack script.
set -e
if [ ! -f "$3" ] && [ ! -f "$1" ]; then
echo "This script must be run via uscan or by manually specifying the tarball" >&2
exit 1
fi
tarball=
[ -f "$3" ] && tarball="$3"
[ -z "$tarball" -a -f "$1" ] && tarball="$1"
tarball="$(readlink -f "$tarball")"
tdir="$(mktemp -d)"
trap '[ ! -d "$tdir" ] || rm -r "$tdir"' EXIT
tar -xzf $tarball -C $tdir
cp -a "$tarball" "$tarball.orig"
distdir="$(basename $(ls -d $tdir/*))"
srcdir="$tdir/$distdir"
#echo "Adjusting $srcdir/configure"
sed -i 's/perlmods\/Makefile\ //' $srcdir/configure
sed -i '/perlmods\/Makefile/d' $srcdir/configure
#echo "Adjusting $srcdir/configure.in"
[ -f $srcdir/configure.in ] && sed -i '/perlmods\/Makefile/d' $srcdir/configure.in
#echo "Adjusting $srcdir/configure.am"
[ -f $srcdir/configure.ac ] && sed -i '/perlmods\/Makefile/d' $srcdir/configure.ac
#echo "Adjusting $srcdir/Makefile*"
sed -i 's/perlmods\ //' $srcdir/Makefile*
#echo "Removing $srcdir/perlmods/
rm -rf $srcdir/perlmods/
tar -cof "${tarball%.*}" -C $tdir/ $distdir
gzip -f9 "${tarball%.*}"

1823
debian/changelog vendored

File diff suppressed because it is too large Load diff

116
debian/control vendored
View file

@ -1,116 +0,0 @@
Source: monitoring-plugins
Section: net
Priority: optional
Maintainer: Debian Nagios Maintainer Group <pkg-nagios-devel@lists.alioth.debian.org>
Uploaders: Jan Wagner <waja@cyconet.org>
Build-Depends: debhelper-compat (= 13),
libcurl4-openssl-dev | libcurl4-nss-dev | libcurl4-gnutls-dev,
libdbi-dev,
libradcli-dev | libfreeradius-client-dev,
libkrb5-dev,
libldap2-dev,
default-libmysqlclient-dev,
libnet-snmp-perl,
libpq-dev,
libssl-dev,
libsystemd0,
libsystemd-dev,
liburiparser-dev,
mawk | awk,
perl,
procps
Standards-Version: 4.7.2
Vcs-Browser: https://salsa.debian.org/nagios-team/monitoring-plugins
Vcs-Git: https://salsa.debian.org/nagios-team/monitoring-plugins.git
Homepage: https://www.monitoring-plugins.org
Rules-Requires-Root: binary-targets
Package: monitoring-plugins
Architecture: all
Depends: monitoring-plugins-basic, monitoring-plugins-standard, ${misc:Depends}
Suggests: icinga2, nagios-plugins-contrib
Provides: nagios-plugins
Description: Plugins for nagios compatible monitoring systems (metapackage)
Plugins for nagios compatible monitoring systems like Naemon and Icinga.
.
This metapackage will install the entire suite of plugins for nagios
compatible monitoring systems.
If you are installing monitoring plugins on a remote "satellite" server
(using nagios-nrpe-server or nsca), you may be interested in the
monitoring-plugins-basic package.
Package: monitoring-plugins-common
Architecture: any
Depends: ucf, ${misc:Depends}, ${shlibs:Depends}
Suggests: icinga2
Description: Common files for plugins for nagios compatible monitoring
Common files for plugins for nagios compatible monitoring systems like Naemon
and Icinga.
.
This package contains common files which maybe needed for plugins.
Package: monitoring-plugins-basic
Architecture: any
Depends: inetutils-ping [kfreebsd-any hurd-any],
iputils-ping [linux-any],
monitoring-plugins-common,
procps,
ucf,
${misc:Depends},
${shlibs:Depends}
Recommends: libcap2-bin [linux-any]
Suggests: icinga2
Breaks: monitoring-plugins-standard (<< 2.4.0-3~)
Replaces: monitoring-plugins-standard (<< 2.4.0-3~)
Provides: nagios-plugins-basic
Description: Plugins for nagios compatible monitoring systems (basic)
Plugins for nagios compatible monitoring systems like Naemon and Icinga. It
contains the following plugins:
.
check_apt, check_by_ssh, check_clamd, check_cluster,
check_curl, check_dhcp, check_disk, check_dummy,
check_file_age, check_ftp, check_host, check_http,
check_icmp, check_ide_smart, check_imap, check_ircd,
check_jabber, check_load, check_log, check_mrtg,
check_mrtgtraf, check_nagios, check_nntp, check_nntps,
check_nt, check_ntp, check_ntp_peer, check_ntp_time,
check_nwstat, check_overcr, check_ping, check_pop,
check_procs, check_real, check_rta_multi, check_sensors,
check_simap, check_smtp, check_spop, check_ssh,
check_ssmtp, check_swap, check_tcp, check_time, check_udp,
check_ups, check_users
.
This package provides a basic set of plugins with minimal external
dependencies. It is not likely to be useful by itself unless you are
using a remote "satellite" system (using nagios-nrpe-server, check_by_ssh or
nsca, for example).
Package: monitoring-plugins-standard
Architecture: any
Depends: monitoring-plugins-basic, ucf, ${misc:Depends}, ${shlibs:Depends}
Recommends: bind9-host | host,
dnsutils,
libnet-snmp-perl,
rpcbind,
smbclient,
snmp,
sudo,
${shlibs:Recommends}
Suggests: fping,
icinga2,
postfix | sendmail-bin | exim4-daemon-heavy | exim4-daemon-light,
qstat
Provides: nagios-plugins-standard
Description: Plugins for nagios compatible monitoring systems (standard)
Plugins for nagios compatible monitoring systems like Naemon and Icinga. It
contains the following plugins:
.
check_breeze, check_dbi, check_dig, check_disk_smb, check_dns,
check_flexlm, check_fping, check_game, check_hpjd, check_ifoperstatus,
check_ifstatus, check_ldap, check_ldaps, check_mailq, check_mysql,
check_mysql_query, check_oracle, check_pgsql, check_radius, check_rpc,
check_snmp, check_wave
.
This package provides the suite of plugins that are most likely to be
useful on a central monitoring host. Some scripts need more packages installed
to work, which is implemented as recommends.

287
debian/copyright vendored
View file

@ -1,287 +0,0 @@
This package was debianized by Guido Trotter <ultrotter@debian.org> on
Sun, 1 Feb 2004 10:05:51 +0100.
It was downloaded from https://www.monitoring-plugins.org/
Upstream Authors: Felipe Gustavo de Almeida
Ian Cass
Robert Dale
Karl DeBisschop
Ragnar Hojland Espinosa
Ethan Galstad
Bo Kersey
Pedro Leite
Richard Mayhew
Remi Paulmier
Didi Rieder
Tom Shields
Sean Finney
Jeremy T Bouse
Peter Bray
Gavin Carr
Matthias Eble
Subhendu Ghosh
Thomas Guyot-Sionnest
Stanley Hopcroft
Matthew Kent
Harper Mann
Benoit Mortier
Sven Nierlein
Nathan Vonnahme
Ton Voon
Holger Weiss
Michael Wirtgen
Copyright:
Copyright (C) 1985, 2013 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
From upstream README:
You can redistribute and/or modify this software under the terms of the GNU
General Public License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version; with the
additional exemption that compiling, linking, and/or using OpenSSL is
allowed.
This software is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.
Files with different Licenses:
build-aux/config.guess
build-aux/config.sub
build-aux/ltmain.sh
plugins-scripts/check_mailq.pl
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, see <https://www.gnu.org/licenses/>.
gl/alloca.in.h
gl/as*
gl/base64*
gl/basename.c
gl/cloexec.c
gl/config.charset
gl/creat-safer.c
gl/c-strtod.c
gl/d*
gl/e*
gl/fcntl*
gl/fd-safer.c
gl/float.*
gl/float
gl/floorf.c
gl/fsusage*
gl/full*
gl/gai_strerror.c
gl/getaddrinfo*
gl/gethostname.c
gl/getloadavg.c
gl/getopt*
gl/gettext.h
gl/inet_ntop*
gl/intprops.h
gl/localcharset*
gl/malloc.c
gl/math.in.h
gl/mountlist*
gl/netinet_in.in.h
gl/printf-*
gl/ref-*
gl/safe-*
gl/size_max.h
gl/snprintf.c
gl/stdbool.in.h
gl/stdint.in.h
gl/stdio.in.h
gl/stdlib.in.h
gl/strerror.c
gl/string.in.h
gl/stripslash.c
gl/strndup.c
gl/strnlen.c
gl/sys_socket.in.h
gl/unistd.in.h
gl/v*
gl/wchar.in.h
gl/wctype.in.h
gl/xalloc.h
gl/xalloc-die.c
gl/xmalloc.c
gl/xsize.h
gl/xstrndup*
gl/xsize.h
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 3, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public
License along with this program; if not, see
<https://www.gnu.org/licenses/>.
gl/reg*
gl/mktime.c
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>.
Makefile.in
gl/Makefile.in
gl/m4/*.m4
lib/Makefile.in
lib/tests/Makefile.in
plugins/Makefile.in
plugins-root/Makefile.in
plugins-scripts/Makefile.in
tap/Makefile.in
This Makefile.in is free software; the Free Software Foundation
gives unlimited permission to copy and/or distribute it,
with or without modifications, as long as this notice is preserved.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY, to the extent permitted by law; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
aclocal.m4
This file is free software; the Free Software Foundation
gives unlimited permission to copy and/or distribute it,
with or without modifications, as long as this notice is preserved.
gl/m4/00gnulib.m4
gl/m4/a*.m4
gl/m4/b*.m4
gl/m4/c*.m4
gl/m4/d*.m4
gl/m4/e*.m4
gl/m4/f*.m4
gl/m4/getaddrinfo.m4
gl/m4/gethostname.m4
gl/m4/getloadavg.m4
gl/m4/getopt.m4
gl/m4/gettext.m4
gl/m4/glibc21.m4
gl/m4/gnulib-common.m4
gl/m4/h*.m4
gl/m4/i*.m4
gl/m4/l*.m4
gl/m4/m*.m4
gl/m4/n*.m4
gl/m4/off_t.m4
gl/m4/p*.m4
gl/m4/r*.m4
gl/m4/s*.m4
gl/m4/t*.m4
gl/m4/u*.m4
gl/m4/v*.m4
gl/m4/w*.m4
gl/m4/x*.m4
m4/np_mysqlclient.m4
This file is free software; the Free Software Foundation
gives unlimited permission to copy and/or distribute it,
with or without modifications, as long as this notice is preserved.
build-aux/install-sh
Copyright (C) 1994 X Consortium
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of the X Consortium shall not
be used in advertising or otherwise to promote the sale, use or other deal-
ings in this Software without prior written authorization from the X Consor-
tium.
FSF changes to this file are in the public domain.
tap/tap.*
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
On Debian systems, the complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL'.

1
debian/dirs vendored
View file

@ -1 +0,0 @@
etc/nagios-plugins/config

14
debian/functions vendored
View file

@ -1,14 +0,0 @@
# functions for use by nagios plugins maintainer scripts
npconfdir=/etc/nagios-plugins/config
# we now register all n-p config files via ucf.
register_cfgs(){
# do this in a subshell so we don't screw up cwd
(
for file in ${templdir}/*cfg; do
ucf ${templdir}/$(basename $file) ${npconfdir}/$(basename $file)
done
);
}

3
debian/gbp.conf vendored
View file

@ -1,3 +0,0 @@
[buildpackage]
postbuild = lintian --info --display-info --display-experimental --pedantic --show-overrides $GBP_CHANGES_FILE
pbuilder-options = --source-only-changes

View file

@ -1,12 +0,0 @@
Name: check_http
Link: /usr/lib/nagios/plugins/check_http
Status: auto
Best: /usr/lib/nagios/plugins/check_http.deprecated
Value: /usr/lib/nagios/plugins/check_http.deprecated
Alternative: /usr/lib/nagios/plugins/check_http.deprecated
Priority: 50
Name: check_http
Link: /usr/lib/nagios/plugins/check_http
Alternative: /usr/lib/nagios/plugins/check_curl
Priority: -100

View file

@ -1,3 +0,0 @@
etc/nagios-plugins/config
usr/lib/nagios/plugins
usr/share/monitoring-plugins/templates-basic

View file

@ -1,7 +0,0 @@
usr/share/doc/monitoring-plugins-common/NEWS.Debian.gz usr/share/doc/monitoring-plugins-basic/NEWS.Debian.gz
usr/share/doc/monitoring-plugins-common/NEWS.gz usr/share/doc/monitoring-plugins-basic/NEWS.gz
usr/share/doc/monitoring-plugins-common/README usr/share/doc/monitoring-plugins-basic/README
usr/share/doc/monitoring-plugins-common/README.Debian.gz usr/share/doc/monitoring-plugins-basic/README.Debian.gz
usr/share/doc/monitoring-plugins-common/REQUIREMENTS usr/share/doc/monitoring-plugins-basic/REQUIREMENTS
usr/share/doc/monitoring-plugins-common/SUPPORT usr/share/doc/monitoring-plugins-basic/SUPPORT
usr/share/doc/monitoring-plugins-common/changelog.gz usr/share/doc/monitoring-plugins-basic/changelog.gz

View file

@ -1,29 +0,0 @@
#!/bin/sh
set -e
templdir=/usr/share/monitoring-plugins/templates-basic
. /usr/share/monitoring-plugins/dpkg/functions
plugindir=/usr/lib/nagios/plugins/
if [ "$1" = "configure" ]; then
register_cfgs $2
# If we have setcap is installed, try setting cap_net_raw+ep,
# which allows us to make our binaries working without the
# setuid bit
if command -v setcap > /dev/null; then
if setcap "cap_net_raw+ep" ${plugindir}/check_icmp "cap_net_bind_service=+ep cap_net_raw=+ep" ${plugindir}/check_dhcp; then
echo "Setcap for check_icmp and check_dhcp worked!"
else
echo "Setcap for check_icmp and check_dhcp failed." >&2
echo "Please refer README.Debian.gz for using plugins needing" >&2
echo "higher privileges!" >&2
fi
else
echo "Setcap is not installed, please refer README.Debian.gz for using" >&2
echo "plugins needing higher privileges!" >&2
fi
fi
#DEBHELPER#

View file

@ -1,19 +0,0 @@
#!/bin/sh
set -e
BASIC_PLUGINS="@BASIC_PLUGINS@"
if [ "$1" = "purge" ]; then
if which ucf >/dev/null 2>&1; then
have_ucf="yes"
fi
for f in $BASIC_PLUGINS; do
rm -f /etc/nagios-plugins/config/${f}.cfg
if [ "$have_ucf" = "yes" ]; then
ucf --purge /etc/nagios-plugins/config/${f}.cfg
fi
done
fi
#DEBHELPER#

View file

@ -1 +0,0 @@
usr/lib/nagios/plugins

View file

@ -1,7 +0,0 @@
FAQ
NEWS
README
REQUIREMENTS
SUPPORT
debian/NEWS
debian/README.Debian

View file

@ -1 +0,0 @@

View file

@ -1,3 +0,0 @@
etc/nagios-plugins/config
usr/lib/nagios/plugins
usr/share/monitoring-plugins/templates-standard

View file

@ -1 +0,0 @@
debian/README.Debian.plugins

View file

@ -1,8 +0,0 @@
usr/share/doc/monitoring-plugins-common/FAQ usr/share/doc/monitoring-plugins-standard/FAQ
usr/share/doc/monitoring-plugins-common/NEWS.Debian.gz usr/share/doc/monitoring-plugins-standard/NEWS.Debian.gz
usr/share/doc/monitoring-plugins-common/NEWS.gz usr/share/doc/monitoring-plugins-standard/NEWS.gz
usr/share/doc/monitoring-plugins-common/README usr/share/doc/monitoring-plugins-standard/README
usr/share/doc/monitoring-plugins-common/README.Debian.gz usr/share/doc/monitoring-plugins-standard/README.Debian.gz
usr/share/doc/monitoring-plugins-common/REQUIREMENTS usr/share/doc/monitoring-plugins-standard/REQUIREMENTS
usr/share/doc/monitoring-plugins-common/SUPPORT usr/share/doc/monitoring-plugins-standard/SUPPORT
usr/share/doc/monitoring-plugins-common/changelog.gz usr/share/doc/monitoring-plugins-standard/changelog.gz

View file

@ -1,12 +0,0 @@
#!/bin/sh
set -e
. /usr/share/monitoring-plugins/dpkg/functions
templdir=/usr/share/monitoring-plugins/templates-standard
if [ "$1" = "configure" ]; then
register_cfgs $2
fi
#DEBHELPER#

View file

@ -1,19 +0,0 @@
#!/bin/sh
set -e
STD_PLUGINS="@STD_PLUGINS@"
if [ "$1" = "purge" ]; then
if which ucf >/dev/null 2>&1; then
have_ucf="yes"
fi
for f in $STD_PLUGINS; do
rm -f /etc/nagios-plugins/config/${f}.cfg
if [ "$have_ucf" = "yes" ]; then
ucf --purge /etc/nagios-plugins/config/${f}.cfg
fi
done
fi
#DEBHELPER#

View file

@ -1,9 +0,0 @@
usr/share/doc/monitoring-plugins-common/FAQ usr/share/doc/monitoring-plugins/FAQ
usr/share/doc/monitoring-plugins-common/NEWS.Debian.gz usr/share/doc/monitoring-plugins/NEWS.Debian.gz
usr/share/doc/monitoring-plugins-common/NEWS.gz usr/share/doc/monitoring-plugins/NEWS.gz
usr/share/doc/monitoring-plugins-common/README usr/share/doc/monitoring-plugins/README
usr/share/doc/monitoring-plugins-common/README.Debian.gz usr/share/doc/monitoring-plugins/README.Debian.gz
usr/share/doc/monitoring-plugins-common/REQUIREMENTS usr/share/doc/monitoring-plugins/REQUIREMENTS
usr/share/doc/monitoring-plugins-common/SUPPORT usr/share/doc/monitoring-plugins/SUPPORT
usr/share/doc/monitoring-plugins-common/changelog.gz usr/share/doc/monitoring-plugins/changelog.gz
usr/share/doc/monitoring-plugins-standard/README.Debian.plugins usr/share/doc/monitoring-plugins/README.Debian.plugins

View file

@ -1,30 +0,0 @@
## 02_check_icmp_links by Jan Wagner <waja@cyconet.org>
##
## DP: Create symlinks for check_icmp to provide default values for some situations
diff -urNad nagios-plugins-1.4.14~/plugins-root/Makefile.am nagios-plugins-1.4.14/plugins-root/Makefile.am
--- nagios-plugins-1.4.14~/plugins-root/Makefile.am 2008-11-30 22:23:18.000000000 +0100
+++ nagios-plugins-1.4.14/plugins-root/Makefile.am 2010-01-10 20:39:03.000000000 +0100
@@ -71,7 +71,8 @@
else \
echo "WARNING: insufficient access; not installing setuid plugins"; \
echo "NOTE: to install setuid plugins, run 'make install-root' as root"; \
- fi
+ fi ; \
+ if [ -x $(DESTDIR)$(libexecdir)/check_icmp ] ; then rm -f $(DESTDIR)$(libexecdir)/check_host $(DESTDIR)$(libexecdir)/check_rta_multi ; ln -s check_icmp $(DESTDIR)$(libexecdir)/check_host ; ln -s check_icmp $(DESTDIR)$(libexecdir)/check_rta_multi ; fi
# /* Author Coreutils team sub-citation */
diff -urNad nagios-plugins-1.4.14~/plugins-root/Makefile.in nagios-plugins-1.4.14/plugins-root/Makefile.in
--- nagios-plugins-1.4.14~/plugins-root/Makefile.in 2009-09-16 10:37:59.000000000 +0200
+++ nagios-plugins-1.4.14/plugins-root/Makefile.in 2010-01-10 20:39:13.000000000 +0100
@@ -1162,7 +1162,8 @@
else \
echo "WARNING: insufficient access; not installing setuid plugins"; \
echo "NOTE: to install setuid plugins, run 'make install-root' as root"; \
- fi
+ fi ; \
+ if [ -x $(DESTDIR)$(libexecdir)/check_icmp ] ; then rm -f $(DESTDIR)$(libexecdir)/check_host $(DESTDIR)$(libexecdir)/check_rta_multi ; ln -s check_icmp $(DESTDIR)$(libexecdir)/check_host ; ln -s check_icmp $(DESTDIR)$(libexecdir)/check_rta_multi ; fi
clean-local:
rm -f NP-VERSION-FILE

View file

@ -1,8 +0,0 @@
--- a/plugins-scripts/check_disk_smb.pl
+++ b/plugins-scripts/check_disk_smb.pl
@@ -1,4 +1,5 @@
#!@PERL@ -w
+# nagios: -epn
#
#
# check_disk.pl <host> <share> <user> <pass> [warn] [critical] [port]

View file

@ -1,11 +0,0 @@
--- a/plugins-scripts/utils.pm.in
+++ b/plugins-scripts/utils.pm.in
@@ -19,7 +19,7 @@
## updated by autoconf
$PATH_TO_SUDO = "@PATH_TO_SUDO@";
$PATH_TO_RPCINFO = "@PATH_TO_RPCINFO@" ;
-$PATH_TO_LMSTAT = "@PATH_TO_LMSTAT@" ;
+$PATH_TO_LMSTAT = "/usr/local/bin/lmstat" ;
$PATH_TO_SMBCLIENT = "@PATH_TO_SMBCLIENT@" ;
$PATH_TO_MAILQ = "@PATH_TO_MAILQ@";
$PATH_TO_QMAIL_QSTAT = "@PATH_TO_QMAIL_QSTAT@";

View file

@ -1,164 +0,0 @@
From 17549189ae6864203a48a2b2488db35a9e020e0e Mon Sep 17 00:00:00 2001
From: Sven Nierlein <sven@consol.de>
Date: Mon, 29 Jul 2024 20:53:32 +0200
Subject: [PATCH] check_curl: fix relative redirects on non-standard port
Having a webserver respond with a relative redirect as for ex. in `Location: /path/to.html`
check_curl would use the wrong standard http/https port instead
of crafting the absolute url using the given scheme/hostname and port.
Adding a new test case for this for check_http and check_curl. check_http did
it correct already, so no fix necessary there.
before:
%>./check_curl -H 127.0.0.1 -p 50493 -f follow -u /redirect_rel -s redirected -vvv
**** HEADER ****
HTTP/1.1 302 Found
...
Location: /redirect2
...
* Seen redirect location /redirect2
** scheme: (null)
** host: (null)
** port: (null)
** path: /redirect2
Redirection to http://127.0.0.1:80/redirect2
fixed:
%>./check_curl -H 127.0.0.1 -p 50493 -f follow -u /redirect_rel -s redirected -vvv
**** HEADER ****
HTTP/1.1 302 Found
...
Location: /redirect2
...
* Seen redirect location /redirect2
** scheme: (null)
** host: (null)
** port: (null)
** path: /redirect2
Redirection to http://127.0.0.1:50493/redirect2
Signed-off-by: Sven Nierlein <sven@nierlein.de>
---
plugins/check_curl.c | 15 ++++++++++-----
plugins/tests/check_curl.t | 14 +++++++++++---
plugins/tests/check_http.t | 12 +++++++++++-
3 files changed, 32 insertions(+), 9 deletions(-)
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index c54be5e4f..01e2770e3 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -1285,10 +1285,12 @@ redir (curlhelp_write_curlbuf* header_buf)
}
}
- if (!uri_strcmp (uri.scheme, "https"))
- use_ssl = true;
- else
- use_ssl = false;
+ if (uri.scheme.first) {
+ if (!uri_strcmp (uri.scheme, "https"))
+ use_ssl = true;
+ else
+ use_ssl = false;
+ }
/* we do a sloppy test here only, because uriparser would have failed
* above, if the port would be invalid, we just check for MAX_PORT
@@ -1306,10 +1308,13 @@ redir (curlhelp_write_curlbuf* header_buf)
MAX_PORT, location, display_html ? "</A>" : "");
/* by RFC 7231 relative URLs in Location should be taken relative to
- * the original URL, so wy try to form a new absolute URL here
+ * the original URL, so we try to form a new absolute URL here
*/
if (!uri.scheme.first && !uri.hostText.first) {
new_host = strdup (host_name ? host_name : server_address);
+ new_port = server_port;
+ if(use_ssl)
+ uri_string (uri.scheme, "https", DEFAULT_BUFFER_SIZE);
} else {
new_host = strdup (uri_string (uri.hostText, buf, DEFAULT_BUFFER_SIZE));
}
diff --git a/plugins/tests/check_curl.t b/plugins/tests/check_curl.t
index 3c9148308..eaa9f5183 100755
--- a/plugins/tests/check_curl.t
+++ b/plugins/tests/check_curl.t
@@ -21,7 +21,7 @@ use FindBin qw($Bin);
$ENV{'LC_TIME'} = "C";
-my $common_tests = 73;
+my $common_tests = 75;
my $ssl_only_tests = 8;
# Check that all dependent modules are available
eval "use HTTP::Daemon 6.01;";
@@ -178,6 +178,11 @@ sub run_server {
$c->send_basic_header;
$c->send_crlf;
$c->send_response(HTTP::Response->new( 200, 'OK', undef, 'redirected' ));
+ } elsif ($r->url->path eq "/redirect_rel") {
+ $c->send_basic_header(302);
+ $c->send_header("Location", "/redirect2" );
+ $c->send_crlf;
+ $c->send_response('moved to /redirect2');
} elsif ($r->url->path eq "/redir_timeout") {
$c->send_redirect( "/timeout" );
} elsif ($r->url->path eq "/timeout") {
@@ -471,9 +476,12 @@ sub run_common_tests {
is( $result->return_code, 0, $cmd);
like( $result->output, '/^HTTP OK: HTTP/1.1 200 OK - \d+ bytes in [\d\.]+ second/', "Output correct: ".$result->output );
- # These tests may block
- print "ALRM\n";
+ $cmd = "$command -f follow -u /redirect_rel -s redirected";
+ $result = NPTest->testCmd( $cmd );
+ is( $result->return_code, 0, $cmd);
+ like( $result->output, '/^HTTP OK: HTTP/1.1 200 OK - \d+ bytes in [\d\.]+ second/', "Output correct: ".$result->output );
+ # These tests may block
# stickyport - on full urlS port is set back to 80 otherwise
$cmd = "$command -f stickyport -u /redir_external -t 5 -s redirected";
eval {
diff --git a/plugins/tests/check_http.t b/plugins/tests/check_http.t
index 6078b2745..6eaf85b29 100755
--- a/plugins/tests/check_http.t
+++ b/plugins/tests/check_http.t
@@ -13,7 +13,7 @@ use IO::Socket::INET;
$ENV{'LC_TIME'} = "C";
-my $common_tests = 71;
+my $common_tests = 73;
my $virtual_port_tests = 8;
my $ssl_only_tests = 12;
my $chunked_encoding_special_tests = 1;
@@ -199,6 +199,11 @@ sub run_server {
$c->send_basic_header;
$c->send_crlf;
$c->send_response(HTTP::Response->new( 200, 'OK', undef, 'redirected' ));
+ } elsif ($r->url->path eq "/redirect_rel") {
+ $c->send_basic_header(302);
+ $c->send_header("Location", "/redirect2" );
+ $c->send_crlf;
+ $c->send_response('moved to /redirect2');
} elsif ($r->url->path eq "/redir_timeout") {
$c->send_redirect( "/timeout" );
} elsif ($r->url->path eq "/timeout") {
@@ -515,6 +520,11 @@ sub run_common_tests {
is( $result->return_code, 0, $cmd);
like( $result->output, '/^HTTP OK: HTTP/1.1 200 OK - \d+ bytes in [\d\.]+ second/', "Output correct: ".$result->output );
+ $cmd = "$command -f follow -u /redirect_rel -s redirected";
+ $result = NPTest->testCmd( $cmd );
+ is( $result->return_code, 0, $cmd);
+ like( $result->output, '/^HTTP OK: HTTP/1.1 200 OK - \d+ bytes in [\d\.]+ second/', "Output correct: ".$result->output );
+
# These tests may block
print "ALRM\n";

View file

@ -1,87 +0,0 @@
From ca40cf81fb94cf57a82df938ed2aa2843691be3a Mon Sep 17 00:00:00 2001
From: Yannick Martin <yannick.martin@ovhcloud.com>
Date: Fri, 9 Aug 2024 12:14:28 +0200
Subject: [PATCH] check_curl: raise SSL issue when --continue-after-certificate
is used
This change aims to raise the worst status between the SSL check and the HTTP check.
before:
check_curl -H www.google.fr -S --continue-after-certificate --certificate 4000,4000 ; echo $?
CRITICAL - Certificate '*.google.fr' expires in 74 day(s) (Tue 22 Oct 2024 12:53:52 PM GMT +0000).
HTTP OK: HTTP/2 200 - 22807 bytes in 0.076 second response time |time=0.075516s;;;0.000000;10.000000 size=22807B;;;0;
0
after:
/usr/lib/nagios/ovh/check_curl -H www.google.fr -S --continue-after-certificate --certificate 4000,4000 ; echo $?
CRITICAL - Certificate '*.google.fr' expires in 74 day(s) (Tue 22 Oct 2024 12:53:52 PM GMT +0000).
HTTP OK: HTTP/2 200 - 22840 bytes in 0.090 second response time |time=0.090463s;;;0.000000;10.000000 size=22840B;;;0;
2
---
plugins/check_curl.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index 01e2770e3..4522e6c9f 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -468,6 +468,7 @@ int
check_http (void)
{
int result = STATE_OK;
+ int result_ssl = STATE_OK;
int page_len = 0;
int i;
char *force_host_header = NULL;
@@ -852,9 +853,9 @@ check_http (void)
/* check certificate with OpenSSL functions, curl has been built against OpenSSL
* and we actually have OpenSSL in the monitoring tools
*/
- result = np_net_ssl_check_certificate(cert, days_till_exp_warn, days_till_exp_crit);
+ result_ssl = np_net_ssl_check_certificate(cert, days_till_exp_warn, days_till_exp_crit);
if (!continue_after_check_cert) {
- return result;
+ return result_ssl;
}
#else /* USE_OPENSSL */
die (STATE_CRITICAL, "HTTP CRITICAL - Cannot retrieve certificates - OpenSSL callback used and not linked against OpenSSL\n");
@@ -898,17 +899,17 @@ check_http (void)
die (STATE_CRITICAL, "HTTP CRITICAL - %s\n", msg);
}
BIO_free (cert_BIO);
- result = np_net_ssl_check_certificate(cert, days_till_exp_warn, days_till_exp_crit);
+ result_ssl = np_net_ssl_check_certificate(cert, days_till_exp_warn, days_till_exp_crit);
if (!continue_after_check_cert) {
- return result;
+ return result_ssl;
}
#else /* USE_OPENSSL */
/* We assume we don't have OpenSSL and np_net_ssl_check_certificate at our disposal,
* so we use the libcurl CURLINFO data
*/
- result = net_noopenssl_check_certificate(&cert_ptr, days_till_exp_warn, days_till_exp_crit);
+ result_ssl = net_noopenssl_check_certificate(&cert_ptr, days_till_exp_warn, days_till_exp_crit);
if (!continue_after_check_cert) {
- return result;
+ return result_ssl;
}
#endif /* USE_OPENSSL */
} else {
@@ -1176,7 +1177,7 @@ check_http (void)
}
/* TODO: separate _() msg and status code: die (result, "HTTP %s: %s\n", state_text(result), msg); */
- die (result, "HTTP %s: %s %d %s%s%s - %d bytes in %.3f second response time %s|%s\n%s%s",
+ die (max_state_alt(result, result_ssl), "HTTP %s: %s %d %s%s%s - %d bytes in %.3f second response time %s|%s\n%s%s",
state_text(result), string_statuscode (status_line.http_major, status_line.http_minor),
status_line.http_code, status_line.msg,
strlen(msg) > 0 ? " - " : "",
@@ -1186,7 +1187,7 @@ check_http (void)
(show_body ? body_buf.buf : ""),
(show_body ? "\n" : "") );
- return result;
+ return max_state_alt(result, result_ssl);
}
int

View file

@ -1,42 +0,0 @@
From 9cdf2aec7fa3277237c078fc9da32f40d0292299 Mon Sep 17 00:00:00 2001
From: Alvar Penning <alvar.penning@icinga.com>
Date: Fri, 16 Aug 2024 10:38:02 +0200
Subject: [PATCH] check_curl: Documentation for --certificate, --cookie-jar
From the mere help output for -C / --certificate, I was confused about
what its two integer parameters do. Unfortunately, I also missed out on
the explaining examples later. Since I like to have basic documentation
for each flag, I tried to make the arguments as short as possible.
The other fix was one hyphen too many for the --cookie-jar option.
---
plugins/check_curl.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index 4522e6c9f..e9c15e648 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -2008,8 +2008,11 @@ print_help (void)
printf (" %s\n", _("Note: SNI is not supported in libcurl before 7.18.1"));
#endif
printf (" %s\n", "-C, --certificate=INTEGER[,INTEGER]");
- printf (" %s\n", _("Minimum number of days a certificate has to be valid. Port defaults to 443"));
- printf (" %s\n", _("(when this option is used the URL is not checked by default. You can use"));
+ printf (" %s\n", _("Minimum number of days a certificate has to be valid. Port defaults to 443."));
+ printf (" %s\n", _("A STATE_WARNING is returned if the certificate has a validity less than the"));
+ printf (" %s\n", _("first agument's value. If there is a second argument and the certificate's"));
+ printf (" %s\n", _("validity is less than its value, a STATE_CRITICAL is returned."));
+ printf (" %s\n", _("(When this option is used the URL is not checked by default. You can use"));
printf (" %s\n", _(" --continue-after-certificate to override this behavior)"));
printf (" %s\n", "--continue-after-certificate");
printf (" %s\n", _("Allows the HTTP check to continue after performing the certificate check."));
@@ -2092,7 +2095,7 @@ print_help (void)
printf (" %s\n", _("Enable automatic decompression of body (CURLOPT_ACCEPT_ENCODING)."));
printf(" %s\n", "--haproxy-protocol");
printf(" %s\n", _("Send HAProxy proxy protocol v1 header (CURLOPT_HAPROXYPROTOCOL)."));
- printf (" %s\n", "---cookie-jar=FILE");
+ printf (" %s\n", "--cookie-jar=FILE");
printf (" %s\n", _("Store cookies in the cookie jar and send them out when requested."));
printf ("\n");

View file

@ -1,28 +0,0 @@
diff --git a/plugins/check_mysql.c b/plugins/check_mysql.c
index 6a7daf11a..15ec04c04 100644
--- a/plugins/check_mysql.c
+++ b/plugins/check_mysql.c
@@ -59,8 +59,8 @@ bool ssl = false;
char *opt_file = NULL;
char *opt_group = NULL;
unsigned int db_port = MYSQL_PORT;
-int check_slave = 0, warn_sec = 0, crit_sec = 0;
-int ignore_auth = 0;
+bool check_slave = false;
+bool ignore_auth = false;
int verbose = 0;
static double warning_time = 0;
@@ -456,10 +456,10 @@ process_arguments (int argc, char **argv)
db_port = atoi (optarg);
break;
case 'S':
- check_slave = 1; /* check-slave */
+ check_slave = true; /* check-slave */
break;
case 'n':
- ignore_auth = 1; /* ignore-auth */
+ ignore_auth = true; /* ignore-auth */
break;
case 'w':
warning = optarg;

View file

@ -1,13 +0,0 @@
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index e9c15e648..e25d7a79a 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -2190,8 +2190,6 @@ print_usage (void)
printf ("%s\n", _("In the first form, make an HTTP request."));
printf ("%s\n\n", _("In the second form, connect to the server and check the TLS certificate."));
#endif
- printf ("%s\n", _("WARNING: check_curl is experimental. Please use"));
- printf ("%s\n\n", _("check_http if you need a stable version."));
}
void

View file

@ -1,82 +0,0 @@
From 46efe803cf8e7b769ca112afc158b76510b01e46 Mon Sep 17 00:00:00 2001
From: RincewindsHat <12514511+RincewindsHat@users.noreply.github.com>
Date: Mon, 19 Aug 2024 15:23:41 +0200
Subject: [PATCH 1/3] check_curl: Fix help for state regex option
The help output of `check-curl` contained a typo,
the real option is `state-regex` and not `regex-state` as
the help suggests.
Also added the two possible options to avoid confusion.
---
plugins/check_curl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index e9c15e648..bf46b2261 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -2061,8 +2061,8 @@ print_help (void)
printf (" %s\n", "--invert-regex");
printf (" %s\n", _("Return STATE if found, OK if not (STATE is CRITICAL, per default)"));
printf (" %s\n", _("can be changed with --state--regex)"));
- printf (" %s\n", "--regex-state=STATE");
- printf (" %s\n", _("Return STATE if regex is found, OK if not\n"));
+ printf (" %s\n", "--state-regex=STATE");
+ printf (" %s\n", _("Return STATE if regex is found, OK if not\nSTATE can be one of \"critical\",\"warning\""));
printf (" %s\n", "-a, --authorization=AUTH_PAIR");
printf (" %s\n", _("Username:password on sites with basic authentication"));
printf (" %s\n", "-b, --proxy-authorization=AUTH_PAIR");
From b6c72064a53da8b173b7406a0a535922dc0cc1b3 Mon Sep 17 00:00:00 2001
From: RincewindsHat <12514511+RincewindsHat@users.noreply.github.com>
Date: Mon, 19 Aug 2024 15:26:52 +0200
Subject: [PATCH 2/3] check_curl: Parse state-regex option ignoring case
Previously the --state-regex option accepted only "critical" and
"warning" as values.
This commit changes the strcmp there to strcasecmp to be more tolerant
regarding the input.
---
plugins/check_curl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index bf46b2261..38c971093 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -1775,9 +1775,9 @@ process_arguments (int argc, char **argv)
invert_regex = true;
break;
case STATE_REGEX:
- if (!strcmp (optarg, "critical"))
+ if (!strcasecmp (optarg, "critical"))
state_regex = STATE_CRITICAL;
- else if (!strcmp (optarg, "warning"))
+ else if (!strcasecmp (optarg, "warning"))
state_regex = STATE_WARNING;
else usage2 (_("Invalid state-regex option"), optarg);
break;
From af097aa3642174a2111f0bbcbc8236fff0901e17 Mon Sep 17 00:00:00 2001
From: RincewindsHat <12514511+RincewindsHat@users.noreply.github.com>
Date: Mon, 19 Aug 2024 15:33:17 +0200
Subject: [PATCH 3/3] check_curl: change help for --state-regex again to fix
formatting
---
plugins/check_curl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index 38c971093..214ba74f9 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -2062,7 +2062,7 @@ print_help (void)
printf (" %s\n", _("Return STATE if found, OK if not (STATE is CRITICAL, per default)"));
printf (" %s\n", _("can be changed with --state--regex)"));
printf (" %s\n", "--state-regex=STATE");
- printf (" %s\n", _("Return STATE if regex is found, OK if not\nSTATE can be one of \"critical\",\"warning\""));
+ printf (" %s\n", _("Return STATE if regex is found, OK if not. STATE can be one of \"critical\",\"warning\""));
printf (" %s\n", "-a, --authorization=AUTH_PAIR");
printf (" %s\n", _("Username:password on sites with basic authentication"));
printf (" %s\n", "-b, --proxy-authorization=AUTH_PAIR");

View file

@ -1,115 +0,0 @@
From 528e92c180148703ee2cb90d7291f4edbfc270d4 Mon Sep 17 00:00:00 2001
From: Sven Nierlein <sven@consol.de>
Date: Wed, 9 Oct 2024 09:50:39 +0200
Subject: [PATCH] fix check_curl: OpenSSL SSL_read: error:0A000126:SSL
routines::unexpected eof while reading, errno 0
using check_curl on a probably embedded device responding as 'Server: GoAhead-Webs'
%> check_curl -H ... -S -vvv
> GET / HTTP/1.1
Host: ...
User-Agent: check_curl/v2.4.0 (monitoring-plugins 2.4.0, libcurl/7.76.1 OpenSSL/3.0.7 zlib/1.2.11 brotli/1.0.9 libidn2/2.3.0 libpsl/0.21.1 (+libidn2/2.3.0) libssh/0.10.4/openssl/zlib nghttp2/1.43.0)
Accept: */*
Connection: close
* Mark bundle as not supporting multiuse
* HTTP 1.0, assume close after body
< HTTP/1.0 302 Redirect
< Server: GoAhead-Webs
< Date: Tue Mar 26 17:57:16 2019
< Cache-Control: no-cache, no-store, must-revalidate,private
< Pragma: no-cache
< Expires: 0
< Content-Type: text/html
< X-Frame-Options: sameorigin
< X-XSS-Protection: 1; mode=block
< X-Content-Type-Options: nosniff
< Location: https://...
<
* OpenSSL SSL_read: error:0A000126:SSL routines::unexpected eof while reading, errno 0
* Closing connection 0
reading the discussion on https://github.com/openssl/openssl/discussions/22690 suggest to set the option SSL_OP_IGNORE_UNEXPECTED_EOF
which makes check_curl behave like check_http at this point.
Since this is a rather new flag, fencing it in ifdefs.
And since there can only be one ssl ctx function, we need to move both tasks into one function.
---
plugins/check_curl.c | 29 ++++++++++++++++++++++-------
1 file changed, 22 insertions(+), 7 deletions(-)
diff --git a/plugins/check_curl.c b/plugins/check_curl.c
index 7f45b5a79..d3bddacd2 100644
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -214,6 +214,7 @@ char *client_privkey = NULL;
char *ca_cert = NULL;
bool verify_peer_and_host = false;
bool is_openssl_callback = false;
+bool add_sslctx_verify_fun = false;
#if defined(HAVE_SSL) && defined(USE_OPENSSL)
X509 *cert = NULL;
#endif /* defined(HAVE_SSL) && defined(USE_OPENSSL) */
@@ -299,7 +300,7 @@ main (int argc, char **argv)
int verify_callback(int preverify_ok, X509_STORE_CTX *x509_ctx)
{
- (void) preverify_ok;
+ (void) preverify_ok;
/* TODO: we get all certificates of the chain, so which ones
* should we test?
* TODO: is the last certificate always the server certificate?
@@ -324,9 +325,18 @@ int verify_callback(int preverify_ok, X509_STORE_CTX *x509_ctx)
CURLcode sslctxfun(CURL *curl, SSL_CTX *sslctx, void *parm)
{
- (void) curl; // ignore unused parameter
- (void) parm; // ignore unused parameter
- SSL_CTX_set_verify(sslctx, SSL_VERIFY_PEER, verify_callback);
+ (void) curl; // ignore unused parameter
+ (void) parm; // ignore unused parameter
+ if(add_sslctx_verify_fun) {
+ SSL_CTX_set_verify(sslctx, SSL_VERIFY_PEER, verify_callback);
+ }
+
+ // workaround for issue:
+ // OpenSSL SSL_read: error:0A000126:SSL routines::unexpected eof while reading, errno 0
+ // see discussion https://github.com/openssl/openssl/discussions/22690
+#ifdef SSL_OP_IGNORE_UNEXPECTED_EOF
+ SSL_CTX_set_options(sslctx, SSL_OP_IGNORE_UNEXPECTED_EOF);
+#endif
return CURLE_OK;
}
@@ -678,9 +688,8 @@ check_http (void)
* OpenSSL-style libraries only!) */
#ifdef USE_OPENSSL
/* libcurl and monitoring plugins built with OpenSSL, good */
- handle_curl_option_return_code (curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, sslctxfun), "CURLOPT_SSL_CTX_FUNCTION");
+ add_sslctx_verify_fun = true;
is_openssl_callback = true;
-#else /* USE_OPENSSL */
#endif /* USE_OPENSSL */
/* libcurl is built with OpenSSL, monitoring plugins, so falling
* back to manually extracting certificate information */
@@ -713,12 +722,18 @@ check_http (void)
#else /* LIBCURL_VERSION_NUM >= MAKE_LIBCURL_VERSION(7, 19, 1) */
/* old libcurl, our only hope is OpenSSL, otherwise we are out of luck */
if (ssl_library == CURLHELP_SSL_LIBRARY_OPENSSL || ssl_library == CURLHELP_SSL_LIBRARY_LIBRESSL)
- handle_curl_option_return_code (curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, sslctxfun), "CURLOPT_SSL_CTX_FUNCTION");
+ add_sslctx_verify_fun = true;
else
die (STATE_CRITICAL, "HTTP CRITICAL - Cannot retrieve certificates (no CURLOPT_SSL_CTX_FUNCTION, no OpenSSL library or libcurl too old and has no CURLOPT_CERTINFO)\n");
#endif /* LIBCURL_VERSION_NUM >= MAKE_LIBCURL_VERSION(7, 19, 1) */
}
+#if LIBCURL_VERSION_NUM >= MAKE_LIBCURL_VERSION(7, 10, 6) /* required for CURLOPT_SSL_CTX_FUNCTION */
+ // ssl ctx function is not available with all ssl backends
+ if (curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, NULL) != CURLE_UNKNOWN_OPTION)
+ handle_curl_option_return_code (curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, sslctxfun), "CURLOPT_SSL_CTX_FUNCTION");
+#endif
+
#endif /* LIBCURL_FEATURE_SSL */
/* set default or user-given user agent identification */

View file

@ -1,83 +0,0 @@
From 88d991773b6d8ac416ad2931ea8debc949555c7a Mon Sep 17 00:00:00 2001
From: William <william@blackhats.net.au>
Date: Wed, 6 Nov 2024 14:00:23 +1000
Subject: [PATCH] Add dontfrag/random for fping
Support the dont fragment and randomise packet data options for check_fping
---
plugins/check_fping.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
--- a/plugins/check_fping.c
+++ b/plugins/check_fping.c
@@ -7,7 +7,7 @@
*
* Description:
*
-* This file contains the check_disk plugin
+* This file contains the check_fping plugin
*
* This plugin will use the fping command to ping the specified host for a
* fast check
@@ -60,6 +60,8 @@
int target_timeout = 0;
int packet_interval = 0;
bool verbose = false;
+bool dontfrag = false;
+bool randomize_packet_data = false;
int cpl;
int wpl;
double crta;
@@ -105,6 +107,10 @@
xasprintf(&option_string, "%s-S %s ", option_string, sourceip);
if (sourceif)
xasprintf(&option_string, "%s-I %s ", option_string, sourceif);
+ if (dontfrag)
+ xasprintf(&option_string, "%s-M ", option_string);
+ if (randomize_packet_data)
+ xasprintf(&option_string, "%s-R ", option_string);
#ifdef PATH_TO_FPING6
if (address_family != AF_INET && is_inet6_addr(server))
@@ -303,6 +309,8 @@
{"help", no_argument, 0, 'h'},
{"use-ipv4", no_argument, 0, '4'},
{"use-ipv6", no_argument, 0, '6'},
+ {"dontfrag", no_argument, 0, 'M'},
+ {"random", no_argument, 0, 'R'},
{0, 0, 0, 0}
};
@@ -320,7 +328,7 @@
}
while (1) {
- c = getopt_long (argc, argv, "+hVvaH:S:c:w:b:n:T:i:I:46", longopts, &option);
+ c = getopt_long (argc, argv, "+hVvaH:S:c:w:b:n:T:i:I:M:R:46", longopts, &option);
if (c == -1 || c == EOF || c == 1)
break;
@@ -415,6 +423,12 @@
else
usage (_("Interval must be a positive integer"));
break;
+ case 'R':
+ randomize_packet_data = true;
+ break;
+ case 'M':
+ dontfrag = true;
+ break;
}
}
@@ -506,6 +520,10 @@
printf (" %s\n", _("name or IP Address of sourceip"));
printf (" %s\n", "-I, --sourceif=IF");
printf (" %s\n", _("source interface name"));
+ printf(" %s\n", "-M, --dontfrag");
+ printf(" %s\n", _("set the Don't Fragment flag"));
+ printf(" %s\n", "-R, --random");
+ printf(" %s\n", _("random packet data (to foil link data compression)"));
printf (UT_VERBOSE);
printf ("\n");
printf (" %s\n", _("THRESHOLD is <rta>,<pl>%% where <rta> is the round trip average travel time (ms)"));

View file

@ -1,21 +0,0 @@
From 8de299308c52d083b893a87e6924405b652f1f7b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lorenz=20K=C3=A4stle?=
<12514511+RincewindsHat@users.noreply.github.com>
Date: Wed, 27 Nov 2024 14:22:02 +0100
Subject: [PATCH] check_curl: update TLS notification notes
---
plugins/check_curl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -2013,7 +2013,7 @@
printf (" %s\n", _("Connect via SSL. Port defaults to 443. VERSION is optional, and prevents"));
printf (" %s\n", _("auto-negotiation (2 = SSLv2, 3 = SSLv3, 1 = TLSv1, 1.1 = TLSv1.1,"));
printf (" %s\n", _("1.2 = TLSv1.2, 1.3 = TLSv1.3). With a '+' suffix, newer versions are also accepted."));
- printf (" %s\n", _("Note: SSLv2 and SSLv3 are deprecated and are usually disabled in libcurl"));
+ printf (" %s\n", _("Note: SSLv2, SSLv3, TLSv1.0 and TLSv1.1 are deprecated and are usually disabled in libcurl"));
printf (" %s\n", "--sni");
printf (" %s\n", _("Enable SSL/TLS hostname extension support (SNI)"));
#if LIBCURL_VERSION_NUM >= 0x071801

View file

@ -1,46 +0,0 @@
From 191d15354ba32a483fd4f8017595c7eb82ee5650 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andre=20Kl=C3=A4rner?= <kandre@ak-online.be>
Date: Fri, 29 Nov 2024 10:34:16 +0100
Subject: [PATCH] check_curl: enable internal cookie handling
This enables us to enable curl cookie engine by specifying an empty
filename as the cookie jar file.
This works, since curl's CURLOPT_COOKIEFILE option allows passing an
empty string as filename, which it interprets as a request to enable the
cookie processing. But since CURLOPT_COOKIEJAR would now attempt to
write to a file named by an empty filename, it would break again (or at
least produce a warning in verbose output).
Overall this is allows to handle checking URLs with cookie based
sessions without persisting the cookies to disk, by using the
curl-internal redirect following.
---
plugins/check_curl.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
--- a/plugins/check_curl.c
+++ b/plugins/check_curl.c
@@ -831,8 +831,11 @@
/* cookie handling */
if (cookie_jar_file != NULL) {
- handle_curl_option_return_code (curl_easy_setopt (curl, CURLOPT_COOKIEJAR, cookie_jar_file), "CURLOPT_COOKIEJAR");
+ /* enable reading cookies from a file, and if the filename is an empty string, only enable the curl cookie engine */
handle_curl_option_return_code (curl_easy_setopt (curl, CURLOPT_COOKIEFILE, cookie_jar_file), "CURLOPT_COOKIEFILE");
+ /* now enable saving cookies to a file, but only if the filename is not an empty string, since writing it would fail */
+ if (*cookie_jar_file)
+ handle_curl_option_return_code(curl_easy_setopt(curl, CURLOPT_COOKIEJAR, cookie_jar_file), "CURLOPT_COOKIEJAR");
}
/* do the request */
@@ -2111,6 +2114,9 @@
printf(" %s\n", "--haproxy-protocol");
printf(" %s\n", _("Send HAProxy proxy protocol v1 header (CURLOPT_HAPROXYPROTOCOL)."));
printf (" %s\n", "--cookie-jar=FILE");
+ printf (" %s\n", _("Specify an empty string as FILE to enable curl's cookie engine without saving"));
+ printf (" %s\n", _("the cookies to disk. Only enabling the engine without saving to disk requires"));
+ printf (" %s\n", _("handling multiple requests internally to curl, so use it with --onredirect=curl"));
printf (" %s\n", _("Store cookies in the cookie jar and send them out when requested."));
printf ("\n");

View file

@ -1,29 +0,0 @@
From e5f35d40556468fcdebccae847cfc19380952ca0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lorenz=20K=C3=A4stle?=
<12514511+RincewindsHat@users.noreply.github.com>
Date: Wed, 27 Nov 2024 15:29:19 +0100
Subject: [PATCH] check_icmp: set rtmin initially
---
plugins-root/check_icmp.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/plugins-root/check_icmp.c
+++ b/plugins-root/check_icmp.c
@@ -64,6 +64,7 @@
#include <netinet/ip_icmp.h>
#include <netinet/icmp6.h>
#include <arpa/inet.h>
+#include <math.h>
/** sometimes undefined system macros (quite a few, actually) **/
@@ -1051,7 +1052,7 @@
icmp_recv++;
if (tdiff > (unsigned int)host->rtmax)
host->rtmax = tdiff;
- if (tdiff < (unsigned int)host->rtmin)
+ if ((host->rtmin == INFINITY) || (tdiff < (unsigned int)host->rtmin))
host->rtmin = tdiff;
if(debug) {

View file

@ -1,22 +0,0 @@
From e445a386f8ad1166b05fcdfdb5b9cde4622a8632 Mon Sep 17 00:00:00 2001
From: Andreas Baumann <mail@andreasbaumann.cc>
Date: Fri, 27 Dec 2024 15:32:24 +0100
Subject: [PATCH] check_http: fix documentation for --state-regex
---
plugins/check_http.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/check_http.c b/plugins/check_http.c
index 97c0e39ad..baff682a7 100644
--- a/plugins/check_http.c
+++ b/plugins/check_http.c
@@ -1805,7 +1805,7 @@ print_help (void)
printf (" %s\n", "--invert-regex");
printf (" %s\n", _("Return STATE if found, OK if not (STATE is CRITICAL, per default)"));
printf (" %s\n", _("can be changed with --state--regex)"));
- printf (" %s\n", "--regex-state=STATE");
+ printf (" %s\n", "--state-regex=STATE");
printf (" %s\n", _("Return STATE if regex is found, OK if not\n"));
printf (" %s\n", "-a, --authorization=AUTH_PAIR");

View file

@ -1,20 +0,0 @@
From 02adcbfa896eb726c59ca647eb4cf6909c690f37 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lorenz=20K=C3=A4stle?=
<12514511+RincewindsHat@users.noreply.github.com>
Date: Mon, 24 Feb 2025 20:32:19 +0100
Subject: [PATCH] check_by_ssh: Remove warning/critical from help
---
plugins/check_by_ssh.c | 1 -
1 file changed, 1 deletion(-)
--- a/plugins/check_by_ssh.c
+++ b/plugins/check_by_ssh.c
@@ -454,7 +454,6 @@
printf (" %s\n", _("Tell ssh to use this configfile [optional]"));
printf (" %s\n","-q, --quiet");
printf (" %s\n", _("Tell ssh to suppress warning and diagnostic messages [optional]"));
- printf (UT_WARN_CRIT);
printf (UT_CONN_TIMEOUT, DEFAULT_SOCKET_TIMEOUT);
printf (" %s\n","-U, --unknown-timeout");
printf (" %s\n", _("Make connection problems return UNKNOWN instead of CRITICAL"));

View file

@ -1,23 +0,0 @@
From ef3045b97eea23a4dec3197277e5ff4e5afc5c71 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andre=20Kl=C3=A4rner?= <kandre@ak-online.be>
Date: Mon, 17 Mar 2025 16:13:46 +0100
Subject: [PATCH] change error message for missing certificate
The old error message is quite similar to the openssl `failed to retrieve issuer certificate` and can mislead users to troubleshooting certificate stores.
The new message should be distinct enough to make it clear to users that this is not a problem raised by the underlying SSL implementation, but a problem inside monitoring-plugins.
---
plugins/sslutils.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/plugins/sslutils.c
+++ b/plugins/sslutils.c
@@ -208,7 +208,7 @@
time_t tm_t;
if (!certificate) {
- printf("%s\n",_("CRITICAL - Cannot retrieve server certificate."));
+ printf("%s\n",_("CRITICAL - No server certificate present to inspect."));
return STATE_CRITICAL;
}

View file

@ -1,30 +0,0 @@
From 14169fe5a11b94a9f9ab44336fdb5170ee98be66 Mon Sep 17 00:00:00 2001
From: Jan Wagner <waja@cyconet.org>
Date: Sat, 19 Apr 2025 14:37:46 +0200
Subject: [PATCH] check_http: Adding deprecation text
---
plugins/check_http.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/plugins/check_http.c b/plugins/check_http.c
index baff682a7..8e0c15ec9 100644
--- a/plugins/check_http.c
+++ b/plugins/check_http.c
@@ -1724,6 +1724,16 @@ print_help (void)
printf ("%s\n", _("strings and regular expressions, check connection times, and report on"));
printf ("%s\n", _("certificate expiration times."));
+ printf ("\n");
+ printf ("%s\n", _("ATTENTION!"));
+ printf ("\n");
+ printf ("%s\n", _("THIS PLUGIN IS DEPRECATED. The functionality was reimplemented by the"));
+ printf ("%s\n", _("check_curl plugin, which can be used as a drop-in replacement. You should"));
+ printf ("%s\n", _("migrate your checks over to check_curl, because check_http is going to be"));
+ printf ("%s\n", _("removed sooner than later. Just replace check_http with check_curl in your"));
+ printf ("%s\n", _("check command definitions."));
+ printf ("%s\n", _("Report issues to: https://github.com/monitoring-plugins/monitoring-plugins/issues"));
+
printf ("\n\n");
print_usage ();

View file

@ -1,28 +0,0 @@
From fb39f96ac6f72bb56d17f3e8694134dfea9186e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lorenz=20K=C3=A4stle?=
<12514511+RincewindsHat@users.noreply.github.com>
Date: Mon, 11 Aug 2025 21:49:20 +0200
Subject: [PATCH] check_users: Use sd_get_uids instead of sd_get_session
Previously check_users in combination with systemd used
sd_get_sessions (3) to aquire the number of users, probably
with the idea that every users opens a session.
Turns out, that a user can have multiple sessions and we only really
want to know how many users there are.
This commit changes to sd_get_uids (3) to achieve that target.
---
plugins/check_users.d/users.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/plugins/check_users.c
+++ b/plugins/check_users.c
@@ -92,7 +92,7 @@
#ifdef HAVE_LIBSYSTEMD
if (sd_booted () > 0)
- users = sd_get_sessions (NULL);
+ users = sd_get_uids(NULL);
else {
#endif
#if HAVE_WTSAPI32_H

21
debian/patches/series vendored
View file

@ -1,21 +0,0 @@
02_check_icmp_links
03_epn
04_lmstat_path
# commited upstream
10_check_curl_fix_redirects
11_check_curl_raise_ssl_issue
12_check_curl_add_docu
13_check_mysql_fix_variables
14_check_curl_remove_experimental_state
15_check_curl_fix_regex
16_check_curl_openssl_error
17_check_fping_dontfrag_random
18_check_curl_fix_TLS_notes
19_check_curl_cookie_handling
20_check_icmp_fix_rtmin
21_check_http_state_regex
22_check_by_ssh_missing_options
23_sslutils_fix_error_message
24_check_http_deprecation
25_check_users_sd_get_uids
# feature patches

View file

@ -1,12 +0,0 @@
# 'check_apt' command definition
define command{
command_name check_apt
command_line /usr/lib/nagios/plugins/check_apt
}
# 'check_apt_distupgrade' command definition
define command{
command_name check_apt_distupgrade
command_line /usr/lib/nagios/plugins/check_apt -d
}

View file

@ -1,5 +0,0 @@
# 'check_breeze' command definition
define command {
command_name check_breeze
command_line /usr/lib/nagios/plugins/check_breeze -H '$HOSTADDRESS$' -w '$ARG1$' -c '$ARG2$'
}

View file

@ -1,111 +0,0 @@
# 'check_curl_http' command definition
define command{
command_name check_curl_http
command_line /usr/lib/nagios/plugins/check_curl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_curl_httpname' command definition
define command{
command_name check_curl_httpname
command_line /usr/lib/nagios/plugins/check_curl -H '$HOSTNAME$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_curl_http2' command definition
define command{
command_name check_curl_http2
command_line /usr/lib/nagios/plugins/check_curl -H '$ARG1$' -I '$HOSTADDRESS$' -w '$ARG2$' -c '$ARG3$' '$ARG4$'
}
# 'check_curl_squid' command definition
define command{
command_name check_curl_squid
command_line /usr/lib/nagios/plugins/check_curl -H '$HOSTADDRESS$' -p '$ARG1$' -u '$ARG2$'
}
# 'check_curl_https' command definition
define command{
command_name check_curl_https
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_curl_https_httpname' command definition
define command{
command_name check_curl_https_hostname
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTNAME$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_curl_https_auth' command definition
define command{
command_name check_curl_https_auth
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -a '$ARG1$' '$ARG2$'
}
# 'check_curl_https_auth_hostname' command definition
define command{
command_name check_curl_https_auth_hostname
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTNAME$' -I '$HOSTADDRESS$' -a '$ARG1$' '$ARG2$'
}
# 'check_curl_cups' command definition
define command{
command_name check_curl_cups
command_line /usr/lib/nagios/plugins/check_curl -I '$HOSTADDRESS$' -p 631 '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_curl_http_4' command definition
define command{
command_name check_curl_http_4
command_line /usr/lib/nagios/plugins/check_curl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_curl_httpname_4' command definition
define command{
command_name check_curl_httpname_4
command_line /usr/lib/nagios/plugins/check_curl -H '$HOSTNAME$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_curl_http2_4' command definition
define command{
command_name check_curl_http2_4
command_line /usr/lib/nagios/plugins/check_curl -H '$ARG1$' -I '$HOSTADDRESS$' -w '$ARG2$' -c '$ARG3$' -4 '$ARG4$'
}
# 'check_curl_squid_4' command definition
define command{
command_name check_curl_squid_4
command_line /usr/lib/nagios/plugins/check_curl -H '$HOSTADDRESS$' -p '$ARG1$' -u '$ARG2$' -4
}
# 'check_curl_https_4' command definition
define command{
command_name check_curl_https_4
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_curls_https_hostname_4' command definition
define command{
command_name check_curl_https_hostname_4
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTNAME$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_curl_https_auth_4' command definition
define command{
command_name check_curl_https_auth_4
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -a '$ARG1$' -4 '$ARG2$'
}
# 'check_curl_https_auth_hostname_4' command definition
define command{
command_name check_curl_https_auth_hostname_4
command_line /usr/lib/nagios/plugins/check_curl --ssl -H '$HOSTNAME' -I '$HOSTADDRESS$' -a '$ARG1$' -4 '$ARG2$'
}
# 'check_curl_cups_4' command definition
define command{
command_name check_curl_cups_4
command_line /usr/lib/nagios/plugins/check_curl -I '$HOSTADDRESS$' -p 631 -4 '$ARG1$'
}

View file

@ -1,15 +0,0 @@
# note: these plugins require root privilege. see README.Debian for
# more information on how it is recommended that you do this.
# 'check_dhcp' command definition
define command{
command_name check_dhcp
command_line /usr/lib/nagios/plugins/check_dhcp -s '$HOSTADDRESS$' '$ARG1$'
}
# 'check_dhcp_interface' command definition
define command{
command_name check_dhcp_interface
command_line /usr/lib/nagios/plugins/check_dhcp -s '$HOSTADDRESS$' -i '$ARG1$' '$ARG2$'
}

View file

@ -1,54 +0,0 @@
# 'check_disk_smb' command definition
define command{
command_name check_disk_smb
command_line /usr/lib/nagios/plugins/check_disk_smb -H '$ARG1$' -s '$ARG2$'
}
# 'check_disk_smb_workgroup' command definition
define command{
command_name check_disk_smb_workgroup
command_line /usr/lib/nagios/plugins/check_disk_smb -H '$ARG1$' -s '$ARG2$' -W '$ARG3$'
}
# 'check_disk_smb_host' command definition
define command{
command_name check_disk_smb_host
command_line /usr/lib/nagios/plugins/check_disk_smb -a '$HOSTADDRESS$' -H '$ARG1$' -s '$ARG2$'
}
# 'check_disk_smb_workgroup_host' command definition
define command{
command_name check_disk_smb_workgroup_host
command_line /usr/lib/nagios/plugins/check_disk_smb -a '$HOSTADDRESS$' -H '$ARG1$' -s '$ARG2$' -W '$ARG3$'
}
# 'check_disk_smb_user' command definition
define command{
command_name check_disk_smb_user
command_line /usr/lib/nagios/plugins/check_disk_smb -H '$ARG1$' -s '$ARG2$' -u '$ARG3$' -p '$ARG4$' -w '$ARG5$' -c '$ARG6$'
}
# 'check_disk_smb_workgroup_user' command definition
define command{
command_name check_disk_smb_workgroup_user
command_line /usr/lib/nagios/plugins/check_disk_smb -H '$ARG1$' -s '$ARG2$' -W '$ARG3$' -u '$ARG4$' -p '$ARG5$'
}
# 'check_disk_smb_host_user' command definition
define command{
command_name check_disk_smb_host_user
command_line /usr/lib/nagios/plugins/check_disk_smb -a '$HOSTADDRESS$' -H '$ARG1$' -s '$ARG2$' -u '$ARG3$' -p '$ARG4$'
}
# 'check_disk_smb_workgroup_host_user' command definition
define command{
command_name check_disk_smb_workgroup_host_user
command_line /usr/lib/nagios/plugins/check_disk_smb -a '$HOSTADDRESS$' -H '$ARG1$' -s '$ARG2$' -W '$ARG3$' -u '$ARG4$' -p '$ARG5$'
}

View file

@ -1,27 +0,0 @@
# 'check_disk' command definition
define command{
command_name check_disk
command_line /usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -e -p '$ARG3$'
}
# 'check_all_disks' command definition
define command{
command_name check_all_disks
command_line /usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -e
}
# 'ssh_disk' command definition
define command{
command_name ssh_disk
command_line /usr/lib/nagios/plugins/check_by_ssh -H '$HOSTADDRESS$' -C "/usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -e -p '$ARG3$'"
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'ssh_disk_4' command definition
define command{
command_name ssh_disk_4
command_line /usr/lib/nagios/plugins/check_by_ssh -H '$HOSTADDRESS$' -C "/usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -e -p '$ARG3$'" -4
}

View file

@ -1,11 +0,0 @@
# 'check_dns' command definition
define command{
command_name check_dns
command_line /usr/lib/nagios/plugins/check_dns -H www.google.com -s '$HOSTADDRESS$' '$ARG1$'
}
# 'check_dig' command definition
define command{
command_name check_dig
command_line /usr/lib/nagios/plugins/check_dig -H '$HOSTADDRESS$' -l '$ARG1$' '$ARG2$'
}

View file

@ -1,29 +0,0 @@
# return-ok definition
define command {
command_name return-ok
command_line /usr/lib/nagios/plugins/check_dummy 0
}
# return-warning definition
define command {
command_name return-warning
command_line /usr/lib/nagios/plugins/check_dummy 1
}
# return-critical definition
define command {
command_name return-critical
command_line /usr/lib/nagios/plugins/check_dummy 2
}
# return-unknown definition
define command {
command_name return-unknown
command_line /usr/lib/nagios/plugins/check_dummy 3
}
# return-numeric definition
define command {
command_name return-numeric
command_line /usr/lib/nagios/plugins/check_dummy '$ARG1$'
}

View file

@ -1,6 +0,0 @@
# 'check_flexlm' command definition
define command{
command_name check_flexlm
command_line /usr/lib/nagios/plugins/check_flexlm -F '$ARG1$'
}

View file

@ -1,5 +0,0 @@
# 'check-fast-alive' command definition
define command{
command_name check-fast-alive
command_line /usr/lib/nagios/plugins/check_fping -H '$HOSTADDRESS$'
}

View file

@ -1,15 +0,0 @@
# 'check_ftp' command definition
define command{
command_name check_ftp
command_line /usr/lib/nagios/plugins/check_ftp -H '$HOSTADDRESS$' '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_ftp_4' command definition
define command{
command_name check_ftp_4
command_line /usr/lib/nagios/plugins/check_ftp -H '$HOSTADDRESS$' -4 '$ARG1$'
}

View file

@ -1,14 +0,0 @@
# 'check_quake' command definition
define command{
command_name check_quake
command_line /usr/lib/nagios/plugins/check_game qs '$HOSTADDRESS$'
}
# 'check_unreal' command definition
define command{
command_name check_unreal
command_line /usr/lib/nagios/plugins/check_game uns '$HOSTADDRESS$' -P '$ARG1$' -p 8
}

View file

@ -1,6 +0,0 @@
# 'check_hpjd' command definition
define command{
command_name check_hpjd
command_line /usr/lib/nagios/plugins/check_hpjd -H '$HOSTADDRESS$' -C public
}

View file

@ -1,111 +0,0 @@
# 'check_http' command definition
define command{
command_name check_http
command_line /usr/lib/nagios/plugins/check_http -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_http_hostname' command definition
define command{
command_name check_http_hostname
command_line /usr/lib/nagios/plugins/check_http -H '$HOSTNAME$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_http2' command definition
define command{
command_name check_http2
command_line /usr/lib/nagios/plugins/check_http -H '$ARG1$' -I '$HOSTADDRESS$' -w '$ARG2$' -c '$ARG3$' '$ARG4$'
}
# 'check_squid' command definition
define command{
command_name check_squid
command_line /usr/lib/nagios/plugins/check_http -H '$HOSTADDRESS$' -p '$ARG1$' -u '$ARG2$'
}
# 'check_https' command definition
define command{
command_name check_https
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_https_hostname' command definition
define command{
command_name check_https_hostname
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTNAME$' -I '$HOSTADDRESS$' '$ARG1$'
}
# 'check_https_auth' command definition
define command{
command_name check_https_auth
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -a '$ARG1$' '$ARG2$'
}
# 'check_https_auth_hostname' command definition
define command{
command_name check_https_auth_hostname
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTNAME$' -I '$HOSTADDRESS$' -a '$ARG1$' '$ARG2$'
}
# 'check_cups' command definition
define command{
command_name check_cups
command_line /usr/lib/nagios/plugins/check_http -I '$HOSTADDRESS$' -p 631 '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_http_4' command definition
define command{
command_name check_http_4
command_line /usr/lib/nagios/plugins/check_http -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_http_hostname_4' command definition
define command{
command_name check_http_hostname_4
command_line /usr/lib/nagios/plugins/check_http -H '$HOSTNAME$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_http2_4' command definition
define command{
command_name check_http2_4
command_line /usr/lib/nagios/plugins/check_http -H '$ARG1$' -I '$HOSTADDRESS$' -w '$ARG2$' -c '$ARG3$' -4 '$ARG4$'
}
# 'check_squid_4' command definition
define command{
command_name check_squid_4
command_line /usr/lib/nagios/plugins/check_http -H '$HOSTADDRESS$' -p '$ARG1$' -u '$ARG2$' -4
}
# 'check_https_4' command definition
define command{
command_name check_https_4
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_https_hostname_4' command definition
define command{
command_name check_https_hostname_4
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTNAME$' -I '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_https_auth_4' command definition
define command{
command_name check_https_auth_4
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTADDRESS$' -I '$HOSTADDRESS$' -a '$ARG1$' -4 '$ARG2$'
}
# 'check_https_auth_hostname_4' command definition
define command{
command_name check_https_auth_hostname_4
command_line /usr/lib/nagios/plugins/check_http --ssl -H '$HOSTNAME' -I '$HOSTADDRESS$' -a '$ARG1$' -4 '$ARG2$'
}
# 'check_cups_4' command definition
define command{
command_name check_cups_4
command_line /usr/lib/nagios/plugins/check_http -I '$HOSTADDRESS$' -p 631 -4 '$ARG1$'
}

View file

@ -1,23 +0,0 @@
# 'check_ifstatus' command definition
define command{
command_name check_ifstatus
command_line /usr/lib/nagios/plugins/check_ifstatus -H '$HOSTADDRESS$' -C '$ARG1$'
}
# 'check_ifstatus_exclude' command definition
define command{
command_name check_ifstatus_exclude
command_line /usr/lib/nagios/plugins/check_ifstatus -H '$HOSTADDRESS$' -C '$ARG1$' -x '$ARG2$'
}
# 'check_ifoperstatus_ifindex' command definition
define command{
command_name check_ifoperstatus_ifindex
command_line /usr/lib/nagios/plugins/check_ifoperstatus -H '$HOSTADDRESS$' -C '$ARG1$' -k '$ARG2$'
}
# 'check_ifoperstatus_ifdescr' command definition
define command{
command_name check_ifoperstatus_ifdescr
command_line /usr/lib/nagios/plugins/check_ifoperstatus -H '$HOSTADDRESS$' -C '$ARG1$' -d '$ARG2$'
}

View file

@ -1,12 +0,0 @@
# 'check_jabber_4' command definition
define command{
command_name check_jabber_4
command_line /usr/lib/nagios/plugins/check_jabber -4 -H $HOSTADDRESS$ '$ARG1$'
}
# 'check_jabber' command definition
define command{
command_name check_jabber
command_line /usr/lib/nagios/plugins/check_jabber -H $HOSTADDRESS$ '$ARG1$'
}

View file

@ -1,31 +0,0 @@
# 'check_ldap' command definition
define command{
command_name check_ldap
command_line /usr/lib/nagios/plugins/check_ldap -H '$HOSTADDRESS$' -b '$ARG1$'
}
# 'check_ldaps' command definition
# This was using 'check_ldaps' in the past which used port 389 and starttls
# mechanism on default, keeped for backward compatibility
define command{
command_name check_ldaps
command_line /usr/lib/nagios/plugins/check_ldap -H '$HOSTADDRESS$' -T -b '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_ldap_4' command definition
define command{
command_name check_ldap_4
command_line /usr/lib/nagios/plugins/check_ldap -H '$HOSTADDRESS$' -b '$ARG1$' -4
}
# 'check_ldaps_4' command definition
# This was using 'check_ldaps' in the past which used port 389 and starttls
# mechanism on default, keeped for backward compatibility
define command{
command_name check_ldaps_4
command_line /usr/lib/nagios/plugins/check_ldap -H '$HOSTADDRESS$' -T -b '$ARG1$' -4
}

View file

@ -1,6 +0,0 @@
# 'check_load' command definition
define command{
command_name check_load
command_line /usr/lib/nagios/plugins/check_load --warning='$ARG1$,$ARG2$,$ARG3$' --critical='$ARG4$,$ARG5$,$ARG6$'
}

View file

@ -1,77 +0,0 @@
# 'check_pop' command definition
define command {
command_name check_pop
command_line /usr/lib/nagios/plugins/check_pop -H '$HOSTADDRESS$' '$ARG1$'
}
# 'check_smtp' command definition
define command {
command_name check_smtp
command_line /usr/lib/nagios/plugins/check_smtp -H '$HOSTADDRESS$' '$ARG1$'
}
# 'check_ssmtp' command definition
define command {
command_name check_ssmtp
command_line /usr/lib/nagios/plugins/check_ssmtp -H '$HOSTADDRESS$' '$ARG1$'
}
# 'check_imap' command definition
define command {
command_name check_imap
command_line /usr/lib/nagios/plugins/check_imap -H '$HOSTADDRESS$' '$ARG1$'
}
# 'check_spop' command definition
define command {
command_name check_spop
command_line /usr/lib/nagios/plugins/check_pop -p 995 -H '$HOSTADDRESS$' -S '$ARG1$'
}
# 'check_simap' command definition
define command {
command_name check_simap
command_line /usr/lib/nagios/plugins/check_imap -p 993 -H '$HOSTADDRESS$' -S '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_pop_4' command definition
define command {
command_name check_pop_4
command_line /usr/lib/nagios/plugins/check_pop -H '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_smtp_4' command definition
define command {
command_name check_smtp_4
command_line /usr/lib/nagios/plugins/check_smtp -H '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_ssmtp_4' command definition
define command {
command_name check_ssmtp_4
command_line /usr/lib/nagios/plugins/check_ssmtp -H '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_imap_4' command definition
define command {
command_name check_imap_4
command_line /usr/lib/nagios/plugins/check_imap -H '$HOSTADDRESS$' -4 '$ARG1$'
}
# 'check_spop_4' command definition
define command {
command_name check_spop_4
command_line /usr/lib/nagios/plugins/check_pop -p 995 -H '$HOSTADDRESS$' -S -4 '$ARG1$'
}
# 'check_simap_4' command definition
define command {
command_name check_simap_4
command_line /usr/lib/nagios/plugins/check_imap -p 993 -H '$HOSTADDRESS$' -S -4 '$ARG1$'
}

View file

@ -1,24 +0,0 @@
# 'check-mailq' for sendmail
define command {
command_name check_mailq_sendmail
command_line /usr/lib/nagios/plugins/check_mailq -w '$ARG1$' -c '$ARG2$' -M sendmail
}
# 'check-mailq' for postfix
define command {
command_name check_mailq_postfix
command_line /usr/lib/nagios/plugins/check_mailq -w '$ARG1$' -c '$ARG2$' -M postfix
}
# 'check-mailq' for exim
define command {
command_name check_mailq_exim
command_line /usr/lib/nagios/plugins/check_mailq -w '$ARG1$' -c '$ARG2$' -M exim
}
# 'check-mailq' for qmail
define command {
command_name check_mailq_qmail
command_line /usr/lib/nagios/plugins/check_mailq -w '$ARG1$' -c '$ARG2$' -M qmail
}

View file

@ -1,14 +0,0 @@
# 'check_mrtg' command definition
define command{
command_name check_mrtg
command_line /usr/lib/nagios/plugins/check_mrtg '$ARG1$' 10 AVG '$ARG2$' '$ARG3$' '$ARG4$' '$ARG5$' '$ARG6$'
}
# 'traffic_average' command definition
define command{
command_name traffic_average
command_line /usr/lib/nagios/plugins/check_mrtgtraf '$ARG1$' 10 AVG '$ARG2$' '$ARG3$' '$ARG4$' '$ARG5$'
}

View file

@ -1,24 +0,0 @@
# 'check_mysql' command definition
define command{
command_name check_mysql
command_line /usr/lib/nagios/plugins/check_mysql -H '$HOSTADDRESS$' '$ARG1$'
}
# 'check_mysql_cmdlinecred' command definition
define command{
command_name check_mysql_cmdlinecred
command_line /usr/lib/nagios/plugins/check_mysql -H '$HOSTADDRESS$' -u '$ARG1$' -p '$ARG2$' '$ARG3$'
}
# 'check_mysql_database' command definition
define command{
command_name check_mysql_database
command_line /usr/lib/nagios/plugins/check_mysql -d '$ARG3$' -H '$HOSTADDRESS$' -u '$ARG1$' -p '$ARG2$' '$ARG3$'
}
# 'check_mysql_slave' command definition
define command{
command_name check_mysql_slave
command_line /usr/lib/nagios/plugins/check_mysql -H '$HOSTADDRESS$' -u '$ARG1$' -p '$ARG2$' -S '$ARG3$'
}

View file

@ -1,84 +0,0 @@
# 'check_netware_logins' command definition
define command{
command_name check_netware_logins
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v "LOGINS" -w '$ARG1$' -c '$ARG2$'
}
# 'check_nwstat_conns' command definition
define command{
command_name check_nwstat_conns
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v CONNS -w '$ARG1$' -c '$ARG2$'
}
# 'check_netware_1load' command definition
define command{
command_name check_netware_1load
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v "LOAD1" -w 70 -c 90
}
# 'check_netware_5load' command definition
define command{
command_name check_netware_5load
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v "LOAD5" -w 70 -c 90
}
# 'check_netware_15load' command definition
define command{
command_name check_netware_15load
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v "LOAD15" -w 70 -c 90
}
# 'check_nwstat_vol_p' command definition
define command{
command_name check_nwstat_vol_p
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v VPF'$ARG1$' -w '$ARG2$' -c '$ARG3$'
}
# 'check_nwstat_vol_k' command definition
define command{
command_name check_nwstat_vol_k
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v VKF'$ARG1$' -w '$ARG2$' -c '$ARG3$'
}
# 'check_nwstat_ltch' command definition
define command{
command_name check_nwstat_ltch
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v LTCH -w '$ARG1$' -c '$ARG2$'
}
# 'check_nwstat_puprb' command definition
define command{
command_name check_nwstat_puprb
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v PUPRB -w '$ARG1$' -c '$ARG2$'
}
# 'check_nwstat_dsdb' command definition
define command{
command_name check_nwstat_dsdb
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v DSDB
}
# 'check_netware_abend' command definition
define command{
command_name check_netware_abend
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v "ABENDS" -w 10 -c 30
}
# 'check_nwstat_csprocs' command definition
define command{
command_name check_nwstat_csprocs
command_line /usr/lib/nagios/plugins/check_nwstat -H '$HOSTADDRESS$' -v CSPROCS -w '$ARG1$' -c '$ARG2$'
}

View file

@ -1,15 +0,0 @@
# 'check_nntp' command definition
define command{
command_name check_nntp
command_line /usr/lib/nagios/plugins/check_nntp -H '$HOSTADDRESS$' '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_nntp_4' command definition
define command{
command_name check_nntp_4
command_line /usr/lib/nagios/plugins/check_nntp -H '$HOSTADDRESS$' -4 '$ARG1$'
}

View file

@ -1,15 +0,0 @@
# If you are confused about this command definition, cause you was
# reading other suggestions, please have a look into
# /usr/share/doc/monitoring-plugins/README.Debian
# 'check_nt' command definition
define command {
command_name check_nt
command_line /usr/lib/nagios/plugins/check_nt -H '$HOSTADDRESS$' -v '$ARG1$'
}
# 'check_nscp' command definition
define command {
command_name check_nscp
command_line /usr/lib/nagios/plugins/check_nt -H '$HOSTADDRESS$' -p 12489 -v '$ARG1$'
}

View file

@ -1,17 +0,0 @@
# 'check_ntp' command definition
define command{
command_name check_ntp
command_line /usr/lib/nagios/plugins/check_ntp_peer -H '$HOSTADDRESS$' '$ARG1$'
}
# 'check_ntp_ntpq' command definition
define command{
command_name check_ntp_ntpq
command_line /usr/lib/nagios/plugins/check_ntp_peer -H '$HOSTADDRESS$' -j 10 -k 15 '$ARG1$'
}
# 'check_time' command definition
define command{
command_name check_time
command_line /usr/lib/nagios/plugins/check_time -H '$HOSTADDRESS$' '$ARG1$'
}

View file

@ -1,15 +0,0 @@
# 'check_pgsql' command definition
define command{
command_name check_pgsql
command_line /usr/lib/nagios/plugins/check_pgsql -H '$HOSTADDRESS$' '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_pgsql_4' command definition
define command{
command_name check_pgsql_4
command_line /usr/lib/nagios/plugins/check_pgsql -H '$HOSTADDRESS$' -4 '$ARG1$'
}

View file

@ -1,72 +0,0 @@
# 'check_ping' command definition
define command{
command_name check_ping
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w '$ARG1$' -c '$ARG2$'
}
# 'check-host-alive' command definition
define command{
command_name check-host-alive
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1
}
# 'check-printer-alive' command definition
define command{
command_name check-printer-alive
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1
}
# 'check-switch-alive' command definition
define command{
command_name check-switch-alive
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1
}
# 'check-router-alive' command definition
define command{
command_name check-router-alive
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_ping_4' command definition
define command{
command_name check_ping_4
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w '$ARG1$' -c '$ARG2$' -4
}
# 'check-host-alive_4' command definition
define command{
command_name check-host-alive_4
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1 -4
}
# 'check-printer-alive_4' command definition
define command{
command_name check-printer-alive_4
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1 -4
}
# 'check-switch-alive_4' command definition
define command{
command_name check-switch-alive_4
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1 -4
}
# 'check-router-alive_4' command definition
define command{
command_name check-router-alive_4
command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1 -4
}

View file

@ -1,20 +0,0 @@
# 'check_procs' command definition
define command{
command_name check_procs
command_line /usr/lib/nagios/plugins/check_procs -w '$ARG1$' -c '$ARG2$'
}
# 'check_procs_zombie' command definition
define command{
command_name check_procs_zombie
command_line /usr/lib/nagios/plugins/check_procs -w '$ARG1$' -c '$ARG2$' -s Z
}
# 'check_procs_httpd' command definition
define command{
command_name check_procs_httpd
command_line /usr/lib/nagios/plugins/check_procs -w 5:'$ARG1$' -c 1:'$ARG2$' -C httpd
}

View file

@ -1,6 +0,0 @@
# 'check_radius' command definition
define command{
command_name check_radius
command_line /usr/lib/nagios/plugins/check_radius -F /etc/radcli/radiusclient.conf -H '$HOSTADDRESS$' -P '$ARG4$' -t '$ARG3$' -u '$ARG1$' -p '$ARG2$'
}

View file

@ -1,13 +0,0 @@
# 'check_real_url' command definition
define command{
command_name check_real_url
command_line /usr/lib/nagios/plugins/check_real '$HOSTADDRESS$' -p '$ARG1$' -wt '$ARG2$' -ct '$ARG3$' -to 5 -u '$ARG4$'
}
# 'check_real' command definition
define command{
command_name check_real
command_line /usr/lib/nagios/plugins/check_real '$HOSTADDRESS$' -p '$ARG1$' -wt '$ARG2$' -ct '$ARG3$' -to 5
}

View file

@ -1,14 +0,0 @@
# 'check-rpc' command definition
define command{
command_name check-rpc
command_line /usr/lib/nagios/plugins/check_rpc -H '$HOSTADDRESS$' -C '$ARG1$'
}
# 'check-nfs' command definition
define command{
command_name check-nfs
command_line /usr/lib/nagios/plugins/check_rpc -H '$HOSTADDRESS$' -C nfs -c2,3
}

View file

@ -1,132 +0,0 @@
# 'snmp_load' command definition
define command{
command_name snmp_load
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.2021.10.1.5.1,.1.3.6.1.4.1.2021.10.1.5.2,.1.3.6.1.4.1.2021.10.1.5.3 -w :'$ARG2$',:'$ARG3$',:'$ARG4$' -c :'$ARG5$',:'$ARG6$',:'$ARG7$' -l load
}
# 'snmp_cpustats' command definition
define command{
command_name snmp_cpustats
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.2021.11.9.0,.1.3.6.1.4.1.2021.11.10.0,.1.3.6.1.4.1.2021.11.11.0 -l 'CPU usage (user system idle)' -u '%'
}
# 'snmp_procname' command definition
define command{
command_name snmp_procname
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.2021.2.1.5.'$ARG2$' -w '$ARG3$':'$ARG4$' -c '$ARG5$':'$ARG6$'
}
# 'snmp_disk' command definition
define command{
command_name snmp_disk
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.2021.9.1.7.'$ARG2$',.1.3.6.1.4.1.2021.9.1.9.'$ARG2$' -w '$ARG3$':,:'$ARG4$' -c '$ARG5$':,:'$ARG6$' -u 'kB free (','% used)' -l 'disk space'
}
# 'snmp_mem' command definition
define command{
command_name snmp_mem
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.2021.4.6.0,.1.3.6.1.4.1.2021.4.5.0 -w '$ARG2$': -c '$ARG3$':
}
# 'snmp_swap' command definition
define command{
command_name snmp_swap
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.2021.4.4.0,.1.3.6.1.4.1.2021.4.3.0 -w '$ARG2$': -c '$ARG3$':
}
# 'snmp_procs' command definition
define command{
command_name snmp_procs
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o host.hrSystem.hrSystemProcesses -w :'$ARG2$' -c :'$ARG3$' -l processes
}
# 'snmp_users' command definition
define command{
command_name snmp_users
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o host.hrSystem.hrSystemNumUsers.0 -w :'$ARG2$' -c :'$ARG3$' -l users
}
# 'snmp_mem2' command definition
define command{
command_name snmp_mem2
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageUsed.'$ARG2$',host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageSize.'$ARG2$' -w '$ARG3$' -c '$ARG4$'
}
# 'snmp_swap2' command definition
define command{
command_name snmp_swap2
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageUsed.'$ARG2$',host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageSize.'$ARG2$' -w '$ARG3$' -c '$ARG4$'
}
# 'snmp_mem3' command definition
define command{
command_name snmp_mem3
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageUsed.'$ARG2$',host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageSize.'$ARG2$' -w '$ARG3$' -c '$ARG4$'
}
# 'snmp_swap3' command definition
define command{
command_name snmp_swap3
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageUsed.'$ARG2$',host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageSize.'$ARG2$' -w '$ARG3$' -c '$ARG4$'
}
# 'snmp_disk2' command definition
define command{
command_name snmp_disk2
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageUsed.'$ARG2$' -w '$ARG3$' -c '$ARG4$'
}
# 'snmp_tcpopen' command definition
define command{
command_name snmp_tcpopen
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o tcp.tcpCurrEstab.0 -w '$ARG2$' -c '$ARG3$'
}
# 'snmp_tcpstats' command definition
define command{
command_name snmp_tcpstats
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o tcp.tcpActiveOpens.0,tcp.tcpPassiveOpens.0,tcp.tcpInSegs.0,tcp.tcpOutSegs.0,tcp.tcpRetransSegs.0 -l 'TCP stats'
}
# 'check_netapp_uptime' command definition
define command{
command_name check_netapp_uptime
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.2.1.1.3.0 --delimiter=')' -l "Uptime is"
}
# 'check_netapp_cpuload' command definition
define command{
command_name check_netapp_cpuload
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.789.1.2.1.3.0 -w 90 -c 95 -u '%' -l "CPU LOAD "
}
# 'check_netapp_numdisks' command definition
define command{
command_name check_netapp_numdisks
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.789.1.6.4.1.0,.1.3.6.1.4.1.789.1.6.4.2.0,.1.3.6.1.4.1.789.1.6.4.8.0,.1.3.6.1.4.1.789.1.6.4.7.0 -u 'Total Disks','Active','Spare','Failed' -l ""
}
# 'check_compaq_thermalCondition' command definition
define command{
command_name check_compaq_thermalCondition
command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C '$ARG1$' -o .1.3.6.1.4.1.232.6.2.1.0,.1.3.6.1.4.1.232.6.2.2.0,.1.3.6.1.4.1.232.6.2.3.0,.1.3.6.1.4.1.232.6.2.4.0 -u 'ThermalCondition','ThermalTemp','ThermalSystem','ThermalCPUFan' -w 2:2,2:2,2:2,2:2 -c 1:2,1:2,1:2,1:2 -l "Thermal status "
}

View file

@ -1,27 +0,0 @@
# 'check_ssh' command definition
define command{
command_name check_ssh
command_line /usr/lib/nagios/plugins/check_ssh '$HOSTADDRESS$'
}
# 'check_ssh_port' command definition
define command{
command_name check_ssh_port
command_line /usr/lib/nagios/plugins/check_ssh -p '$ARG1$' '$HOSTADDRESS$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_ssh_4' command definition
define command{
command_name check_ssh_4
command_line /usr/lib/nagios/plugins/check_ssh -4 '$HOSTADDRESS$'
}
# 'check_ssh_port_4' command definition
define command{
command_name check_ssh_port_4
command_line /usr/lib/nagios/plugins/check_ssh -4 -p '$ARG1$' '$HOSTADDRESS$'
}

View file

@ -1,27 +0,0 @@
# 'check_tcp' command definition
define command{
command_name check_tcp
command_line /usr/lib/nagios/plugins/check_tcp -H '$HOSTADDRESS$' -p '$ARG1$' '$ARG2$'
}
# 'check_udp' command definition
define command{
command_name check_udp
command_line /usr/lib/nagios/plugins/check_udp -H '$HOSTADDRESS$' -p '$ARG1$' '$ARG2$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_tcp_4' command definition
define command{
command_name check_tcp_4
command_line /usr/lib/nagios/plugins/check_tcp -H '$HOSTADDRESS$' -p '$ARG1$' -4 '$ARG2$'
}
# 'check_udp_4' command definition
define command{
command_name check_udp_4
command_line /usr/lib/nagios/plugins/check_udp -H '$HOSTADDRESS$' -p '$ARG1$' -4 '$ARG2$'
}

View file

@ -1,15 +0,0 @@
# 'check_telnet' command definition
define command{
command_name check_telnet
command_line /usr/lib/nagios/plugins/check_tcp -H '$HOSTADDRESS$' -p 23 '$ARG1$'
}
####
# use these checks, if you want to test IPv4 connectivity on IPv6 enabled systems
####
# 'check_telnet_4' command definition
define command{
command_name check_telnet_4
command_line /usr/lib/nagios/plugins/check_tcp -H '$HOSTADDRESS$' -p 23 -4 '$ARG1$'
}

View file

@ -1,6 +0,0 @@
# 'check_users' command definition
define command{
command_name check_users
command_line /usr/lib/nagios/plugins/check_users -w '$ARG1$' -c '$ARG2$'
}

Some files were not shown because too many files have changed in this diff Show more