diff --git a/configure.in b/configure.in
index 36735f9c24b344f44bc8d11eefb2c52c9749db79..919461c7a51e5ade8950bdca57d9e4e958f9c36b 100644 (file)
--- a/configure.in
+++ b/configure.in
include(`getloadavg.m4')
AC_REVISION ($Revision$)
AC_INIT(Helper.pm)
-PACKAGE_VERSION="1.3.0"
+VER=1.3.0
+REL=beta2
+AC_SUBST(VER)
+AC_SUBST(REL)
+PACKAGE_VERSION="${VER}-${REL}"
AC_SUBST(PACKAGE_VERSION)
-PACKAGE_RELEASE="alpha1"
+PACKAGE_RELEASE="${REL}"
AC_SUBST(PACKAGE_RELEASE)
-AM_INIT_AUTOMAKE(nagios-plugins,${PACKAGE_VERSION}-${PACKAGE_RELEASE})
+AM_INIT_AUTOMAKE(nagios-plugins,${PACKAGE_VERSION})
AM_CONFIG_HEADER(plugins/config.h plugins/common.h plugins/version.h plugins/netutils.h plugins/utils.h plugins/popen.h)
AC_PREFIX_DEFAULT(/usr/local/nagios)
AC_PROG_AWK
AC_FUNC_GETLOADAVG(plugins)
-AC_FUNC_STRTOD
+ifdef([AC_FUNC_STRTOD],[AC_FUNC_STRTOD],[AM_FUNC_STRTOD])
dnl AM_WITH_REGEX
AC_PROG_RANLIB
dnl Check for mysql libraries
_SAVEDLIBS="$LIBS"
_SAVEDCPPFLAGS="$CPPFLAGS"
-dnl CPPFLAGS="-I/usr/include"
-
AC_ARG_WITH(mysql,--with-mysql=<dir> sets path to mysql installation (assumes lib/mysql and include subdirs),[MYSQL=$withval])
if test -n "$MYSQL"; then
MYSQLLIBDIR=$MYSQL/lib/mysql
@@ -184,19 +186,18 @@ if test "$ac_cv_lib_mysqlclient_mysql_init" = "yes" -o "$ac_cv_lib_mysqlclient_m
AC_CHECK_HEADERS(mysql/mysql.h mysql/errmsg.h, MYSQLINCLUDE="-I$MYSQL/include" )
if test "$ac_cv_header_mysql_mysql_h" = "yes" -a "$ac_cv_header_mysql_errmsg_h" = "yes"; then
EXTRAS="$EXTRAS check_mysql"
- CPPFLAGS="$_SAVEDCPPFLAGS -I$MYSQL/include"
+ AC_SUBST(MYSQLINCLUDE)
AC_SUBST(MYSQLLIBS)
AC_SUBST(check_mysql_LDFLAGS)
else
AC_MSG_WARN([Skipping mysql plugin])
AC_MSG_WARN([install mysql client headers to compile this plugin (see Requirements).])
- CPPFLAGS="$_SAVEDCPPFLAGS"
fi
else
AC_MSG_WARN([Skipping mysql plugin])
AC_MSG_WARN([install mysql client libs to compile this plugin (see Requirements).])
- CPPFLAGS="$_SAVEDCPPFLAGS"
fi
+CPPFLAGS="$_SAVEDCPPFLAGS"
LIBS="$_SAVEDLIBS"
dnl Check for OpenSSL location
fi
AC_ARG_WITH(openssl,--with-openssl=<dir> sets path to openssl installation,[OPENSSL=$withval])
+AC_CHECK_HEADERS(krb5.h,FOUNDINCLUDE=yes,FOUNDINCLUDE=no)
+if test "$FOUNDINCLUDE" = "no"; then
+ _SAVEDCPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$_SAVEDCPPFLAGS -I/usr/kerberos/include"
+ unset ac_cv_header_krb5_h
+ AC_CHECK_HEADERS(krb5.h,
+ KRB5INCLUDE="-I/usr/kerberos/include"
+ FOUNDINCLUDE=yes,
+ FOUNDINCLUDE=no)
+fi
+AC_SUBST(SSLINCLUDE)
+CPPFLAGS="$_SAVEDCPPFLAGS $SSLINCLUDE"
+
dnl Check for OpenSSL header files
_SAVEDCPPFLAGS="$CPPFLAGS"
FOUNDINCLUDE=yes
@@ -289,6 +303,7 @@ AC_CACHE_CHECK([for LL suffix on long long integers],ac_cv_compiler_supports_ll,
if test x"$ac_cv_compiler_supports_ll" = x"yes"; then
AC_DEFINE(COMPILER_SUPPORTS_LL,1,[Define if compiler support long long])
fi
+
AC_CACHE_CHECK([for __va_copy],ac_cv_HAVE_VA_COPY,[
AC_TRY_LINK([#include <stdarg.h>
va_list ap1,ap2;], [__va_copy(ap1,ap2);],
AC_DEFINE(HAVE_C99_VSNPRINTF,1,[Define if system has C99 compatible vsnprintf])
fi
+#AC_HAVE_DECL(asprintf, [#include <stdio.h>])
+#AC_HAVE_DECL(vasprintf, [#include <stdio.h>])
+#AC_HAVE_DECL(vsnprintf, [#include <stdio.h>])
+#AC_HAVE_DECL(snprintf, [#include <stdio.h>])
+
+AC_CHECK_FUNC(snprintf,
+ AC_DEFINE(HAVE_SNPRINTF,1,[Define if snprintf is present]),
+ LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a")
+AC_CHECK_FUNC(vsnprintf,
+ AC_DEFINE(HAVE_VSNPRINTF,1,[Define if vsnprintf is present]),
+ LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a")
+AC_CHECK_FUNC(vasprintf,
+ AC_DEFINE(HAVE_VASPRINTF,1,[Define if vasprintf is present]),
+ LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a")
+AC_CHECK_FUNC(asprintf,
+ AC_DEFINE(HAVE_ASPRINTF,1,[Define if asprintf is present]),
+ LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a")
+
+if test x"$ac_cv_HAVE_SNPRINTF" = x"no" -o x"$ac_cv_HAVE_VSNPRINTF" = x"no" -o x"$ac_cv_HAVE_VASPRINTF" = x"no" -o x"$ac_cv_HAVE_ASPRINTF" = x"no"; then
+ LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a"
+fi
+
dnl We used to not do long options unless a compatible lib was found
dnl Now we provide code and make libgetopt if native is not suitable
AC_MSG_CHECKING(for getopt_long)
static struct option *long_options;
getopt_long(0,NULL,"+h",long_options,&option_index);],
[AC_DEFINE(HAVE_GETOPT_H,1,[Define if getopt headers are found])
- AC_DEFINE(HAVE_GETOPT_LONG,1,[Define if getopt_long_only() is found])
+ AC_DEFINE(HAVE_GETOPT_LONG,1,[Define if getopt_long is found])
AC_MSG_RESULT(yes)],
[AC_DEFINE(HAVE_GETOPT_H,1,[Define if getopt headers are found])
- AC_DEFINE(HAVE_GETOPT_LONG,1,[Define if getopt_long_only() is found])
+ AC_DEFINE(HAVE_GETOPT_LONG,1,[Define if getopt_long is found])
AC_MSG_RESULT(no)
- import_sources=getopt])
-
-AC_CHECK_FUNCS(getopt_long_only,,LIBS="$LIBS -lgetopt" DEPLIBS="$DEPLIBS libgetopt.a")
-
-AC_CHECK_FUNC(asprintf,,LIBS="$LIBS -lsnprintf" DEPLIBS="$DEPLIBS libsnprintf.a")
+ import_sources=getopt
+ LIBS="$LIBS -lgetopt"
+ DEPLIBS="$DEPLIBS libgetopt.a"])
+
+AC_TRY_COMPILE([#include <sys/time.h>],
+ [struct timeval *tv;
+ struct timezone *tz;],
+ AC_DEFINE(HAVE_STRUCT_TIMEVAL,1,[Define if we have a timeval structure])
+ AC_TRY_COMPILE([#include <sys/time.h>],
+ [struct timeval *tv;
+ struct timezone *tz;
+ gettimeofday(tv, tz);],
+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define if gettimeofday is found]),
+ AC_DEFINE(NEED_GETTIMEOFDAY,1,[Define if gettimeofday is needed])))
dnl Checks for library functions.
-AC_CHECK_FUNCS(memmove select socket strdup strstr strtod strtol strtoul gettimeofday)
+AC_CHECK_FUNCS(memmove select socket strdup strstr strtod strtol strtoul)
AC_MSG_CHECKING(for type of socket size)
AC_TRY_COMPILE([#include <stdlib.h>
fi
AC_PATH_PROG(PATH_TO_PS,ps)
-dnl OpenBSD (needs to come early because -exo appears to work, but does not give all procs)
dnl STAT UCOMM VSZ RSS USER UID PPID COMMAND
-if [ps -axo 'stat comm vsz rss user uid ppid args' 2>/dev/null | egrep -i "^ *S[TAUES]* +[UCOMDNA]+ +[VSIZE]+ +R[S]+ +U[SER]+ +U[ID]+ +P[PID]+ +[RGSCOMDNA]+" >/dev/null]
+if [ps -weo 'stat comm vsz rss user uid ppid args' 2>/dev/null | egrep -i "^ *S[TAUES]* +[UCOMDNA]+ +[VSIZE]+ +R[S]+ +U[SER]+ +U[ID]+ +P[PID]+ +[RGSCOMDNA]+" >/dev/null]
+then
+ AC_DEFINE(USE_PS_VARS,1,[Define if 'ps' will be parsed with sscanf])
+ AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos],[Variable list for sscanf of 'ps' output])
+ AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -weo 'stat user ppid args'",[Verbatim command to execute for ps in check_netsaint])
+ EXTRAS="$EXTRAS check_nagios"
+ AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -weo 'stat uid ppid comm args'",[Verbatim command to execute for ps in check_procs])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[Format string for scanning ps output in check_procs])
+ AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -weo 'vsz comm'",[Verbatim command to execute for ps in check_vsz])
+ AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[Format string for scanning ps output in check_vsz])
+ AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -weo 'rss comm'",[Verbatim command to execute for ps in check_rss])
+ AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s",[Format string for scanning ps output in check_rss])
+ echo " ps syntax... $PATH_TO_PS -weo 'stat comm vsz rss user ppid args'"
+dnl FreeBSD
+elif [ps waxco 'state command vsz rss uid user ppid' 2>/dev/null | egrep -i "^STAT +COMMAND +VSZ +RSS +UID +USER +PPID" >/dev/null]
+then
+ AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
+ AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos],[])
+ AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS waxo 'state uid ppid command'",[])
+ EXTRAS="$EXTRAS check_nagios"
+ AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS waxco 'state uid ppid command command'",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[Format string for scanning ps output in check_procs])
+ AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS waxco 'vsz command'",[])
+ AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[])
+ AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS waxco 'rss command'",[])
+ AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s",[])
+ echo " ps syntax... $PATH_TO_PS -Ao 'state command vsz rss'"
+dnl BSD-like mode in RH 6.1
+elif [ps waxno 'state comm vsz rss uid user ppid args' 2>/dev/null | egrep -i "^S +COMMAND +VSZ +RSS +UID +USER +PPID +[RGSCOMDNA]+" >/dev/null]
+then
+ AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
+ AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos],[])
+ AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS waxno 'state user ppid comm'",[])
+ EXTRAS="$EXTRAS check_nagios"
+ AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS waxno 'state uid ppid comm args'",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[Format string for scanning ps output in check_procs])
+ AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS waxno 'vsz comm'",[])
+ AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[])
+ AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS waxno 'rss comm'",[])
+ AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s",[])
+ echo " ps syntax... $PATH_TO_PS -waxco 'state comm vsz rss'"
+dnl SunOS 4.1.3:
+dnl F UID PID PPID CP PRI NI SZ RSS WCHAN STAT TT TIME COMMAND
+dnl
+elif [ps -laxnwww 2>/dev/null | egrep -i "^ *F(LAGS)? +UID +PID +PPID +CP +PRI +NI +(SZ)|(VSZ)|(SIZE) +RSS +WCHAN +STAT? +TTY? +TIME +COMMAND" >/dev/null]
+then
+ AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
+ AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS laxnwww",[])
+ EXTRAS="$EXTRAS check_nagios"
+ AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog],[])
+ AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -laxnwww",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %*s %s %*s %*s %n%s",[Format string for scanning ps output in check_procs])
+ AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS laxnwww",[])
+ AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d",[])
+ AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS laxnwww",[])
+ AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %d",[])
+ echo " ps syntax... $PATH_TO_PS laxnwww"
+dnl Debian Linux / procps v1.2.9:
+dnl FLAGS UID PID PPID PRI NI SIZE RSS WCHAN STA TTY TIME COMMAND
+dnl 100 0 1 0 0 0 776 76 c0131c8c S ffff 0:11 init [2]
+dnl
+elif [ps laxnwww 2>/dev/null | egrep -i "^ *F(LAGS)? +UID +PID +PPID +PRI +NI +(VSZ)|(SIZE) +RSS +WCHAN +STAT? TTY +TIME +COMMAND" >/dev/null]
+then
+ AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
+ AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS laxnwww",[])
+ EXTRAS="$EXTRAS check_nagios"
+ AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog],[])
+ AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS laxnwww",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %s %*s %*s %n%s",[Format string for scanning ps output in check_procs])
+ AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS laxnwww",[])
+ AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %d",[])
+ AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS laxnwww",[])
+ AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d",[])
+ echo " ps syntax... $PATH_TO_PS laxnwww"
+dnl OpenBSD (needs to come early because -exo appears to work, but does not give all procs)
+elif [ps -axo 'stat comm vsz rss user uid ppid args' 2>/dev/null | egrep -i "^ *S[TAUES]* +[UCOMDNA]+ +[VSIZE]+ +R[S]+ +U[SER]+ +U[ID]+ +P[PID]+ +[RGSCOMDNA]+" >/dev/null]
then
AC_DEFINE(USE_PS_VARS,1,[Define if 'ps' will be parsed with sscanf])
AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos],[Variable list for sscanf of 'ps' output])
AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -Ao 's user ppid args'",[Verbatim command to execute for ps in check_netsaint])
EXTRAS="$EXTRAS check_nagios"
AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -Ao 's uid ppid comm args'",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[Format string for scanning ps output in check_procs],[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[Format string for scanning ps output in check_procs])
AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -Ao 'vsz comm'",[])
AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[])
AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -Ao 'rss comm'",[])
AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS -ao 'state user ppid args'",[])
EXTRAS="$EXTRAS check_nagios"
AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -ao 'state uid ppid command args'",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[Format string for scanning ps output in check_procs])
AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -ao 'vsz command'",[])
AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[])
AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -ao 'rss command'",[])
AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s",[])
echo " ps syntax... $PATH_TO_PS -ao 'state command vsz rss'"
-dnl FreeBSD
-elif [ps waxco 'state command vsz rss uid user ppid' 2>/dev/null | egrep -i "^STAT +COMMAND +VSZ +RSS +UID +USER +PPID" >/dev/null]
-then
- AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
- AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos],[])
- AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS waxo 'state uid ppid command'",[])
- EXTRAS="$EXTRAS check_nagios"
- AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS waxco 'state uid ppid command command'",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[])
- AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS waxco 'vsz command'",[])
- AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[])
- AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS waxco 'rss command'",[])
- AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s",[])
- echo " ps syntax... $PATH_TO_PS -Ao 'state command vsz rss'"
-dnl BSD-like mode in RH 6.1
-elif [ps waxno 'state comm vsz rss uid user ppid args' 2>/dev/null | egrep -i "^S +COMMAND +VSZ +RSS +UID +USER +PPID +[RGSCOMDNA]+" >/dev/null]
-then
- AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
- AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos],[])
- AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS waxno 'state user ppid comm'",[])
- EXTRAS="$EXTRAS check_nagios"
- AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS waxno 'state uid ppid comm args'",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[])
- AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS waxno 'vsz comm'",[])
- AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[])
- AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS waxno 'rss comm'",[])
- AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s,"[])
- echo " ps syntax... $PATH_TO_PS -waxco 'state comm vsz rss'"
dnl IRIX 53
elif [ps -el 2>/dev/null | egrep -i "^ *F +S +UID +PID +PPID +C +PRI +NI +P +SZ +RSS +WCHAN +TTY +TIME +[RGSCOMDNA]+" >/dev/null]
then
AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,&pos,procprog],[])
AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -el",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %*s %n%s",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %*s %n%s",[Format string for scanning ps output in check_procs])
AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -el",[])
AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %d",[])
AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -el",[])
- AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %d")
+ AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %d",[])
echo " ps syntax... $PATH_TO_PS -el"
dnl IRIX 63
elif [ps -el 2>/dev/null | egrep -i "^ *F +S +UID +PID +PPID +C +PRI +NI +P +ADDR +SZ +RSS +WCHAN +TTY +TIME +[RGSCOMDNA]+" >/dev/null]
AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,&pos,procprog],[])
AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -el",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %n%s",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %n%s",[Format string for scanning ps output in check_procs])
AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -el",[])
AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %d",[])
AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -el",[])
AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %d",[])
echo " ps syntax... $PATH_TO_PS -el"
-dnl SunOS 4.1.3:
-dnl F UID PID PPID CP PRI NI SZ RSS WCHAN STAT TT TIME COMMAND
-dnl
-elif [ps -laxnwww 2>/dev/null | egrep -i "^ *F(LAGS)? +UID +PID +PPID +CP +PRI +NI +(SZ)|(VSZ)|(SIZE) +RSS +WCHAN +STAT? +TTY? +TIME +COMMAND" >/dev/null]
-then
- AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
- AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS laxnwww",[])
- EXTRAS="$EXTRAS check_nagios"
- AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog],[])
- AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -laxnwww",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %*s %s %*s %*s %n%s",[])
- AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS laxnwww",[])
- AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d",[])
- AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS laxnwww",[])
- AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %d",[])
- echo " ps syntax... $PATH_TO_PS laxnwww"
-dnl Debian Linux / procps v1.2.9:
-dnl FLAGS UID PID PPID PRI NI SIZE RSS WCHAN STA TTY TIME COMMAND
-dnl 100 0 1 0 0 0 776 76 c0131c8c S ffff 0:11 init [2]
-dnl
-elif [ps laxnwww 2>/dev/null | egrep -i "^ *F(LAGS)? +UID +PID +PPID +PRI +NI +(VSZ)|(SIZE) +RSS +WCHAN +STAT? TTY +TIME +COMMAND" >/dev/null]
-then
- AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
- AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS laxnwww",[])
- EXTRAS="$EXTRAS check_nagios"
- AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog],[])
- AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS laxnwww",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %s %*s %*s %n%s",[])
- AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS laxnwww",[])
- AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %d",[])
- AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS laxnwww",[])
- AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d",[])
- echo " ps syntax... $PATH_TO_PS laxnwww"
dnl
dnl AIX 4.1:
dnl F S UID PID PPID C PRI NI ADDR SZ RSS WCHAN TTY TIME CMD
AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,&pos,procprog],[])
AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS -el",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %n%s",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %s %d %*s %d %*s %*s %*s %*s %*s %*s %*s %*s %n%s",[Format string for scanning ps output in check_procs])
AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS -el",[])
AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %d",[])
AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS -el",[])
AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
AC_DEFINE_UNQUOTED(PS_VARLIST,[&procuid,&procppid,procstat,&pos,procprog],[])
AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS glaxen",[])
- AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %s %*s %*s %n%s",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%*s %d %*s %d %*s %*s %*s %*s %*s %s %*s %*s %n%s",[Format string for scanning ps output in check_procs])
AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS glaxen",[])
AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%*s %*s %*s %*s %*s %*s %d",[])
AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS glaxen",[])
AC_DEFINE_UNQUOTED(RSS_FORMAT,"%*s %*s %*s %*s %*s %*s %*s %d",[])
echo " ps syntax... $PATH_TO_PS glaxen"
+dnl MacOSX / Darwin
+dnl TODO: MacOSX has commands with spaces which will cause problems to PS_FORMAT
+dnl STAT VSZ RSS UID USER PPID UCOMM COMMAND
+dnl Ss 1308 272 0 root 0 init /sbin/init
+elif [ps waxo 'state vsz rss uid user ppid ucomm command' 2>/dev/null | egrep -i "^STAT +VSZ +RSS +UID +USER +PPID +UCOMM +COMMAND" >/dev/null]
+then
+ AC_DEFINE(USE_PS_VARS,1,[Define if we use custom variable list for sscanf])
+ AC_DEFINE_UNQUOTED(PS_VARLIST,[procstat,&procuid,&procppid,procprog,&pos],[])
+ AC_DEFINE_UNQUOTED(PS_RAW_COMMAND,"$PATH_TO_PS waxo 'state uid ppid command'",[])
+ EXTRAS="$EXTRAS check_nagios"
+ AC_DEFINE_UNQUOTED(PS_COMMAND,"$PATH_TO_PS waxo 'state uid ppid ucomm command'",[])
+ AC_DEFINE_UNQUOTED(PS_FORMAT,"%s %d %d %s %n",[Format string for scanning ps output in check_procs])
+ AC_DEFINE_UNQUOTED(VSZ_COMMAND,"$PATH_TO_PS waxco 'vsz command'",[])
+ AC_DEFINE_UNQUOTED(VSZ_FORMAT,"%d %s",[])
+ AC_DEFINE_UNQUOTED(RSS_COMMAND,"$PATH_TO_PS waxco 'rss command'",[])
+ AC_DEFINE_UNQUOTED(RSS_FORMAT,"%d %s",[])
+ echo " ps syntax... $PATH_TO_PS waxo 'state vsz rss command'"
else
echo "** Unable to find usable ps syntax"
fi
echo "** Get ssh in order to make check_by_ssh plugin"
fi
+
+AC_PATH_PROG(PATH_TO_MAILQ,mailq)
+if test -x "$PATH_TO_MAILQ"
+then
+ AC_DEFINE_UNQUOTED(PATH_TO_MAILQ,"$PATH_TO_MAILQ",[path to mailq])
+else
+ echo "** Could not find mailq or eqivalent"
+fi
+
dnl dunno why this does not work below - use hack (kbd)
dnl fine on linux, broken on solaris
dnl if /bin/test -e "/proc/meminfo"
echo " using FreeBSD format"
fi
EXTRAS="$EXTRAS check_swap"
+elif [swapinfo -d 2>/dev/null | egrep -i "^TYPE +AVAIL +USED +FREE" >/dev/null]
+then
+ AC_DEFINE(HAVE_SWAP,1,[Define if swap/swapinfo command is found])
+ AC_PATH_PROG(PATH_TO_SWAP,swapinfo)
+ AC_DEFINE_UNQUOTED(SWAP_COMMAND,"/bin/sh '$PATH_TO_SWAP -d | /bin/tail -l +2'",[Path to swap/swapinfo binary, with any args])
+ AC_DEFINE_UNQUOTED(SWAP_FORMAT,["%*s %d %*d %d"],[Format string for parsing swap output ])
+ echo " using HP-UX format HP-UX"
fi
AC_PATH_PROG(PATH_TO_DIG,dig)
EXTRAS="$EXTRAS check_nt"
fi
-dnl AC_EGREP_HEADER (PATTERN, HEADER-FILE, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
AC_TRY_COMPILE([#ifdef __STDC__
#include <stdio.h>
#include <stdlib.h>