Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2025-08-01 | check_ssh: fix data type to allow for error checking | Lorenz Kästle | 1 | -2/+2 | |
2025-08-01 | Merge pull request #2133 from rlaager/fix-check_ssh-buffer-overflow | Lorenz Kästle | 1 | -4/+6 | |
Fix check ssh buffer overflow | |||||
2025-07-14 | check_ntp_peer: fix invalid conversion in printf | Lorenz Kästle | 1 | -3/+3 | |
2025-07-11 | check_ssh: Correct type on len variable | Richard Laager | 1 | -1/+1 | |
strlen() returns a size_t. Signed-off-by: Richard Laager <rlaager@wiktel.com> | |||||
2025-07-11 | check_ssh: Fix buffer overflow | Richard Laager | 1 | -3/+5 | |
A buffer overflow was occurring when the server responded with: Exceeded MaxStartups\r\n glibc would then abort() with the following output: *** buffer overflow detected ***: terminated It was the memset() that was overflowing the buffer. But the memmove() needed fixing too. First off, there was an off-by-one error in both the memmove() and memset(). byte_offset was already set to the start of the data _past_ the newline (i.e. len + 1). For the memmove(), incrementing that by 1 again lost the first character of the additional output. For the memset(), this causes a buffer overflow. Second, the memset() has multiple issues. The comment claims that it was NULing (sic "null") the "rest". However, it has no idea how long the "rest" is, at this point. It was NULing BUFF_SZ - byte_offset + 1. After fixing the off-by-one / buffer overflow, it would be NULing BUFF_SZ - byte_offset. But that doesn't make any sense. The length of the first line has no relation to the length of the second line. For a quick-and-dirty test, add something like this just inside the while loop: memcpy(output, "Exceeded MaxStartups\r\nnext blah1 blah2 blah3 blah4\0", sizeof("Exceeded MaxStartups\r\nnext blah1 blah2 blah3 blah4\0")); And, after the memmove(), add: printf("output='%s'\n", output); If you fix the memset() buffer overflow, it will output: output='ext blah1 blah2 blah3 ' As you can see, the first character is lost. If you then fix the memmove(), it will output: output='next blah1 blah2 blah3' Note that this is still losing the "blah4". After moving the memset() after byte_offset is set to the new strlen() of output, then it works correctly: output='next blah1 blah2 blah3 blah4' Signed-off-by: Richard Laager <rlaager@wiktel.com> | |||||
2025-07-06 | check_load: fix tests | Lorenz Kästle | 1 | -3/+3 | |
2025-07-06 | Merge branch 'master' into refactor/check_load | Lorenz Kästle | 21 | -2919/+2595 | |
2025-07-06 | check_load some number type fixes | Lorenz Kästle | 2 | -7/+7 | |
2025-07-06 | check_load: Add top x functionality to output | Lorenz Kästle | 1 | -1/+3 | |
2025-07-06 | check_load: remove useless code and do some formatting | Lorenz Kästle | 1 | -13/+23 | |
2025-06-28 | Merge branch 'master' into refactor/check_procs | Lorenz Kästle | 38 | -3730/+4034 | |
2025-06-20 | Merge pull request #2125 from RincewindsHat/refactor/check_icmp | Lorenz Kästle | 1 | -1/+1 | |
Refactor check_icmp: - Far less global variables - Proper IPv6/legacy IP dual stack functionality (allowed mixed v4/v6 hosts) - Improved readability/understandability - General cleanup | |||||
2025-06-12 | Remove options if fping version is too low and die directly | Lorenz Kästle | 1 | -1/+5 | |
2025-06-12 | Remove unnecessary newline | Lorenz Kästle | 1 | -1/+0 | |
2025-06-12 | check_fping: small style improvement | Lorenz Kästle | 2 | -3/+3 | |
2025-06-12 | Implement new fping options for fping 5.2 and 5.3 | Lorenz Kästle | 2 | -8/+96 | |
fping 5.2 and 5.3 add some new useful command line options which this commit add to check_fping. These are: * --fwmark - sets a firewall mark in the packages to make them identifiable (fping 5.2) * --icmp-timestamp - fping uses ICMP timestamp instead of ICMP Echo (fping 5.2) * --check-source - fping discards replies which originate not from the target address (fping 5.2) The fping release notes describe theses options ( https://github.com/schweikert/fping/releases ) in a little bit more detail. Currently the help display for those options is only shown when fping was available in the appropriate version during compilation. | |||||
2025-05-18 | utils: Make fmt function for compiler | Lorenz Kästle | 1 | -1/+1 | |
2025-05-07 | Remove un-needed flags | William | 1 | -42/+0 | |
2025-05-07 | Improve logic | William | 1 | -7/+41 | |
2025-05-07 | Harden check with unspec | William | 1 | -2/+2 | |
2025-05-07 | Improve handling of -4/-6 | William | 1 | -11/+22 | |
If fping is used with a target that has dual stack v4/v6, then due to the logic during command construction, ipv4 will never be checked as v6 is preferred by fping. This explicitly flags -4/-6 when it is requested by the user. | |||||
2025-04-21 | check_http: Adding deprecation text | Jan Wagner | 1 | -0/+10 | |
2025-03-31 | Merge pull request #2113 from RincewindsHat/refactor/check_disk | Lorenz Kästle | 8 | -689/+1723 | |
Refactor/check disk | |||||
2025-03-31 | Try fixing some tests | Lorenz Kästle | 1 | -8/+9 | |
2025-03-31 | check_disk: decrease precision to avoid false negatives with small ↵ | Lorenz Kästle | 1 | -1/+8 | |
measurement changes | |||||
2025-03-31 | Fixes problems after a4cf2e79f75dce3828be21726f10c755f652f710 | Lorenz Kästle | 3 | -25/+41 | |
2025-03-31 | Fix some typos with units | Lorenz Kästle | 1 | -6/+6 | |
2025-03-30 | Add debugging to tests for CI | Lorenz Kästle | 1 | -0/+3 | |
2025-03-30 | Remove cool, comfy c23 functionality for some dirty old hacks | Lorenz Kästle | 3 | -32/+50 | |
2025-03-30 | Codespell fixes | Lorenz Kästle | 2 | -5/+5 | |
2025-03-30 | Address check_disk changes in tests | Lorenz Kästle | 2 | -118/+154 | |
2025-03-30 | Refactor check_disk and library functions | Lorenz Kästle | 4 | -724/+1048 | |
2025-03-18 | check_disk: Remove unnecessary NULL checks | Lorenz Kästle | 1 | -18/+6 | |
2025-03-18 | Refactor test_check_disk.c | Lorenz Kästle | 1 | -42/+44 | |
2025-03-18 | Remove some unused code | Lorenz Kästle | 1 | -8/+0 | |
2025-03-18 | Migrate disk tests from lib, tool | Lorenz Kästle | 6 | -8/+210 | |
2025-03-18 | Refactor check_disk, no more global variables | Lorenz Kästle | 2 | -264/+358 | |
2025-03-18 | refactor check_disk.d code a bit | Lorenz Kästle | 2 | -78/+100 | |
2025-03-18 | Move disk specific stuff from lib to plugin specific directory | Lorenz Kästle | 3 | -0/+305 | |
2025-03-17 | check_disk: reset single file system result in between checks | Lorenz Kästle | 1 | -0/+3 | |
2025-03-17 | check_disk: Little fixes and improvements | Lorenz Kästle | 1 | -8/+23 | |
2025-03-17 | change error message for missing certificate | Andre Klärner | 1 | -1/+1 | |
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. | |||||
2025-03-17 | check_disk: General refactoring | Lorenz Kästle | 1 | -195/+158 | |
2025-03-17 | check_disk: boolean type and linter fixes | Lorenz Kästle | 1 | -20/+20 | |
2025-03-17 | check_disk: clang-format | Lorenz Kästle | 1 | -43/+86 | |
2025-03-17 | Merge pull request #2100 from RincewindsHat/remove/check_nwstat | Lorenz Kästle | 2 | -1529/+1 | |
Remove check_nwstat | |||||
2025-03-17 | check_swap: Fixes on NetBSD | Lorenz Kästle | 3 | -56/+59 | |
2025-03-17 | check_ping: fix some variables forgotten during refactoring | Lorenz Kästle | 1 | -2/+2 | |
2025-03-17 | check_ide_smart: use the more common C90 fixed width integers | Lorenz Kästle | 1 | -41/+49 | |
2025-03-14 | check_load: Actually allow output format configuring | Lorenz Kästle | 1 | -0/+19 | |