Commit graph

2791 commits

Author SHA1 Message Date
Lorenz Kästle
be86e3ef5a Merge branch 'master' into remove/check_ntp 2025-12-04 00:32:30 +01:00
Lorenz Kästle
30a9908d8d
Remove check_nt (#2195)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
Spellcheck / codespell (push) Waiting to run
Tests / Running unit and integrationt tests (push) Waiting to run
Tests / Running rpm build test on almalinux:9 (push) Waiting to run
Tests / Running rpm build test on fedora:latest (push) Waiting to run
Tests / Running rpm build test on rockylinux:8 (push) Waiting to run
check_nt was used to connect NSclient++ on windows, both the method
and the target are pretty much dead.
Therefor check_nt gets removed.
2025-12-03 22:39:19 +01:00
Lorenz Kästle
9228140bee Remove check_ntp
check_ntp was marked as deprecated for forever (SVN times).
In the spirit of cleaning up and removing the dead bodies, this
commit removes check_ntp and all its connections.
2025-12-02 12:47:16 +01:00
Lorenz Kästle
25329a9097
check_snmp: fix offset computation for INTEGER (#2190)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
Spellcheck / codespell (push) Has been cancelled
Tests / Running unit and integrationt tests (push) Has been cancelled
Tests / Running rpm build test on almalinux:9 (push) Has been cancelled
Tests / Running rpm build test on fedora:latest (push) Has been cancelled
Tests / Running rpm build test on rockylinux:8 (push) Has been cancelled
2025-12-02 11:32:17 +01:00
Dennis
fd42290d4a
check_dig: add -E/--require-flags and -X/--forbid-flags (#2165)
Some checks failed
CodeQL / Analyze (push) Has been cancelled
Spellcheck / codespell (push) Has been cancelled
Tests / Running unit and integrationt tests (push) Has been cancelled
Tests / Running rpm build test on almalinux:9 (push) Has been cancelled
Tests / Running rpm build test on fedora:latest (push) Has been cancelled
Tests / Running rpm build test on rockylinux:8 (push) Has been cancelled
Tests Debian:Testing and Fedora:Rawhide / Running unit and integrationt tests (push) Has been cancelled
Tests Debian:Testing and Fedora:Rawhide / Running rpm build test on fedora:rawhide (push) Has been cancelled
* check_dig: Add feature to require or forbid dig DNS flags -E, -X.
Introduced helper functions for flag parsing.

 -E, --require-flags=LIST
    Comma-separated dig flags that must be present (e.g. 'aa,qr')
 -X, --forbid-flags=LIST
    Comma-separated dig flags that must NOT be present
2025-11-29 15:24:52 +01:00
Lorenz Kästle
db2983da7e
Fix/check curl sticky redir (#2188)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
Spellcheck / codespell (push) Waiting to run
Tests / Running unit and integrationt tests (push) Waiting to run
Tests / Running rpm build test on almalinux:9 (push) Waiting to run
Tests / Running rpm build test on fedora:latest (push) Waiting to run
Tests / Running rpm build test on rockylinux:8 (push) Waiting to run
* check_curl: avoid freeing memory when we don't know where it came from

* check_curl: when using -f sticky conserve IPv6 addresses properly

When running the check on an ipv6 address with a sticky onredirect
policy like in this example:

  check_curl -6 -H example.com -I ::1 -f sticky

It results in a getaddrinfo error:

  HTTP CRITICAL - Unable to lookup IP address for '[::1]': getaddrinfo returned -3 - Temporary failure in name resolution

This happens because in check_http() if the content of server_addr is an
ipv6 address enclosing brackets are added and on redirection a
subsequent call to check_http() will pass this now bracketed value to
getaddrinfo resulting in the error.

To work around this, strip the brackets from the address prior to the
lookup_host() call.

* add Michael Jeanson to thanks
2025-11-28 12:21:08 +01:00
Lorenz Kästle
2f96b82c9b
check_ntp_time/check_ntp_peer: unix socket handling (#2187)
Some checks are pending
CodeQL / Analyze (push) Waiting to run
Spellcheck / codespell (push) Waiting to run
Tests / Running unit and integrationt tests (push) Waiting to run
Tests / Running rpm build test on almalinux:9 (push) Waiting to run
Tests / Running rpm build test on fedora:latest (push) Waiting to run
Tests / Running rpm build test on rockylinux:8 (push) Waiting to run
* check_ntp_time/check_ntp_peer: unix socket handling

* No tests for check_ntp since it is deprecated
2025-11-28 10:52:39 +01:00
Lorenz Kästle
16db5eed1e
Merge pull request #2183 from RincewindsHat/modern_output/check_mrtgtraf
Some checks are pending
CodeQL / Analyze (push) Waiting to run
Spellcheck / codespell (push) Waiting to run
Tests / Running unit and integrationt tests (push) Waiting to run
Tests / Running rpm build test on almalinux:9 (push) Waiting to run
Tests / Running rpm build test on fedora:latest (push) Waiting to run
Tests / Running rpm build test on rockylinux:8 (push) Waiting to run
check_mrtgtraf: modern output implementation
2025-11-28 00:35:51 +01:00
Lorenz Kästle
7827b55bbf
Merge pull request #2184 from RincewindsHat/fix/check_mysql_replica_again
Look for either replica or slave in replica status
2025-11-28 00:30:38 +01:00
Lorenz Kästle
6c231f0dd8
Merge pull request #2185 from RincewindsHat/fix/curl_segfault
Some checks are pending
CodeQL / Analyze (push) Waiting to run
Spellcheck / codespell (push) Waiting to run
Tests / Running unit and integrationt tests (push) Waiting to run
Tests / Running rpm build test on almalinux:9 (push) Waiting to run
Tests / Running rpm build test on fedora:latest (push) Waiting to run
Tests / Running rpm build test on rockylinux:8 (push) Waiting to run
check_curl: abort redir if location is not found
2025-11-27 14:43:32 +01:00
Lorenz Kästle
a2ccc81487
Merge pull request #2186 from RincewindsHat/doc/check_curl_usage
check_curl: try to be more helpful in check_curls help
2025-11-27 14:42:20 +01:00
Lorenz Kästle
57043387ea Remove some superfluous newlines 2025-11-27 14:42:05 +01:00
Lorenz Kästle
9fc1e24543 check_curl: try to be more helpful in check_curls help
Trying to be more specific with the check_curl help.
The idea is to clarify how the parameters are supposed to be used.
2025-11-27 14:29:33 +01:00
Lorenz Kästle
2917b8735f check_curl: abort redir if location is not found
This commit changes the behaviour of check_curl slightly.
Previously when the redirection method was set to the old 'check_http'
style redirection and there was no "location" header in the original
answer 'check_curl' segfaulted.
Now, at least it dies properly with a message.
2025-11-27 13:24:30 +01:00
Lorenz Kästle
fa6a274ad8 Look for either replica or slave in replica status 2025-11-27 12:55:26 +01:00
Lorenz Kästle
cd7698a419 check_mrtgtraf: modern output implementation 2025-11-27 07:35:29 +01:00
Lorenz Kästle
326d399624 check_mrtg: implement modern output 2025-11-26 14:35:21 +01:00
Lorenz Kästle
317ee266a8 Add output formatting option where they were forgotten 2025-11-26 13:57:12 +01:00
Lorenz Kästle
dccc974e45 check_ldap: fix thresholds for number of entries 2025-11-25 13:48:01 +01:00
Lorenz Kästle
94642b3171 check_ldap: add number of entries perfdata 2025-11-25 13:47:47 +01:00
Lorenz Kästle
d6c4b799e3 check_ldap: implement output format selection 2025-11-25 12:42:50 +01:00
Lorenz Kästle
2e3dff775d check_ldap: fix typo 2025-11-25 12:37:42 +01:00
Lorenz Kästle
07d3eb9e2c check_ldap: modern output implementation 2025-11-25 12:31:00 +01:00
Lorenz Kästle
584272e97d check_by_ssh: fix some tests 2025-11-16 15:33:11 +01:00
Lorenz Kästle
c3d931fa1a check_by_ssh: some formatting 2025-11-16 15:27:58 +01:00
Lorenz Kästle
62242ddcf5 check_by_ssh: do not incorrectly assume that ssh (1) succeeded 2025-11-16 15:27:19 +01:00
Lorenz Kästle
463223790c check_by_ssh: handle errrors of ssh (1) directly 2025-11-16 14:52:07 +01:00
Lorenz Kästle
e77ce530c4 check_by_ssh: Implement modern output functionality 2025-11-16 14:36:10 +01:00
Lorenz Kästle
7bfb16e0da Implement replacement functions for executing commands
This commit implements replacement functions for the previous
exec functions.
The replacements are implemented in a more "pure" style, the do no
longer receive pointer arguments which they will write to, but create
the pointers themselves and should therefore be easier to use,
since it is more obvious what goes in and what comes out.

Also a essentialy unused variable was removed with this.
2025-11-16 14:26:41 +01:00
Lorenz Kästle
bc2720abdd check_smtp: certificate check is no longer opt-in
This is a breaking change.
Testing whether a TLS certificate is still valid (expiration wise)
is now the default in check_smtp.
The reasoning is, that in most scenarios an expired certificate
will effectively mean that the service is not working anymore due to
the refusal of other software to talk to it.

There is a new cli parameter though to explicitly ignore that.
2025-11-09 11:46:36 +01:00
Lorenz Kästle
62035adf6c check_smtp: implement output format cli parameter 2025-11-09 11:32:43 +01:00
Lorenz Kästle
4442ea917b small test correction 2025-11-08 02:10:45 +01:00
Lorenz Kästle
034d4ee158 Fix initialisation on old compilers 2025-11-08 00:59:46 +01:00
Lorenz Kästle
e0b1273127 check_smtp: adapt tests 2025-11-08 00:46:37 +01:00
Lorenz Kästle
6bc9e518b2 check_smtp: modern output + some tls cert helper functions 2025-11-08 00:19:25 +01:00
Lorenz Kästle
5bbfd58105 Fix typo 2025-11-07 15:10:39 +01:00
Lorenz Kästle
9d827acbe1 check_mysql_query: implement modern output 2025-11-07 15:01:36 +01:00
Lorenz Kästle
b5e7f4e6cc
Merge pull request #2174 from RincewindsHat/modern_output/check_mysql
Modern output/check mysql
2025-11-07 14:15:26 +01:00
Lorenz Kästle
ca3acbe274
Merge pull request #2168 from RincewindsHat/refactor/check_dbi
check_dbi: new output functionality
2025-11-07 14:14:55 +01:00
Lorenz Kästle
0fb65a3a90 check_mysql: implement modern output 2025-11-07 13:31:42 +01:00
Lorenz Kästle
b6150cded1 check_mysql: replace cpp constant with a proper enum 2025-11-06 10:08:02 +01:00
Lorenz Kästle
36ac312e07 fix typos 2025-11-05 14:01:31 +01:00
Lorenz Kästle
8a71cf947f check_pgsql: implement cli params for output format 2025-11-05 14:01:17 +01:00
Lorenz Kästle
2f0fc05981 check_pgsql: cleanup leftover code 2025-11-05 13:58:48 +01:00
Lorenz Kästle
8e5cb31dc1 Merge branch 'master' into modern_output/check_pgsql 2025-11-05 13:54:43 +01:00
Lorenz Kästle
ba6f903733 check_pgsql: implement modern output 2025-11-05 13:54:04 +01:00
Lorenz Kästle
71e0d5e073 check_ntp_time: add cli option for output format 2025-11-05 12:19:20 +01:00
Lorenz Kästle
8062f83675
Merge pull request #2170 from RincewindsHat/modern_output/check_ntp_peer
Modern output/check ntp peer
2025-11-05 12:14:00 +01:00
Lorenz Kästle
a9b63deedb check_ntp_peer: add cli param to set output format 2025-11-05 12:04:30 +01:00
Lorenz Kästle
99351f0560 check_ntp_peer: fix several missing things and errors 2025-11-05 11:58:59 +01:00