Commit graph

1803 commits

Author SHA1 Message Date
Barak Shohat
a514dc4708 check_curl: Fix bug where headers beginning with HTTP_ cause the status line parsing to fail. 2021-04-12 19:06:27 +03:00
Andreas Baumann
abcaa761c8 check_curl: backported --show-body/-B to print body (from check_http) 2021-04-10 13:43:12 +02:00
Andreas Baumann
14be220fce check_curl: make -C obvious (from check_http, part 2) 2021-04-10 13:43:12 +02:00
Andreas Baumann
7a8a089723 check_curl: make -C obvious (from check_http) 2021-04-10 13:43:12 +02:00
Andreas Baumann
74fb00f7a0 check_curl: Increase regexp limit (to 1024 as in check_http) 2021-04-10 13:43:12 +02:00
Barak Shohat
827c3e80ef Add an option to check_curl to verify the peer certificate & host using the system CA's 2021-04-10 13:43:12 +02:00
Stefan Bethke
822fb4ebe4 Docs check_http: make -C obvious
You need to read the docs carefully to realize that check_http has two 
modes of operation: the regular HTTP checks, and a TLS certificate 
check. Only one of these can be run in a single invocation.

Fixes #1553
2021-04-10 13:43:12 +02:00
Tomas Mozes
e819b582d5 plugins: check_http: Increase regexp limit 2021-04-10 13:43:12 +02:00
Gerhard Lausser
001f684d21 check_snmp: put the "c" (to mark a counter) after the perfdata value 2021-04-10 13:43:12 +02:00
Florian Lohoff
0d504aea51 Using snprintf which honors the buffers size and guarantees null termination. (Closes: #1601)
As strcpy may overflow the resulting buffer:

flo@p5:~$ /tmp/f/usr/lib/nagios/plugins/check_pgsql -d "$(seq 1 10000)"
*** buffer overflow detected ***: terminated
Aborted

I would propose to change the code rather like this, using snprintf
which honors the buffers size and guarantees null termination.
2021-04-10 13:43:12 +02:00
Barak Shohat
e7598ae637 Updated check_curl.c to display a specific human-readable error message where possible 2021-04-10 13:43:12 +02:00
Sven Nierlein
2bb6abb501 fix check_curl crash if http header contains leading spaces
check_curl crashes when a (broken) http server returns invalid http header with
leading spaces or double colons. This PR adds a fix and a test case for this.

Signed-off-by: Sven Nierlein <sven@nierlein.de>
2021-04-10 13:43:12 +02:00
ghciv6
7c32e64540 - fix for issue #1562
1st compare then free up resources
2021-04-10 13:43:12 +02:00
Andreas Baumann
5a0ea60d76 check_curl: added string_statuscode function for printing HTTP/1.1 and HTTP/2 correctly 2021-04-10 13:43:12 +02:00
Rolf Eike Beer
a56d01d028 check_dns: split multiple IP addresses passed in one -a argument 2021-04-10 13:43:12 +02:00
Andreas Baumann
d5b81e8966 check_curl: fixed a potential buffer overflow in url buffer 2021-04-10 13:43:12 +02:00
Andreas Baumann
0484aed02b check_curl: fixed help, usage and errors for TLS 1.3 2021-04-10 13:43:12 +02:00
Sven Nierlein
739a7bbe7c
Merge pull request #1514 from Rasp8e/master
Proxy authorization is now kept when using PROXY + CONNECT to HTTPS
2020-09-23 17:19:23 +02:00
ghciv6
905b09c38b detect unreachable dns service in nslookup output (from bind-utils-9.8.2)
prevent core if error_scan detects an error in a line without ':'
2020-05-20 23:02:42 +02:00
Sven Nierlein
772fb233b9 check_curl: host_name may be null
for example when using like: ./check_curl localhost
2020-05-18 14:08:45 +02:00
Sven Nierlein
7d2582deb3 update test parameter according to check_http 2020-05-18 14:08:27 +02:00
Sven Nierlein
84fd9ae893 check_curl: use CURLOPT_RESOLVE to fix connecting to the right ip
when using ssl, the composed url contains the hostname instead of the specified
ip. So use CURLOPT_RESOLVE to make curl still connect to the ip.
2020-05-18 13:43:17 +02:00
Sven Nierlein
8a64e47083 check_curl: clean trailing whitespace 2020-05-18 11:30:34 +02:00
Sven Nierlein
d54f14a092 merge test changes from check_http
the example certificate has changed since.
2020-05-15 14:24:18 +02:00
Sven Nierlein
072e97d5de tests: update expired test certificate
the certificate used to test expired http checks is to old to be used
with recent ssl libraries and results in:

> SSL routines:SSL_CTX_use_certificate:ee key too small

unfortunatly the error is only visible when setting $IO::Socket::SSL::DEBUG in
the check_http.t file.
2020-05-15 14:24:18 +02:00
Andreas Baumann
adb9588494 Merge branch 'master' into feature_check_curl 2020-01-09 14:54:12 +01:00
Alexander A. Klimov
f53ea7afd8 check_tcp: add --sni 2020-01-07 21:32:15 +01:00
Christian Tacke
9da7cd7681 Fix timeout_interval declarations
There are different declarations for timeout_interval:

lib/utils_base.c has the definition:
	unsigned int timeout_interval = DEFAULT_SOCKET_TIMEOUT;
lib/utils_base.h has the appropiate declaration:
	extern unsigned int timeout_interval;

plugins/popen.h has an extra declaration:
	extern unsigned int timeout_interval;
This doesn't hurt, but it's a dupe. The one in utils_base.h
should be enough, so remove this one.

plugins/popen.c has a WRONG one:
	extern int timeout_interval;
Remove it!
Use #include "utils.h" to get the right one.
This makes the local defines for max/min unnecassary, so
remove them also.
2020-01-07 10:22:39 +01:00
Andreas Baumann
5e0c236d6a increased copyright 2019-12-29 10:23:02 +00:00
Andreas Baumann
1b689dab5e check_curl: NSS, parse more date formats from certificate (in -C cert check) 2019-11-07 15:31:52 +00:00
Andreas Baumann
f7efee5f9c check_curl: more tolerant CN= parsing when checking certificates (hit on Centos 8) 2019-11-07 08:20:17 +00:00
Andreas Baumann
ede43c848d setting no_body to TRUE when we have a HEAD request 2019-10-11 17:22:34 +02:00
Andreas Baumann
04c58e0210 some LIBCURL_VERSION checks around HTTP/2 feature 2019-09-07 16:06:17 +02:00
Andreas Baumann
f546041722 added --http-version option to check_curl to choose HTTP version 2019-09-07 15:58:09 +02:00
Andreas Baumann
95ee6ace09 improved curlhelp_parse_statusline to handle both HTTP/1.x and HTTP/2 2019-09-07 15:31:15 +02:00
Andreas Baumann
fe91deb40c check_curl: updates embedded picohttpparser to newest git version 2019-09-07 14:22:00 +02:00
Andreas Baumann
4d666514f2 setting progname of check_curl plugin to check_curl (at least for now) 2019-09-07 11:20:13 +02:00
Andreas Baumann
34cc70c3c6 Merge branch 'master' into feature_check_curl 2019-07-18 08:40:35 +02:00
Sven Nierlein
e8325b39c4 fix maxfd being zero
If _SC_OPEN_MAX is available then maxfd was zero initialized and never set to the value from sysconf.
This leads to segfaults with free(): invalid size introduced by commit 7cafb0e845.

Signed-off-by: Sven Nierlein <sven@nierlein.de>
2019-05-24 14:51:10 +02:00
Christopher Odenbach
a15d425598 include -P switch in help 2019-04-09 09:49:57 +02:00
Andreas Baumann
2f4d6764d7 Merge branch 'master' into feature_check_curl 2019-04-04 13:09:15 +02:00
Sven Nierlein
5f16ba81c4
Merge pull request #1491 from odenbach/no_swap
check_swap: repaired "-n" behaviour
2019-03-28 16:55:22 +01:00
Sven Nierlein
71582d8bf9
Merge pull request #1586 from computersalat/master
improve command examples for 'at least' processes
2019-03-21 17:43:55 +01:00
ChrisWi
a58ea5ec5d improve command examples for 'at least' processes 2019-03-21 14:18:37 +01:00
Robin Sonefors
2bc4cc99d2 check_mysql: Allow sockets to be specified to -H
The help text says that -H accepts a "unix socket (must be an absolute
path)". Now that actually corresponds to reality.

Signed-off-by: Robin Sonefors <robin.sonefors@op5.com>
2019-03-21 13:54:19 +01:00
Sven Nierlein
97bb142b14
Merge pull request #1506 from sanchezfauste/check_apt_parameters
Adding packages-warning option to check_apt plugin
2019-02-19 22:10:07 +01:00
Sven Nierlein
af8e68d140
Merge pull request #1507 from sanchezfauste/check_load_print_top_procs
Adding print top consuming processes option to check_load
2019-02-19 22:08:04 +01:00
Sven Nierlein
e5823c7ae4
Merge pull request #1527 from m-kraus/master
check_snmp: make calcualtion of timeout value in help output more clear
2019-02-19 21:58:03 +01:00
Sven Nierlein
555559fd30
Merge pull request #1567 from vdanjean/master
[check_disk] add support to display inodes usage in perfdata
2019-02-19 21:49:13 +01:00
Sven Nierlein
931ed78b5d
Merge pull request #1583 from sni/fix_check_by_ssh_timeout_child_leak
check_by_ssh: fix child process leak on timeouts
2019-02-19 21:42:02 +01:00