<feed xmlns='http://www.w3.org/2005/Atom'>
<title>monitoring-plugins/plugins-root, branch 3.0.0-rc3</title>
<subtitle>Monitoring Plugins
</subtitle>
<id>https://www.monitoring-plugins.org/repositories/monitoring-plugins/atom?h=3.0.0-rc3</id>
<link rel='self' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/atom?h=3.0.0-rc3'/>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/'/>
<updated>2026-02-06T11:58:38Z</updated>
<entry>
<title>OpenBSD: pledge(2) some network-facing checks (#2225)</title>
<updated>2026-02-06T11:58:38Z</updated>
<author>
<name>Alvar</name>
<email>post@0x21.biz</email>
</author>
<published>2026-02-06T11:58:38Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=cef40299a93233f043f5b0821a9ad2c69dd612f7'/>
<id>urn:sha1:cef40299a93233f043f5b0821a9ad2c69dd612f7</id>
<content type='text'>
OpenBSD's pledge(2) system call allows the current process to
self-restrict itself, being reduced to promised pledges. For example,
unless a process says it wants to write to files, it is not allowed to
do so any longer.

This change starts by calling pledge(2) in some network-facing checks,
removing the more dangerous privileges, such as executing other files.

My initial motivation came from check_icmp, being installed as a setuid
binary and (temporarily) running with root privileges. There, the
pledge(2) calls result in check_icmp to only being allowed to interact
with the network and to setuid(2) to the calling user later on.

Afterwards, I went through my most commonly used monitoring plugins
directly interacting with the network. Thus, I continued with
pledge(2)-ing check_curl - having a huge codebase and all -,
check_ntp_time, check_smtp, check_ssh, and check_tcp.

For most of those, the changes were quite similar: start with
network-friendly promises, parse the configuration, give up file access,
and proceed with the actual check.</content>
</entry>
<entry>
<title>check_icmp: Populate progname before np_extra_opts call (#2226)</title>
<updated>2026-01-19T00:00:00Z</updated>
<author>
<name>Alvar</name>
<email>post@0x21.biz</email>
</author>
<published>2026-01-19T00:00:00Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=bccb38dc9d56ca5cecce8f2f9a988ec5d31626db'/>
<id>urn:sha1:bccb38dc9d56ca5cecce8f2f9a988ec5d31626db</id>
<content type='text'>
Within np_extra_opts, the ini parser expects a valid progname as the
default section to select a configuration section in the ini file.
However, within the check_icmp codebase, the progname is being populated
directly after the np_extra_opts call, being a null pointer before.

$ ./check_icmp --extra-opts=@foo.ini
Segmentation fault (core dumped)

&gt; #0  strlen () at /usr/src/lib/libc/arch/amd64/string/strlen.S:125
&gt; #1  0x000003989615d032 in _libc_strdup (str=Variable "str" is not available.) at /usr/src/lib/libc/string/strdup.c:44
&gt; #2  0x000003966f751b74 in np_get_defaults (locator=0x73ede1e538ea "@foo.ini", default_section=0x0) at parse_ini.c:91
&gt; #3  0x000003966f7518ce in np_extra_opts (argc=0x73ede1e5369c, argv=0x73ede1e53728, plugin_name=0x0) at extra_opts.c:98
&gt; #4  0x000003966f74165a in main (argc=1, argv=0x0) at check_icmp.c:832

The progname variable is set within the process_arguments function,
requiring the already enriched arguments from np_extra_opts. Thus, I
moved the progname detection out of this function, directly before the
np_extra_opts call. This pattern does already exists in check_tcp.

I briefly looked for similar issues in other plugins, but found none.</content>
</entry>
<entry>
<title>check_icmp: prevent segfault on OpenBSD (#2224)</title>
<updated>2026-01-16T01:42:01Z</updated>
<author>
<name>Lorenz Kästle</name>
<email>12514511+RincewindsHat@users.noreply.github.com</email>
</author>
<published>2026-01-16T01:42:01Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=b58e244cc76afc0c02a201fbbdd079db02ed841d'/>
<id>urn:sha1:b58e244cc76afc0c02a201fbbdd079db02ed841d</id>
<content type='text'>
* check_icmp: prevent segfault on OpenBSD

This commit adds a sanity check for sockets in
check_icmp.
Previously FD_ISSET segfaulted when a socket value was
-1 (on OpenBSD). The changes here add an explicit
check whether the socket is -1 (and therefore not
set).

---------

Co-authored-by: Lorenz Kästle &lt;lorenz.kaestle@netways.de&gt;</content>
</entry>
<entry>
<title>check_icmp: fix some compiler warnings (and maybe bugs)</title>
<updated>2026-01-09T12:41:28Z</updated>
<author>
<name>Lorenz Kästle</name>
<email>12514511+RincewindsHat@users.noreply.github.com</email>
</author>
<published>2026-01-09T12:41:28Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=f15029d85694ce2bb4cbde9c441fe55d63263b0c'/>
<id>urn:sha1:f15029d85694ce2bb4cbde9c441fe55d63263b0c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>plugins-root/check_icmp: Fix build for SIOCGIFADDR</title>
<updated>2025-12-11T20:05:49Z</updated>
<author>
<name>Alvar Penning</name>
<email>post@0x21.biz</email>
</author>
<published>2025-12-10T20:12:17Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=b27bf07ebf518a719482c5c40372549f5a9a127a'/>
<id>urn:sha1:b27bf07ebf518a719482c5c40372549f5a9a127a</id>
<content type='text'>
The refactoring in eafee9c3f91879afa82749fa1d8cd2b0b53a5d5c missed the
part within "#if defined(SIOCGIFADDR)" in get_ip_address.
</content>
</entry>
<entry>
<title>plugins-root/check_icmp: Import sys/ioctl.h</title>
<updated>2025-12-11T20:05:49Z</updated>
<author>
<name>Alvar Penning</name>
<email>post@0x21.biz</email>
</author>
<published>2025-12-10T20:09:05Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=cbddc7dbb4c218df453d3c14abe0ce21c17b6cce'/>
<id>urn:sha1:cbddc7dbb4c218df453d3c14abe0ce21c17b6cce</id>
<content type='text'>
The ioctl(2) call within "#if defined(SIOCGIFADDR)" requires the include.
</content>
</entry>
<entry>
<title>More refactoring</title>
<updated>2025-09-15T13:49:26Z</updated>
<author>
<name>Lorenz Kästle</name>
<email>12514511+RincewindsHat@users.noreply.github.com</email>
</author>
<published>2025-09-15T13:49:26Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=811da10fda11b1d0453453040647270700862d8f'/>
<id>urn:sha1:811da10fda11b1d0453453040647270700862d8f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Run clang-format again</title>
<updated>2025-09-15T10:59:37Z</updated>
<author>
<name>Lorenz Kästle</name>
<email>12514511+RincewindsHat@users.noreply.github.com</email>
</author>
<published>2025-09-15T10:59:37Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=802e46f8ea36c344f112d7e1dd8d64d17a4cc939'/>
<id>urn:sha1:802e46f8ea36c344f112d7e1dd8d64d17a4cc939</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reapply "check_dhcp: reduce number of tests for weird reasons"</title>
<updated>2025-06-23T11:21:25Z</updated>
<author>
<name>Lorenz Kästle</name>
<email>12514511+RincewindsHat@users.noreply.github.com</email>
</author>
<published>2025-06-23T11:21:25Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=9f776105d44190587a587b7398f5d907611a20b0'/>
<id>urn:sha1:9f776105d44190587a587b7398f5d907611a20b0</id>
<content type='text'>
This reverts commit 612d261cbf467c82f0dcc0ed63e7584d91f194c4.
</content>
</entry>
<entry>
<title>Revert "check_dhcp: reduce number of tests for weird reasons"</title>
<updated>2025-06-23T11:02:52Z</updated>
<author>
<name>Lorenz Kästle</name>
<email>12514511+RincewindsHat@users.noreply.github.com</email>
</author>
<published>2025-06-23T11:02:52Z</published>
<link rel='alternate' type='text/html' href='https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=612d261cbf467c82f0dcc0ed63e7584d91f194c4'/>
<id>urn:sha1:612d261cbf467c82f0dcc0ed63e7584d91f194c4</id>
<content type='text'>
This reverts commit 52338c3423d4b10d2bbeec7a120c7dd2a98fa092.
</content>
</entry>
</feed>
