summaryrefslogtreecommitdiffstats
path: root/plugins
AgeCommit message (Collapse)AuthorFilesLines
2023-03-08check_curl.c: Include all IPs from getaddrinfo() in curl DNS cacheBarak Shohat1-13/+26
2023-03-07check_curl: in SSL host caching mode try to connect and bind and take the ↵Andreas Baumann1-7/+15
first getaddrinfo result which succeeds
2023-02-17using real boolean in check_curlrefs/pull/1843/headAndreas Baumann1-78/+82
2023-02-12changed #else/#if to #elif in libcurl library checksAndreas Baumann1-4/+2
2023-02-12fixed double frees when doing old-style redirectsAndreas Baumann1-4/+14
2023-02-12better cleanup of curl structures and buffersAndreas Baumann1-11/+20
2023-02-11added --cookie-jar and doing proper cleanup of libcurlAndreas Baumann1-13/+34
2023-02-11fixed regerror is MAX_INPUT_BUFFER writting into too small errbufAndreas Baumann1-1/+1
2023-02-11Merge branch 'master' into curlfixesAndreas Baumann3-15/+25
2023-02-10Merge pull request #1832 from RincewindsHat/gnulib_update_2023Lorenz3-14/+15
Gnulib update 2023 and attendant fixes
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-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-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