megacoffee.net Gentoo overlay - legacy mirror
We have moved to Git. This repository is only provided for compatibility with old installations. Learn how to migrate your installation here.
changeset 55:c6adeffb54f5
renaming nrpe-2.14 ebuild and files to nrpe-2.15
author | Daniel Neugebauer <dneuge@energiequant.de> |
---|---|
date | Mon, 17 Mar 2014 16:11:01 +0100 |
parents | 90a7a9dbfafb |
children | b9bc67d9be9e |
files | net-analyzer/nrpe/files/nrpe-2.14-multiline.patch net-analyzer/nrpe/files/nrpe-2.14-tcpd-et-al.patch net-analyzer/nrpe/files/nrpe-2.15-multiline.patch net-analyzer/nrpe/files/nrpe-2.15-tcpd-et-al.patch net-analyzer/nrpe/nrpe-2.14.ebuild net-analyzer/nrpe/nrpe-2.15.ebuild |
diffstat | 6 files changed, 401 insertions(+), 401 deletions(-) [+] |
line wrap: on
line diff
--- a/net-analyzer/nrpe/files/nrpe-2.14-multiline.patch Mon Mar 17 16:09:30 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,204 +0,0 @@ -Add support for large output - -http://opsview-blog.opsera.com/dotorg/2008/08/enhancing-nrpe.htmlIndex: nrpe-2.14/include/common.h -=================================================================== -Index: nrpe-2.14/include/common.h -=================================================================== ---- nrpe-2.14.orig/include/common.h -+++ nrpe-2.14/include/common.h -@@ -41,7 +41,7 @@ - #define DEFAULT_SOCKET_TIMEOUT 10 /* timeout after 10 seconds */ - #define DEFAULT_CONNECTION_TIMEOUT 300 /* timeout if daemon is waiting for connection more than this time */ - --#define MAX_INPUT_BUFFER 2048 /* max size of most buffers we use */ -+#define MAX_INPUT_BUFFER 16384 /* max size of most buffers we use */ - #define MAX_FILENAME_LENGTH 256 - - #define MAX_HOST_ADDRESS_LENGTH 256 /* max size of a host address */ -@@ -55,12 +55,14 @@ - - #define QUERY_PACKET 1 /* id code for a packet containing a query */ - #define RESPONSE_PACKET 2 /* id code for a packet containing a response */ -+#define RESPONSE_PACKET_WITH_MORE 3 /* id code for a packet containing a response, with more data to follow */ - - #define NRPE_PACKET_VERSION_3 3 /* packet version identifier */ - #define NRPE_PACKET_VERSION_2 2 - #define NRPE_PACKET_VERSION_1 1 /* older packet version identifiers (no longer supported) */ - - #define MAX_PACKETBUFFER_LENGTH 1024 /* max amount of data we'll send in one query/response */ -+ /* WARNING - do not change this as older clients/servers will not work */ - - typedef struct packet_struct{ - int16_t packet_version; -Index: nrpe-2.14/src/check_nrpe.c -=================================================================== ---- nrpe-2.14.orig/src/check_nrpe.c -+++ nrpe-2.14/src/check_nrpe.c -@@ -221,6 +221,11 @@ int main(int argc, char **argv){ - return STATE_UNKNOWN; - } - -+ /* Altinity patch: Allow multiple packets to be received */ -+ /* Indentation not corrected to allow simpler patching */ -+ /* START MULTI_PACKET LOOP */ -+ do { -+ - /* wait for the response packet */ - bytes_to_recv=sizeof(receive_packet); - if(use_ssl==FALSE) -@@ -233,31 +238,24 @@ int main(int argc, char **argv){ - /* reset timeout */ - alarm(0); - -- /* close the connection */ --#ifdef HAVE_SSL -- if(use_ssl==TRUE){ -- SSL_shutdown(ssl); -- SSL_free(ssl); -- SSL_CTX_free(ctx); -- } --#endif -- graceful_close(sd,1000); -- - /* recv() error */ - if(rc<0){ - printf("CHECK_NRPE: Error receiving data from daemon.\n"); -+ graceful_close(sd,1000); - return STATE_UNKNOWN; - } - - /* server disconnected */ - else if(rc==0){ - printf("CHECK_NRPE: Received 0 bytes from daemon. Check the remote server logs for error messages.\n"); -+ graceful_close(sd,1000); - return STATE_UNKNOWN; - } - - /* receive underflow */ - else if(bytes_to_recv<sizeof(receive_packet)){ - printf("CHECK_NRPE: Receive underflow - only %d bytes received (%d expected).\n",bytes_to_recv,sizeof(receive_packet)); -+ graceful_close(sd,1000); - return STATE_UNKNOWN; - } - -@@ -271,21 +269,21 @@ int main(int argc, char **argv){ - calculated_crc32=calculate_crc32((char *)&receive_packet,sizeof(receive_packet)); - if(packet_crc32!=calculated_crc32){ - printf("CHECK_NRPE: Response packet had invalid CRC32.\n"); -- close(sd); -+ graceful_close(sd,1000); - return STATE_UNKNOWN; - } - - /* check packet version */ - if(ntohs(receive_packet.packet_version)!=NRPE_PACKET_VERSION_2){ - printf("CHECK_NRPE: Invalid packet version received from server.\n"); -- close(sd); -+ graceful_close(sd,1000); - return STATE_UNKNOWN; - } - - /* check packet type */ -- if(ntohs(receive_packet.packet_type)!=RESPONSE_PACKET){ -+ if(ntohs(receive_packet.packet_type)!=RESPONSE_PACKET && ntohs(receive_packet.packet_type)!=RESPONSE_PACKET_WITH_MORE){ - printf("CHECK_NRPE: Invalid packet type received from server.\n"); -- close(sd); -+ graceful_close(sd,1000); - return STATE_UNKNOWN; - } - -@@ -297,8 +295,18 @@ int main(int argc, char **argv){ - if(!strcmp(receive_packet.buffer,"")) - printf("CHECK_NRPE: No output returned from daemon.\n"); - else -- printf("%s\n",receive_packet.buffer); -- } -+ printf("%s",receive_packet.buffer); -+ -+ } while (ntohs(receive_packet.packet_type)==RESPONSE_PACKET_WITH_MORE); -+ /* END MULTI_PACKET LOOP */ -+ -+ /* Finish output with newline */ -+ printf("\n"); -+ -+ /* close the connection */ -+ graceful_close(sd,1000); -+ -+ } - - /* reset the alarm */ - else -@@ -434,6 +442,14 @@ int graceful_close(int sd, int timeout){ - struct timeval tv; - char buf[1000]; - -+#ifdef HAVE_SSL -+ if(use_ssl==TRUE){ -+ SSL_shutdown(ssl); -+ SSL_free(ssl); -+ SSL_CTX_free(ctx); -+ } -+#endif -+ - /* send FIN packet */ - shutdown(sd,SHUT_WR); - for(;;){ -Index: nrpe-2.14/src/nrpe.c -=================================================================== ---- nrpe-2.14.orig/src/nrpe.c -+++ nrpe-2.14/src/nrpe.c -@@ -1056,6 +1056,8 @@ void handle_connection(int sock){ - char processed_command[MAX_INPUT_BUFFER]; - int result=STATE_OK; - int early_timeout=FALSE; -+ int bytes_copied=0; -+ char *pbuffer=&buffer[0]; - int rc; - int x; - #ifdef DEBUG -@@ -1272,6 +1274,14 @@ void handle_connection(int sock){ - if(buffer[strlen(buffer)-1]=='\n') - buffer[strlen(buffer)-1]='\x0'; - -+ /* Altinity patch to allow multi packet responses */ -+ /* Loop not indented to allow easier patching */ -+ /* START MULTI_PACKET LOOP */ -+ do { -+ -+ if(debug==TRUE) -+ syslog(LOG_DEBUG,"Sending response - bytes left: %d", strlen(pbuffer)); -+ - /* clear the response packet buffer */ - bzero(&send_packet,sizeof(send_packet)); - -@@ -1280,11 +1290,17 @@ void handle_connection(int sock){ - - /* initialize response packet data */ - send_packet.packet_version=(int16_t)htons(NRPE_PACKET_VERSION_2); -- send_packet.packet_type=(int16_t)htons(RESPONSE_PACKET); - send_packet.result_code=(int16_t)htons(result); -- strncpy(&send_packet.buffer[0],buffer,MAX_PACKETBUFFER_LENGTH); -+ strncpy(&send_packet.buffer[0],pbuffer,MAX_PACKETBUFFER_LENGTH); - send_packet.buffer[MAX_PACKETBUFFER_LENGTH-1]='\x0'; -- -+ -+ bytes_copied = strlen(&send_packet.buffer[0]); -+ pbuffer = pbuffer+bytes_copied; -+ if(strlen(pbuffer)>0) -+ send_packet.packet_type=(int16_t)htons(RESPONSE_PACKET_WITH_MORE); -+ else -+ send_packet.packet_type=(int16_t)htons(RESPONSE_PACKET); -+ - /* calculate the crc 32 value of the packet */ - send_packet.crc32_value=(u_int32_t)0L; - calculated_crc32=calculate_crc32((char *)&send_packet,sizeof(send_packet)); -@@ -1303,6 +1319,9 @@ void handle_connection(int sock){ - SSL_write(ssl,&send_packet,bytes_to_send); - #endif - -+ } while (strlen(pbuffer) > 0); -+ /* END MULTI_PACKET LOOP */ -+ - #ifdef HAVE_SSL - if(ssl){ - complete_SSL_shutdown( ssl);
--- a/net-analyzer/nrpe/files/nrpe-2.14-tcpd-et-al.patch Mon Mar 17 16:09:30 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ ---- nrpe-2.14.orig/configure.in -+++ nrpe-2.14/configure.in -@@ -1,12 +1,8 @@ - dnl Process this -*-m4-*- file with autoconf to produce a configure script. - --dnl Disable caching --define([AC_CACHE_LOAD],) --define([AC_CACHE_SAVE],) -- --2.14([nrpe],[2.13],[nagios-users@lists.sourceforge.net],[nrpe],[http://www.nagios.org]) -+AC_INIT([nrpe],[2.14],[nagios-users@lists.sourceforge.net],[nrpe],[http://www.nagios.org]) - AC_CONFIG_SRCDIR([src/nrpe.c]) --AC_CONFIG_HEADERS([include/config.h]) -+ - AC_CONFIG_FILES([Makefile - subst - src/Makefile -@@ -16,7 +12,8 @@ - init-script.suse - nrpe.spec - sample-config/nrpe.cfg -- sample-config/nrpe.xinetd]) -+ sample-config/nrpe.xinetd -+ include/config.h]) - AC_PREFIX_DEFAULT(/usr/local/nagios) - - PKG_NAME=nrpe -@@ -45,7 +42,7 @@ - AC_HEADER_STDC - AC_HEADER_TIME - AC_HEADER_SYS_WAIT --AC_CHECK_HEADERS(ctype.h dirent.h errno.h fcntl.h getopt.h grp.h inttypes.h netdb.h pwd.h signal.h stdint.h strings.h string.h syslog.h tcpd.h unistd.h arpa/inet.h netinet/in.h socket.h sys/types.h sys/time.h sys/resource.h sys/wait.h sys/socket.h sys/stat.h) -+AC_CHECK_HEADERS(ctype.h dirent.h errno.h fcntl.h getopt.h grp.h inttypes.h netdb.h pwd.h signal.h stdint.h strings.h string.h syslog.h unistd.h arpa/inet.h netinet/in.h socket.h sys/types.h sys/time.h sys/resource.h sys/wait.h sys/socket.h sys/stat.h) - - dnl Checks for typedefs, structures, and compiler characteristics. - AC_C_CONST -@@ -164,11 +161,20 @@ - AC_CHECK_LIB(nsl,main,SOCKETLIBS="$SOCKETLIBS -lnsl") - AC_CHECK_LIB(socket,socket,SOCKETLIBS="$SOCKETLIBS -lsocket") - AC_SUBST(SOCKETLIBS) --AC_CHECK_LIB(wrap,main,[ -- LIBWRAPLIBS="$LIBWRAPLIBS -lwrap" -+ -+AC_ARG_ENABLE([tcp-wrapper], -+ AS_HELP_STRING([--disable-tcp-wrapper], [Disable building with TCP wrappers. *** DISABLING IS A SECURITY RISK! *** Read the SECURITY file before using this option! @<:@default=enable@:>@])) -+ -+LIBWRAPLIBS="" -+AS_IF([test "x$enable_tcp_wrapper" != "xno"], [ -+ AC_CHECK_LIB([wrap],[hosts_access],[ -+ LIBWRAPLIBS="$LIBWRAPLIBS -lwrap" - AC_DEFINE(HAVE_LIBWRAP,[1],[Have the TCP wrappers library]) -- ]) -+ AC_DEFINE(HAVE_TCPD_H,[1],[Have the TCP wrappers library]) -+ ]) -+]) - AC_SUBST(LIBWRAPLIBS) -+ - AC_CHECK_FUNCS(strdup strstr strtoul initgroups closesocket) - - dnl socklen_t check - from curl -@@ -438,8 +444,11 @@ - AC_SUBST(TARGET_PLATFORM) - - AC_ARG_ENABLE([command-args], -- AS_HELP_STRING([--enable-command-args],[allows clients to specify command arguments. *** THIS IS A SECURITY RISK! *** Read the SECURITY file before using this option!]), -- AC_DEFINE_UNQUOTED(ENABLE_COMMAND_ARGUMENTS,[1],[Enable command-line arguments])) -+ AS_HELP_STRING([--enable-command-args],[allows clients to specify command arguments. *** THIS IS A SECURITY RISK! *** Read the SECURITY file before using this option!])) -+ -+AS_IF([test "x$enable_command_args" = "xyes"], [ -+ AC_DEFINE(ENABLE_COMMAND_ARGUMENTS,[1],[Enable command-line arguments]) -+]) - - AC_ARG_ENABLE([bash-command-substitution], - AS_HELP_STRING([--enable-bash-command-substitution],[allows clients to pass bash command substitutions of the form $(command). *** THIS IS A HIGH SECURITY RISK! *** Read the SECURITY file before using this option!]),
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/net-analyzer/nrpe/files/nrpe-2.15-multiline.patch Mon Mar 17 16:11:01 2014 +0100 @@ -0,0 +1,204 @@ +Add support for large output + +http://opsview-blog.opsera.com/dotorg/2008/08/enhancing-nrpe.htmlIndex: nrpe-2.14/include/common.h +=================================================================== +Index: nrpe-2.14/include/common.h +=================================================================== +--- nrpe-2.14.orig/include/common.h ++++ nrpe-2.14/include/common.h +@@ -41,7 +41,7 @@ + #define DEFAULT_SOCKET_TIMEOUT 10 /* timeout after 10 seconds */ + #define DEFAULT_CONNECTION_TIMEOUT 300 /* timeout if daemon is waiting for connection more than this time */ + +-#define MAX_INPUT_BUFFER 2048 /* max size of most buffers we use */ ++#define MAX_INPUT_BUFFER 16384 /* max size of most buffers we use */ + #define MAX_FILENAME_LENGTH 256 + + #define MAX_HOST_ADDRESS_LENGTH 256 /* max size of a host address */ +@@ -55,12 +55,14 @@ + + #define QUERY_PACKET 1 /* id code for a packet containing a query */ + #define RESPONSE_PACKET 2 /* id code for a packet containing a response */ ++#define RESPONSE_PACKET_WITH_MORE 3 /* id code for a packet containing a response, with more data to follow */ + + #define NRPE_PACKET_VERSION_3 3 /* packet version identifier */ + #define NRPE_PACKET_VERSION_2 2 + #define NRPE_PACKET_VERSION_1 1 /* older packet version identifiers (no longer supported) */ + + #define MAX_PACKETBUFFER_LENGTH 1024 /* max amount of data we'll send in one query/response */ ++ /* WARNING - do not change this as older clients/servers will not work */ + + typedef struct packet_struct{ + int16_t packet_version; +Index: nrpe-2.14/src/check_nrpe.c +=================================================================== +--- nrpe-2.14.orig/src/check_nrpe.c ++++ nrpe-2.14/src/check_nrpe.c +@@ -221,6 +221,11 @@ int main(int argc, char **argv){ + return STATE_UNKNOWN; + } + ++ /* Altinity patch: Allow multiple packets to be received */ ++ /* Indentation not corrected to allow simpler patching */ ++ /* START MULTI_PACKET LOOP */ ++ do { ++ + /* wait for the response packet */ + bytes_to_recv=sizeof(receive_packet); + if(use_ssl==FALSE) +@@ -233,31 +238,24 @@ int main(int argc, char **argv){ + /* reset timeout */ + alarm(0); + +- /* close the connection */ +-#ifdef HAVE_SSL +- if(use_ssl==TRUE){ +- SSL_shutdown(ssl); +- SSL_free(ssl); +- SSL_CTX_free(ctx); +- } +-#endif +- graceful_close(sd,1000); +- + /* recv() error */ + if(rc<0){ + printf("CHECK_NRPE: Error receiving data from daemon.\n"); ++ graceful_close(sd,1000); + return STATE_UNKNOWN; + } + + /* server disconnected */ + else if(rc==0){ + printf("CHECK_NRPE: Received 0 bytes from daemon. Check the remote server logs for error messages.\n"); ++ graceful_close(sd,1000); + return STATE_UNKNOWN; + } + + /* receive underflow */ + else if(bytes_to_recv<sizeof(receive_packet)){ + printf("CHECK_NRPE: Receive underflow - only %d bytes received (%d expected).\n",bytes_to_recv,sizeof(receive_packet)); ++ graceful_close(sd,1000); + return STATE_UNKNOWN; + } + +@@ -271,21 +269,21 @@ int main(int argc, char **argv){ + calculated_crc32=calculate_crc32((char *)&receive_packet,sizeof(receive_packet)); + if(packet_crc32!=calculated_crc32){ + printf("CHECK_NRPE: Response packet had invalid CRC32.\n"); +- close(sd); ++ graceful_close(sd,1000); + return STATE_UNKNOWN; + } + + /* check packet version */ + if(ntohs(receive_packet.packet_version)!=NRPE_PACKET_VERSION_2){ + printf("CHECK_NRPE: Invalid packet version received from server.\n"); +- close(sd); ++ graceful_close(sd,1000); + return STATE_UNKNOWN; + } + + /* check packet type */ +- if(ntohs(receive_packet.packet_type)!=RESPONSE_PACKET){ ++ if(ntohs(receive_packet.packet_type)!=RESPONSE_PACKET && ntohs(receive_packet.packet_type)!=RESPONSE_PACKET_WITH_MORE){ + printf("CHECK_NRPE: Invalid packet type received from server.\n"); +- close(sd); ++ graceful_close(sd,1000); + return STATE_UNKNOWN; + } + +@@ -297,8 +295,18 @@ int main(int argc, char **argv){ + if(!strcmp(receive_packet.buffer,"")) + printf("CHECK_NRPE: No output returned from daemon.\n"); + else +- printf("%s\n",receive_packet.buffer); +- } ++ printf("%s",receive_packet.buffer); ++ ++ } while (ntohs(receive_packet.packet_type)==RESPONSE_PACKET_WITH_MORE); ++ /* END MULTI_PACKET LOOP */ ++ ++ /* Finish output with newline */ ++ printf("\n"); ++ ++ /* close the connection */ ++ graceful_close(sd,1000); ++ ++ } + + /* reset the alarm */ + else +@@ -434,6 +442,14 @@ int graceful_close(int sd, int timeout){ + struct timeval tv; + char buf[1000]; + ++#ifdef HAVE_SSL ++ if(use_ssl==TRUE){ ++ SSL_shutdown(ssl); ++ SSL_free(ssl); ++ SSL_CTX_free(ctx); ++ } ++#endif ++ + /* send FIN packet */ + shutdown(sd,SHUT_WR); + for(;;){ +Index: nrpe-2.14/src/nrpe.c +=================================================================== +--- nrpe-2.14.orig/src/nrpe.c ++++ nrpe-2.14/src/nrpe.c +@@ -1056,6 +1056,8 @@ void handle_connection(int sock){ + char processed_command[MAX_INPUT_BUFFER]; + int result=STATE_OK; + int early_timeout=FALSE; ++ int bytes_copied=0; ++ char *pbuffer=&buffer[0]; + int rc; + int x; + #ifdef DEBUG +@@ -1272,6 +1274,14 @@ void handle_connection(int sock){ + if(buffer[strlen(buffer)-1]=='\n') + buffer[strlen(buffer)-1]='\x0'; + ++ /* Altinity patch to allow multi packet responses */ ++ /* Loop not indented to allow easier patching */ ++ /* START MULTI_PACKET LOOP */ ++ do { ++ ++ if(debug==TRUE) ++ syslog(LOG_DEBUG,"Sending response - bytes left: %d", strlen(pbuffer)); ++ + /* clear the response packet buffer */ + bzero(&send_packet,sizeof(send_packet)); + +@@ -1280,11 +1290,17 @@ void handle_connection(int sock){ + + /* initialize response packet data */ + send_packet.packet_version=(int16_t)htons(NRPE_PACKET_VERSION_2); +- send_packet.packet_type=(int16_t)htons(RESPONSE_PACKET); + send_packet.result_code=(int16_t)htons(result); +- strncpy(&send_packet.buffer[0],buffer,MAX_PACKETBUFFER_LENGTH); ++ strncpy(&send_packet.buffer[0],pbuffer,MAX_PACKETBUFFER_LENGTH); + send_packet.buffer[MAX_PACKETBUFFER_LENGTH-1]='\x0'; +- ++ ++ bytes_copied = strlen(&send_packet.buffer[0]); ++ pbuffer = pbuffer+bytes_copied; ++ if(strlen(pbuffer)>0) ++ send_packet.packet_type=(int16_t)htons(RESPONSE_PACKET_WITH_MORE); ++ else ++ send_packet.packet_type=(int16_t)htons(RESPONSE_PACKET); ++ + /* calculate the crc 32 value of the packet */ + send_packet.crc32_value=(u_int32_t)0L; + calculated_crc32=calculate_crc32((char *)&send_packet,sizeof(send_packet)); +@@ -1303,6 +1319,9 @@ void handle_connection(int sock){ + SSL_write(ssl,&send_packet,bytes_to_send); + #endif + ++ } while (strlen(pbuffer) > 0); ++ /* END MULTI_PACKET LOOP */ ++ + #ifdef HAVE_SSL + if(ssl){ + complete_SSL_shutdown( ssl);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/net-analyzer/nrpe/files/nrpe-2.15-tcpd-et-al.patch Mon Mar 17 16:11:01 2014 +0100 @@ -0,0 +1,74 @@ +--- nrpe-2.14.orig/configure.in ++++ nrpe-2.14/configure.in +@@ -1,12 +1,8 @@ + dnl Process this -*-m4-*- file with autoconf to produce a configure script. + +-dnl Disable caching +-define([AC_CACHE_LOAD],) +-define([AC_CACHE_SAVE],) +- +-2.14([nrpe],[2.13],[nagios-users@lists.sourceforge.net],[nrpe],[http://www.nagios.org]) ++AC_INIT([nrpe],[2.14],[nagios-users@lists.sourceforge.net],[nrpe],[http://www.nagios.org]) + AC_CONFIG_SRCDIR([src/nrpe.c]) +-AC_CONFIG_HEADERS([include/config.h]) ++ + AC_CONFIG_FILES([Makefile + subst + src/Makefile +@@ -16,7 +12,8 @@ + init-script.suse + nrpe.spec + sample-config/nrpe.cfg +- sample-config/nrpe.xinetd]) ++ sample-config/nrpe.xinetd ++ include/config.h]) + AC_PREFIX_DEFAULT(/usr/local/nagios) + + PKG_NAME=nrpe +@@ -45,7 +42,7 @@ + AC_HEADER_STDC + AC_HEADER_TIME + AC_HEADER_SYS_WAIT +-AC_CHECK_HEADERS(ctype.h dirent.h errno.h fcntl.h getopt.h grp.h inttypes.h netdb.h pwd.h signal.h stdint.h strings.h string.h syslog.h tcpd.h unistd.h arpa/inet.h netinet/in.h socket.h sys/types.h sys/time.h sys/resource.h sys/wait.h sys/socket.h sys/stat.h) ++AC_CHECK_HEADERS(ctype.h dirent.h errno.h fcntl.h getopt.h grp.h inttypes.h netdb.h pwd.h signal.h stdint.h strings.h string.h syslog.h unistd.h arpa/inet.h netinet/in.h socket.h sys/types.h sys/time.h sys/resource.h sys/wait.h sys/socket.h sys/stat.h) + + dnl Checks for typedefs, structures, and compiler characteristics. + AC_C_CONST +@@ -164,11 +161,20 @@ + AC_CHECK_LIB(nsl,main,SOCKETLIBS="$SOCKETLIBS -lnsl") + AC_CHECK_LIB(socket,socket,SOCKETLIBS="$SOCKETLIBS -lsocket") + AC_SUBST(SOCKETLIBS) +-AC_CHECK_LIB(wrap,main,[ +- LIBWRAPLIBS="$LIBWRAPLIBS -lwrap" ++ ++AC_ARG_ENABLE([tcp-wrapper], ++ AS_HELP_STRING([--disable-tcp-wrapper], [Disable building with TCP wrappers. *** DISABLING IS A SECURITY RISK! *** Read the SECURITY file before using this option! @<:@default=enable@:>@])) ++ ++LIBWRAPLIBS="" ++AS_IF([test "x$enable_tcp_wrapper" != "xno"], [ ++ AC_CHECK_LIB([wrap],[hosts_access],[ ++ LIBWRAPLIBS="$LIBWRAPLIBS -lwrap" + AC_DEFINE(HAVE_LIBWRAP,[1],[Have the TCP wrappers library]) +- ]) ++ AC_DEFINE(HAVE_TCPD_H,[1],[Have the TCP wrappers library]) ++ ]) ++]) + AC_SUBST(LIBWRAPLIBS) ++ + AC_CHECK_FUNCS(strdup strstr strtoul initgroups closesocket) + + dnl socklen_t check - from curl +@@ -438,8 +444,11 @@ + AC_SUBST(TARGET_PLATFORM) + + AC_ARG_ENABLE([command-args], +- AS_HELP_STRING([--enable-command-args],[allows clients to specify command arguments. *** THIS IS A SECURITY RISK! *** Read the SECURITY file before using this option!]), +- AC_DEFINE_UNQUOTED(ENABLE_COMMAND_ARGUMENTS,[1],[Enable command-line arguments])) ++ AS_HELP_STRING([--enable-command-args],[allows clients to specify command arguments. *** THIS IS A SECURITY RISK! *** Read the SECURITY file before using this option!])) ++ ++AS_IF([test "x$enable_command_args" = "xyes"], [ ++ AC_DEFINE(ENABLE_COMMAND_ARGUMENTS,[1],[Enable command-line arguments]) ++]) + + AC_ARG_ENABLE([bash-command-substitution], + AS_HELP_STRING([--enable-bash-command-substitution],[allows clients to pass bash command substitutions of the form $(command). *** THIS IS A HIGH SECURITY RISK! *** Read the SECURITY file before using this option!]),
--- a/net-analyzer/nrpe/nrpe-2.14.ebuild Mon Mar 17 16:09:30 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,123 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-analyzer/nrpe/nrpe-2.14.ebuild,v 1.8 2013/03/09 19:09:06 ago Exp $ - -EAPI=4 - -inherit eutils toolchain-funcs multilib user autotools - -DESCRIPTION="Nagios Remote Plugin Executor" -HOMEPAGE="http://www.nagios.org/" -SRC_URI="mirror://sourceforge/nagios/${P}.tar.gz" - -LICENSE="GPL-2+" -SLOT="0" -KEYWORDS="alpha amd64 hppa ppc ppc64 sparc x86" -IUSE="command-args ssl tcpd minimal" - -DEPEND="ssl? ( dev-libs/openssl ) - !minimal? ( tcpd? ( sys-apps/tcp-wrappers ) )" -RDEPEND="${DEPEND} - !minimal? ( >=net-analyzer/nagios-plugins-1.3.0 )" - -pkg_setup() { - enewgroup nagios - enewuser nagios -1 /bin/bash /dev/null nagios - - elog "If you plan to use \"nrpe_check_control\" then you may want to specify" - elog "different command and services files. You can override the defaults" - elog "through the \"NAGIOS_COMMAND_FILE\" and \"NAGIOS_SERVICES_FILE\" environment variables." - elog "NAGIOS_COMMAND_FILE=${NAGIOS_COMMAND_FILE:-/var/rw/nagios.cmd}" - elog "NAGIOS_SERVICES_FILE=${NAGIOS_SERVICES_FILE:-/etc/services.cfg}" -} - -src_prepare() { - # Add support for large output, - # http://opsview-blog.opsera.com/dotorg/2008/08/enhancing-nrpe.html - epatch "${FILESDIR}"/${P}-multiline.patch - # fix configure, among others #326367, #397603 - epatch "${FILESDIR}"/${P}-tcpd-et-al.patch - - sed -i -e '/define \(COMMAND\|SERVICES\)_FILE/d' contrib/nrpe_check_control.c || die - - # change the default location of the pid file - sed -i -e '/pid_file/s:/var/run:/run:' sample-config/nrpe.cfg.in || die - - # fix TFU handling of autoheader - sed -i -e '/#undef/d' include/config.h.in || die - - eautoreconf -} - -src_configure() { - local myconf - if use minimal; then - myconf="--disable-tcp-wrapper --disable-command-args" - else - myconf="$(use_enable tcpd tcp-wrapper) $(use_enable command-args)" - fi - - econf \ - --libexecdir=/usr/$(get_libdir)/nagios/plugins \ - --localstatedir=/var/nagios \ - --sysconfdir=/etc/nagios \ - --with-nrpe-user=nagios \ - --with-nrpe-group=nagios \ - $(use_enable ssl) \ - ${myconf} -} - -src_compile() { - emake -C src check_nrpe $(use minimal || echo nrpe) - - # Add nifty nrpe check tool - $(tc-getCC) ${CPPFLAGS} ${CFLAGS} \ - -DCOMMAND_FILE=\"${NAGIOS_COMMAND_FILE:-/var/rw/nagios.cmd}\" \ - -DSERVICES_FILE=\"${NAGIOS_SERVICES_FILE:-/etc/services.cfg}\" \ - ${LDFLAGS} -o nrpe_check_control contrib/nrpe_check_control.c || die -} - -src_install() { - dodoc LEGAL Changelog README SECURITY \ - contrib/README.nrpe_check_control \ - $(use ssl && echo README.SSL) - - exeinto /usr/$(get_libdir)/nagios/plugins - doexe src/check_nrpe nrpe_check_control - - use minimal && return 0 - - ## NON-MINIMAL INSTALL FOLLOWS ## - - insinto /etc/nagios - newins sample-config/nrpe.cfg nrpe.cfg - fowners root:nagios /etc/nagios/nrpe.cfg - fperms 0640 /etc/nagios/nrpe.cfg - - exeinto /usr/libexec - doexe src/nrpe - - newinitd "${FILESDIR}"/nrpe.init nrpe - - insinto /etc/xinetd.d/ - newins "${FILESDIR}/nrpe.xinetd.2" nrpe - - if use tcpd; then - sed -i -e '/^reload()/, /^}/ d' -e '/extra_started_commands/s:reload::' \ - "${D}"/etc/init.d/nrpe - fi -} - -pkg_postinst() { - elog "If you are using the nrpe daemon, remember to edit" - elog "the config file /etc/nagios/nrpe.cfg" - - if use command-args ; then - ewarn "" - ewarn "You have enabled command-args for NRPE. This enables" - ewarn "the ability for clients to supply arguments to commands" - ewarn "which should be run. " - ewarn "THIS IS CONSIDERED A SECURITY RISK!" - ewarn "Please read /usr/share/doc/${PF}/SECURITY.bz2 for more info" - fi -}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/net-analyzer/nrpe/nrpe-2.15.ebuild Mon Mar 17 16:11:01 2014 +0100 @@ -0,0 +1,123 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/nrpe/nrpe-2.14.ebuild,v 1.8 2013/03/09 19:09:06 ago Exp $ + +EAPI=4 + +inherit eutils toolchain-funcs multilib user autotools + +DESCRIPTION="Nagios Remote Plugin Executor" +HOMEPAGE="http://www.nagios.org/" +SRC_URI="mirror://sourceforge/nagios/${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="alpha amd64 hppa ppc ppc64 sparc x86" +IUSE="command-args ssl tcpd minimal" + +DEPEND="ssl? ( dev-libs/openssl ) + !minimal? ( tcpd? ( sys-apps/tcp-wrappers ) )" +RDEPEND="${DEPEND} + !minimal? ( >=net-analyzer/nagios-plugins-1.3.0 )" + +pkg_setup() { + enewgroup nagios + enewuser nagios -1 /bin/bash /dev/null nagios + + elog "If you plan to use \"nrpe_check_control\" then you may want to specify" + elog "different command and services files. You can override the defaults" + elog "through the \"NAGIOS_COMMAND_FILE\" and \"NAGIOS_SERVICES_FILE\" environment variables." + elog "NAGIOS_COMMAND_FILE=${NAGIOS_COMMAND_FILE:-/var/rw/nagios.cmd}" + elog "NAGIOS_SERVICES_FILE=${NAGIOS_SERVICES_FILE:-/etc/services.cfg}" +} + +src_prepare() { + # Add support for large output, + # http://opsview-blog.opsera.com/dotorg/2008/08/enhancing-nrpe.html + epatch "${FILESDIR}"/${P}-multiline.patch + # fix configure, among others #326367, #397603 + epatch "${FILESDIR}"/${P}-tcpd-et-al.patch + + sed -i -e '/define \(COMMAND\|SERVICES\)_FILE/d' contrib/nrpe_check_control.c || die + + # change the default location of the pid file + sed -i -e '/pid_file/s:/var/run:/run:' sample-config/nrpe.cfg.in || die + + # fix TFU handling of autoheader + sed -i -e '/#undef/d' include/config.h.in || die + + eautoreconf +} + +src_configure() { + local myconf + if use minimal; then + myconf="--disable-tcp-wrapper --disable-command-args" + else + myconf="$(use_enable tcpd tcp-wrapper) $(use_enable command-args)" + fi + + econf \ + --libexecdir=/usr/$(get_libdir)/nagios/plugins \ + --localstatedir=/var/nagios \ + --sysconfdir=/etc/nagios \ + --with-nrpe-user=nagios \ + --with-nrpe-group=nagios \ + $(use_enable ssl) \ + ${myconf} +} + +src_compile() { + emake -C src check_nrpe $(use minimal || echo nrpe) + + # Add nifty nrpe check tool + $(tc-getCC) ${CPPFLAGS} ${CFLAGS} \ + -DCOMMAND_FILE=\"${NAGIOS_COMMAND_FILE:-/var/rw/nagios.cmd}\" \ + -DSERVICES_FILE=\"${NAGIOS_SERVICES_FILE:-/etc/services.cfg}\" \ + ${LDFLAGS} -o nrpe_check_control contrib/nrpe_check_control.c || die +} + +src_install() { + dodoc LEGAL Changelog README SECURITY \ + contrib/README.nrpe_check_control \ + $(use ssl && echo README.SSL) + + exeinto /usr/$(get_libdir)/nagios/plugins + doexe src/check_nrpe nrpe_check_control + + use minimal && return 0 + + ## NON-MINIMAL INSTALL FOLLOWS ## + + insinto /etc/nagios + newins sample-config/nrpe.cfg nrpe.cfg + fowners root:nagios /etc/nagios/nrpe.cfg + fperms 0640 /etc/nagios/nrpe.cfg + + exeinto /usr/libexec + doexe src/nrpe + + newinitd "${FILESDIR}"/nrpe.init nrpe + + insinto /etc/xinetd.d/ + newins "${FILESDIR}/nrpe.xinetd.2" nrpe + + if use tcpd; then + sed -i -e '/^reload()/, /^}/ d' -e '/extra_started_commands/s:reload::' \ + "${D}"/etc/init.d/nrpe + fi +} + +pkg_postinst() { + elog "If you are using the nrpe daemon, remember to edit" + elog "the config file /etc/nagios/nrpe.cfg" + + if use command-args ; then + ewarn "" + ewarn "You have enabled command-args for NRPE. This enables" + ewarn "the ability for clients to supply arguments to commands" + ewarn "which should be run. " + ewarn "THIS IS CONSIDERED A SECURITY RISK!" + ewarn "Please read /usr/share/doc/${PF}/SECURITY.bz2 for more info" + fi +}