summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-analyzer/nrpe/nrpe-2.15.ebuild')
-rw-r--r--net-analyzer/nrpe/nrpe-2.15.ebuild127
1 files changed, 127 insertions, 0 deletions
diff --git a/net-analyzer/nrpe/nrpe-2.15.ebuild b/net-analyzer/nrpe/nrpe-2.15.ebuild
new file mode 100644
index 000000000000..51046f676037
--- /dev/null
+++ b/net-analyzer/nrpe/nrpe-2.15.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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}"/${PN}-2.14-multiline.patch
+ # fix configure, among others #326367, #397603
+ epatch "${FILESDIR}"/${PN}-2.15-tcpd-et-al.patch
+ # otherwise autoconf will overwrite the custom include/config.h.in
+ epatch "${FILESDIR}"/${PN}-2.15-autoconf-header.patch
+ # improve handling of metachars for security
+ epatch "${FILESDIR}"/${PN}-2.15-metachar-security-fix.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
+}