diff --git a/net-mgmt/monitoring-plugins/Makefile b/net-mgmt/monitoring-plugins/Makefile index 586896560c23..0e8772642da9 100644 --- a/net-mgmt/monitoring-plugins/Makefile +++ b/net-mgmt/monitoring-plugins/Makefile @@ -1,144 +1,144 @@ PORTNAME= monitoring-plugins -PORTVERSION= 2.3.1 +PORTVERSION= 2.3.2 CATEGORIES= net-mgmt MASTER_SITES= https://www.monitoring-plugins.org/download/ \ LOCAL/mat/${PORTNAME} MAINTAINER= joneum@FreeBSD.org COMMENT= Monitoring Plugins for Nagios WWW= https://www.monitoring-plugins.org/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING USES= charsetfix gmake libtool perl5 ssl USE_SUBMAKE= yes GNU_CONFIGURE= yes CONFIGURE_ARGS= --datadir=${PREFIX}/share \ --libexecdir=${PREFIX}/libexec/nagios \ --localstatedir=${NAGIOSDIR} \ --prefix=${PREFIX} \ --sbindir=${PREFIX}/${NAGIOSWWWDIR}/cgi-bin \ --sysconfdir=${PREFIX}/etc/nagios \ --with-cgiurl=${NAGIOSCGIURL} \ --with-perl=${PERL} # Also, force some commands with their expected paths so that they don't get # disabled. CONFIGURE_ARGS+= --with-ping-command="/sbin/ping -n -t %d -c %d %s" \ --with-ping6-command="${_PING6_CMD}" \ ac_cv_path_PATH_TO_PING6=/sbin/ping6 \ ac_cv_path_PATH_TO_PING=/sbin/ping \ ac_cv_path_PATH_TO_QMAIL_QSTAT=/var/qmail/bin/qmail-qstat \ ac_cv_path_PATH_TO_SMBCLIENT=${LOCALBASE}/bin/smbclient \ ac_cv_path_PATH_TO_SUDO=${LOCALBASE}/bin/sudo CPPFLAGS+= -I${LOCALBASE}/include LIBS+= -L${LOCALBASE}/lib CONFLICTS_INSTALL= nagios-plugins OPTIONS_DEFINE= DBI EXTRAOPTS FPING IPV6 LDAP MYSQL NETSNMP NLS PGSQL \ QSTAT RADIUS SSH_PORTABLE OPTIONS_DEFAULT= DNS_BASE EXTRAOPTS OPTIONS_SINGLE= DNS OPTIONS_SINGLE_DNS= DNS_BASE DNS_BINDTOOLS OPTIONS_SUB= yes DBI_DESC= Check database using DBI DNS_BASE_DESC= Use drill for check_dig and no check_dns DNS_BINDTOOLS_DESC= Use dig and nslookup from dns/bind-tools DNS_DESC= Configuration of check_dig and check_dns (see help) EXTRAOPTS_DESC= Parsing of plugins ini config files for extra options FPING_DESC= Support for non-flooding fast ping (check_fping) LDAP_DESC= OpenLDAP support (check_ldap) MYSQL_DESC= MySQL support (check_mysql) NETSNMP_DESC= SNMP support (check_snmp) PGSQL_DESC= PostgreSQL support (check_pgsql) QSTAT_DESC= Game server query support (check_game) RADIUS_DESC= Radius support (check_radius) SSH_PORTABLE_DESC= Build check_ssh with ports openssh (instead of base) DBI_LIB_DEPENDS= libdbi.so:databases/libdbi DBI_CONFIGURE_WITH= dbi DNS_BASE_CONFIGURE_ON= --with-dig-command=/usr/bin/drill \ ac_cv_path_PATH_TO_NSLOOKUP= DNS_BASE_EXTRA_PATCHES= ${FILESDIR}/extra-patch-dig-to-drill.diff DNS_BINDTOOLS_BUILD_DEPENDS= ${LOCALBASE}/bin/dig:dns/bind-tools DNS_BINDTOOLS_RUN_DEPENDS= ${DNS_BINDTOOLS_BUILD_DEPENDS} DNS_BINDTOOLS_CONFIGURE_ON= --with-dig-command=${LOCALBASE}/bin/dig \ --with-nslookup-command=${LOCALBASE}/bin/nslookup EXTRAOPTS_CONFIGURE_ENABLE= extra-opts FPING_BUILD_DEPENDS= fping:net/fping FPING_RUN_DEPENDS= fping:net/fping FPING_CONFIGURE_OFF= ac_cv_path_PATH_TO_FPING6= \ ac_cv_path_PATH_TO_FPING= IPV6_CONFIGURE_WITH= ipv6 LDAP_USES= ldap LDAP_CONFIGURE_WITH= ldap MYSQL_USES= mysql MYSQL_CONFIGURE_WITH= mysql=${LOCALBASE} NETSNMP_BUILD_DEPENDS= p5-Net-SNMP>=0:net-mgmt/p5-Net-SNMP \ snmpcheck:net-mgmt/net-snmp NETSNMP_RUN_DEPENDS= p5-Net-SNMP>=0:net-mgmt/p5-Net-SNMP \ snmpcheck:net-mgmt/net-snmp NETSNMP_CONFIGURE_OFF= ac_cv_path_PATH_TO_SNMPGET= \ ac_cv_path_PATH_TO_SNMPGETNEXT= NLS_USES= gettext NLS_CONFIGURE_ENABLE= nls PGSQL_USES= pgsql PGSQL_CONFIGURE_WITH= pgsql=${LOCALBASE} QSTAT_BUILD_DEPENDS= qstat:games/qstat QSTAT_RUN_DEPENDS= qstat:games/qstat QSTAT_CONFIGURE_OFF= ac_cv_path_PATH_TO_QSTAT= \ ac_cv_path_PATH_TO_QUAKESTAT= RADIUS_LIB_DEPENDS= libradiusclient-ng.so:net/radiusclient RADIUS_CONFIGURE_WITH= radius SSH_PORTABLE_BUILD_DEPENDS= ${LOCALBASE}/bin/ssh:security/openssh-portable SSH_PORTABLE_RUN_DEPENDS:= ${SSH_PORTABLE_BUILD_DEPENDS} SSH_PORTABLE_CONFIGURE_ON= --with-ssh-command=${LOCALBASE}/bin/ssh NAGIOSDIR?= /var/spool/nagios NAGIOSWWWDIR?= www/nagios NAGIOSHTMURL?= /nagios NAGIOSCGIURL?= ${NAGIOSHTMURL}/cgi-bin .include .if ${OSVERSION} < 1300041 _PING6_CMD= /sbin/ping6 -n -X %d -c %d %s .else _PING6_CMD= /sbin/ping6 -n -t %d -c %d %s .endif .if !exists(/usr/bin/ssh) && empty(PORT_OPTIONS:MSSH_PORTABLE) PLIST_SUB+= SSH="@comment " .else PLIST_SUB+= SSH="" .endif post-patch: .for file in check_by_ssh.c check_disk.c check_http.c check_mrtgtraf.c \ check_nagios.c check_ntp.c check_ntp_peer.c check_ntp_time.c \ check_pgsql.c check_snmp.c check_ssh.c check_swap.c check_time.c \ check_users.c @${REINPLACE_CMD} -e 's|setlocale (LC_ALL, "");|setlocale (LC_ALL, ""); setlocale(LC_NUMERIC, "C");|g' ${WRKSRC}/plugins/${file} .endfor .include diff --git a/net-mgmt/monitoring-plugins/distinfo b/net-mgmt/monitoring-plugins/distinfo index 3ae6f554dbdb..7ee1ab6702b9 100644 --- a/net-mgmt/monitoring-plugins/distinfo +++ b/net-mgmt/monitoring-plugins/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1618242026 -SHA256 (monitoring-plugins-2.3.1.tar.gz) = f56eb84871983fd719247249e3532228b37e2efaae657a3979bd14ac1f84a35b -SIZE (monitoring-plugins-2.3.1.tar.gz) = 2529669 +TIMESTAMP = 1675013208 +SHA256 (monitoring-plugins-2.3.2.tar.gz) = 8d9405baf113a9f25e4fb961d56f9f231da02e3ada0f41dbb0fa4654534f717b +SIZE (monitoring-plugins-2.3.2.tar.gz) = 2766966 diff --git a/net-mgmt/monitoring-plugins/files/patch-plugins_check__procs.c b/net-mgmt/monitoring-plugins/files/patch-plugins_check__procs.c index 8dde83b32b9c..c74d61575410 100644 --- a/net-mgmt/monitoring-plugins/files/patch-plugins_check__procs.c +++ b/net-mgmt/monitoring-plugins/files/patch-plugins_check__procs.c @@ -1,107 +1,107 @@ ---- plugins/check_procs.c.orig 2020-12-09 21:38:01 UTC +--- plugins/check_procs.c.orig 2022-10-19 12:50:27 UTC +++ plugins/check_procs.c @@ -70,6 +70,7 @@ int options = 0; /* bitmask of filter criteria to test #define PCPU 256 #define ELAPSED 512 #define EREG_ARGS 1024 +#define JID 2048 #define KTHREAD_PARENT "kthreadd" /* the parent process of kernel threads: ppid of procs are compared to pid of this proc*/ -@@ -101,6 +102,7 @@ char *fails; +@@ -101,6 +102,7 @@ int usepid = 0; /* whether to test for pid or /proc/pi char tmp[MAX_INPUT_BUFFER]; int kthread_filter = 0; int usepid = 0; /* whether to test for pid or /proc/pid/exe */ +int jid; FILE *ps_input = NULL; @@ -130,6 +132,7 @@ main (int argc, char **argv) int procuid = 0; pid_t procpid = 0; pid_t procppid = 0; + int procjid = 0; pid_t kthread_ppid = 0; int procvsz = 0; int procrss = 0; @@ -230,9 +233,9 @@ main (int argc, char **argv) procseconds = convert_to_seconds(procetime); if (verbose >= 3) -- printf ("proc#=%d uid=%d vsz=%d rss=%d pid=%d ppid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", -+ printf ("proc#=%d uid=%d vsz=%d rss=%d pid=%d ppid=%d jid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", +- printf ("proc#=%d uid=%d vsz=%d rss=%d pid=%d ppid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", ++ printf ("proc#=%d uid=%d vsz=%d rss=%d pid=%d ppid=%d jid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", procs, procuid, procvsz, procrss, -- procpid, procppid, procpcpu, procstat, -+ procpid, procppid, procjid, procpcpu, procstat, +- procpid, procppid, procpcpu, procstat, ++ procpid, procppid, procjid, procpcpu, procstat, procetime, procprog, procargs); /* Ignore self */ @@ -275,6 +278,8 @@ main (int argc, char **argv) resultsum |= PROG; if ((options & PPID) && (procppid == ppid)) resultsum |= PPID; + if ((options & JID) && (procjid == jid)) + resultsum |= JID; if ((options & USER) && (procuid == uid)) resultsum |= USER; if ((options & VSZ) && (procvsz >= vsz)) @@ -292,9 +297,9 @@ main (int argc, char **argv) procs++; if (verbose >= 2) { -- printf ("Matched: uid=%d vsz=%d rss=%d pid=%d ppid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", -+ printf ("Matched: uid=%d vsz=%d rss=%d pid=%d ppid=%d jid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", +- printf ("Matched: uid=%d vsz=%d rss=%d pid=%d ppid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", ++ printf ("Matched: uid=%d vsz=%d rss=%d pid=%d ppid=%d jid=%d pcpu=%.2f stat=%s etime=%s prog=%s args=%s\n", procuid, procvsz, procrss, -- procpid, procppid, procpcpu, procstat, -+ procpid, procppid, procjid, procpcpu, procstat, +- procpid, procppid, procpcpu, procstat, ++ procpid, procppid, procjid, procpcpu, procstat, procetime, procprog, procargs); } @@ -409,6 +414,7 @@ process_arguments (int argc, char **argv) {"input-file", required_argument, 0, CHAR_MAX+2}, {"no-kthreads", required_argument, 0, 'k'}, {"traditional-filter", no_argument, 0, 'T'}, + {"jid", required_argument, 0, 'j'}, {0, 0, 0, 0} }; @@ -417,7 +423,7 @@ process_arguments (int argc, char **argv) strcpy (argv[c], "-t"); while (1) { - c = getopt_long (argc, argv, "Vvhkt:c:w:p:s:u:C:a:z:r:m:P:T", + c = getopt_long (argc, argv, "Vvhkt:c:w:p:s:u:C:a:z:r:m:P:Tj:", longopts, &option); if (c == -1 || c == EOF) @@ -451,6 +457,12 @@ process_arguments (int argc, char **argv) break; } usage4 (_("Parent Process ID must be an integer!")); + case 'j': /* jail id */ + if (sscanf (optarg, "%d%[^0-9]", &jid, tmp) == 1) { + asprintf (&fmt, "%s%sJID = %d", (fmt ? fmt : "") , (options ? ", " : ""), jid); + options |= JID; + break; + } case 's': /* status */ if (statopts) break; @@ -731,6 +743,8 @@ print_help (void) printf (" %s\n", _("RSZDT, plus others based on the output of your 'ps' command).")); printf (" %s\n", "-p, --ppid=PPID"); printf (" %s\n", _("Only scan for children of the parent process ID indicated.")); + printf (" %s\n", "-j, --jid=JID"); + printf (" %s\n", _("Only scan for process running in jail which ID is JID.")); printf (" %s\n", "-z, --vsz=VSZ"); printf (" %s\n", _("Only scan for processes with VSZ higher than indicated.")); printf (" %s\n", "-r, --rss=RSS"); -@@ -784,7 +798,7 @@ void +@@ -784,7 +798,7 @@ print_usage (void) print_usage (void) { printf ("%s\n", _("Usage:")); - printf ("%s -w -c [-m metric] [-s state] [-p ppid]\n", progname); + printf ("%s -w -c [-m metric] [-s state] [-p ppid] [-j jid]\n", progname); printf (" [-u user] [-r rss] [-z vsz] [-P %%cpu] [-a argument-array]\n"); printf (" [-C command] [-k] [-t timeout] [-v]\n"); }