summaryrefslogtreecommitdiffstats
path: root/plugins
AgeCommit message (Collapse)AuthorFilesLines
2023-02-10Merge pull request #1839 from monitoring-plugins/gnutlsfixLorenz1-1/+10
fallback to SSL_CTX_use_certificate_file for gnutls
2023-02-08Make preprocessor fallback for gnutls more readablerefs/pull/1839/headLorenz Kästle1-3/+1
2023-02-08cope with radcli-1.3.1 RC_BUFFER_LENStuart Henderson1-0/+4
radcli 1.3.1 now uses RC_BUFFER_LEN instead of BUFFER_LEN. Add an #ifdef to allow working with either.
2023-02-06Merge branch 'master' into gnulib_update_2023Lorenz2-2/+76
2023-02-06Merge branch 'master' into curlfixesAndreas Baumann2-2/+76
2023-02-06check_http: Implement special case test for zero size chunk onlyrefs/pull/1840/headRincewindsHat1-1/+69
2023-02-06check_http: Handle chunked encoding without actual content correctlyRincewindsHat1-1/+7
2023-02-05using CURLOPT_REDIR_PROTOCOLS_STR instead of CURLOPT_REDIR_PROTOCOLS for ↵Andreas Baumann1-0/+4
curl >= 7.85.0
2023-02-04fallback to SSL_CTX_use_certificate_file for gnutlsAndreas Baumann1-1/+12
2023-02-03add extra output to pgsql checkrefs/pull/1486/headphowen1-1/+11
2023-02-02sslutils.c: Move function after a function it uses to avoid forward declarationsRincewindsHat1-11/+12
2023-01-31Link plugins against libcrypto to make hashes availableLorenz Kästle1-2/+2
2023-01-31check_disk: Remove weird code (workaround?) which broke with gnulib updateLorenz Kästle1-1/+1
2023-01-30check_http: Add space for ending NULL byte in array for chunked encodingrefs/pull/1830/headLorenz Kästle1-2/+4
2023-01-30check_http: Fix memory reallocation error in chunk decoding logicLorenz Kästle1-4/+3
This patch should fix an error with the way memory reallocation was used, which resulted in "realloc(): invalid next size". It is not completely clear to me as to what caused this problem, but apparently one can not depend handing a pointer to "realloc(3)" and expect that it still works afterwards, but one should/must use the one returned by the function. Also this patch replaces a variable which was used to remember the position in the array by just computing that from the current values.
2023-01-20check_disk: Clarify usage possibilites (#1745)Lorenz1-1/+1
* Clarify usage possibilites of check_disk * Remove superfluous newlines Co-authored-by: waja <waja@users.noreply.github.com>
2023-01-20fix check_snmp regex matchesSven Nierlein1-2/+21
the multiplier function always tried to extract a number, even if the result is a string because of using a mib. before: ``` ./check_snmp -H hostname -P2c -c public -o IF-MIB::ifAdminStatus.11466 -vvv -r 0 /usr/bin/snmpget -Le -t 10 -r 5 -m ALL -v 2c [context] [authpriv] 10.0.13.11:161 IF-MIB::ifAdminStatus.11466 IF-MIB::ifAdminStatus.11466 = INTEGER: up(1) Processing oid 1 (line 1) oidname: IF-MIB::ifAdminStatus.11466 response: = INTEGER: up(1) SNMP OK - 0 | IF-MIB::ifAdminStatus.11466=0;; ``` the regexp 0 matches, even if the actual result is "up(1)". after this patch: ``` ./check_snmp -H hostname -P2c -c public -o IF-MIB::ifAdminStatus.11466 -vvv -r 0 /usr/bin/snmpget -Le -t 10 -r 5 -m ALL -v 2c [context] [authpriv] 10.0.13.11:161 IF-MIB::ifAdminStatus.11466 IF-MIB::ifAdminStatus.11466 = INTEGER: up(1) Processing oid 1 (line 1) oidname: IF-MIB::ifAdminStatus.11466 response: = INTEGER: up(1) SNMP CRITICAL - *up(1)* | ```
2023-01-17Fixing spelling errors (#1826)waja3-3/+3
2023-01-08Check apt usage (#1793)Lorenz1-20/+20
* Remove trailing whitespaces * Use real booleans * Fix comment * Put upgrade options in the root sections Co-authored-by: waja <waja@users.noreply.github.com>
2023-01-07tests: fix chunked encoding test serverSven Nierlein2-20/+16
2023-01-07check_http/check_curl: add chunked encoding testSven Nierlein2-2/+34
2023-01-07Reformat a part to increase readabilityRincewindsHat1-3/+13
2023-01-07Undo clang formattingRincewindsHat1-845/+790
2023-01-07Fix several bug in the implementation of unchunkingRincewindsHat1-6/+12
2023-01-07Fix chunked header detection regexRincewindsHat1-2/+2
2023-01-07Fix type of unchunk_content function declarationRincewindsHat1-1/+1
2023-01-07Undo sorting of header file includes, it breaks the buildRincewindsHat1-1/+3
2023-01-07Implement chunked encoding decodingRincewindsHat1-1/+102
2023-01-07Restructure code a bit to put things where they are actually neededRincewindsHat1-5/+7
2023-01-07Remove legacy comments and add some new onesRincewindsHat1-3/+1
2023-01-07Remove dead codeRincewindsHat1-18/+0
2023-01-07clang formatRincewindsHat1-813/+872
2023-01-07Document process_arguments a little bit betterRincewindsHat1-1/+4
2023-01-07Update copyrightRincewindsHat1-1/+1
2023-01-07Use real booleans instead of intsRincewindsHat1-56/+55
2022-12-22check_snmp: always apply format when applying multiplierSven Nierlein2-2/+6
2022-12-22Improve tests for check_snmp & multiply optionRobert Bohne2-9/+19
2022-12-22add 'multiplier' to modify current valueWolfgang Nieder2-26/+70
2022-12-22check_curl: fix checking large bodys (#1823)Sven Nierlein1-2/+5
check_curl fails on large pages: HTTP CRITICAL - Invalid HTTP response received from host on port 5080: cURL returned 23 - Failure writing output to destination for example trying to run check_curl on the test from #1822 I guess the idea is to double the buffer size each time it is to small. But the code exponentially grows the buffer size which works well 2-3 times, but then fails.
2022-12-22make check_http faster with larger filesDanijel Tasov1-2/+7
The current implementation becomes exponentially slower with growing response size. See also: https://github.com/nagios-plugins/nagios-plugins/blob/release-2.4.2/plugins/check_http.c#L1199-L1204 Test: $ mkdir web $ nohup python3 -m http.server -d web 5080 & $ perl -E 'say "0123456789" for (1..2_000_000)' >| web/file.txt $ ./check_http.orig -t 200 -v -I localhost -p 5080 -u /file.txt > test1.txt real 0m26.893s user 0m12.661s sys 0m14.221s $ time ./check_http -t 200 -v -I localhost -p 5080 -u /file.txt > test2.txt real 0m0.038s user 0m0.011s sys 0m0.027s $ diff -u test[12].txt --- test1.txt 2022-12-21 14:58:28.720260811 +0100 +++ test2.txt 2022-12-21 14:58:42.640008604 +0100 @@ -7,7 +7,7 @@ STATUS: HTTP/1.0 200 OK **** HEADER **** Server: SimpleHTTP/0.6 Python/3.9.2 -Date: Wed, 21 Dec 2022 13:58:01 GMT +Date: Wed, 21 Dec 2022 13:58:42 GMT Content-type: text/plain Content-Length: 22000000 Last-Modified: Wed, 21 Dec 2022 13:57:58 GMT @@ -2000013,4 +2000013,4 @@ 0123456789 0123456789 -HTTP OK: HTTP/1.0 200 OK - 22000191 bytes in 26.860 second response time |time=26.860182s;;;0.000000;200.000000 size=22000191B;;;0; +HTTP OK: HTTP/1.0 200 OK - 22000191 bytes in 0.016 second response time |time=0.016412s;;;0.000000;200.000000 size=22000191B;;;0;
2022-12-20Remove trailing whitespacesRincewindsHat1-14/+14
2022-12-20Fix unknown escape sequence error outputRincewindsHat1-1/+1
2022-11-29check_http: fix test planAksel Sjögren1-1/+1
Fix test plan when run with NP_INTERNET_ACCESS=no, where the correct number of steps must be skipped. Caused by a removed test in 65fc7064295ac70d1388fa4db4d4d2cddd531e24. Signed-off-by: Aksel Sjögren <asjogren@itrsgroup.com>
2022-11-07Check curl detect ipv6 (#1809)Lorenz2-15/+46
* If server_address is an IPv6 address surround it with brackets * If the message is too short, we should not have an underflow * Add simple conditional test case available if IPv6 is
2022-11-05Remove superflous CRLF in HTTP-Requests in check_http (#1798)Lorenz1-3/+2
* Remove superflous CRLF in HTTP-Requests in check_http
2022-11-04Removing is_pg_dbname alltogether,using postgres API. (Closes: #1660) (#1803)waja1-44/+4
The problem is that check_pgsql validates the Database name and has different assumptions that postgres itself. I fail to see a reason to validate the database name here. Postgres'es API should do this - So i would suggest a fix like this by removing is_pg_dbname alltogether. Co-authored-by: Florian Lohoff <f@zz.de>
2022-10-27fixed two PRId64 to PRIu64 in perfdata_uint64 (#1802)Andreas Baumann1-2/+2
2022-10-26check_disk: adjust test planSven Nierlein1-1/+1
2022-10-25check_disk: add tests for new option --ignore-missingKristian Schuster1-0/+15
2022-10-24check_disk: add ignore-missing option to return OK for missing fsKristian Schuster1-5/+24
There a situations where UNKNOWN or CRITICAL services are not wanted when a filesystem is missing, a regex does not match or the filesystem is inaccessible on a system. This new option helps to have the service in state OK.