1 Commits

Author SHA1 Message Date
geos_one
56a986c0ba New upstream version 0.6.27 2025-08-06 18:11:51 +02:00
613 changed files with 45811 additions and 38069 deletions

41
.gitignore vendored
View File

@@ -1,41 +0,0 @@
autom4te.cache
subst
summary
*Makefile
config.log
config.status
scripts/rc.npcd
scripts/rc.pnp_gearman_worker
scripts/check_pnp_rrds.pl
scripts/process_perfdata.pl
scripts/rrd_modify.pl
src/*.o
src/npcd
include/config.h
*~
sample-config/pnp/config.php
sample-config/pnp/pnp4nagios_release
sample-config/pnp/process_perfdata.cfg-sample
sample-config/pnp/npcd.cfg-sample
sample-config/misccommands.cfg-sample
sample-config/nagios.cfg-sample
share/pnp/application/config/config.php
share/pnp/index.php
share/pnp/install.php
sample-config/httpd.conf
share/pnp/application/logs/*
contrib/ssi/status-header.ssi
helpers/w2h.pl
scripts/verify_pnp_config.pl
sample-config/lighttpd.pnp4nagios.conf
sample-config/nginx.pnp4nagios.conf
share/pnp/media/js/basket.js
scripts/rrd_convert.pl
scripts/rrd_converter.pl
man/npcd.8
*.swp
*.swo

View File

@@ -1,3 +1,3 @@
Authors:
Jörg Linge pitchfork@pnp4nagios.org
Hendrik Bäcker andurin@process-zero.de
Jörg Linge <pitchfork@pnp4nagios.org>
Hendrik Bäcker <andurin@process-zero.de>

View File

@@ -1,4 +1,22 @@
**pnp-0.6.27-4 09/12/2023**
* update URLs and related text
* clean up autoconf stuff
* add scripts/config4rpm_path.sh to test existing rpm installation (tjyang)
**pnp-0.6.27 08/18/2023**
* many php 8.2 fixes to remove 'deprecated' errors:
pre-defining class variables (instead of dynamic),
explicitly re-creating arrays as needed
converting utf8_encode to mbstring
**pnp-0.6.26-2 09/18/2022
* various php8 fixes
* rrdtools needs env XDG_CACHE_HOME for fontconfig
* fix so that 'bucket' display works
* fix so that pdf generation works
**pnp-0.6.?? ??/??/2017**
* Bugfix: Fix for CVE-2017-16834
**pnp-0.6.26 08/21/2017**
* Bugfix: Use complete option arguments for compatibility with rrdtool 1.6.0 (sbraz)

159
Makefile.in Normal file → Executable file
View File

@@ -1,11 +1,13 @@
###############################
# Makefile for PNP
#
# Last Modified: 12-10-2006
# Last Modified: 11-13-2023
###############################
VERSION=@PACKAGE_VERSION@
# Source code directories
srcdir=@srcdir@
SRC_BASE=@srcdir@/src
SRC_SHARE=@srcdir@/share
SRC_LIB=@srcdir@/lib
@@ -22,48 +24,81 @@ LDFLAGS=@LDFLAGS@ @LIBS@
prefix=@prefix@
exec_prefix=@exec_prefix@
LOGDIR=@localstatedir@
CFGDIR=@sysconfdir@
BINDIR=@bindir@
LIBEXECDIR=@libexecdir@
LIBDIR=@libdir@
KOHANA=@KOHANA@
CGIDIR=@sbindir@
INSTALL=@INSTALL@
INSTALL_OPTS=@INSTALL_OPTS@
HTTP_INSTALL_OPTS=@HTTP_INSTALL_OPTS@
DATAROOTDIR=@datarootdir@
NAGIOS_VERSION=@NAGIOS_VER@
CACHE_DIR=@CACHE_DIR@
SELINUX=@SELINUX@
SELINUX_DEVELDIR=@SELINUX_DEVELDIR@
CP=@CP@
PERL=@PERL@
.PHONY: clean rpm dist distclean devclean
none:
@echo "Please supply a command line argument (i.e. 'make all'). Other targets are:"
@echo " clean"
@echo " install install-init install-config install-processperfdata install-html fullinstall"
@echo " install-plugins"
@echo " clean distclean dist"
@echo " install install-init install-selinux fullinstall"
all:
cd $(SRC_BASE) && $(MAKE)
cd $(SRC_SHARE) && $(MAKE)
cd $(SRC_SCRIPTS) && $(MAKE)
cd $(SRC_BASE) && $(MAKE) $@
cd $(SRC_SHARE) && $(MAKE) $@
cd $(SRC_SCRIPTS) && $(MAKE) $@
cd $(SRC_CONFIG) && $(MAKE) $@
chmod a+r $(SRC_CONTRIB)/ssi/status-header.ssi
@echo ""
@echo "*** Compile finished ***"
@echo ""
@echo " make install"
@echo " - This installs the main program and HTML files"
@echo " - This installs directories, binaries and php files"
@echo ""
@echo " make install-selinux"
@echo " - This installs the selinux setup (if you are using selinux)"
@echo ""
@echo ""
@echo " make fullinstall"
@echo " - This installs the main program, runlevel scripts, config and HTML files"
@echo " - install everything "
@echo ""
@echo "Enjoy."
@echo ""
# this section from autoconf doc suggestions
# reautoconf if config changed
configure: configure.ac
autoconf
# autoheader might not change config.h.in, so touch a stamp file.
include/config.h.in: include/stamp-h.in ;
include/stamp-h.in: configure.ac
autoheader
date -Is > 'include/stamp-h.in'
include/config.h: include/stamp-h ;
include/stamp-h: include/config.h.in config.status
./config.status
Makefile: Makefile.in config.status
./config.status
config.status: configure
./config.status --recheck
scripts:
cd $(SRC_SCRIPTS) && $(MAKE)
cd $(SRC_SCRIPTS) && $(MAKE) $@
share:
cd $(SRC_SHARE) && $(MAKE)
cd $(SRC_SHARE) && $(MAKE) $@
clean:
cd $(SRC_BASE) && $(MAKE) $@
@@ -75,6 +110,8 @@ clean:
-rm -f *.cfg core
-rm -f *~ *.*~ */*~ */*.*~
-rm -f config.log config.status config.cache
@SE@ rm -f pnp4nagios.fc
@SE@ rm -f pnp4nagios.if pnp4nagios.pp* tmp
distclean:
cd $(SRC_BASE) && $(MAKE) $@
@@ -89,56 +126,16 @@ distclean:
rm -f Makefile include/stamp-h1 include/config.h config.status config.log
rm -f subst summary
rm -f $(SRC_CONTRIB)/ssi/status-header.ssi
rm -f $(SRC_CONTRIB)/fedora/pnp4nagios.logrotate.conf
rm -f $(SRC_CONTRIB)/fedora/logwatch/conf/logfiles/pnp4nagios.conf
@SE@ rm -f pnp4nagios.fc pnp4nagios.if pnp4nagios.pp* tmp
devclean: distclean
install-html:
cd $(SRC_SHARE) && $(MAKE) install
install-base:
cd $(SRC_BASE) && $(MAKE) install
install-man:
cd $(SRC_MAN) && $(MAKE) install
install-processperfdata:
cd $(SRC_SCRIPTS) && $(MAKE) install
install-init:
cd $(SRC_SCRIPTS) && $(MAKE) $@
install-config:
cd $(SRC_CONFIG) && $(MAKE) $@
@echo ""
@echo "*** PNP4Nagios sample config files installed ***"
@echo ""
@echo "Please run 'make install-init' if you want to use"
@echo "BULK Mode with NPCD"
@echo ""
@echo ""
@echo ""
install-webconf:
cd $(SRC_CONFIG) && $(MAKE) $@
@echo ""
@echo "*** Apache config file installed ***"
@echo ""
@echo "Restart your apache webserver to activete your changes."
@echo ""
@echo "Please run 'make install-config' to install sample"
@echo "configuration files"
@echo ""
@echo "Please run 'make install-init' if you want to use"
@echo "BULK Mode with NPCD"
@echo ""
@echo ""
@echo ""
install-plugins:
cd $(SRC_SCRIPTS) && $(MAKE) $@
install:
cd $(SRC_BASE) && $(MAKE) $@
@@ -147,37 +144,63 @@ install:
if [ x$(KOHANA) = xyes ]; then \
cd $(SRC_LIB) && $(MAKE) $@; \
fi
cd $(SRC_SCRIPTS) && $(MAKE) $@
cd $(SRC_CONFIG) && $(MAKE) $@
$(INSTALL) $(HTTP_INSTALL_OPTS) -d $(DESTDIR)$(CACHE_DIR)
@echo ""
@echo "*** Main program, Scripts and HTML files installed ***"
@echo ""
@echo "Please run 'make install-webconf' to install the"
@echo "web configuration file"
@echo ""
@echo "Please run 'make install-config' to install sample"
@echo "configuration files"
@echo ""
@echo "Please run 'make install-init' if you want to use"
@echo "BULK Mode with NPCD"
@echo ""
@echo ""
@echo ""
# Nagios might have some pnp4nagios selinux entries
# so mask out duplicates.
install-selinux:
@SE@ -rm nagios.pp
@SE@ -semodule -E nagios 2>/dev/null >/dev/null
@SE@ if [ -e nagios.pp ] ; then \
@SE@ semodule_unpackage nagios.pp nagios.mod nagios.fc ; \
@SE@ for pnpdir in /etc/pnp4nagios /var/log/pnp4nagios /var/lib/pnp4nagios /usr/lib/pnp4nagios ; \
@SE@ do \
@SE@ if grep -q "^$pnpdir" nagios.fc ; \
@SE@ then \
@SE@ sed -i "\\|^$pnpdir|s/^/#/" pnp4nagios.fc ; \
@SE@ fi \
@SE@ done \
@SE@ fi
@SE@ $(MAKE) -f $(SELINUX_DEVELDIR)/Makefile load
@SE@ fixfiles restore @datadir@ @pkgsysconfdir@
@SE@ fixfiles restore @PERFDATA_DIR@ @logdir@
@SE@ fixfiles restore @PERFDATA_SPOOL_DIR@ @piddir@
install-unstripped:
cd $(SRC_BASE) && $(MAKE) $@
cd $(SRC_SHARE) && $(MAKE) $@
cd $(SRC_SCRIPTS) && $(MAKE) $@
$(MAKE) install-basic
fullinstall: install install-webconf install-config install-init
fullinstall:
$(MAKE) install
$(MAKE) install-selinux
$(PERL) summary fullinstall
@echo ""
@echo "*** Main program, Scripts and HTML files installed ***"
@echo "Config files in: @pkgsysconfdir@ might need updating."
@echo ""
@echo ""
@echo "Enjoy."
@echo ""
dist:
ci/maketar.sh $(VERSION)
mv ci/pnp4nagios*.tgz .
mv ci/pnp4nagios*.zip .

10
README
View File

@@ -1,10 +0,0 @@
#########################
# #
# README #
# #
#########################
See our online documentation at:
http://pnp4nagios.sourceforge.net or:
http://docs.pnp4nagios.org/

67
README.md Normal file
View File

@@ -0,0 +1,67 @@
# PNP4Nagios
The new/current place for the pnp4nagios organization is
https://github.com/pnp4nagios
With this *particular* version residing in
https://github.com/pnp4nagios/pnp4nagios
This is a fork of [@lingej's original pnp4nagios package](https://github.com/lingej/pnp4nagios).
As a long-time user of `pnpnagios`, I am trying to give the project a
good home as we work to further develop and enhance this project. Please
contact me if you would like to help.
The original source was retired on commit 5e09f538373ac4310a13355746bb3d3a10eb7bef
(Version pnp-0.6.?? ??/??/2017 on 2022/Jan/16). Many thanks to Joerg Linge and his
awesome contributors for what we have, now!
## Getting Started
For now, I'm advocating installing from source (**my** source), as we move
forward into further developing this project.
Instructions can be found in
[this gist](https://gist.github.com/russellvt/051fa43592778a41e53cb423b791bab6).
## Documentation
The old site for documentation at https://docs.pnp4nagios.org is no longer
up; the replacement is https://github.com/pnp4nagios/docs
It's possible that there are still some references to the old site scattered
here and there.
## About Me
I am a long time Nagios/Icinga/Monitoring/Devops Professional. I've been
"the toolsguy" long from "devops" was even a "new" term.
## build RPM from git
The spec file is in the "ci" subdirectory. Install git-build-rpm (it's on
github, surprise!) and, as an example:
HERE=(main directory of this git package; where this README.md file is located)
cd $HERE
autoconf # builds 'configure'
./configure # builds 'ci/pnp4nagios.spec'
git build-rpm --rpm-dir /home/local/lane/rpmbuild --spec ci/pnp4nagios.spec --dist .fc35
The --rpm-dir option is to keep the .srpm file from the build (it will be
in your usual SRPMS subdirectory in your rpmbuild tree), the
--dist option is to avoid the longwinded "-%{version}-%{release}%{timestamp}.%{dist}..." package name. The rpms will get copied from the rpmbuild tree to
$HERE.
You can also just get the source code, do a
autoconf
./configure
then
make all
etc....but some of us (me) prefers to have a software package, to organize
software installation/update/removal.

2
THANKS
View File

@@ -2,6 +2,8 @@
# PNP Thanks #
###########################################
Russell M. Van Tassell - Taking over from 0.6.26+CVE-2017-16384
Olivier PLATHEY - For providing FPDF
Sven Nierlein - For providing mod_gearman
Michal Wojciechowski - For providing imgAreaSelect

54
aclocal.m4 vendored Executable file
View File

@@ -0,0 +1,54 @@
# AM_CONDITIONAL -*- Autoconf -*-
# Copyright (C) 1997-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# AM_CONDITIONAL(NAME, SHELL-CONDITION)
# -------------------------------------
# Define a conditional.
AC_DEFUN([AM_CONDITIONAL],
[AC_PREREQ([2.52])dnl
m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
AC_SUBST([$1_TRUE])dnl
AC_SUBST([$1_FALSE])dnl
_AM_SUBST_NOTMAKE([$1_TRUE])dnl
_AM_SUBST_NOTMAKE([$1_FALSE])dnl
m4_define([_AM_COND_VALUE_$1], [$2])dnl
if $2; then
$1_TRUE=
$1_FALSE='#'
else
$1_TRUE='#'
$1_FALSE=
fi
AC_CONFIG_COMMANDS_PRE(
[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
AC_MSG_ERROR([[conditional "$1" was never defined.
Usually this means the macro was only invoked conditionally.]])
fi])])
# Copyright (C) 2006-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# _AM_SUBST_NOTMAKE(VARIABLE)
# ---------------------------
# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
# This macro is traced by Automake.
AC_DEFUN([_AM_SUBST_NOTMAKE])
# AM_SUBST_NOTMAKE(VARIABLE)
# --------------------------
# Public sister of _AM_SUBST_NOTMAKE.
AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
m4_include([autoconf-macros/ax_nagios_get_os])
m4_include([autoconf-macros/ax_nagios_get_distrib])
m4_include([autoconf-macros/ax_nagios_get_init])
m4_include([autoconf-macros/ax_nagios_get_paths])
m4_include([autoconf-macros/ax_nagios_get_files])

1
autoconf-macros/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
nbproject/

View File

@@ -0,0 +1,7 @@
1.0.1
-----
* Fix bug determining inetd,xinetd if neither are running (Bryan Heden)
1.0.0
-----
* Initial Release (John Frickson)

264
autoconf-macros/LICENSE Normal file
View File

@@ -0,0 +1,264 @@
The GNU General Public License, Version 2, June 1991 (GPLv2)
============================================================
> Copyright (C) 1989, 1991 Free Software Foundation, Inc.
> 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies of this license
document, but changing it is not allowed.
Preamble
--------
The licenses for most software are designed to take away your freedom to share
and change it. By contrast, the GNU General Public License is intended to
guarantee your freedom to share and change free software--to make sure the
software is free for all its users. This General Public License applies to most
of the Free Software Foundation's software and to any other program whose
authors commit to using it. (Some other Free Software Foundation software is
covered by the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not price. Our
General Public Licenses are designed to make sure that you have the freedom to
distribute copies of free software (and charge for this service if you wish),
that you receive source code or can get it if you want it, that you can change
the software or use pieces of it in new free programs; and that you know you can
do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny
you these rights or to ask you to surrender the rights. These restrictions
translate to certain responsibilities for you if you distribute copies of the
software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a
fee, you must give the recipients all the rights that you have. You must make
sure that they, too, receive or can get the source code. And you must show them
these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer
you this license which gives you legal permission to copy, distribute and/or
modify the software.
Also, for each author's protection and ours, we want to make certain that
everyone understands that there is no warranty for this free software. If the
software is modified by someone else and passed on, we want its recipients to
know that what they have is not the original, so that any problems introduced by
others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish
to avoid the danger that redistributors of a free program will individually
obtain patent licenses, in effect making the program proprietary. To prevent
this, we have made it clear that any patent must be licensed for everyone's free
use or not licensed at all.
The precise terms and conditions for copying, distribution and modification
follow.
Terms And Conditions For Copying, Distribution And Modification
---------------------------------------------------------------
**0.** This License applies to any program or other work which contains a notice
placed by the copyright holder saying it may be distributed under the terms of
this General Public License. The "Program", below, refers to any such program or
work, and a "work based on the Program" means either the Program or any
derivative work under copyright law: that is to say, a work containing the
Program or a portion of it, either verbatim or with modifications and/or
translated into another language. (Hereinafter, translation is included without
limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by
this License; they are outside its scope. The act of running the Program is not
restricted, and the output from the Program is covered only if its contents
constitute a work based on the Program (independent of having been made by
running the Program). Whether that is true depends on what the Program does.
**1.** You may copy and distribute verbatim copies of the Program's source code
as you receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice and
disclaimer of warranty; keep intact all the notices that refer to this License
and to the absence of any warranty; and give any other recipients of the Program
a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at
your option offer warranty protection in exchange for a fee.
**2.** You may modify your copy or copies of the Program or any portion of it,
thus forming a work based on the Program, and copy and distribute such
modifications or work under the terms of Section 1 above, provided that you also
meet all of these conditions:
* **a)** You must cause the modified files to carry prominent notices stating
that you changed the files and the date of any change.
* **b)** You must cause any work that you distribute or publish, that in whole
or in part contains or is derived from the Program or any part thereof, to
be licensed as a whole at no charge to all third parties under the terms of
this License.
* **c)** If the modified program normally reads commands interactively when
run, you must cause it, when started running for such interactive use in the
most ordinary way, to print or display an announcement including an
appropriate copyright notice and a notice that there is no warranty (or
else, saying that you provide a warranty) and that users may redistribute
the program under these conditions, and telling the user how to view a copy
of this License. (Exception: if the Program itself is interactive but does
not normally print such an announcement, your work based on the Program is
not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable
sections of that work are not derived from the Program, and can be reasonably
considered independent and separate works in themselves, then this License, and
its terms, do not apply to those sections when you distribute them as separate
works. But when you distribute the same sections as part of a whole which is a
work based on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the entire whole,
and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your
rights to work written entirely by you; rather, the intent is to exercise the
right to control the distribution of derivative or collective works based on the
Program.
In addition, mere aggregation of another work not based on the Program with the
Program (or with a work based on the Program) on a volume of a storage or
distribution medium does not bring the other work under the scope of this
License.
**3.** You may copy and distribute the Program (or a work based on it, under
Section 2) in object code or executable form under the terms of Sections 1 and 2
above provided that you also do one of the following:
* **a)** Accompany it with the complete corresponding machine-readable source
code, which must be distributed under the terms of Sections 1 and 2 above on
a medium customarily used for software interchange; or,
* **b)** Accompany it with a written offer, valid for at least three years, to
give any third party, for a charge no more than your cost of physically
performing source distribution, a complete machine-readable copy of the
corresponding source code, to be distributed under the terms of Sections 1
and 2 above on a medium customarily used for software interchange; or,
* **c)** Accompany it with the information you received as to the offer to
distribute corresponding source code. (This alternative is allowed only for
noncommercial distribution and only if you received the program in object
code or executable form with such an offer, in accord with Subsection b
above.)
The source code for a work means the preferred form of the work for making
modifications to it. For an executable work, complete source code means all the
source code for all modules it contains, plus any associated interface
definition files, plus the scripts used to control compilation and installation
of the executable. However, as a special exception, the source code distributed
need not include anything that is normally distributed (in either source or
binary form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component itself
accompanies the executable.
If distribution of executable or object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the source code
from the same place counts as distribution of the source code, even though third
parties are not compelled to copy the source along with the object code.
**4.** You may not copy, modify, sublicense, or distribute the Program except as
expressly provided under this License. Any attempt otherwise to copy, modify,
sublicense or distribute the Program is void, and will automatically terminate
your rights under this License. However, parties who have received copies, or
rights, from you under this License will not have their licenses terminated so
long as such parties remain in full compliance.
**5.** You are not required to accept this License, since you have not signed
it. However, nothing else grants you permission to modify or distribute the
Program or its derivative works. These actions are prohibited by law if you do
not accept this License. Therefore, by modifying or distributing the Program (or
any work based on the Program), you indicate your acceptance of this License to
do so, and all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
**6.** Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the original
licensor to copy, distribute or modify the Program subject to these terms and
conditions. You may not impose any further restrictions on the recipients'
exercise of the rights granted herein. You are not responsible for enforcing
compliance by third parties to this License.
**7.** If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues), conditions
are imposed on you (whether by court order, agreement or otherwise) that
contradict the conditions of this License, they do not excuse you from the
conditions of this License. If you cannot distribute so as to satisfy
simultaneously your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the Program at all.
For example, if a patent license would not permit royalty-free redistribution of
the Program by all those who receive copies directly or indirectly through you,
then the only way you could satisfy both it and this License would be to refrain
entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply and the
section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or
other property right claims or to contest validity of any such claims; this
section has the sole purpose of protecting the integrity of the free software
distribution system, which is implemented by public license practices. Many
people have made generous contributions to the wide range of software
distributed through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing to
distribute software through any other system and a licensee cannot impose that
choice.
This section is intended to make thoroughly clear what is believed to be a
consequence of the rest of this License.
**8.** If the distribution and/or use of the Program is restricted in certain
countries either by patents or by copyrighted interfaces, the original copyright
holder who places the Program under this License may add an explicit
geographical distribution limitation excluding those countries, so that
distribution is permitted only in or among countries not thus excluded. In such
case, this License incorporates the limitation as if written in the body of this
License.
**9.** The Free Software Foundation may publish revised and/or new versions of
the General Public License from time to time. Such new versions will be similar
in spirit to the present version, but may differ in detail to address new
problems or concerns.
Each version is given a distinguishing version number. If the Program specifies
a version number of this License which applies to it and "any later version",
you have the option of following the terms and conditions either of that version
or of any later version published by the Free Software Foundation. If the
Program does not specify a version number of this License, you may choose any
version ever published by the Free Software Foundation.
**10.** If you wish to incorporate parts of the Program into other free programs
whose distribution conditions are different, write to the author to ask for
permission. For software which is copyrighted by the Free Software Foundation,
write to the Free Software Foundation; we sometimes make exceptions for this.
Our decision will be guided by the two goals of preserving the free status of
all derivatives of our free software and of promoting the sharing and reuse of
software generally.
No Warranty
-----------
**11.** BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE
STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM
"AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
**12.** IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

264
autoconf-macros/LICENSE.md Normal file
View File

@@ -0,0 +1,264 @@
The GNU General Public License, Version 2, June 1991 (GPLv2)
============================================================
> Copyright (C) 1989, 1991 Free Software Foundation, Inc.
> 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies of this license
document, but changing it is not allowed.
Preamble
--------
The licenses for most software are designed to take away your freedom to share
and change it. By contrast, the GNU General Public License is intended to
guarantee your freedom to share and change free software--to make sure the
software is free for all its users. This General Public License applies to most
of the Free Software Foundation's software and to any other program whose
authors commit to using it. (Some other Free Software Foundation software is
covered by the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not price. Our
General Public Licenses are designed to make sure that you have the freedom to
distribute copies of free software (and charge for this service if you wish),
that you receive source code or can get it if you want it, that you can change
the software or use pieces of it in new free programs; and that you know you can
do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny
you these rights or to ask you to surrender the rights. These restrictions
translate to certain responsibilities for you if you distribute copies of the
software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a
fee, you must give the recipients all the rights that you have. You must make
sure that they, too, receive or can get the source code. And you must show them
these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer
you this license which gives you legal permission to copy, distribute and/or
modify the software.
Also, for each author's protection and ours, we want to make certain that
everyone understands that there is no warranty for this free software. If the
software is modified by someone else and passed on, we want its recipients to
know that what they have is not the original, so that any problems introduced by
others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish
to avoid the danger that redistributors of a free program will individually
obtain patent licenses, in effect making the program proprietary. To prevent
this, we have made it clear that any patent must be licensed for everyone's free
use or not licensed at all.
The precise terms and conditions for copying, distribution and modification
follow.
Terms And Conditions For Copying, Distribution And Modification
---------------------------------------------------------------
**0.** This License applies to any program or other work which contains a notice
placed by the copyright holder saying it may be distributed under the terms of
this General Public License. The "Program", below, refers to any such program or
work, and a "work based on the Program" means either the Program or any
derivative work under copyright law: that is to say, a work containing the
Program or a portion of it, either verbatim or with modifications and/or
translated into another language. (Hereinafter, translation is included without
limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by
this License; they are outside its scope. The act of running the Program is not
restricted, and the output from the Program is covered only if its contents
constitute a work based on the Program (independent of having been made by
running the Program). Whether that is true depends on what the Program does.
**1.** You may copy and distribute verbatim copies of the Program's source code
as you receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice and
disclaimer of warranty; keep intact all the notices that refer to this License
and to the absence of any warranty; and give any other recipients of the Program
a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at
your option offer warranty protection in exchange for a fee.
**2.** You may modify your copy or copies of the Program or any portion of it,
thus forming a work based on the Program, and copy and distribute such
modifications or work under the terms of Section 1 above, provided that you also
meet all of these conditions:
* **a)** You must cause the modified files to carry prominent notices stating
that you changed the files and the date of any change.
* **b)** You must cause any work that you distribute or publish, that in whole
or in part contains or is derived from the Program or any part thereof, to
be licensed as a whole at no charge to all third parties under the terms of
this License.
* **c)** If the modified program normally reads commands interactively when
run, you must cause it, when started running for such interactive use in the
most ordinary way, to print or display an announcement including an
appropriate copyright notice and a notice that there is no warranty (or
else, saying that you provide a warranty) and that users may redistribute
the program under these conditions, and telling the user how to view a copy
of this License. (Exception: if the Program itself is interactive but does
not normally print such an announcement, your work based on the Program is
not required to print an announcement.)
These requirements apply to the modified work as a whole. If identifiable
sections of that work are not derived from the Program, and can be reasonably
considered independent and separate works in themselves, then this License, and
its terms, do not apply to those sections when you distribute them as separate
works. But when you distribute the same sections as part of a whole which is a
work based on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the entire whole,
and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your
rights to work written entirely by you; rather, the intent is to exercise the
right to control the distribution of derivative or collective works based on the
Program.
In addition, mere aggregation of another work not based on the Program with the
Program (or with a work based on the Program) on a volume of a storage or
distribution medium does not bring the other work under the scope of this
License.
**3.** You may copy and distribute the Program (or a work based on it, under
Section 2) in object code or executable form under the terms of Sections 1 and 2
above provided that you also do one of the following:
* **a)** Accompany it with the complete corresponding machine-readable source
code, which must be distributed under the terms of Sections 1 and 2 above on
a medium customarily used for software interchange; or,
* **b)** Accompany it with a written offer, valid for at least three years, to
give any third party, for a charge no more than your cost of physically
performing source distribution, a complete machine-readable copy of the
corresponding source code, to be distributed under the terms of Sections 1
and 2 above on a medium customarily used for software interchange; or,
* **c)** Accompany it with the information you received as to the offer to
distribute corresponding source code. (This alternative is allowed only for
noncommercial distribution and only if you received the program in object
code or executable form with such an offer, in accord with Subsection b
above.)
The source code for a work means the preferred form of the work for making
modifications to it. For an executable work, complete source code means all the
source code for all modules it contains, plus any associated interface
definition files, plus the scripts used to control compilation and installation
of the executable. However, as a special exception, the source code distributed
need not include anything that is normally distributed (in either source or
binary form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component itself
accompanies the executable.
If distribution of executable or object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the source code
from the same place counts as distribution of the source code, even though third
parties are not compelled to copy the source along with the object code.
**4.** You may not copy, modify, sublicense, or distribute the Program except as
expressly provided under this License. Any attempt otherwise to copy, modify,
sublicense or distribute the Program is void, and will automatically terminate
your rights under this License. However, parties who have received copies, or
rights, from you under this License will not have their licenses terminated so
long as such parties remain in full compliance.
**5.** You are not required to accept this License, since you have not signed
it. However, nothing else grants you permission to modify or distribute the
Program or its derivative works. These actions are prohibited by law if you do
not accept this License. Therefore, by modifying or distributing the Program (or
any work based on the Program), you indicate your acceptance of this License to
do so, and all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
**6.** Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the original
licensor to copy, distribute or modify the Program subject to these terms and
conditions. You may not impose any further restrictions on the recipients'
exercise of the rights granted herein. You are not responsible for enforcing
compliance by third parties to this License.
**7.** If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues), conditions
are imposed on you (whether by court order, agreement or otherwise) that
contradict the conditions of this License, they do not excuse you from the
conditions of this License. If you cannot distribute so as to satisfy
simultaneously your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the Program at all.
For example, if a patent license would not permit royalty-free redistribution of
the Program by all those who receive copies directly or indirectly through you,
then the only way you could satisfy both it and this License would be to refrain
entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply and the
section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or
other property right claims or to contest validity of any such claims; this
section has the sole purpose of protecting the integrity of the free software
distribution system, which is implemented by public license practices. Many
people have made generous contributions to the wide range of software
distributed through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing to
distribute software through any other system and a licensee cannot impose that
choice.
This section is intended to make thoroughly clear what is believed to be a
consequence of the rest of this License.
**8.** If the distribution and/or use of the Program is restricted in certain
countries either by patents or by copyrighted interfaces, the original copyright
holder who places the Program under this License may add an explicit
geographical distribution limitation excluding those countries, so that
distribution is permitted only in or among countries not thus excluded. In such
case, this License incorporates the limitation as if written in the body of this
License.
**9.** The Free Software Foundation may publish revised and/or new versions of
the General Public License from time to time. Such new versions will be similar
in spirit to the present version, but may differ in detail to address new
problems or concerns.
Each version is given a distinguishing version number. If the Program specifies
a version number of this License which applies to it and "any later version",
you have the option of following the terms and conditions either of that version
or of any later version published by the Free Software Foundation. If the
Program does not specify a version number of this License, you may choose any
version ever published by the Free Software Foundation.
**10.** If you wish to incorporate parts of the Program into other free programs
whose distribution conditions are different, write to the author to ask for
permission. For software which is copyrighted by the Free Software Foundation,
write to the Free Software Foundation; we sometimes make exceptions for this.
Our decision will be guided by the two goals of preserving the free status of
all derivatives of our free software and of promoting the sharing and reuse of
software generally.
No Warranty
-----------
**11.** BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE
STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM
"AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
**12.** IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

199
autoconf-macros/README.md Normal file
View File

@@ -0,0 +1,199 @@
autoconf-macros
===============
The purpose of Nagios autoconf-macros is to have a central place for
autoconf macros that can be maintained in one place, but be used by any
of the Nagios software. It is intended to be used as a git subtree.
See the [Usage](#usage) and [References](#references) sections below.
Since this project will be included in several parent projects, any
changes must be as project-neutral as possible.
Make sure to check out the [CHANGELOG](CHANGELOG.md) for relevant
information, as well.
Contents
--------
The collection consists of the following macros:
### AX_NAGIOS_GET_OS alias AC_NAGIOS_GET_OS
> Output Variable : `opsys`
This macro detects the operating system, and transforms it into a generic
label. The most common OS's that use Nagios software are recognized and
used in subsequent macros.
### AX_NAGIOS_GET_DISTRIB_TYPE alias AC_NAGIOS_GET_DISTRIB_TYPE
> Output Variables : `dist_type`, `dist_ver`
This macro detects the distribution type. For Linux, this would be rh
(for Red Hat and derivatives), suse (OpenSUSE, SLES, derivatives), gentoo
(Gentoo and derivatives), debian (Debian and derivatives), and so on.
For BSD, this would be openbsd, netbsd, freebsd, dragonfly, etc. It can
also be aix, solaris, osx, and so on for Unix operating systems.
### AX_NAGIOS_GET_INIT alias AC_NAGIOS_GET_INIT
> Output Variable : `init_type`
This macro detects what software is used to start daemons on bootup
or on request, generally knows as the "init system". The init_type
will generally be one of sysv (many), bsd (Slackware), newbsd (*BSD),
launchd (OS X), smf10 or smf11 (Solaris), systemd (newer Linux),
gentoo (older Gentoo), upstart (several), or unknown.
### AX_NAGIOS_GET_INETD alias AC_NAGIOS_GET_INETD
> Output Variable : `inetd_type`
This macro detects what software is used to start daemons or services
on demand, which historically has been "inetd". The inetd_type
will generally be one of inetd, xinetd, launchd (OS X), smf10 or smf11
(Solaris), systemd (newer Linux), upstart (several), or unknown.
### AX_NAGIOS_GET_PATHS alias AC_NAGIOS_GET_PATHS
> Output Variables : **many!**
This macro determines the installation paths for binaries, config files,
PID files, and so on. For a "standard" install of Nagios, NRPE, NDO Utils,
etc., most will be in the /usr/local/nagios hierarchy with startup files
located in /etc. For distributions or software repositories, the
"--enable-install-method=os" option can be used. This will determine the
O/S dependent directories, such as /usr/bin, /usr/sbin, /var/lib/nagios,
/usr/lib/nagios, etc. or for OS X, /Library/LaunchDaemons.
### AX_NAGIOS_GET_FILES alias AC_NAGIOS_GET_FILES
> Output Variables : `src_init`, `src_inetd`, `src_tmpfile`
Each Nagios project will have a top-level directory named "/startup/".
In that directory will be "*.in" files for the various "init_type" and
"inetd_type" systems. This macro will determine which file(s) from
that directory will be needed.
### AX_NAGIOS_GET_SSL alias AC_NAGIOS_GET_SSL
> Output Variables : `HAVE_KRB5_H`, `HAVE_SSL`, `SSL_INC_DIR`, `SSL_LIB_DIR`, `CFLAGS`, `LDFLAGS`, `LIBS`
This macro checks various directories for SSL libraries and header files.
The searches are based on known install locations on various operating
systems and distributions, for openssl, gnutls-openssl, and nss_compat_ossl.
If it finds the headers and libraries, it will then do an `AC_LINK_IFELSE`
on a simple program to make sure a compile and link will work correctly.
Usage
-----
This repo is intended to be used as a git subtree, so changes will
automatically propagate, and still be reasonably easy to use.
* First, Create, checkout, clone, or branch your project. If you do an
`ls -AF` it might look something like this:
.git/ .gitignore ChangeLog LICENSE Makefile.in
README configure.ac include/ src/
* Then make a reference to _this_ project inside your project.
git remote add autoconf-macros git@github.com:NagiosEnterprises/autoconf-macros
git subtree add --prefix=macros/ autoconf-macros master
* After executing the above two commands, if you do an `ls -AF` now,
it should look like this:
.git/ .gitignore ChangeLog LICENSE Makefile.in
README configure.ac include/ macros/ src/
* The `macros/` directory has been added.
* Now do a `git push` to save everything.
* If you make any changes to autoconf-macros, commit them separately
from any parent-project changes to keep from polluting the commit
history with unrelated comments.
* To submit your changes to autoconf-macros:
git subtree push --prefix=macros autoconf-macros peters-updates
This will create a new branch called `peters-updates`. You then need to
create a _pull request_ to get your changes merged into autoconf-macros
master.
* To get the latest version of `autoconf-macros` into your parent project:
git subtgree pull --squash --prefix=macros autoconf-macros master
References
----------
Now that autoconf-macros is available to your project, you will need to
reference it.
* Create (or add these lines to) file `YourProject/aclocal.m4`
m4_include([macros/ax_nagios_get_os])
m4_include([macros/ax_nagios_get_distrib])
m4_include([macros/ax_nagios_get_init])
m4_include([macros/ax_nagios_get_inetd])
m4_include([macros/ax_nagios_get_paths])
m4_include([macros/ax_nagios_get_files])
m4_include([macros/ax_nagios_get_ssl])
* In your `YourProject/configure.ac` add the following lines. A good place
to put them would be right after any `AC_PROG_*` entries:
AC_NAGIOS_GET_OS
AC_NAGIOS_GET_DISTRIB_TYPE
AC_NAGIOS_GET_INIT
AC_NAGIOS_GET_INETD
AC_NAGIOS_GET_PATHS
AC_NAGIOS_GET_FILES
* If you need SSL functionality, add the following to `YourProject/configure.ac`
where you want to check for SSL:
AC_NAGIOS_GET_SSL
* You will now be able to reference any of the variables in `config.h.in`
and any files listed in the `AC_CONFIG_FILES` macro in `configure.ac`.
License Notice
--------------
Copyright (c) 2016-2017 Nagios Enterprises, LLC
This work is made available to you under the terms of Version 2 of
the GNU General Public License. A copy of that license should have
been provided with this software, but in any event can be obtained
from http://www.fsf.org.
This work is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 or visit their web page on the internet at
http://www.fsf.org.
Questions?
----------
If you have questions about this addon, or problems getting things
working, first try searching the nagios-users mailing list archives.
Details on searching the list archives can be found at
http://www.nagios.org
If you don't find an answer there, post a message in the Nagios
Plugin Development forum at https://support.nagios.com/forum/viewforum.php?f=35

164
autoconf-macros/add_group_user Executable file
View File

@@ -0,0 +1,164 @@
#!/bin/sh
#----------------------
# Initialize variables
#----------------------
dist="$1"
uid="$2"
gid="$3"
rc=0
#------------------------------------------------------------------
# Determine if the user should be created with a shell environment
# 0 = no shell (more secure)
# 1 = shell (less secure but sometimes required)
#------------------------------------------------------------------
shell=0
if [ $# -eq 4 ]; then
if [ x$4 = x1 ]; then
shell=1
fi
fi
#-------------------------------------
# Check if the specified group exists
#-------------------------------------
group_exists(){
case $dist in
osx) rc=`dscl . -read /Groups/$gid >/dev/null 2>&1; echo $?` ;;
hpux) rc=`grget -n $gid >/dev/null 2>&1; echo $?` ;;
aix) rc=`lsgroup -a $gid >/dev/null 2>&1; echo $?` ;;
*) rc=`getent group $gid > /dev/null 2>&1; echo $?` ;;
esac
echo $rc
}
#------------------------
# Add the specified user
#------------------------
add_user(){
rc=`id "$uid" > /dev/null 2>&1; echo $?`
if test $rc -eq 0; then
echo "User $uid already exists" > /dev/stderr
echo 0
return
fi
case $dist in
aix)
echo useradd -g $gid $uid > /dev/stderr
rc=`useradd -g $gid $uid; echo $?`
;;
hpux)
echo useradd -m -g $gid $uid > /dev/stderr
rc=`useradd -m -g $gid $uid; echo $?`
;;
solaris)
echo useradd -m -d /export/home/$uid -g $gid $uid > /dev/stderr
rc=`useradd -m -d /export/home/$uid -g $gid $uid; echo $?`
;;
osx)
newid=`dscl . -list /Users UniqueID | tr -s ' ' | cut -d' ' -f2 | sort -n | tail -1`
newid=`expr 1 + $newid`
echo dscl . -create /Users/$uid > /dev/stderr
dscl . -create /Users/$uid
echo dscl . -create /Users/$uid UniqueID $newid > /dev/stderr
dscl . -create /Users/$uid UniqueID $newid
if [ $shell = 0 ]; then
echo dscl . -create /Users/$uid UserShell /usr/bin/false > /dev/stderr
dscl . -create /Users/$uid UserShell /usr/bin/false
fi
echo dscl . -create /Users/$uid PrimaryGroupID 20 > /dev/stderr
dscl . -create /Users/$uid PrimaryGroupID 20
echo dscl . -append /Groups/$gid GroupMembership $uid > /dev/stderr
rc=`dscl . -append /Groups/$gid GroupMembership $uid; echo $?`
;;
freebsd)
if [ $shell = 0 ]; then
echo pw add user $uid -g $gid -s /usr/bin/false > /dev/stderr
rc=`pw add user $uid -g $gid -s /usr/bin/false; echo $?`
else
echo pw add user $uid -g $gid > /dev/stderr
rc=`pw add user $uid -g $gid; echo $?`
fi
;;
netbsd|openbsd)
echo useradd -g $gid $uid > /dev/stderr
rc=`useradd -g $gid $uid; echo $?`
;;
*)
if [ $shell = 0 ]; then
echo useradd -r -g $gid $uid > /dev/stderr
rc=`useradd -r -g $gid $uid; echo $?`
else
echo useradd -g $gid $uid > /dev/stderr
rc=`useradd -g $gid $uid; echo $?`
fi
;;
esac
echo $rc
}
#-------------------------
# Add the specified group
#-------------------------
add_group(){
rc=`group_exists`
if test $rc -eq 0; then
echo "Group $gid already exists" > /dev/stderr
echo 0
return
fi
case $dist in
aix)
echo mkgroup $gid > /dev/stderr
rc=`mkgroup "$gid"; echo $?`
;;
hpux|solaris)
echo groupadd $gid > /dev/stderr
rc=`groupadd "$gid"; echo $?`
;;
osx)
newid=`dscl . -list /Groups gid | tr -s ' ' | cut -d' ' -f2 | sort -n | tail -1`
newid=`expr 1 + $newid`
echo dscl . -create /Groups/$gid gid $newid > /dev/stderr
rc=`dscl . -create /Groups/$gid gid $newid; echo $?`
;;
freebsd)
echo pw add group $gid > /dev/stderr
rc=`pw add group $gid; echo $?`
;;
netbsd|openbsd)
echo groupadd $gid > /dev/stderr
rc=`groupadd $gid; echo $?`
;;
*)
echo groupadd -r $gid > /dev/stderr
rc=`groupadd -r $gid; echo $?`
;;
esac
echo $rc
}
rc=`add_group`
if test $rc -ne 0; then
exit 1;
fi
rc=`add_user`
exit $rc

View File

@@ -0,0 +1,160 @@
# ===========================================================================
# SYNOPSIS
#
# AX_NAGIOS_GET_DISTRIB_TYPE
#
# DESCRIPTION
#
# This macro determines the O/S distribution of the computer it is run on.
# $dist_type will be set and will be one of:
# unknown (could not be determined)
# freebsd, netbsd, openbsd, dragonfly, etc (The BSDs)
# suse, rh, debian, gentoo (and possibly their descendants)
# Other major Linux distributions (and possibly their descendants)
# The O/S name for the rest
#
# LICENSE
#
# Copyright (c) 2016 Nagios Core Development Team
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
# Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
# ===========================================================================
AU_ALIAS([AC_NAGIOS_GET_DISTRIB_TYPE], [AX_NAGIOS_GET_DISTRIB_TYPE])
AC_DEFUN([AX_NAGIOS_GET_DISTRIB_TYPE],
[
AC_SUBST(dist_type)
AC_SUBST(dist_ver)
#
# Get user hints for possible cross-compile
#
AC_MSG_CHECKING(what the distribution type is )
AC_ARG_WITH(dist-type, AS_HELP_STRING([--with-dist-type=type],
[specify distribution type (suse, rh, debian, etc.)]),
[
#
# Run this if --with was specified
#
if test "x$withval" = x -o x$withval = xno; then
dist_type_wanted=yes
else
dist_type_wanted=no
dist_type="$withval"
dist_ver="unknown"
AC_MSG_RESULT($dist_type)
fi
], [
#
# Run this if --with was not specified
#
dist_type_wanted=yes
])
if test x$dist_type = xno; then
dist_type_wanted=yes
elif test x$dist_type = xyes; then
AC_MSG_ERROR([you must enter a distribution type if '--with-dist-type' is specified])
fi
#
# Determine distribution type if it wasn't supplied
#
dist_ver="unknown"
if test $dist_type_wanted=yes; then
dist_type="unknown"
if test "$opsys" != "linux"; then
dist_type="$opsys"
AS_CASE([$opsys],
[bsd],
dist_type=`uname -s | tr ["[A-Z]" "[a-z]"]`
dist_ver=`uname -r`,
[aix],
dist_ver="`uname -v`.`uname -r`",
[hp-ux],
dist_ver=`uname -r | cut -d'.' -f1-3`,
[solaris],
dist_ver=`uname -r | cut -d'.' -f2`,
[*],
dist_ver=$OSTYPE
)
else
if test -r "/etc/gentoo-release"; then
dist_type="gentoo"
dist_ver=`cat /etc/gentoo-release`
elif test -r "/etc/os-release"; then
. /etc/os-release
if test x"$ID_LIKE" != x; then
dist_type=`echo $ID_LIKE | cut -d' ' -f1 | tr ["[A-Z]" "[a-z]"]`
elif test x"$ID" = xol; then
dist_type=rh
else
dist_type=`echo $ID | tr ["[A-Z]" "[a-z]"]`
fi
if test x"$dist_type" = sles; then
dist_type=suse
fi
if test x"$VERSION_ID" != x; then
dist_ver=$VERSION_ID
elif test x"$VERSION" != x; then
dist_ver=`echo $VERSION | cut -d'.' -f1 | tr -d [:alpha:][:blank:][:punct:]`
fi
elif test -r "/etc/redhat-release"; then
dist_type=rh
dist_ver=`cat /etc/redhat-release`
elif test -r "/etc/debian_version"; then
dist_type="debian"
if test -r "/etc/lsb-release"; then
. /etc/lsb-release
dist_ver=`echo "$DISTRIB_RELEASE"`
else
dist_ver=`cat /etc/debian_version`
fi
elif test -r "/etc/SuSE-release"; then
dist_type=suse
dist_ver=`grep VERSION /etc/SuSE-release`
fi
fi
if test "$dist_ver" != "unknown"; then
dist_ver=`echo "$dist_ver" | cut -d'.' -f1 | tr -d [:alpha:][:blank:][:punct:]`
fi
fi
AC_MSG_RESULT($dist_type)
])

View File

@@ -0,0 +1,131 @@
# ===========================================================================
# SYNOPSIS
#
# AX_NAGIOS_GET_FILES
#
# DESCRIPTION
#
# This macro figures out which init and/or inetd files to use based
# on the results of the AX_NAGIOS_GET_OS, AX_NAGIOS_GET_DISTRIB_TYPE,
# AX_NAGIOS_GET_INIT and AX_NAGIOS_GET_INETD macros. It will select
# the appropriate files(s) from the 'startup' directory and copy it.
#
# LICENSE
#
# Copyright (c) 2016 Nagios Core Development Team
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
# Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
# ===========================================================================
AU_ALIAS([AC_NAGIOS_GET_FILES], [AX_NAGIOS_GET_FILES])
AC_DEFUN([AX_NAGIOS_GET_FILES],
[
AC_SUBST(src_init)
AC_SUBST(src_inetd)
AC_SUBST(src_tmpfile)
AC_SUBST(bsd_enable)
src_inetd=""
src_init=""
bsd_enable=""
AC_MSG_CHECKING(for which init file to use )
AS_CASE([$init_type],
[sysv],
src_init=default-init,
[systemd],
src_tmpfile=tmpfile.conf
src_init=default-service,
[bsd],
src_init=bsd-init,
[newbsd],
if test $dist_type = freebsd ; then
bsd_enable="_enable"
src_init=default-init
elif test $dist_type = openbsd ; then
bsd_enable="_flags"
src_init=openbsd-init
elif test $dist_type = netbsd ; then
bsd_enable=""
src_init=newbsd-init
fi,
# [gentoo],
[openrc],
src_init=openrc-init,
[smf*],
src_init="solaris-init.xml"
src_inetd="solaris-inetd.xml",
[upstart],
if test $dist_type = rh ; then
src_init=rh-upstart-init
else
src_init=upstart-init
fi,
[launchd],
src_init="mac-init.plist",
[*],
src_init="unknown"
)
AC_MSG_RESULT($src_init)
AC_MSG_CHECKING(for which inetd files to use )
if test x$src_inetd = x; then
AS_CASE([$inetd_type],
[inetd*],
src_inetd=default-inetd,
[xinetd],
src_inetd=default-xinetd,
[systemd],
src_inetd=default-socket,
[launchd],
src_inetd="mac-inetd.plist",
[*],
src_inetd="unknown"
)
fi
AC_MSG_RESULT($src_inetd)
])

View File

@@ -0,0 +1,200 @@
# ===========================================================================
# SYNOPSIS
#
# AX_NAGIOS_GET_INIT
#
# DESCRIPTION
#
# This macro determines the O/S distribution of the computer it is run on.
# $init_type will be set and will be one of:
# unknown (could not be determined)
# launchd (Mac OS X)
# bsd (Slackware Linux)
# newbsd (FreeBSD, OpenBSD, NetBSD, Dragonfly, etc)
# smf10 (Solaris)
# smf11 (Solaris)
# systemd (Linux SystemD)
# gentoo (Older Gentoo)
# openrc (Recent Gentoo and some others)
# upstart (Older Debian)
# sysv (The rest)
#
# LICENSE
#
# Copyright (c) 2016 Nagios Core Development Team
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
# Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
# ===========================================================================
AU_ALIAS([AC_NAGIOS_GET_INIT], [AX_NAGIOS_GET_INIT])
AC_DEFUN([AX_NAGIOS_GET_INIT],
[
AC_SUBST(init_type)
#
# Get user hints for possible cross-compile
#
AC_MSG_CHECKING(what init system is being used )
AC_ARG_WITH(init_type,AS_HELP_STRING([--with-init-type=type],
[specify init type (bsd, sysv, systemd, launchd, smf10, smf11, upstart,
openrc, etc.)]),
[
#
# Run this if --with was specified
#
if test "x$withval" = x -o x$withval = xno; then
init_type_wanted=yes
else
init_type_wanted=no
init_type="$withval"
AC_MSG_RESULT($init_type)
fi
], [
#
# Run this if --with was not specified
#
init_type_wanted=yes
])
if test x$init_type = xno; then
init_type_wanted=yes
elif test x$init_type = xyes; then
AC_MSG_ERROR([you must enter an init type if '--with-init-type' is specified])
fi
#
# Determine init type if it wasn't supplied
#
if test $init_type_wanted = yes; then
init_type=""
if test x"$opsys" = x; then
init_type="unknown"
init_type_wanted=no
elif test x"$dist_type" = x; then
init_type="unknown"
init_type_wanted=no
elif test "$opsys" = "osx"; then
init_type="launchd"
init_type_wanted=no
elif test "$opsys" = "bsd"; then
init_type="newbsd"
init_type_wanted=no
elif test "$dist_type" = "solaris"; then
if test -d "/lib/svc/manifest"; then
init_type="smf11"
init_type_wanted=no
elif test -d "/lib/svc/monitor"; then
init_type="smf10"
init_type_wanted=no
else
init_type="sysv"
init_type_wanted=no
fi
elif test "$dist_type" = "slackware"; then
init_type="bsd"
init_type_wanted=no
elif test "$dist_type" = "aix"; then
init_type="bsd"
init_type_wanted=no
elif test "$dist_type" = "hp-ux"; then
init_type="unknown"
init_type_wanted=no
fi
fi
PSCMD="ps -p1 -o args"
if test $dist_type = solaris; then
PSCMD="env UNIX95=1; ps -p1 -o args"
fi
if test "$init_type_wanted" = yes; then
pid1=`$PSCMD | grep -vi COMMAND | cut -d' ' -f1`
if test x"$pid1" = "x"; then
init_type="unknown"
init_type_wanted=no
fi
if `echo $pid1 | grep "systemd" > /dev/null`; then
init_type="systemd"
init_type_wanted=no
fi
if test "$init_type_wanted" = yes; then
if test "$pid1" = "init"; then
if test -e "/sbin/init"; then
pid1="/sbin/init";
elif test -e "/usr/sbin/init"; then
pid1="/usr/sbin/init"
else
init_type="unknown"
init_type_wanted=no
fi
fi
if test -L "$pid1"; then
pid1=`readlink "$pid1"`
fi
fi
if test "$init_type_wanted" = yes; then
if `echo $pid1 | grep "systemd" > /dev/null`; then
init_type="systemd"
init_type_wanted=no
elif test -f "/sbin/rc"; then
if test -f /sbin/runscript; then
init_type_wanted=no
if `/sbin/start-stop-daemon -V | grep "OpenRC" > /dev/null`; then
init_type="openrc"
else
init_type="gentoo"
fi
fi
fi
fi
if test "$init_type_wanted" = yes; then
if test "$pid1" = "/sbin/init" -o "$pid1" = "/usr/sbin/init"; then
if `$pid1 --version 2>/dev/null | grep "upstart" >/dev/null`; then
init_type="upstart"
init_type_wanted=no
elif test -f "/etc/rc" -a ! -L "/etc/rc"; then
init_type="newbsd"
init_type_wanted=no
else
init_type="sysv"
init_type_wanted=no
fi
fi
fi
if test "$init_type_wanted" = yes; then
init_type="unknown"
fi
fi
AC_MSG_RESULT($init_type)
])

View File

@@ -0,0 +1,101 @@
# ===========================================================================
# SYNOPSIS
#
# AX_NAGIOS_GET_OS
#
# DESCRIPTION
#
# This macro determines the operating system of the computer it is run on.
#
# LICENSE
#
# Copyright (c) 2016 Nagios Core Development Team
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
# Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
# ===========================================================================
AU_ALIAS([AC_NAGIOS_GET_OS], [AX_NAGIOS_GET_OS])
AC_DEFUN([AX_NAGIOS_GET_OS],
[
AC_SUBST(opsys)
AC_SUBST(arch)
#
# Get user hints
#
AC_MSG_CHECKING(what the operating system is )
AC_ARG_WITH(opsys, AS_HELP_STRING([--with-opsys=OS],
[specify operating system (linux, osx, bsd, solaris, irix, cygwin,
aix, hp-ux, etc.)]),
[
#
# Run this if --with was specified
#
if test "x$withval" = x -o x$withval = xno; then
opsys_wanted=yes
else
opsys_wanted=no
opsys="$withval"
AC_MSG_RESULT($opsys)
fi
], [
#
# Run this if --with was not specified
#
opsys_wanted=yes
])
if test x$opsys = xno; then
opsys=""
opsys_wanted=yes
elif test x$opsys = xyes; then
AC_MSG_ERROR([you must enter an O/S type if '--with-opsys' is specified])
fi
#
# Determine operating system if it wasn't supplied
#
if test $opsys_wanted=yes; then
opsys=`uname -s | tr ["[A-Z]" "[a-z]"]`
if test x"$opsys" = "x"; then opsys="unknown"; fi
AS_CASE([$opsys],
[darwin*], opsys="osx",
[*bsd*], opsys="bsd",
[dragonfly], opsys="bsd",
[sunos], opsys="solaris",
[gnu/hurd], opsys="linux",
[irix*], opsys="irix",
[cygwin*], opsys="cygwin",
[mingw*], opsys="mingw",
[msys*], opsys="msys")
fi
arch=`uname -m | tr ["[A-Z]" "[a-z]"]`
AC_MSG_RESULT($opsys)
])

View File

@@ -0,0 +1,783 @@
# ===========================================================================
# SYNOPSIS
#
# AX_NAGIOS_GET_PATHS
#
# DESCRIPTION
#
# This macro figures out the installation & run paths for various systems
# The argument are:
# the O/S determined by the AX_NAGIOS_GET_OS macro.
# the distribution type as determined by AX_NAGIOS_GET_DISTRIB_TYPE
# the init type as determined by AX_NAGIOS_GET_INIT
# the inetd type as determined by AX_NAGIOS_GET_INETD
#
# LICENSE
#
# Copyright (c) 2016 Nagios Core Development Team
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
# Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see <http://www.gnu.org/licenses/>.
#
# As a special exception, the respective Autoconf Macro's copyright owner
# gives unlimited permission to copy, distribute and modify the configure
# scripts that are the output of Autoconf when processing the Macro. You
# need not follow the terms of the GNU General Public License when using
# or distributing such scripts, even though portions of the text of the
# Macro appear in them. The GNU General Public License (GPL) does govern
# all other use of the material that constitutes the Autoconf Macro.
#
# This special exception to the GPL applies to versions of the Autoconf
# Macro released by the Autoconf Archive. When you make and distribute a
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
# ===========================================================================
AU_ALIAS([AC_NAGIOS_GET_PATHS], [AX_NAGIOS_GET_PATHS])
AC_DEFUN([AX_NAGIOS_GET_PATHS],
[
AC_SUBST(pkgsysconfdir)
AC_SUBST(objsysconfdir)
AC_SUBST(initname)
AC_SUBST(inetdname)
AC_SUBST(pluginsdir)
AC_SUBST(brokersdir)
AC_SUBST(cgibindir)
AC_SUBST(webdir)
AC_SUBST(privatesysconfdir)
AC_SUBST(pkglocalstatedir)
AC_SUBST(logdir)
AC_SUBST(piddir)
AC_SUBST(pipedir)
AC_SUBST(spooldir)
AC_SUBST(initdir)
AC_SUBST(initdiroverridden)
AC_SUBST(inetddir)
AC_SUBST(tmpfilesd)
AC_SUBST(subsyslockdir)
AC_SUBST(subsyslockfile)
if test x$DBG_PATHS != x; then
echo
echo Incoming paths:
echo " prefix $prefix"
echo " exec_prefix $exec_prefix"
echo " bindir $bindir"
echo " libexecdir $libexecdir"
echo " sysconfdir $sysconfdir"
echo " localstatedir $localstatedir"
echo " datarootdir $datarootdir"
echo " datadir $datadir"
echo " localedir $localedir"
echo
fi
AC_MSG_CHECKING(for which paths to use )
AC_ARG_ENABLE(install_method,
AS_HELP_STRING([--enable-install-method=<method>],
[sets the install method to use: 'default' (the default) will install to
/usr/local/nagios, 'os' will try to determine which method to use based
on OS type and distribution. Fine tuning using the '--bindir', etc.
overrides above will still work]),
install_method=$enableval,
install_method=default
)
AC_ARG_ENABLE(showdirs_only,
AS_HELP_STRING([--enable-showdirs-only=yes],
[This option will cause 'configure' to stop after determining the install
locations based on '--enable-install-method', so you can see the
destinations before a full './configure', 'make', 'make install'
process.]),
showdirs_only=$enableval,
showdirs_only=no
)
AS_CASE([$install_method],
[yes], install_method="os",
[no], install_method="default",
[default|os], :,
[*], echo >&6; AC_MSG_ERROR(['--enable-install-method=$install_method' is invalid])
)
if test $showdirs_only != "no"; then showdirs_only="yes"; fi
AS_CASE([$dist_type],
[*solaris*|*hp-ux*|*aix*|*osx*], opsys=unix)
# Does this package need to know:
need_cgi=no # where the cgi-bin directory is
need_web=no # where the website directory is
need_brk=no # where the event broker modules directory is
need_plg=no # where the plugins directory is
need_pipe=no # where the pipe directory is
need_spl=no # where the spool directory is
need_loc=no # where the locale directory is
need_log_subdir=no # where the loc sub-directory is
need_etc_subdir=no # where the etc sub-directory is
need_pls_dir=no # where the package locate state directory is
if test x"$INIT_PROG" = x; then
INIT_PROG="$PKG_NAME"
fi
AS_CASE([$PKG_NAME],
[nagios],
need_log_subdir=yes
need_etc_subdir=yes
need_pls_dir=yes
need_brk=yes
need_pipe=yes
need_spl=yes
need_loc=yes
need_cgi=yes
need_web=yes,
[ndoutils],
need_brk=yes
need_spl=yes,
[nrpe],
need_plg=yes,
[nsca],
need_cgi=no,
[plugins],
need_loc=yes
need_plg=yes
)
AC_ARG_WITH(pkgsysconfdir, AS_HELP_STRING([--with-pkgsysconfdir=DIR],
[where configuration files should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
pkgsysconfdir="$withval"
fi)
AC_ARG_WITH(objsysconfdir, AS_HELP_STRING([--with-objsysconfdir=DIR],
[where object configuration files should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
objsysconfdir="$withval"
fi)
AC_ARG_WITH(privatesysconfdir, AS_HELP_STRING([--with-privatesysconfdir=DIR],
[where private configuration files should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
privatesysconfdir="$withval"
fi)
AC_ARG_WITH(webdir, AS_HELP_STRING([--with-webdir=DIR],
[where the website files should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
webdir="$withval"
fi)
AC_ARG_WITH(pluginsdir, AS_HELP_STRING([--with-pluginsdir=DIR],
[where the plugins should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
pluginsdir="$withval"
fi)
AC_ARG_WITH(brokersdir, AS_HELP_STRING([--with-brokersdir=DIR],
[where the broker modules should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
brokersdir="$withval"
fi)
AC_ARG_WITH(cgibindir, AS_HELP_STRING([--with-cgibindir=DIR],
[where the CGI programs should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
cgibindir="$withval"
fi)
AC_ARG_WITH(logdir, AS_HELP_STRING([--with-logdir=DIR],
[where log files should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
logdir="$withval"
fi)
AC_ARG_WITH(piddir, AS_HELP_STRING([--with-piddir=DIR],
[where the PID file should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
piddir="$withval"
fi)
AC_ARG_WITH(pipedir, AS_HELP_STRING([--with-pipedir=DIR],
[where socket and pipe files should be placed]),
if test x$withval != x -a x$withval != xno -a x$withval != xyes; then
pipedir="$withval"
fi)
#
# Setup the base directory
#
if test $install_method = "default"; then
if test $opsys = "unix"; then
if test x"$prefix" = "xNONE"; then prefix="/usr/local/nagios"; fi
else
if test x"$prefix" = "xNONE"; then prefix=${ac_default_prefix}; fi
fi
datarootdir=${datarootdir="$prefix"}
else
if test x"$datadir" = x'${datarootdir}'; then AS_UNSET(datadir); fi
if test x"$sysconfdir" = x'${prefix}/etc'; then AS_UNSET(sysconfdir); fi
if test x"$prefix" = "xNONE"; then
if test $dist_type = freebsd -o $dist_type = openbsd -o $dist_type = osx; then
prefix="/usr/local"
elif test $dist_type = netbsd; then
prefix="/usr/pkg"
else
prefix="/usr"
fi
fi
if test x"$exec_prefix" = "xNONE"; then exec_prefix=$prefix; fi
if test x"$localstatedir" = x'${prefix}/var'; then
if test $dist_type = "osx"; then
localstatedir="/private/var"
else
localstatedir="/var"
fi
fi
if test $opsys = "unix"; then
if test x"$datarootdir" = x'${prefix}/share'; then
if test $dist_type = "hp-ux"; then
datarootdir="/usr/local/share"
if test x"$libexecdir" = x'${exec_prefix}/libexec'; then
libexecdir="/usr/nagios"
fi
elif test $dist_type = "osx"; then
datarootdir="/usr/local/share"
if test x"$libexecdir" = x'${exec_prefix}/libexec'; then
libexecdir="/usr/local/nagios"
fi
elif test x"$libexecdir" = x'${exec_prefix}/libexec'; then
libexecdir="/usr/lib/nagios"
fi
fi
if test $dist_type = "osx"; then
if test x"$libexecdir" = x'${exec_prefix}/libexec'; then
libexecdir="/usr/local/libexec/nagios"
fi
fi
elif test $opsys = "bsd"; then
if test x"$libexecdir" = x'${exec_prefix}/libexec'; then
libexecdir=${exec_prefix}/libexec/nagios;
fi
elif test x"$libexecdir" = x'${exec_prefix}/lib'; then
libexecdir=${libexecdir}/nagios;
elif test x"$libexecdir" = x'${exec_prefix}/libexec'; then
libexecdir=${exec_prefix}/lib/nagios;
fi
fi
if test x"$exec_prefix" = "xNONE"; then exec_prefix=${prefix}; fi
tmpfilesd=${tmpfilesd="/usr/lib/tmpfiles.d"}
if test ! -d "$tmpfilesd"; then
tmpfilesd="N/A"
else
tmpfilesd="$tmpfilesd/$INIT_PROG.conf"
fi
subsyslockdir=${subsyslockdir="/run"}
if test ! -d "$subsyslockdir"; then
subsyslockdir="N/A"
subsyslockfile="N/A"
else
subsyslockfile="$subsyslockdir/$INIT_PROG.lock"
fi
if test "$need_loc" = no; then
localedir="N/A"
fi
if test $install_method = "default" ; then
#
# Do the default setup
#
datadir=${datadir="$datarootdir"}
if test $need_web = yes; then
webdir=${webdir="$datadir"}
else
webdir="N/A"
fi
if test $opsys = "unix"; then
sysconfdir=${sysconfdir="/etc/opt"}
fi
pkgsysconfdir=${pkgsysconfdir="$sysconfdir"}
if test $need_etc_subdir = yes; then
objsysconfdir=${objsysconfdir="$pkgsysconfdir/objects"}
else
objsysconfdir="N/A"
fi
privatesysconfdir=${privatesysconfdir="$pkgsysconfdir"}
logdir=${logdir="$localstatedir"}
piddir=${piddir="$localstatedir"}
if test "$need_pipe" = yes; then
pipedir=${pipedir="$localstatedir/rw"}
else
pipedir="N/A"
fi
if test "$need_pls_dir" = yes; then
pkglocalstatedir=${pkglocalstatedir="$localstatedir"}
else
pkglocalstatedir="N/A"
fi
if test "$need_spl" = yes; then
spooldir=${spooldir="$localstatedir/var"}
else
spooldir="N/A"
fi
if test $need_brk = yes; then
brokersdir=${brokersdir="$bindir"}
else
brokersdir="N/A"
fi
if test $need_plg = yes; then
pluginsdir=${pluginsdir="$libexecdir"}
else
pluginsdir="N/A"
fi
if test $need_cgi = yes; then
cgibindir=${cgibindir="$prefix/sbin"}
else
cgibindir="N/A"
fi
elif test $opsys = "linux"; then
#
# Linux "Standard" install
#
install_method="$install_method : FHS"
datadir=${datadir="$datarootdir/nagios"}
if test $need_web = yes; then
webdir=${webdir="$datadir/html"}
else
webdir="N/A"
fi
sysconfdir=${sysconfdir="/etc"}
pkgsysconfdir=${pkgsysconfdir="$sysconfdir/nagios"}
if test $need_etc_subdir = yes; then
objsysconfdir=${objsysconfdir="$pkgsysconfdir/objects"}
else
objsysconfdir="N/A"
fi
privatesysconfdir=${privatesysconfdir="$pkgsysconfdir/private"}
if test $need_log_subdir = yes; then
logdir=${logdir="$localstatedir/log/$INIT_PROG"}
else
logdir=${logdir="$localstatedir/log"}
fi
piddir=${piddir="$localstatedir/run/${INIT_PROG}"}
if test "$need_pipe" = yes; then
pipedir=${pipedir="$localstatedir/run/${INIT_PROG}"}
else
pipedir="N/A"
fi
if test "$need_pls_dir" = yes; then
pkglocalstatedir=${pkglocalstatedir="$localstatedir/lib/$INIT_PROG"}
else
pkglocalstatedir="N/A"
fi
if test "$need_spl" = yes; then
spooldir=${spooldir="$localstatedir/spool/$INIT_PROG"}
else
spooldir="N/A"
fi
if test $need_brk = yes; then
brokersdir=${brokersdir="$libexecdir/brokers"}
else
brokersdir="N/A"
fi
if test $need_plg = yes; then
pluginsdir=${pluginsdir="$libexecdir/plugins"}
else
pluginsdir="N/A"
fi
if test $need_cgi = yes; then
cgibindir=${cgibindir="$libexecdir/cgi-bin"}
else
cgibindir="N/A"
fi
elif test $opsys = "unix"; then
#
# "Standard" Unix install
#
install_method="$install_method : Unix Standard"
if test $dist_type = osx; then
install_method="$install_method : OS X Standard"
fi
datadir=${datadir="$datarootdir/nagios"}
if test $need_web = yes; then
webdir=${webdir="$datadir/html"}
else
webdir="N/A"
fi
if test $dist_type = osx; then
sysconfdir=${sysconfdir="/private/etc"}
else
sysconfdir=${sysconfdir="/etc"}
fi
pkgsysconfdir=${pkgsysconfdir="$sysconfdir/nagios"}
if test $need_etc_subdir = yes; then
objsysconfdir=${objsysconfdir="$pkgsysconfdir/objects"}
else
objsysconfdir="N/A"
fi
privatesysconfdir=${privatesysconfdir="$pkgsysconfdir/private"}
if test "$need_pls_dir" = yes; then
pkglocalstatedir=${pkglocalstatedir="$localstatedir/lib/$INIT_PROG"}
else
pkglocalstatedir="N/A"
fi
if test "$need_loc" = yes; then
localedir=${localedir="/usr/local/share/locale/<lang>/LC_MESSAGES/nagios-plugins.mo"}
fi
if test "$need_spl" = yes; then
spooldir=${spooldir="$localstatedir/spool/$INIT_PROG"}
else
spooldir="N/A"
fi
if test $need_brk = yes; then
brokersdir=${brokersdir="$libexecdir/brokers"}
else
brokersdir="N/A"
fi
if test $need_plg = yes; then
pluginsdir=${pluginsdir="$libexecdir/plugins"}
else
pluginsdir="N/A"
fi
if test $need_cgi = yes; then
cgibindir=${cgibindir="$libexecdir/cgi-bin"}
else
cgibindir="N/A"
fi
AS_CASE([$dist_type],
[*hp-ux*],
piddir=${piddir="$pkgsysconfdir"}
pipedir=${pipedir="$pkglocalstatedir"}
logdir=${logdir="$pkglocalstatedir/log"},
[*],
piddir=${piddir="$localstatedir/run/${INIT_PROG}"}
if test "$need_pipe" = yes; then
pipedir=${pipedir="$localstatedir/run/${INIT_PROG}"}
else
pipedir="N/A"
fi
if test $need_log_subdir = yes; then
logdir=${logdir="$localstatedir/log/$INIT_PROG"}
else
logdir=${logdir="$localstatedir/log"}
fi
)
elif test $opsys = "bsd"; then
#
# "Standard" BSD install
#
install_method="$install_method : BSD"
if test $dist_type = freebsd -o $dist_type = openbsd; then
prefix=${prefix="/usr/local"}
exec_prefix=${exec_prefix="/usr/local"}
if test $dist_type = freebsd; then
install_method="$install_method : FreeBSD"
else
install_method="$install_method : OpenBSD"
fi
elif test $dist_type = netbsd; then
prefix=${prefix="/usr/pkg"}
exec_prefix=${exec_prefix="/usr/pkg"}
install_method="$install_method : NetBSD"
fi
datadir=${datadir="$datarootdir/nagios"}
if test $need_web = yes -o $need_cgi = yes; then
if test $dist_type = freebsd; then
webdir=${webdir="$prefix/www/nagios"}
elif test $dist_type = netbsd; then
webdir=${webdir="$prefix/share/nagios"}
elif test $dist_type = openbsd; then
webdir=${webdir="/var/www/nagios"}
fi
else
webdir="N/A"
fi
if test $dist_type = freebsd; then
sysconfdir=${sysconfdir="/usr/local/etc"}
else
sysconfdir=${sysconfdir="/etc"}
fi
pkgsysconfdir=${pkgsysconfdir="$sysconfdir/nagios"}
if test $need_etc_subdir = yes; then
objsysconfdir=${objsysconfdir="$pkgsysconfdir/objects"}
else
objsysconfdir="N/A"
fi
privatesysconfdir=${privatesysconfdir="$pkgsysconfdir/private"}
if test "$need_pls_dir" = yes; then
pkglocalstatedir=${pkglocalstatedir="$localstatedir/lib/$INIT_PROG"}
else
pkglocalstatedir="N/A"
fi
if test "$need_loc" = yes; then
localedir=${localedir="/usr/local/share/locale/<lang>/LC_MESSAGES/nagios-plugins.mo"}
fi
if test "$need_spl" = yes; then
spooldir=${spooldir="$localstatedir/spool/$INIT_PROG"}
else
spooldir="N/A"
fi
if test $need_brk = yes; then
brokersdir=${brokersdir="$libexecdir/brokers"}
else
brokersdir="N/A"
fi
if test $need_plg = yes; then
pluginsdir=${pluginsdir="$libexecdir/plugins"}
else
pluginsdir="N/A"
fi
if test $need_cgi = yes; then
if test $dist_type = freebsd; then
cgibindir=${cgibindir="$webdir/cgi-bin"}
elif test $dist_type = netbsd; then
cgibindir=${pluginsdir="$libexecdir/cgi-bin"}
elif test $dist_type = openbsd; then
cgibindir=${pluginsdir="/var/www/cgi-bin/nagios"}
fi
else
cgibindir="N/A"
fi
piddir=${piddir="$localstatedir/run/${INIT_PROG}"}
if test "$need_pipe" = yes; then
pipedir=${pipedir="$localstatedir/run/${INIT_PROG}"}
else
pipedir="N/A"
fi
if test $need_log_subdir = yes; then
logdir=${logdir="$localstatedir/log/$INIT_PROG"}
else
logdir=${logdir="$localstatedir/log"}
fi
else
#
# Unknown install
#
install_method="unknown"
webdir=unknown
pkgsysconfdir=unknown
objsysconfdir=unknown
privatesysconfdir=unknown
logdir=unknown
piddir=unknown
pipedir=unknown
pkglocalstatedir=unknown
spooldir=unknown
brokersdir=unknown
pluginsdir=unknown
cgibindir=unknown
fi
eval prefix=$prefix
eval exec_prefix=$exec_prefix
eval bindir=$bindir
eval datarootdir=$datarootdir
eval datadir=$datadir
eval libexecdir=$libexecdir
eval brokersdir=$brokersdir
eval pluginsdir=$pluginsdir
eval cgibindir=$cgibindir
eval localstatedir=$localstatedir
eval pkglocalstatedir=$pkglocalstatedir
eval webdir=$webdir
eval localedir=$localedir
eval sysconfdir=$sysconfdir
eval pkgsysconfdir=$pkgsysconfdir
eval piddir=$piddir
# We test systemd first because in case
# someone tries to install Nagios on a
# system with a newer version, that doesn't
# have the defined versions ..we can just
# (hopefully) fall back to SysV
# And if that doesn't work, well...
AS_CASE([$init_type],
[systemd],
if test -d "/lib/systemd/system"; then
initdir=${initdir="/lib/systemd/system"}
elif test -d "/usr/lib/systemd/system"; then
initdir=${initdir="/usr/lib/systemd/system"}
elif test -d "/usr/local/lib/systemd/system"; then
initdir=${initdir="/usr/local/lib/systemd/system"}
elif test -d "/run/systemd/system"; then
initdir=${initdir="/run/systemd/system"}
elif test -d "/etc/systemd/system"; then
initdir=${initdir="/etc/systemd/system"}
elif test -d "/etc/systemd/user"; then
initdir=${initdir="/etc/systemd/user"}
elif test -d "/run/systemd/user"; then
initdir=${initdir="/run/systemd/user"}
elif test -d "/usr/lib/systemd/user"; then
initdir=${initdir="/usr/lib/systemd/user"}
elif test -d "/usr/local/lib/systemd/user"; then
initdir=${initdir="/usr/local/lib/systemd/user"}
elif test -d "/usr/share/systemd/user"; then
initdir=${initdir="/usr/share/systemd/user"}
elif test -d "/usr/local/share/systemd/user"; then
initdir=${initdir="/usr/local/share/systemd/user"}
elif test -d "$HOME/.config/systemd/user"; then
initdir=${initdir="$HOME/.config/systemd/user"}
elif test -d "$HOME/.local/share/systemd/user"; then
initdir=${initdir="$HOME/.local/share/systemd/user"}
elif test -d "$XDG_CONFIG_HOME/systemd/user/"; then
initdir=${initdir="$XDG_CONFIG_HOME/systemd/user/"}
elif test -d "$XDG_RUNTIME_DIR/systemd/user/"; then
initdir=${initdir="$XDG_RUNTIME_DIR/systemd/user/"}
elif test -d "$XDG_DATA_HOME/systemd/user/"; then
initdir=${initdir="$XDG_DATA_HOME/systemd/user/"}
else
init_type="sysv"
fi
initname=${initname="$INIT_PROG.service"},
)
#
# Init scripts/files
#
AS_CASE([$init_type],
[sysv],
if test $dist_type = "hp-ux"; then
initdir=${initdir="/sbin/init.d"}
else
initdir=${initdir="/etc/init.d"}
fi
initname=${initname="$INIT_PROG"}
initconfdir=${initconfdir="/etc/conf.d"}
initconf=${initconf="$initconfdir/$INIT_PROG"},
[bsd],
if test $dist_type = "aix"; then
initdir=${initdir="/sbin/rc.d/init.d"}
initname=${initname="$INIT_PROG"}
else
initdir=${initdir="/etc/rc.d"}
initname=${initname="rc.$INIT_PROG"}
fi,
[newbsd],
initdir=${initdir="/usr/local/etc/rc.d"}
initname=${initname="$INIT_PROG"},
[gentoo],
initdir=${initdir="/etc/init.d"}
initname=${initname="$INIT_PROG"}
initconfdir=${initconfdir="/etc/init.d"}
initconf=${initconf="$initconfdir/$INIT_PROG"},
[openrc],
initdir=${initdir="/etc/init.d"}
initname=${initname="$INIT_PROG"}
initconfdir=${initconfdir="/etc/conf.d"}
initconf=${initconf="$initconfdir/$INIT_PROG"},
[smf*],
if test $init_type = smf10; then
initdir=${initdir="/var/svc/manifest/network/nagios"}
else
initdir=${initdir="/lib/svc/manifest/network/nagios"}
fi
initname=${initname="$INIT_PROG.xml"}
initconfdir=unknown
initconf=unknown,
[upstart],
initdir=${initdir="/etc/init"}
initname=${initname="$INIT_PROG.conf"}
initconfdir=${initconfdir="/etc/default"}
initconf=${initconf="$initconfdir/$INIT_PROG"},
[launchd],
initdir=${initdir="/Library/LaunchDaemons"}
initname=${initname="org.nagios.$INIT_PROG.plist"},
# initconfdir=${initconfdir="/private/etc"}
# initconf=${initconf="$initconfdir/$INIT_PROG"},
[systemd],
init_type=systemd,
[*],
initdir=unknown
initname=unknown)
# Now see if they supplied any overwriting values
initdiroverridden=no
AC_ARG_WITH(initdir,
AS_HELP_STRING([--with-initdir=<path>],
[overrides path for initdir]),
initdir=$withval
initdiroverridden=yes,
initdir=$initdir
)
#
# Inetd (per connection) scripts/files
#
AS_CASE([$inetd_type],
[inetd*],
inetddir=${inetddir="/etc"}
inetdname=${inetdname="inetd.conf"},
[xinetd],
inetddir=${inetddir="/etc/xinetd.d"}
inetdname=${inetdname="$INIT_PROG"},
[systemd],
if test $dist_type = "debian"; then
inetddir=${inetddir="/lib/systemd/system"}
else
inetddir=${inetddir="/usr/lib/systemd/system"}
fi
netdname=${inetdname="$INIT_PROG.socket"},
[smf*],
if test $init_type = smf10; then
inetddir=${inetddir="/var/svc/manifest/network/nagios"}
else
inetddir=${inetddir="/lib/svc/manifest/network/nagios"}
fi
inetdname=${inetdname="$INIT_PROG.xml"},
# [upstart],
# inetddir=${inetddir="/etc/init.d"}
# inetdname=${inetdname="$INIT_PROG"},
[launchd],
inetddir=${inetddir="/Library/LaunchDaemons"}
inetdname=${inetdname="org.nagios.$INIT_PROG.plist"},
[*],
inetddir=${inetddir="unknown"}
inetdname=${inetdname="unknown"})
AC_MSG_RESULT($install_method)
])

6
ci/.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
*~
\#*
#pnp4nagios.spec need for github build, dammit
outputs
*.tgz
*.zip

117
ci/maketar.sh Executable file
View File

@@ -0,0 +1,117 @@
#!/bin/sh
# collect up all the "base" files into a tar file
# exclude the stuff that gets created during a build
# usage: maketar.sh [version] [release] [releasedate]
# defaults from configure.ac if not provided
# also makes a zip file
startdir=$(pwd)
me=$(realpath -e -L $0)
distdir=$(dirname $me)
basedir=$(realpath -e -L $distdir/..)
#echo "distdir $distdir"
#echo "basedir $basedir"
VERSION=$1
CVER=$(awk -F, '/^AC_INIT/ {print $2}' $basedir/configure.ac|tr -d '[]')
if test "x${VERSION}" = "x" ;
then
VERSION=$CVER
echo "VERSION ($VERSION) from configure.ac"
elif test "${VERSION}" != "${CVER}" ;
then
echo "$0 version requested $VERSION mismatch configure.ac $CVER"
exit 1
fi
RELEASE=$2
if test "x${RELEASE}" = "x" ;
then
RELEASE=$(awk -F'"' '/^PACKAGE_RELEASE=/{print $2}' $basedir/configure.ac)
echo "RELEASE ($RELEASE) from configure.ac"
fi
RELDATE=$3
if test "x${RELDATE}" = "x" ;
then
RELDATE=$(awk -F'"' '/^PKG_REL_DATE=/{print $2}' $basedir/configure.ac)
echo "RELDATE ($RELDATE) from configure.ac"
fi
echo "Version $VERSION Release $RELEASE Date $RELDATE"
tdir=$(mktemp -p "/tmp" -d "pnp4nagiosDIST_XXXXXXXX")
#echo "tempdir $tdir"
cd $tdir
#directory for dist
mkdir pnp4nagios-${VERSION}
#populate with symbolic links from main code directory
cd pnp4nagios-${VERSION}
for f in AUTHORS ChangeLog ci config.guess config.sub contrib \
configure aclocal.m4 autoconf-macros \
pnp4nagios.te pnp4nagios.fc.in \
COPYING helpers include INSTALL install-sh lib \
Makefile.in man README.md sample-config scripts \
share src subst.in summary.in THANKS ;
do
# echo "ln -s $basedir/$f ."
ln -s $basedir/$f .
done
# update version/release/release_date
cp $basedir/configure.ac .
touch configure.ac
rm ci/pnp4nagios.spec
cp ci/pnp4nagios.spec.in ci/pnp4nagios.spec
sed -i "s/@PACKAGE_VERSION@/${VERSION}/" ci/pnp4nagios.spec
sed -i "s/@PACKAGE_RELEASE@/${RELEASE}/" ci/pnp4nagios.spec
sed -i "s/PACKAGE_RELEASE=\"[^\"]*\"/PACKAGE_RELEASE=\"${RELEASE}\"/" \
configure.ac
sed -i "s/PKG_REL_DATE=\"[^\"]*\"/PKG_REL_DATE=\"${RELDATE}\"/" \
configure.ac
cd ..
# any file that is a 'FILE.in' is kept, but the
# resulting 'FILE' is not.
find -L pnp4nagios-${VERSION} -name '*.in' >dist.exclude
sed -i 's/.in$//' dist.exclude
# .. no object files
find -L pnp4nagios-${VERSION} -name '*.o' >>dist.exclude
# .. no binaries
echo "./pnp4nagios-${VERSION}/src/npcd" >>dist.exclude
echo "./pnp4nagios-${VERSION}/src/utils" >>dist.exclude
echo "./pnp4nagios-${VERSION}/src/pnpsender" >>dist.exclude
# ...and no archives in dist, either
find -L pnp4nagios-${VERSION} -name 'pnp4nagios-*.tgz' >>dist.exclude
find -L pnp4nagios-${VERSION} -name 'pnp4nagios-*.zip' >>dist.exclude
find -L pnp4nagios-${VERSION} -path '*/ci/outputs' >>dist.exclude
find -L pnp4nagios-${VERSION} -path '*/ci/outputs/*' >>dist.exclude
# exception is pnp4nagios.spec
grep -v ci/pnp4nagios.spec dist.exclude >dist.x
mv dist.x dist.exclude
#GNU makefile 'dist' guideline is that files in the archive
#should have world rx permissions
chmod 0755 -R pnp4nagios-${VERSION}
#make the tar archive, rereferencing symbolic links
tar chzf pnp4nagios-${VERSION}.tgz -X dist.exclude --exclude-backups pnp4nagios-${VERSION}
mv pnp4nagios-${VERSION}.tgz $distdir
zip -r -q pnp4nagios-${VERSION}.zip pnp4nagios-${VERSION}/ -x\*~ -x\*\# -x\@dist.exclude
mv pnp4nagios-${VERSION}.zip $distdir
cd $startdir
# clean up temp directory
rm -rf $tdir

44
ci/mockbuild.sh Executable file
View File

@@ -0,0 +1,44 @@
#!/bin/sh
NAME=pnp4nagios
VERSION=$(grep '^Version: ' ${NAME}.spec | cut -d ':' -f2 | awk -F'%' '{print $1}' | tr -d ' ')
RELEASE=$(grep '^Release: ' ${NAME}.spec | cut -d ':' -f2 | awk -F'%' '{print $1}' | tr -d ' ')
dnf install -y epel-release
dnf install -y mock
cp ${NAME}.spec ${NAME}.spec.base
echo "VERSION = ${VERSION}"
echo "RELEASE = ${RELEASE}"
mkdir outputs
# want to use the plain-vanilla pnp4nagios.spec so that
# it's the one that is included in the srpm
BREL="${RELEASE}.alma%{?dist}"
sed "/^Release:/c\
Release: ${BREL}" <${NAME}.spec.base >${NAME}.spec
config='alma+epel-8-x86_64'
mock -v -r $config \
--additional-package=selinux-policy-targeted \
--additional-package=selinux-policy-devel \
--additional-package=perl-Time-HiRes \
--additional-package=rrdtool \
--spec=${NAME}.spec \
--sources=${NAME}-${VERSION}.tgz \
--resultdir=./outputs -N
cp ${NAME}.spec.base ${NAME}.spec
config='fedora-38-x86_64'
mock -v -r $config \
--additional-package=selinux-policy-targeted \
--additional-package=selinux-policy-devel \
--additional-package=perl-Time-HiRes \
--additional-package=rrdtool \
--spec=${NAME}.spec \
--sources=${NAME}-${VERSION}.tgz --resultdir=./outputs -N
ls -lR .

498
ci/pnp4nagios.spec Executable file
View File

@@ -0,0 +1,498 @@
%global debug_package %{nil}
%global with_selinux 1
%global _libdir %{_prefix}/lib64
Name: pnp4nagios
Version: 0.6.27
Release: 5%{?dist}
Summary: Nagios performance data analysis tool
Group: Applications/System
License: GPLv2
URL: https://github.com/pnp4nagios/pnp4nagios
Source0: %{name}-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: autoconf, automake, libtool
Requires: rrdtool-perl
Requires: perl(Time::HiRes)
Requires: nagios
Requires: httpd
Requires: rrdtool-perl
Requires: php >= 5.6
Requires: php-gd
Requires: php-xml
Requires: php-mbstring
# This ensures that the *-selinux package and all its dependencies are not pulled
# into containers and other systems that do not use SELinux
%if 0%{?fedora} || 0%{?rhel} >= 8
Requires: (%{name}-selinux if selinux-policy-%{selinuxtype})
%else
Requires: %{name}-selinux
%endif
%if 0%{?rhel} > 6 || 0%{?fedora} > 20
# For necessary macros
BuildRequires: systemd
%else
Requires(preun): initscripts, chkconfig
Requires(post): initscripts, chkconfig
Requires(postun): initscripts
%endif
%description
PNP is an addon to nagios which analyzes performance data provided by plugins
and stores them automatically into RRD-databases.
%if 0%{?with_selinux}
# SELinux subpackage
%package selinux
Summary: SELinux context for %{name}
BuildArch: noarch
%global selinuxtype targeted
%global modulename pnp4nagios
Requires: selinux-policy-%{selinuxtype}
Requires(post): selinux-policy-%{selinuxtype}
Requires: checkpolicy, selinux-policy-devel, bzip2
%{?selinux_requires}
%description selinux
SElinux security policy for %{name}.
%endif
%prep
%setup -q
#autoreconf
cp contrib/fedora/pnp4nagios-README.fedora README.fedora
sed -i -e 's/^INSTALL_OPTS="-o $nagios_user -g $nagios_grp"/INSTALL_OPTS=""/' \
configure
sed -i -e '/^\t$(MAKE) strip-post-install$/d' src/Makefile.in
%build
autoconf
%configure --prefix='' \
--bindir=%{_sbindir} \
--libexecdir=%{_libexecdir}/%{name} \
--sysconfdir=%{_sysconfdir}/%{name} \
--localstatedir=%{_localstatedir}/log/%{name} \
--datadir=%{_datadir}/nagios/html/%{name} \
--datarootdir=%{_datadir}/nagios/html/%{name} \
%if 0%{with_selinux}
--enable-selinux=yes \
%else
--with-selinux=no \
%endif
--with-dist-type=rh \
--with-init-type=systemd \
--with-initdir=%{_unitdir} \
--with-http_server=apache \
--with-http_server_base=%{_sysconfdir}/httpd \
--with-http_user=apache \
--with-http_group=apache \
--with-kohana_system=%{_datadir}/nagios/html/%{name}/kohana/system \
--with-nagios_user=nagios \
--with-nagios_group=nagios \
--with-nagios_unit=nagios \
--with-cache_dir=%{_localstatedir}/cache/pnp4nagios \
--with-perfdata-dir=%{_localstatedir}/lib/%{name} \
--with-perfdata-spool-dir=%{_localstatedir}/spool/%{name} \
--with-pnp-logdir=%{_localstatedir}/log/%{name}
%{__make} %{?_smp_mflags} all
%install
if [ "$RPM_BUILD_ROOT" != "/" ]; then
rm -rf $RPM_BUILD_ROOT
fi
%{__make} install DESTDIR=$RPM_BUILD_ROOT INSTALL_OPTS="" HTTP_INSTALL_OPTS="" MIX_OPTS="" INIT_OPTS="" NOSAMPLES=1
# NO...do NOT remove -sample from filename suffix
#for i in $RPM_BUILD_ROOT/%{_sysconfdir}/pnp4nagios/*-sample \
# $RPM_BUILD_ROOT/%{_sysconfdir}/pnp4nagios/*/*-sample
#do
# mv ${i} ${i%%-sample}
#done
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config.php.*
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config_local.php
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config.php
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/*.cfg
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/*.md
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/check_commands/*.cfg-sample
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/spool/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}/stats
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}/kohana
#
install -Dp -m 0644 contrib/fedora/pnp4nagios.logrotate.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/pnp4nagios
#
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logwatch/scripts/services
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/services
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/logfiles
install -m 0666 contrib/fedora/logwatch/scripts/services/pnp4nagios \
$RPM_BUILD_ROOT%{_sysconfdir}/logwatch/scripts/services/
install -m 0644 contrib/fedora/logwatch/conf/services/pnp4nagios.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/services/
install -m 0644 contrib/fedora/logwatch/conf/logfiles/pnp4nagios.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/logfiles/
#
#mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
#sed 's|/usr/local/nagios/etc/htpasswd.users|@NAGIOS_PWD@|' \
# sample-config/httpd.conf \
# > $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/%{name}.conf
install -Dp -m 0644 scripts/npcd.service \
$RPM_BUILD_ROOT%{_unitdir}/npcd.service
#### broker api changed
#mkdir -p $RPM_BUILD_ROOT%{_libdir}/nagios/brokers
#mv $RPM_BUILD_ROOT%{_libdir}/npcdmod.o \
# $RPM_BUILD_ROOT%{_libdir}/nagios/brokers/npcdmod.o
## rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/npcmod.o
#mv $RPM_BUILD_ROOT/man $RPM_BUILD_ROOT%{_datadir}/
# Move kohana to pnp4nagios, there is another kohana in fedore/EPEL,
# which can be installed.
#mv $RPM_BUILD_ROOT%{_libdir}/kohana \
# $RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/kohana
#sed -i 's|%{_libdir}/pnp4nagios/kohana|%{_datadir}/nagios/html/%{name}/kohana|' \
# $RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/index.php
mv $RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/install.ignore.not \
$RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/install.ignore
rm $RPM_BUILD_ROOT%{_sysconfdir}/pnp4nagios/background.pdf
%if 0%{with_selinux}
install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/selinux/tmp/%{name}
install -m 0644 %{name}.fc $RPM_BUILD_ROOT%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.fc
install -m 0644 %{name}.te $RPM_BUILD_ROOT%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.te
%endif
%package logrotate
Summary: config for rotating pnp4nagios logs
Requires: logrotate
Group: Applications/System
%description logrotate
config file used by logrotate, set up for pnp4nagios logs
%package logwatch
Summary: config and scripts for checking pnp4nagios log files
Requires: logwatch
Group: Applications/System
%description logwatch
config files and log scanning script for checking pnp4nagios log
files for errors, and flagging them for attention.
%clean
#if [ "$RPM_BUILD_ROOT" != "/" ]; then
# rm -rf $RPM_BUILD_ROOT
#fi
%files
%defattr(644,root,root,755)
%doc AUTHORS ChangeLog COPYING
%doc INSTALL README.md README.fedora
%doc THANKS contrib/
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/%{name}/pages/background-*.pdf
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/%{name}/config.php
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/%{name}/*.cfg
%attr(755,root,root) %{_sysconfdir}/%{name}/SetLogLevels
%attr(755,root,root) %{_sysconfdir}/%{name}/verify_pnp_config
%attr(644,root,root) %{_sysconfdir}/%{name}/README_config.md
%{_sysconfdir}/%{name}/check_commands/*
%{_sysconfdir}/%{name}/contrib/*
%dir %{_sysconfdir}/%{name}/config.d
%dir %attr(744,apache,apache) /var/cache/pnp4nagios
%attr(755,root,root) %{_sysconfdir}/%{name}/config_tools/NagiosCfgMod.pl
%attr(755,root,root) %{_sysconfdir}/%{name}/config_tools/TemplateMod.pl
%{_sysconfdir}/%{name}/config_samples/*
%{_sysconfdir}/%{name}/pnp4nagios_release
%attr(755,root,root) %{_sbindir}/npcd
%config(noreplace) %attr(644,root,root) %{_unitdir}/npcd.service
%dir %{_libexecdir}/%{name}
%attr(755,root,root) %{_libexecdir}/%{name}/*
%attr(755,nagios,nagios) %{_localstatedir}/lib/%{name}
%dir %attr(755,nagios,nagios) %{_localstatedir}/log/%{name}
%dir %attr(755,nagios,nagios) %{_localstatedir}/log/%{name}/stats
%dir %attr(755,nagios,nagios) %{_localstatedir}/log/%{name}/lock
%dir %attr(755,apache,apache) %{_localstatedir}/log/%{name}/kohana
%dir %attr(755,nagios,nagios) %{_localstatedir}/spool/%{name}
%{_datadir}/nagios/html/%{name}/
%{_mandir}/man8/*
%files logrotate
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%files logwatch
%defattr(644,root,root)
%config(noreplace) %{_sysconfdir}/logwatch/scripts/services/%{name}
%config(noreplace) %{_sysconfdir}/logwatch/conf/services/%{name}.conf
%config(noreplace) %{_sysconfdir}/logwatch/conf/logfiles/%{name}.conf
%if 0%{?with_selinux}
%files selinux
%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.te
%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.fc
%pre selinux
%selinux_relabel_pre -s %{selinuxtype}
%post selinux
pushd %{_localstatedir}/lib/selinux/tmp/%{name} >/dev/null
if semodule -E nagios 2>/dev/null >/dev/null ;
then
semodule_unpackage nagios.pp nagios.mod nagios.fc
for pnpdir in /etc/pnp4nagios /var/log/pnp4nagios /var/lib/pnp4nagios /usr/lib/pnp4nagios
do
if grep -q $pnpdir nagios.fc ;
then
sed -i "\\|$pnpdir|s/^/#/" %{modulename}.fc
fi
done
fi
rm nagios.*
%{__make} %{?_smp_mflags} -f /usr/share/selinux/devel/Makefile all
bzip2 %{name}.pp
install -m 0600 %{modulename}.pp.bz2 %{_datadir}/selinux/packages/%{selinuxtype}/
popd >/dev/null
rm -rf /var/lib/selinux/tmp/%{name}
%selinux_modules_install -s %{selinuxtype} %{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2
%postun selinux
if [ $1 -eq 0 ]; then
%selinux_modules_uninstall -s %{selinuxtype} %{modulename}
fi
%posttrans selinux
%selinux_relabel_post -s %{selinuxtype}
%endif
%post
# config sample update
pushd %{_sysconfdir}/pnp4nagios >/dev/null
if [ -e %{_sysconfdir}/nagios/objects/templates.cfg ] ;
then
perl %{_sysconfdir}/pnp4nagios/config_tools/TemplateMod.pl -i %{_sysconfdir}/nagios/objects/templates.cfg -o config_samples/nagios/objects/templates.cfg
fi
if [ -e %{_sysconfdir}/nagios/nagios.cfg ] ;
then
nagver=`nagios --version | gawk '/^Nagios /' | gawk -v RS=' ' '/^[0-9]/'`
perl %{_sysconfdir}/pnp4nagios/config_tools/NagiosCfgMod.pl -i %{_sysconfdir}/nagios/nagios.cfg -m sync -o config_samples/nagios/nagios-sync.cfg -n $nagver
perl %{_sysconfdir}/pnp4nagios/config_tools/NagiosCfgMod.pl -i %{_sysconfdir}/nagios/nagios.cfg -m bulk -o config_samples/nagios/nagios-bulk.cfg -n $nagver
perl %{_sysconfdir}/pnp4nagios/config_tools/NagiosCfgMod.pl -i %{_sysconfdir}/nagios/nagios.cfg -m npcd -o config_samples/nagios/nagios-npcd.cfg -n $nagver
fi
# determine default paper size based on locale
if test -e "/etc/locale.conf" ; then
localefile=/etc/locale.conf
elif test -e "/etc/default/coale" ; then
localefile=/etc/default/locale
else
localefile=""
fi
if test "x${localefile}" = "x" ; then
PAPERSIZE=A4
else
country=`grep "_..\." -o ${localefile} | sed 's/[\._]//g'`
if echo 'BZ,CA,CL,CO,CR,SV,GT,MX,NI,PA,PH,PR,US,VE' | grep -q ${country} ; then
PAPERSIZE=letter
else
PAPERSIZE=A4
fi
fi
if [ ! -e %{_sysconfdir}/pnp4nagios/background.pdf ] ; then
ln -rs %{_sysconfdir}/pnp4nagios/pages/background-${PAPERSIZE}.pdf %{_sysconfdir}/pnp4nagios/background.pdf
fi
popd >/dev/null
%systemd_post npcd.service
%preun
%systemd_preun npcd.service
%postun
%systemd_postun_with_restart npcd.service
%changelog
* Mon Feb 19 2024 Chuck Lane <lane@dchooz.org> - 0.6.27-6
- get rpm in sync with 'build-from-source' autoconf setup
* Thu Nov 23 2023 Chuck Lane <lane@dchooz.org> - 0.6.27-5
- add selinux info, improved packaging
* Mon Sep 11 2023 Chuck Lane <lane@dchooz.org> - 0.6.27-4
- change to defining XDG_CACHE_HOME in php, many links in docs fixed
* Mon Aug 28 2023 Chuck Lane <lane@dchooz.org> - 0.6.27-3
- one more pnp8.2 fix, update release number
* Fri Aug 18 2023 Chuck Lane <lane@dhooz.org> - 0.6.27-1
- many pnp8.2 deprecation fixes, get XDG_CACHE_HOME in systemd setup
* Tue Dec 20 2022 Chuck Lane <lane@dchooz.org> - 0.6.26-14
- minor config cleanups, add logwatch and logrotate subpackages
* Sun Sep 11 2022 Chuck Lane <lane@dchooz.org> - 0.6.26-3
- upgrade to php8
* Mon Jun 08 2015 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.25-1
- Update to upstream.
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.22-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Fri Jul 04 2014 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.22-2
- Fix two URL Cross-Site Scripting Vulnerabilities (bz#1115983)
* Thu Jul 03 2014 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.22-1
- Update to upstream (fixes XSS flaw in an error page - bz#1115770)
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.21-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.21-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Wed Jul 17 2013 Petr Pisar <ppisar@redhat.com> - 0.6.21-3
- Perl 5.18 rebuild
* Wed Jul 03 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.21-2
- Broken configuration for httpd 2.4 fixed (bz#871465)
- fixed dates in changelog items
* Tue Jun 04 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.21-1
- update to upstream
* Sat Mar 23 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.20-2
- added autoreconf to prep section (bz#926359)
* Sun Mar 03 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.20-1
- update to upstream
* Sun Feb 17 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.19-2
- updated hostextinfo URL for pnp4nagios 0.6
- spec file cleanup
* Sat Feb 16 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.19-1
- update to upstream
* Mon Sep 03 2012 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.16-4
- CVE-2012-3457 - process_perfdata.cfg world readable
* Thu Apr 05 2012 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.16-2
- Removed double slashes fro directories (BZ#810212).
* Thu Nov 24 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.16-1
- update to upstream
* Mon Nov 21 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.15-4
- add back kohana, it's a different version
- added BR: perl(Time::HiRes)
* Mon Nov 21 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.15-2
- exclude kohana sources and require php-Kohana package
* Wed Nov 16 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.15-1
- update to upstream
- remove /usr/share/nagios/html/pnp4nagios/install.php
- added /etc/httpd/conf.d/pnp4nagios.conf
- removed -sample suffix from rest of sample files
* Tue Oct 11 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.1-3
- Updated renaming of "-sample" config files.
* Wed Sep 14 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.1-1
- Update to 0.6.1.
* Tue Sep 13 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.4.14-7
- added perl-Time-HiRes to build requires
* Tue Sep 13 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.4.14-6
- rebuilt for EPEL-6
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.14-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Sep 27 2010 Xavier Bachelot <xavier@bachelot.org> 0.4.14-4
- Bump release for rebuild.
* Sun Jul 18 2010 Xavier Bachelot <xavier@bachelot.org> 0.4.14-3
- Add patch to fix PHP deprecated warnings with PHP 5.3.
(Patch from Jan Ondrej - RHBZ#572851)
* Thu Aug 27 2009 Xavier Bachelot <xavier@bachelot.org> 0.4.14-2
- Ship contrib directory as doc.
* Thu Aug 27 2009 Xavier Bachelot <xavier@bachelot.org> 0.4.14-1
- Update to 0.4.14 (RHBZ#518069).
- Fix typo in README.fedora (RHBZ#490664).
- Move npcdmod.o to a better place.
- BR: rrdtool-perl
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.12-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.12-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Thu Dec 4 2008 Michael Schwendt <mschwendt@fedoraproject.org> 0.4.12-2
- Include /usr/libexec/pnp4nagios directory.
* Tue Oct 21 2008 Robert M. Albrecht <romal@gmx.de> 0.4.12-1
- Upstream released 0.4.12
* Tue Sep 02 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.10-3
- Fix logrotate conf (RHBZ#460861).
* Fri Jul 18 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.10-2
- Fix typo in logrotate conf.
* Wed Jul 09 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.10-1
- Update to 0.4.10.
* Tue May 27 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.9-3
- Fix npcd init script to use /etc/pnp4nagios.
* Tue May 27 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.9-2
- Install npcd unstripped to let rpm do it.
* Sat May 24 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.9-1
- Update to 0.4.9.
- Rename to pnp4nagios to match other distros packages.
* Mon Apr 14 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-5
- Log to file by default.
- Kill pnpsender man page.
* Mon Apr 07 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-4
- Install inside of nagios html dir.
* Mon Apr 07 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-3
- Provide properly named config files.
- Add missing Requires:.
- Add a logrotate conf file.
* Fri Apr 04 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-2
- Add an initscript for npcd.
* Wed Mar 19 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-1
- Initial build.

498
ci/pnp4nagios.spec.in Executable file
View File

@@ -0,0 +1,498 @@
%global debug_package %{nil}
%global with_selinux 1
%global _libdir %{_prefix}/lib64
Name: pnp4nagios
Version: @PACKAGE_VERSION@
Release: @PACKAGE_RELEASE@%{?dist}
Summary: Nagios performance data analysis tool
Group: Applications/System
License: GPLv2
URL: https://github.com/pnp4nagios/pnp4nagios
Source0: %{name}-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: autoconf, automake, libtool
Requires: rrdtool-perl
Requires: perl(Time::HiRes)
Requires: nagios
Requires: httpd
Requires: rrdtool-perl
Requires: php >= 5.6
Requires: php-gd
Requires: php-xml
Requires: php-mbstring
# This ensures that the *-selinux package and all its dependencies are not pulled
# into containers and other systems that do not use SELinux
%if 0%{?fedora} || 0%{?rhel} >= 8
Requires: (%{name}-selinux if selinux-policy-%{selinuxtype})
%else
Requires: %{name}-selinux
%endif
%if 0%{?rhel} > 6 || 0%{?fedora} > 20
# For necessary macros
BuildRequires: systemd
%else
Requires(preun): initscripts, chkconfig
Requires(post): initscripts, chkconfig
Requires(postun): initscripts
%endif
%description
PNP is an addon to nagios which analyzes performance data provided by plugins
and stores them automatically into RRD-databases.
%if 0%{?with_selinux}
# SELinux subpackage
%package selinux
Summary: SELinux context for %{name}
BuildArch: noarch
%global selinuxtype targeted
%global modulename pnp4nagios
Requires: selinux-policy-%{selinuxtype}
Requires(post): selinux-policy-%{selinuxtype}
Requires: checkpolicy, selinux-policy-devel, bzip2
%{?selinux_requires}
%description selinux
SElinux security policy for %{name}.
%endif
%prep
%setup -q
#autoreconf
cp contrib/fedora/pnp4nagios-README.fedora README.fedora
sed -i -e 's/^INSTALL_OPTS="-o $nagios_user -g $nagios_grp"/INSTALL_OPTS=""/' \
configure
sed -i -e '/^\t$(MAKE) strip-post-install$/d' src/Makefile.in
%build
autoconf
%configure --prefix='' \
--bindir=%{_sbindir} \
--libexecdir=%{_libexecdir}/%{name} \
--sysconfdir=%{_sysconfdir}/%{name} \
--localstatedir=%{_localstatedir}/log/%{name} \
--datadir=%{_datadir}/nagios/html/%{name} \
--datarootdir=%{_datadir}/nagios/html/%{name} \
%if 0%{with_selinux}
--enable-selinux=yes \
%else
--with-selinux=no \
%endif
--with-dist-type=rh \
--with-init-type=systemd \
--with-initdir=%{_unitdir} \
--with-http_server=apache \
--with-http_server_base=%{_sysconfdir}/httpd \
--with-http_user=apache \
--with-http_group=apache \
--with-kohana_system=%{_datadir}/nagios/html/%{name}/kohana/system \
--with-nagios_user=nagios \
--with-nagios_group=nagios \
--with-nagios_unit=nagios \
--with-cache_dir=%{_localstatedir}/cache/pnp4nagios \
--with-perfdata-dir=%{_localstatedir}/lib/%{name} \
--with-perfdata-spool-dir=%{_localstatedir}/spool/%{name} \
--with-pnp-logdir=%{_localstatedir}/log/%{name}
%{__make} %{?_smp_mflags} all
%install
if [ "$RPM_BUILD_ROOT" != "/" ]; then
rm -rf $RPM_BUILD_ROOT
fi
%{__make} install DESTDIR=$RPM_BUILD_ROOT INSTALL_OPTS="" HTTP_INSTALL_OPTS="" MIX_OPTS="" INIT_OPTS="" NOSAMPLES=1
# NO...do NOT remove -sample from filename suffix
#for i in $RPM_BUILD_ROOT/%{_sysconfdir}/pnp4nagios/*-sample \
# $RPM_BUILD_ROOT/%{_sysconfdir}/pnp4nagios/*/*-sample
#do
# mv ${i} ${i%%-sample}
#done
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config.php.*
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config_local.php
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/config.php
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/*.cfg
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/*.md
chmod a-x $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/check_commands/*.cfg-sample
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/spool/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}/stats
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{name}/kohana
#
install -Dp -m 0644 contrib/fedora/pnp4nagios.logrotate.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/pnp4nagios
#
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logwatch/scripts/services
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/services
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/logfiles
install -m 0666 contrib/fedora/logwatch/scripts/services/pnp4nagios \
$RPM_BUILD_ROOT%{_sysconfdir}/logwatch/scripts/services/
install -m 0644 contrib/fedora/logwatch/conf/services/pnp4nagios.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/services/
install -m 0644 contrib/fedora/logwatch/conf/logfiles/pnp4nagios.conf \
$RPM_BUILD_ROOT%{_sysconfdir}/logwatch/conf/logfiles/
#
#mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
#sed 's|/usr/local/nagios/etc/htpasswd.users|@NAGIOS_PWD@|' \
# sample-config/httpd.conf \
# > $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/%{name}.conf
install -Dp -m 0644 scripts/npcd.service \
$RPM_BUILD_ROOT%{_unitdir}/npcd.service
#### broker api changed
#mkdir -p $RPM_BUILD_ROOT%{_libdir}/nagios/brokers
#mv $RPM_BUILD_ROOT%{_libdir}/npcdmod.o \
# $RPM_BUILD_ROOT%{_libdir}/nagios/brokers/npcdmod.o
## rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/npcmod.o
#mv $RPM_BUILD_ROOT/man $RPM_BUILD_ROOT%{_datadir}/
# Move kohana to pnp4nagios, there is another kohana in fedore/EPEL,
# which can be installed.
#mv $RPM_BUILD_ROOT%{_libdir}/kohana \
# $RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/kohana
#sed -i 's|%{_libdir}/pnp4nagios/kohana|%{_datadir}/nagios/html/%{name}/kohana|' \
# $RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/index.php
mv $RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/install.ignore.not \
$RPM_BUILD_ROOT%{_datadir}/nagios/html/%{name}/install.ignore
rm $RPM_BUILD_ROOT%{_sysconfdir}/pnp4nagios/background.pdf
%if 0%{with_selinux}
install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/selinux/tmp/%{name}
install -m 0644 %{name}.fc $RPM_BUILD_ROOT%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.fc
install -m 0644 %{name}.te $RPM_BUILD_ROOT%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.te
%endif
%package logrotate
Summary: config for rotating pnp4nagios logs
Requires: logrotate
Group: Applications/System
%description logrotate
config file used by logrotate, set up for pnp4nagios logs
%package logwatch
Summary: config and scripts for checking pnp4nagios log files
Requires: logwatch
Group: Applications/System
%description logwatch
config files and log scanning script for checking pnp4nagios log
files for errors, and flagging them for attention.
%clean
#if [ "$RPM_BUILD_ROOT" != "/" ]; then
# rm -rf $RPM_BUILD_ROOT
#fi
%files
%defattr(644,root,root,755)
%doc AUTHORS ChangeLog COPYING
%doc INSTALL README.md README.fedora
%doc THANKS contrib/
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/%{name}/pages/background-*.pdf
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/%{name}/config.php
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/%{name}/*.cfg
%attr(755,root,root) %{_sysconfdir}/%{name}/SetLogLevels
%attr(755,root,root) %{_sysconfdir}/%{name}/verify_pnp_config
%attr(644,root,root) %{_sysconfdir}/%{name}/README_config.md
%{_sysconfdir}/%{name}/check_commands/*
%{_sysconfdir}/%{name}/contrib/*
%dir %{_sysconfdir}/%{name}/config.d
%dir %attr(744,apache,apache) /var/cache/pnp4nagios
%attr(755,root,root) %{_sysconfdir}/%{name}/config_tools/NagiosCfgMod.pl
%attr(755,root,root) %{_sysconfdir}/%{name}/config_tools/TemplateMod.pl
%{_sysconfdir}/%{name}/config_samples/*
%{_sysconfdir}/%{name}/pnp4nagios_release
%attr(755,root,root) %{_sbindir}/npcd
%config(noreplace) %attr(644,root,root) %{_unitdir}/npcd.service
%dir %{_libexecdir}/%{name}
%attr(755,root,root) %{_libexecdir}/%{name}/*
%attr(755,nagios,nagios) %{_localstatedir}/lib/%{name}
%dir %attr(755,nagios,nagios) %{_localstatedir}/log/%{name}
%dir %attr(755,nagios,nagios) %{_localstatedir}/log/%{name}/stats
%dir %attr(755,nagios,nagios) %{_localstatedir}/log/%{name}/lock
%dir %attr(755,apache,apache) %{_localstatedir}/log/%{name}/kohana
%dir %attr(755,nagios,nagios) %{_localstatedir}/spool/%{name}
%{_datadir}/nagios/html/%{name}/
%{_mandir}/man8/*
%files logrotate
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%files logwatch
%defattr(644,root,root)
%config(noreplace) %{_sysconfdir}/logwatch/scripts/services/%{name}
%config(noreplace) %{_sysconfdir}/logwatch/conf/services/%{name}.conf
%config(noreplace) %{_sysconfdir}/logwatch/conf/logfiles/%{name}.conf
%if 0%{?with_selinux}
%files selinux
%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.te
%{_localstatedir}/lib/selinux/tmp/%{name}/%{modulename}.fc
%pre selinux
%selinux_relabel_pre -s %{selinuxtype}
%post selinux
pushd %{_localstatedir}/lib/selinux/tmp/%{name} >/dev/null
if semodule -E nagios 2>/dev/null >/dev/null ;
then
semodule_unpackage nagios.pp nagios.mod nagios.fc
for pnpdir in /etc/pnp4nagios /var/log/pnp4nagios /var/lib/pnp4nagios /usr/lib/pnp4nagios
do
if grep -q $pnpdir nagios.fc ;
then
sed -i "\\|$pnpdir|s/^/#/" %{modulename}.fc
fi
done
fi
rm nagios.*
%{__make} %{?_smp_mflags} -f /usr/share/selinux/devel/Makefile all
bzip2 %{name}.pp
install -m 0600 %{modulename}.pp.bz2 %{_datadir}/selinux/packages/%{selinuxtype}/
popd >/dev/null
rm -rf /var/lib/selinux/tmp/%{name}
%selinux_modules_install -s %{selinuxtype} %{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2
%postun selinux
if [ $1 -eq 0 ]; then
%selinux_modules_uninstall -s %{selinuxtype} %{modulename}
fi
%posttrans selinux
%selinux_relabel_post -s %{selinuxtype}
%endif
%post
# config sample update
pushd %{_sysconfdir}/pnp4nagios >/dev/null
if [ -e %{_sysconfdir}/nagios/objects/templates.cfg ] ;
then
perl %{_sysconfdir}/pnp4nagios/config_tools/TemplateMod.pl -i %{_sysconfdir}/nagios/objects/templates.cfg -o config_samples/nagios/objects/templates.cfg
fi
if [ -e %{_sysconfdir}/nagios/nagios.cfg ] ;
then
nagver=`nagios --version | gawk '/^Nagios /' | gawk -v RS=' ' '/^[0-9]/'`
perl %{_sysconfdir}/pnp4nagios/config_tools/NagiosCfgMod.pl -i %{_sysconfdir}/nagios/nagios.cfg -m sync -o config_samples/nagios/nagios-sync.cfg -n $nagver
perl %{_sysconfdir}/pnp4nagios/config_tools/NagiosCfgMod.pl -i %{_sysconfdir}/nagios/nagios.cfg -m bulk -o config_samples/nagios/nagios-bulk.cfg -n $nagver
perl %{_sysconfdir}/pnp4nagios/config_tools/NagiosCfgMod.pl -i %{_sysconfdir}/nagios/nagios.cfg -m npcd -o config_samples/nagios/nagios-npcd.cfg -n $nagver
fi
# determine default paper size based on locale
if test -e "/etc/locale.conf" ; then
localefile=/etc/locale.conf
elif test -e "/etc/default/coale" ; then
localefile=/etc/default/locale
else
localefile=""
fi
if test "x${localefile}" = "x" ; then
PAPERSIZE=A4
else
country=`grep "_..\." -o ${localefile} | sed 's/[\._]//g'`
if echo 'BZ,CA,CL,CO,CR,SV,GT,MX,NI,PA,PH,PR,US,VE' | grep -q ${country} ; then
PAPERSIZE=letter
else
PAPERSIZE=A4
fi
fi
if [ ! -e %{_sysconfdir}/pnp4nagios/background.pdf ] ; then
ln -rs %{_sysconfdir}/pnp4nagios/pages/background-${PAPERSIZE}.pdf %{_sysconfdir}/pnp4nagios/background.pdf
fi
popd >/dev/null
%systemd_post npcd.service
%preun
%systemd_preun npcd.service
%postun
%systemd_postun_with_restart npcd.service
%changelog
* Mon Feb 19 2024 Chuck Lane <lane@dchooz.org> - 0.6.27-6
- get rpm in sync with 'build-from-source' autoconf setup
* Thu Nov 23 2023 Chuck Lane <lane@dchooz.org> - 0.6.27-5
- add selinux info, improved packaging
* Mon Sep 11 2023 Chuck Lane <lane@dchooz.org> - 0.6.27-4
- change to defining XDG_CACHE_HOME in php, many links in docs fixed
* Mon Aug 28 2023 Chuck Lane <lane@dchooz.org> - 0.6.27-3
- one more pnp8.2 fix, update release number
* Fri Aug 18 2023 Chuck Lane <lane@dhooz.org> - 0.6.27-1
- many pnp8.2 deprecation fixes, get XDG_CACHE_HOME in systemd setup
* Tue Dec 20 2022 Chuck Lane <lane@dchooz.org> - 0.6.26-14
- minor config cleanups, add logwatch and logrotate subpackages
* Sun Sep 11 2022 Chuck Lane <lane@dchooz.org> - 0.6.26-3
- upgrade to php8
* Mon Jun 08 2015 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.25-1
- Update to upstream.
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.22-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Fri Jul 04 2014 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.22-2
- Fix two URL Cross-Site Scripting Vulnerabilities (bz#1115983)
* Thu Jul 03 2014 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.22-1
- Update to upstream (fixes XSS flaw in an error page - bz#1115770)
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.21-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.21-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Wed Jul 17 2013 Petr Pisar <ppisar@redhat.com> - 0.6.21-3
- Perl 5.18 rebuild
* Wed Jul 03 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.21-2
- Broken configuration for httpd 2.4 fixed (bz#871465)
- fixed dates in changelog items
* Tue Jun 04 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.21-1
- update to upstream
* Sat Mar 23 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.20-2
- added autoreconf to prep section (bz#926359)
* Sun Mar 03 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.20-1
- update to upstream
* Sun Feb 17 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.19-2
- updated hostextinfo URL for pnp4nagios 0.6
- spec file cleanup
* Sat Feb 16 2013 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.19-1
- update to upstream
* Mon Sep 03 2012 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.16-4
- CVE-2012-3457 - process_perfdata.cfg world readable
* Thu Apr 05 2012 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.16-2
- Removed double slashes fro directories (BZ#810212).
* Thu Nov 24 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.16-1
- update to upstream
* Mon Nov 21 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.15-4
- add back kohana, it's a different version
- added BR: perl(Time::HiRes)
* Mon Nov 21 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.15-2
- exclude kohana sources and require php-Kohana package
* Wed Nov 16 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.15-1
- update to upstream
- remove /usr/share/nagios/html/pnp4nagios/install.php
- added /etc/httpd/conf.d/pnp4nagios.conf
- removed -sample suffix from rest of sample files
* Tue Oct 11 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.1-3
- Updated renaming of "-sample" config files.
* Wed Sep 14 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.6.1-1
- Update to 0.6.1.
* Tue Sep 13 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.4.14-7
- added perl-Time-HiRes to build requires
* Tue Sep 13 2011 Ján ONDREJ (SAL) <ondrejj(at)salstar.sk> - 0.4.14-6
- rebuilt for EPEL-6
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.14-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Mon Sep 27 2010 Xavier Bachelot <xavier@bachelot.org> 0.4.14-4
- Bump release for rebuild.
* Sun Jul 18 2010 Xavier Bachelot <xavier@bachelot.org> 0.4.14-3
- Add patch to fix PHP deprecated warnings with PHP 5.3.
(Patch from Jan Ondrej - RHBZ#572851)
* Thu Aug 27 2009 Xavier Bachelot <xavier@bachelot.org> 0.4.14-2
- Ship contrib directory as doc.
* Thu Aug 27 2009 Xavier Bachelot <xavier@bachelot.org> 0.4.14-1
- Update to 0.4.14 (RHBZ#518069).
- Fix typo in README.fedora (RHBZ#490664).
- Move npcdmod.o to a better place.
- BR: rrdtool-perl
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.12-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.12-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Thu Dec 4 2008 Michael Schwendt <mschwendt@fedoraproject.org> 0.4.12-2
- Include /usr/libexec/pnp4nagios directory.
* Tue Oct 21 2008 Robert M. Albrecht <romal@gmx.de> 0.4.12-1
- Upstream released 0.4.12
* Tue Sep 02 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.10-3
- Fix logrotate conf (RHBZ#460861).
* Fri Jul 18 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.10-2
- Fix typo in logrotate conf.
* Wed Jul 09 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.10-1
- Update to 0.4.10.
* Tue May 27 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.9-3
- Fix npcd init script to use /etc/pnp4nagios.
* Tue May 27 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.9-2
- Install npcd unstripped to let rpm do it.
* Sat May 24 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.9-1
- Update to 0.4.9.
- Rename to pnp4nagios to match other distros packages.
* Mon Apr 14 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-5
- Log to file by default.
- Kill pnpsender man page.
* Mon Apr 07 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-4
- Install inside of nagios html dir.
* Mon Apr 07 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-3
- Provide properly named config files.
- Add missing Requires:.
- Add a logrotate conf file.
* Fri Apr 04 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-2
- Add an initscript for npcd.
* Wed Mar 19 2008 Xavier Bachelot <xavier@bachelot.org> 0.4.7-1
- Initial build.

12419
configure vendored

File diff suppressed because it is too large Load Diff

1012
configure.ac Normal file → Executable file

File diff suppressed because it is too large Load Diff

4
contrib/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
fedora/logwatch/conf/logfiles/pnp4nagios.conf
fedora/logwatch/scripts/services/pnp4nagios
fedora/pnp4nagios.logrotate.conf
ssi/status-header.ssi

View File

@@ -0,0 +1,25 @@
##########################################################################
# $Id$
##########################################################################
########################################################
# This was written and is maintained by:
# Chuck Lane <lane@dchooz.org>
#
########################################################
# What actual file? Defaults to LogPath if not absolute path....
LogFile = @PERFDATA_LOG@
Logfile = @logdir@/npcd.log
# If the archives are searched, here is one or more line
# (optionally containing wildcards) that tell where they are...
#If you use a "-" in naming add that as well -mgt
Archive = @PERFDATA_LOG@?[0-9]+
Archive = @PERFDATA_LOG@?[0-9]+.gz
Archive = @logdir@/npcd.log.[0-9]+
Archive = @logdir@/npcd.log.[0-9]+.gz
*ApplyEuroDate =
# vi: shiftwidth=3 tabstop=3 et

View File

@@ -0,0 +1,21 @@
# You can put comments anywhere you want to. They are effective for the
# rest of the line.
# this is in the format of <name> = <value>. Whitespace at the beginning
# and end of the lines is removed. Whitespace before and after the = sign
# is removed. Everything is case *insensitive*.
# Yes = True = On = 1
# No = False = Off = 0
Title = pnp4nagios-messages
# Which logfile group...
LogFile = pnp4nagios
# *OnlyService = vsftpd
#*RemoveHeaders =
# vi: shiftwidth=3 tabstop=3 et

View File

@@ -0,0 +1,71 @@
#!@PERL@
##########################################################################
# $Id: $
##########################################################################
# $Log: $
# Rev for pnp4nagios 0.6.26 2022/10/23 lane@dchooz.org
##########################################################################
use strict;
use Logwatch ':all';
my $Debug = $ENV{'LOGWATCH_DEBUG'} || 0;
my $DebugCounter = 0;
my @OtherList = ();
if ( $Debug >= 5 ) {
print STDERR "\n\nDEBUG: Inside pnp4nagios Filter \n\n";
$DebugCounter = 1;
}
my $line = 0;
#my $date = '\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d \[\d+\] \[\d+\]';
while (defined(my $ThisLine = <STDIN>)) {
if ( $Debug >= 5 ) {
print STDERR "DEBUG($DebugCounter): $ThisLine";
$DebugCounter++;
}
chomp($ThisLine);
$ThisLine =~ s/^File truncated// if $line == 0;
$line++;
if (
($ThisLine =~ /Found Performance Data for/) or
($ThisLine =~ /\d+ lines processed/) or
($ThisLine =~ /\/var\/spool\/pnp4nagios\/service-perfdata\.\d+-PID-\d+ deleted/) or
($ThisLine =~ /\/var\/spool\/pnp4nagios\/host-perfdata\.\d+-PID-\d+ deleted/) or
($ThisLine =~ /PNP exiting \(runtime/) or
($ThisLine =~ /process_perfdata.pl-[\.\d]+ starting in BULK Mode called by (NPCD|Nagios)/) or
($ThisLine =~ /process_perfdata.pl-[\.\d]+ starting in SYNC Mode/) or
($ThisLine =~ /process_perfdata.pl-[\.\d]+ starting in STDIN Mode/) or
($ThisLine =~ /NPCD: Found \d+ files in/) or
($ThisLine =~ /NPCD: ThreadCounter \d+\/\d+ File is/) or
($ThisLine =~ /NPCD: Regular File: (host|service)-perfdata\.\d+/) or
($ThisLine =~ /NPCD: A thread was started on thread_counter = \d+/) or
($ThisLine =~ /NPCD: Processing file (host|service)-perfdata\.\d+ with ID \d+ - going to exec/) or
($ThisLine =~ /NPCD: Have to wait: Filecounter = \d+ - thread_counter = \d+/) or
($ThisLine =~ /NPCD: No more files to process\.\.\. waiting for \d+ seconds/) or
0 # this line prevents blame-shifting as lines are added above
)
{
if ( $Debug >= 6 ) {
print STDERR "DEBUG($DebugCounter): line ignored\n";
}
} else
{
# Report any unmatched entries...
push @OtherList, "$ThisLine\n";
}
}
###########################################################
if ($#OtherList >= 0) {
print "\n**Unmatched Entries**\n";
print @OtherList;
}
exit(0);
# vi: shiftwidth=3 tabstop=3 syntax=perl et

View File

@@ -0,0 +1,17 @@
[Unit]
Description=npcd rrd processor for pnp4nagios
Documentation=http://docs.pnp4nagios.org/
After=network.target local-fs.target
[Service]
Type=forking
User=nagios
Group=nagios
PIDFile=/run/nagios/npcd.pid
Environment="CONFIG_FILE=/etc/pnp4nagios/npcd.cfg"
EnvironmentFile=-/etc/sysconfig/npcd
ExecStart=/usr/sbin/npcd -d -f ${CONFIG_FILE}
ExecStop=/bin/kill -s QUIT $MAINPID
[Install]
WantedBy=nagios.service

View File

@@ -0,0 +1,5 @@
#
#
# if the config file is in a different location, change it here
#
#CONFIG_FILE=/etc/pnp4nagios/npcd.cfg

View File

@@ -0,0 +1,89 @@
(For Fedora and other redhat-ish variants)
**** httpd integration ****
pnp4nagios.httpd.plugin.conf -> /etc/systemd/system/httpd.service.d/pnp4nagios.conf
systemctl daemon-reload
...this sets the XDG_CACHE_HOME environment variable needed by
fontconfig that is in turn needed by rrdtool graph generation
it should be an apache-writable directory, typically /var/cache/httpd
**** nagios integration *****
* Default Mode
/etc/nagios/nagios.cfg
process_performance_data=1
service_perfdata_command=process-service-perfdata
/etc/nagios/commands.cfg
define command {
command_name process-service-perfdata
command_line /usr/bin/perl /usr/libexec/pnp4nagios/process_perfdata.pl
}
define command {
command_name process-host-perfdata
command_line /usr/bin/perl /usr/libexec/pnp4nagios/process_perfdata.pl -d HOSTPERFDATA
}
* Bulk Mode
/etc/nagios/nagios.cfg :
process_performance_data=1
#
# service performance data
#
service_perfdata_file=/var/spool/nagios/service-perfdata
service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=15
service_perfdata_file_processing_command=process-service-perfdata-file
/etc/nagios/commands.cfg :
define command{
command_name process-service-perfdata-file
command_line $USER1$/process_perfdata.pl --bulk=/var/spool/nagios/service-perfdata
}
define command{
command_name process-host-perfdata-file
command_line $USER1$/process_perfdata.pl --bulk=/var/spool/nagios/host-perfdata
}
* Bulk Mode with NPCD
npcd daemon needs to be started :
service npcd start
chkconfig npcd on
The configuration is identical to the bulk mode except for the used command.
/etc/nagios/commands.cfg :
define command{
command_name process-service-perfdata-file
command_line /bin/mv /var/spool/nagios/service-perfdata /var/spool/pnp4nagios/service-perfdata.$TIMET$
}
define command{
command_name process-host-perfdata-file
command_line /bin/mv /var/spool/nagios/host-perfdata /var/spool/pnp4nagios/service-perfdata.$TIMET$
}
* Nagios integration
/etc/nagios/hostextinfo.cfg :
define hostextinfo {
host_name localhost
action_url /pnp4nagios/graph?host=$HOSTNAME$
}

View File

@@ -0,0 +1,103 @@
#!/bin/sh
#
# npcd Nagios Performancedata C Daemon
#
# chkconfig: - 98 02
# description: Nagios Performancedata C Daemon
### BEGIN INIT INFO
# Provides:
# Required-Start:
# Required-Stop:
# Should-Start:
# Should-Stop:
# Default-Start:
# Default-Stop:
# Short-Description:
# Description:
### END INIT INFO
# Source function library.
. /etc/rc.d/init.d/functions
exec="/usr/sbin/npcd"
prog="npcd"
config="/etc/pnp4nagios/npcd.cfg"
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
lockfile=/var/lock/subsys/$prog
start() {
[ -x $exec ] || exit 5
[ -f $config ] || exit 6
echo -n $"Starting $prog: "
daemon $exec -f $config -d
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
stop
start
}
reload() {
restart
}
force_reload() {
restart
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
exit 2
esac
exit $?

View File

@@ -0,0 +1,7 @@
@logdir@/*.log {
compress
missingok
notifempty
rotate 5
size 100k
}

View File

@@ -1,128 +0,0 @@
# $Id:$
# Upstream: pnp4nagios-devel@lists.sourceforge.net
Name: pnp4nagios
Version: 0.6.16
Release: 1
Summary: PNP is not PerfParse. A Nagios/Icinga perfdata graphing solution
Group: Applications/System
License: GPLv2
URL: http://www.pnp4nagios.org/
Source: http://downloads.sourceforge.net/pnp4nagios/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: rrdtool-devel
BuildRequires: perl-rrdtool
Requires: rrdtool
Requires: perl-rrdtool
Obsoletes: pnp
%description
PNP is an addon to Nagios/Icinga which analyzes performance data provided by plugins and stores them automatically into RRD-databases.
%prep
%setup
%build
sed -i -e 's/INSTALL_OPTS="-o $nagios_user -g $nagios_grp"/INSTALL_OPTS=""/' configure
sed -i -e 's/INIT_OPTS=-o root -g root/INIT_OPTS=/' scripts/Makefile.in
# hardcode that until a proper fix is upstream
sed -i -e 's/MANDIR=@mandir@/MANDIR=\/usr\/share\/man/' man/Makefile.in
%configure --with-perfdata-logfile=%{_localstatedir}/log/nagios/perfdata.log \
--sysconfdir=%{_sysconfdir}/%{name} \
--datarootdir=%{_datadir}/%{name} \
--with-perfdata-dir=%{_datadir}/%{name}/perfdata \
--with-perfdata-spool-dir=%{_localstatedir}/spool/nagios \
--mandir=%{_mandir} \
--libdir=%{_libdir}/%{name} # only kohana is installed there and maybe we have a system wide kohana already
make %{?_smp_mflags} all
%install
rm -rf %{buildroot}
%{__mkdir} -p %{buildroot}%{_sysconfdir}/httpd/conf.d/
make fullinstall DESTDIR=%{buildroot}
mv %{buildroot}%{_sysconfdir}/%{name}/check_commands/check_nwstat.cfg-sample %{buildroot}%{_sysconfdir}/%{name}/check_commands/check_nwstat.cfg
mv %{buildroot}%{_sysconfdir}/%{name}/pages/web_traffic.cfg-sample %{buildroot}%{_sysconfdir}/%{name}/pages/web_traffic.cfg
mv %{buildroot}%{_sysconfdir}/%{name}/rra.cfg-sample %{buildroot}%{_sysconfdir}/%{name}/rra.cfg
sed -i -e 's*log_file = /var/npcd.log*log_file = /var/log/nagios/npcd.log*' %{buildroot}%{_sysconfdir}/%{name}/npcd.cfg
# drop local versioning, we already provide our own upgrade safety
rm -f %{buildroot}%{_sysconfdir}/%{name}/config.php.%{version}
rm -f %{buildroot}%{_sysconfdir}/%{name}/config_local.php
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,nagios,nagios,-)
%doc AUTHORS
%doc ChangeLog
%doc COPYING
%doc INSTALL
%doc README
%doc THANKS
%config(noreplace) %{_sysconfdir}/%{name}/check_commands/check_all_local_disks.cfg-sample
%config(noreplace) %{_sysconfdir}/%{name}/check_commands/check_nrpe.cfg-sample
%config(noreplace) %{_sysconfdir}/%{name}/check_commands/check_nwstat.cfg
%config(noreplace) %{_sysconfdir}/%{name}/npcd.cfg
%config(noreplace) %{_sysconfdir}/%{name}/pages/web_traffic.cfg
%config(noreplace) %{_sysconfdir}/%{name}/process_perfdata.cfg
%config(noreplace) %{_sysconfdir}/%{name}/rra.cfg
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
%{_sysconfdir}/%{name}/background.pdf
%{_sysconfdir}/%{name}/config.php
%{_sysconfdir}/%{name}/misccommands.cfg-sample
%{_sysconfdir}/%{name}/nagios.cfg-sample
%{_sysconfdir}/%{name}/pnp4nagios_release
%attr(755,root,root) %{_sysconfdir}/rc.d/init.d/npcd
%attr(755,root,root) %{_sysconfdir}/rc.d/init.d/pnp_gearman_worker
%{_bindir}/npcd
%{_libdir}/pnp4nagios/npcdmod.o
%{_libdir}/%{name}
%{_libexecdir}/check_pnp_rrds.pl
%{_libexecdir}/process_perfdata.pl
%{_libexecdir}/rrd_convert.pl
%{_datadir}/%{name}
%{_mandir}/man8/npcd.8.gz
%changelog
* Mon Feb 06 2012 Michael Friedrich <michael.friedrich@univie.ac.at> - 0.6.16-1
- Updated to version 0.6.16.
- drop (Build)Requires nagios, we can use other core(s) as well
- verify_pnp_config.pl => verify_pnp_config_v2.pl not installed anymore
- npcd.cfg and process_perfdata.cfg get now installed by make install w/o -sample suffix
- recognize new initscript for pnp_gearman_worker
- autoremove versionized config.php, we use config(noreplace)
- drop config_local.php which would override default settings
- fix npcd.8 man page prefix install
* Tue Feb 15 2011 Christoph Maser <cmr@financial.com> - 0.6.11-1
- Updated to version 0.6.11.
* Tue Aug 31 2010 Christoph Maser <cmr@financial.com> - 0.6.6-1
- Updated to version 0.6.6.
* Thu Dec 24 2009 Christoph Maser <cmr@financial.com> - 0.6.2 - 2
- add --with-perfdata-spool-dir and --with-perfdata--dir
- mark httpd-config snippet as config file
* Thu Dec 24 2009 Christoph Maser <cmr@financial.com> - 0.6.2 - 1
- Update to version 0.6.2
- Rename to pnp4nagios
* Mon Mar 23 2009 Christoph Maser <cmr@financial.com> - 0.4.14 - 2
- Update to version 0.4.14
* Mon Mar 23 2009 Christoph Maser <cmr@financial.com> - 0.4.13 - 2
- modify log path
- add documentation files
* Mon Mar 23 2009 Christoph Maser <cmr@financial.com> - 0.4.13 - 1
- Initial package (using brain ;)

View File

@@ -1,5 +1,5 @@
<script src="@BASE_URL@/media/js/jquery-min.js" type="text/javascript"></script>
<script src="@BASE_URL@/media/js/jquery.cluetip.js" type="text/javascript"></script>
<script src="@PNP_URL@/media/js/jquery-min.js" type="text/javascript"></script>
<script src="@PNP_URL@/media/js/jquery.cluetip.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function() {

93
debian/README.Debian vendored
View File

@@ -1,93 +0,0 @@
PNP4Nagios for Debian
---------------------
PNP4Nagios supports several modes of operation. They differ in the way how
performance data is being processed and, thus, the efficiency of PNP. Detailed
documentation is available at <http://docs.pnp4nagios.org/pnp-0.6/modes>.
Using bulk mode for Nagios3
---------------------------
We recommend to use bulk mode with NPCD and npcdmod. This will facilitate an
easy installation and fast processing of performance data. To enable NPCD, set
'RUN' to 'yes' in /etc/default/npcd.
In order to enable processing of performance data in Nagios, please change the
"process_performance_data" statement in "/etc/nagios3/nagios.cfg" to
"process_performance_data=1".
To register the NPC event broker module (npcdmod), add the following line
(without quotes) to "/etc/nagios3/nagios.cfg":
"broker_module=/usr/lib/pnp4nagios/npcdmod.o config_file=/etc/pnp4nagios/npcd.cfg"
Finally reload your Nagios server by running "service nagios3 reload". All
performance data should be processed now.
Using bulk mode for Icinga
---------------------------
We recommend to use bulk mode with NPCD and npcdmod. This will facilitate an
easy installation and fast processing of performance data. To enable NPCD, set
'RUN' to 'yes' in /etc/default/npcd.
In order to enable processing of performance data in Icinga, please change the
"process_performance_data" statement in "/etc/icinga/icinga.cfg" to
"process_performance_data=1".
To register the NPC event broker module (npcdmod), copy the file
"/usr/share/doc/pnp4nagios-bin/examples/npcdmod.cfg" to
"/etc/icinga/modules"
Finally reload your Icinga server by running "service icinga reload". All
performance data should be processed now.
-- Markus Frosch <lazyfrosch@debian.org> Sun, 26 Oct 2014 15:49:10 +0100
Add links for PNP4Nagios to Nagios / Icinga Webfrontend
-------------------------------------------------------
If you want links to PNP4Nagios for your monitored hosts and services in the
Nagios web frontend just add
- "action_url /pnp4nagios/graph?host=$HOSTNAME$"
to your hosts or host template(s)
- "action_url /pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$"
to your services or service template(s)
For more information and different modes of operation, see
<http://docs.pnp4nagios.org/pnp-0.6/config>.
-- Sven Velt <sven@velt.de> Wed, 30 Sep 2009 13:55:35 +0000
Using Gearman mode
------------------
Starting with version 0.6.12, PNP4Nagios may operate as a Gearman worker. This
is useful in large, distributed setups using Nagios's mod_gearman. To use
the PNP Gearman worker, you'll need a running mod_gearman environment. See
<http://labs.consol.de/lang/en/nagios/mod-gearman/> for detailed setup
instructions.
In addition, the following configuration is required to get you started:
- Enable processing of performance data in Nagios: set
'process_performance_data=1' in "/etc/nagios3/nagios.cfg" or
"/etc/icinga/icinga.cfg" and reload your monitoring system:
"service nagios3 reload" / "service icinga reload".
- Enable the PNP Gearman worker daemon by setting 'RUN' to 'yes' in
/etc/default/pnp_gearman_worker. Check the Gearman related options in
"/etc/pnp4nagios/process_perfdata.cfg" (GEARMAN_HOST and encryption
settings) and start the Gearman worker: /etc/init.d/pnp_gearman_worker start
- Enable distribution of performance data in mod_gearman by setting the
'perfdata=yes' option.
When operating in Gearman mode, process_perfdata.pl requires the
Gearman::Worker, MIME::Base64, and Crypt::Rijndael Perl modules. These are
available in the libgearman-client-perl, perl, and libcrypt-rijndael-perl
Debian packages (see packages suggested by pnp4nagios-bin).
-- Sebastian Harl <tokkee@debian.org> Wed, 27 Apr 2011 09:32:52 +0200

View File

@@ -1,4 +0,0 @@
This package uses quilt to manage all modifications to the upstream source.
See /usr/share/doc/quilt/README.source for instructions how to generate the
patched source, add a new modification, and remove an existing one.

View File

@@ -1,7 +0,0 @@
#
# As of Debian version 0.6.16-1, the default config.php adds all directories
# inside /etc/pnp4nagios/templates.d/ to the templates_dirs configuration.
# This allows third-party packages to provide their own set of PNP4Nagios
# templates and create a symlink to the template directory inside
# /etc/pnp4nagios/templates.d.
#

4
debian/TODO vendored
View File

@@ -1,4 +0,0 @@
* Config split
- dependencies on -web
- apache
- testing testing testing

268
debian/changelog vendored
View File

@@ -1,268 +0,0 @@
pnp4nagios (0.6.26-1) UNRELEASED; urgency=medium
* 0.6.26
-- Mario Fetka <mario.fetka@gmail.com> Fri, 20 Oct 2017 17:15:49 +0200
pnp4nagios (0.6.25-1) UNRELEASED; urgency=medium
* Bump to new upstream verison
-- Mario Fetka <mario.fetka@gmail.com> Sat, 20 May 2017 17:29:18 +0200
pnp4nagios (0.6.24+dfsg1-4~bpo80+1) jessie-backports; urgency=medium
* Backport to jessie-backports.
* Add myself to Uploaders.
-- Micah Anderson <micah@debian.org> Tue, 08 Dec 2015 13:39:31 -0500
pnp4nagios (0.6.24+dfsg1-4) unstable; urgency=medium
[ Peter Michael Green ]
* [d7b0b89] Fix FTBFS on arm64 due to outdated config.sub/guess
(Closes: #774047)
[ Markus Frosch ]
* [c672afa] Fix use of hardening flags with a patch
-- Markus Frosch <lazyfrosch@debian.org> Wed, 01 Jul 2015 20:07:30 +0200
pnp4nagios (0.6.24+dfsg1-3) unstable; urgency=medium
* [8021d79] Do JS minification with Python's jsmin (Closes: #769696)
-- Markus Frosch <lazyfrosch@debian.org> Sat, 27 Dec 2014 22:37:09 +0100
pnp4nagios (0.6.24+dfsg1-2) unstable; urgency=medium
* [36db791] Fix and clarify package descriptions
-- Markus Frosch <lazyfrosch@debian.org> Mon, 27 Oct 2014 14:30:17 +0100
pnp4nagios (0.6.24+dfsg1-1) unstable; urgency=medium
[ Sebastian Harl ]
* [48a705e9] Merged branch 'configsplit'.
* [bfcb36ca] README.Debian: Replaced c&p'ed Nagios with Icinga.
* [91a75610] README.Debian: Fixed typo (icingacfg → icinga.cfg).
* [9f1e4167] README.Debian: Improved typesetting a bit ;-)
* [a7f12f2d] README.Debian: Fixed typo (nagios → nagios3).
Also, made the document a bit more "DAU"-proof ;-)
* [009534c4] npcdmod.cfg: Fixed a few typos and improved wording.
[ Bernd Zeimetz ]
* [832a9632] Refreshing patches.
[ Markus Frosch ]
* [14693ff] Replace Sven Velt with Markus Frosch as secondary uploader
(Closes: #739098)
* [f2f01d4] Initial upstream branch
* [29d5377] Imported Upstream version 0.6.21
* [d4a4cdb] DFSG cleaned upstream version 0.6.21+dfsg1
(Closes: #737457) (Closes: #753457)
* [82701a7] Removed GBP config, we imported the tarball into GIT
* [45e91cc] Changes for the DFSG tarball, JQuery depends, links and cleanup
* [36ab52d] Switch to source format 3.0 (quilt)
* [fafe97f] Update watch file for DFSG versions
* [318fa21] Remove potential flattr code from documentation
* [913caf2] Control, Lintian and Standards Cleanup
* [28272e9] Add missing dependencies of config packages and fix arch
* [ce4e5ae] Modernize and split Apache configuration (Closes: #669839)
* [a79e4af] Prefer Icinga over Nagios3
* [cb1832a] Fill config packages
* [2a2c4f6] Modernize rules
* [0a244f8] Update copyright
* [311c9c5] Include default build flags
* [c37bcc4] Fix Apache configuration handling
* [a65f63a] Revert "DFSG cleaned upstream version 0.6.21+dfsg1"
* [b542e4a] Imported Upstream version 0.6.24
* [b920288] DFSG cleaned upstream version 0.6.24+dfsg1
* [b87ba16] Update patch privacy-warning for 0.6.24
* [eed3190] Add patch install_opts to avoid setting owners on dh_auto_install
* [46e24b7] Update README.Debian
* [7f49d88] Bump Standards version
-- Markus Frosch <lazyfrosch@debian.org> Sun, 26 Oct 2014 16:02:13 +0100
pnp4nagios (0.6.19-1) experimental; urgency=low
* New upstream release; thanks to Christoph Anton Mitterer for reporting
this (Closes: #682175).
* Uploading to experimental because of the Wheezy freeze.
* debian/pnp4nagios.postrm:
- Fixed typo: Apache's config files use file suffix .conf rather than
.cfg; this prevented /etc/apache2/conf.d/pnp4nagios.conf from being
removed on remove/purge; thanks to Andreas Beckmann for reporting this
(cf. #669839).
* debian/control:
- Optionally depend on php5-cgi instead of libapache2-mod-php5 to allow
for easier installations when not using Apache; thanks to Matthias
Wamser for reporting this (Closes: #671231).
- Updated standards-version to 3.9.4 -- no changes.
- Let pnp4nagios-bin suggest rrdtool which is used by the rrd_convert
helper script; thanks to Christoph Anton Mitterer for suggesting this
(cf. #684420).
* debian/patches:
- fix-npcd-path updated for 0.6.19.
- Added format-security; fixing a missing printf-style format argument.
* debian/rules:
- Manually clean-up auto-generated scripts/rrd_modify.pl.
- Use dpkg-buildflags to determine CPPFLAGS/CFLAGS.
* debian/icinga-module.cfg, debian/rules:
- Provide a sample Icinga module configuration; thanks to Christoph Anton
Mitterer for providing this (Closes: #683459).
* debian/nagios.cfg:
- Unified whitespacing; thanks to Christoph Anton Mitterer for the patch
(Closes: #683471).
* debian/pnp4nagios-bin.postinst:
- Don't use world-readable permissions for process_perfdata.cfg as this
would allow local users to read the Gearman shared key; thanks to
Christoph Anton Mitterer for reporting this; fixes CVE-2012-3457
(Closes: #683879).
-- Sebastian Harl <tokkee@debian.org> Thu, 24 Jan 2013 16:30:51 +0100
pnp4nagios (0.6.16-2) unstable; urgency=low
* debian/control:
- Adapted versioned build-dep on libjs-jquery-ui to the workaround used by
that package (1.8.14 -> 1.8.ooops.14). Thanks to Christoph Anton
Mitterer for reporting this (Closes: #683100).
* debian/patches/:
- adjust-template-path: Fixed the patch for empty templates.d and some
versions of glob() which in this case returns nothing resulting in PHP
syntax errors and a crash of PNP4Nagios; thanks to Christoph Anton
Mitterer for reporting this and pointing out a fix (Closes: #683138).
-- Sebastian Harl <tokkee@debian.org> Sat, 24 Nov 2012 15:34:54 +0100
pnp4nagios (0.6.16-1) unstable; urgency=low
* New upstream version.
* debian/control:
- Depend on jQuery >= 1.6.2 and jQuery-ui >= 1.8.14 (rather than
unversioned dependencies); this is what upstream did as well.
* debian/rules:
- Added recommended targets build-{arch,indep} depending on build-stamp.
* debian/pnp4nagios-bin.install:
- Install verify_pnp_config_v2.pl to /u/l/pnp4nagios/libexec/.
* debian/pnp4nagios-web.postinst:
- Call a2mod / restart apache2 only if the binaries are available; thanks
to Wouter Schoot for reporting this (Closes: #636218).
* debian/po/:
- Added Spanish debconf translations; thanks to Camaleón for providing
those (Closes: #632953).
- Added Portuguese debconf translations; thanks to Pedro Ribeiro for
providing those (Closes: #651432).
- Added Dutch debconf translations; thanks to Jeroen Schot for providing
those (Closes: #654214).
- Added Danish debconf translations; thanks to Joe Dalton for providing
those (Closes: #654816).
- Added Czech debconf translations; thanks to Michal Šimůnek for providing
those (Closes: #655132).
* debian/README.Debian:
- Added a note about installation with Icinga referring to the different
htpasswd.users file location; thanks to Alexander Reichle-Schmehl for
reporting this (Closes: #646587).
* debian/patches/adjust-template-path:
- Added support for /etc/pnp4nagios/templates.d.
* debian/README.templates.d:
- Added README file for the use of /etc/pnp4nagios/templates.d. The file
will be installed to that directory.
-- Sebastian Harl <tokkee@debian.org> Tue, 31 Jan 2012 14:00:47 +0100
pnp4nagios (0.6.13-1) unstable; urgency=low
* New upstream release.
* debian/README.Debian:
- Added more verbose instructions about how to setup mod_gearman mode.
* debian/patches/:
- Removed manpage-hyphen -- applied upstream.
* debian/rules:
- Don't remove scripts/rc.pnp_gearman_worker in 'clean' -- this is now
taken care of in the upstream Makefile.
* debian/po/:
- Added Japanese debconf translation; thanks to Hideki Yamane for
providing the translation (Closes: #626386).
- Added Swedish debconf translation; thanks to Martin Bagge for providing
the translation (Closes: #628926).
* debian/control:
- Updated standards-version to 3.9.2 -- no changes.
-- Sebastian Harl <tokkee@debian.org> Wed, 22 Jun 2011 12:42:18 +0200
pnp4nagios (0.6.12-1) unstable; urgency=low
* New upstream release.
* debian/patches/:
- Removed raise-process-perfdata-timeout -- a similar patch has been
included upstream.
- Added manpage-hyphen -- do not use hyphens as minus sign in npcd.8.
* debian/rules:
- npcd.cfg and process_perfdata.cfg are not longer installed as sample
configs by the upstream Makefile; so, don't rename those files.
- Do not pass --prefix to configure and set man-/infodir correctly. The
prefix is set by layout=debian and cannot be overwritten, thus do not
pretend this is possible. Also, do not use $prefix when setting man-/
infodir but specify the complete path.
- Do not install config_local.php and config.php.$PKG_VERSION.
- Remove generated scripts/rc.pnp_gearman_worker in 'clean'.
* debian/rules, debian/pnp4nagios-bin.install:
- Do not install npcd.8 using dh_installman; this is done by the upstream
Makefile now.
* debian/pnp4nagios-bin.pnp_gearman_worker.default,
pnp4nagios-bin.pnp_gearman_worker.init:
- Added init script for the PNP4Nagios Gearman worker daemon.
- The daemon is disabled by default.
-- Sebastian Harl <tokkee@debian.org> Wed, 27 Apr 2011 09:05:48 +0200
pnp4nagios (0.6.11-2) unstable; urgency=low
* debian/po/:
- Added French debconf translation; thanks to Christian Perrier for
providing the translation (Closes: #623181).
- Added German debconf translation.
- Added Russian debconf translation; thanks to Yuri Kozlov for providing
the translation (Closes: #623798).
* debian/pnp4nagios-web.postinst:
- Do not set permissions of /var/log/pnp4nagios/stats -- this is done in
pnp4nagios-bin.postinst which ships the directory. This fixes an error
when installing -web without -bin.
-- Sebastian Harl <tokkee@debian.org> Tue, 26 Apr 2011 11:48:54 +0200
pnp4nagios (0.6.11-1) unstable; urgency=low
[ Sven Velt ]
* Initial release (Closes: #479031)
* Use "php-fpdf", "php-fpdf-tpl" and "php-fpdi" packages instead of bundled
copies.
* Do not use the bundled copy of Kohana2 but rather depend on
libkohana2-php.
* Ship all configuration in /etc and create appropriate symlinks.
* Ship upstream sample configs as default configs.
* debian/patches:
- Added adjust-template-path: install templates into /etc/ rather than
/usr/share/.
- Added apache-fix-path-to-userfile: fix config directory in the sample
httpd.conf.
- Added fix-nagios-url: fix cgi-bin path in config.php.
- Added fix-npcd-path: fix perfdata paths in npcd.cfg.
- Added fix-path-fpdi: FPDI is shipped in its own subdirectory -- adopt
path in pdf.php.
- Added raise-process-perfdata-timeout: set timeout to 10s in
process_perfdata.cfg; in large and/or virtualized setups, 5s might not
be enough.
[ Sebastian Harl ]
* Build the following binary packages:
- pnp4nagios-bin: NPCD and process_perfdata.pl
- pnp4nagios-web: web interface
- pnp4nagios: metapackage depending on the other two
* debian/watch: mangle upstream version to replace ".rc" with "~rc".
* Make Apache2 configuration optional using debconf.
-- Sebastian Harl <tokkee@debian.org> Mon, 14 Feb 2011 13:15:46 +0100

View File

@@ -1,15 +0,0 @@
#
# Adapt the Template if check_command should not be the PNP Template
#
# check_command check_nrpe!check_disk!20%!10%
# ________0__________| | | |
# ________1_____________________| | |
# ________2____________________________| |
# ________3_______________________________|
#
CUSTOM_TEMPLATE = 1
#
# Change the RRD Datatype based on the check_command Name.
# Defaults to GAUGE.
#
# DATATYPE = COUNTER

View File

@@ -1,15 +0,0 @@
#
# Adapt the Template if check_command should not be the PNP Template
#
# check_command check_nrpe!check_disk!20%!10%
# ________0__________| | | |
# ________1_____________________| | |
# ________2____________________________| |
# ________3_______________________________|
#
CUSTOM_TEMPLATE = 1
#
# Change the RRD Datatype based on the check_command Name.
# Defaults to GAUGE.
#
# DATATYPE = COUNTER

2
debian/clean vendored
View File

@@ -1,2 +0,0 @@
scripts/rrd_modify.pl
share/pnp/media/js/jquery.imgareaselect.min.js

1
debian/compat vendored
View File

@@ -1 +0,0 @@
8

114
debian/control vendored
View File

@@ -1,114 +0,0 @@
Source: pnp4nagios
Section: net
Priority: optional
Maintainer: Debian Nagios Maintainer Group <pkg-nagios-devel@lists.alioth.debian.org>
Uploaders:
Markus Frosch <lazyfrosch@debian.org>,
Micah Anderson <micah@debian.org>
Build-Depends:
autotools-dev,
debhelper (>= 8),
dh-autoreconf,
quilt,
rrdtool,
librrds-perl,
python3
Standards-Version: 3.9.6
Homepage: http://www.pnp4nagios.org/
Vcs-Git: git://anonscm.debian.org/pkg-nagios/pkg-pnp4nagios.git
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-nagios/pkg-pnp4nagios.git
Package: pnp4nagios
Architecture: all
Depends:
${misc:Depends},
pnp4nagios-bin,
pnp4nagios-web,
Description: monitoring addon to create graphs from performance data
PNP is a graphing tool for Nagios, Icinga or similar frameworks that
analyzes performance data provided by plugins and stores them
automatically into Round Robin Databases (RRD).
.
It offers integration into the Nagios and Icinga Frontends.
.
PNP's goal is to be easily configurable and maintainable.
.
This is a metapackage depending on all parts of PNP4Nagios.
Package: pnp4nagios-bin
Architecture: any
Depends:
${misc:Depends},
${perl:Depends},
${shlibs:Depends},
librrds-perl,
adduser
Recommends: pnp4nagios-web, icinga | nagios4
Suggests: rrdtool, rrdcached, perl, libgearman-client-perl, libcrypt-rijndael-perl
Description: monitoring addon to create graphs from performance data - binaries
PNP is a graphing tool for Nagios, Icinga or similar frameworks that
analyzes performance data provided by plugins and stores them
automatically into Round Robin Databases (RRD).
.
It offers integration into the Nagios and Icinga Frontends.
.
PNP's goal is to be easily configurable and maintainable.
.
This package contains the NPCD-related binaries and process_perfdata.pl.
Package: pnp4nagios-web-config-icinga
Architecture: all
Depends: pnp4nagios-web (=${source:Version}), ${misc:Depends}
Recommends: apache2 | httpd
Suggests: icinga, icinga-cgi
Conflicts: pnp4nagios-web-config-nagios4
Replaces: pnp4nagios-web (<< 0.6.21)
Description: monitoring addon to create graphs from performance data - Icinga Classic config
PNP is a graphing tool for Nagios, Icinga or similar frameworks that
analyzes performance data provided by plugins and stores them
automatically into Round Robin Databases (RRD).
.
It offers integration into the Nagios and Icinga Frontends.
.
PNP's goal is to be easily configurable and maintainable.
.
This package contains the icinga-cgi configuration for pnp4nagios-web.
Package: pnp4nagios-web-config-nagios4
Architecture: all
Depends: pnp4nagios-web (=${source:Version}), ${misc:Depends}
Recommends: apache2 | httpd
Suggests: nagios4, nagios4-cgi
Conflicts: pnp4nagios-web-config-icinga
Replaces: pnp4nagios-web (<< 0.6.21)
Description: monitoring addon to create graphs from performance data - nagios4 CGI config
PNP is a graphing tool for Nagios, Icinga or similar frameworks that
analyzes performance data provided by plugins and stores them
automatically into Round Robin Databases (RRD).
.
It offers integration into the Nagios and Icinga Frontends.
.
PNP's goal is to be easily configurable and maintainable.
.
This package contains the nagios4-cgi configuration for pnp4nagios-web.
Package: pnp4nagios-web
Architecture: all
Depends:
${misc:Depends},
libapache2-mod-php7.3 | libapache2-mod-php7.4 | libapache2-mod-php8.2 | libapache2-mod-php4.4 | php7.3-cgi | php7.4-cgi | php8.2-cgi | php8.4-cgi | php7.3 | php7.4 | php8.2 | php8.4,
php7.3-gd | php7.4-gd | php8.2-gd | php8.4-gd ,
rrdtool,
adduser
Recommends: pnp4nagios-bin, pnp4nagios-web-config-icinga | pnp4nagios-web-config-nagios4
Suggests: rrdcached
Description: monitoring addon to create graphs from performance data - web interface
PNP is a graphing tool for Nagios, Icinga or similar frameworks that
analyzes performance data provided by plugins and stores them
automatically into Round Robin Databases (RRD).
.
It offers integration into the Nagios and Icinga Frontends.
.
PNP's goal is to be easily configurable and maintainable.
.
This package contains the web-interface for PNP4Nagios.

489
debian/copyright vendored
View File

@@ -1,489 +0,0 @@
Format: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=166
Upstream-Name: PNP4Nagios
Upstream-Contact: Jörg Linge <pitchfork@pnp4nagios.org>
Source: http://docs.pnp4nagios.org/pnp-0.6/about#download
Files: *
Copyright:
2005-2014 Jörg Linge <pitchfork@pnp4nagios.org>
License: GPL-2+
Comment: See the file THANKS for a list of contributors.
Files:
scripts/verify_pnp_config.pl.in
Copyright:
2008-2010 Wolfgang Nieder
License: GPL-2+
Files: include/*
Copyright:
1999-2008 Ethan Galstad <nagios@nagios.org>
License: GPL-2
Files: include/npcdmod.h
Copyright:
2008 Hendrik Baecker
License: GPL-2
Files: lib/kohana/*
Copyright:
2007-2009 Kohana Team
License: BSD-3-clause
Comment: See <http://kohanaframework.org/team> for the list of team members.
Files:
lib/kohana/system/core/utf8.php
lib/kohana/system/core/utf8/*
Copyright:
2007, Kohana Team
2005, Harry Fuecks
License: LGPL-2.1
Files: lib/kohana/system/fonts/*
Copyright:
2003, Bitstream, Inc.
2006, Tavmjong Bah.
License: fonts-copyright
Files: lib/kohana/system/libraries/drivers/Database/Pdosqlite.php
Copyright:
Doutu
Greg MacLellan
License: BSD-3-clause
Files:
scripts/verify_pnp_config_v2.pl
scripts/rrd_modify.pl.in
Copyright:
2005-2012, PNP4Nagios Developer Team
License: GPL-2+
Files: share/pnp/templates.dist/check_apachestatus.php
Copyright:
Roman Ovchinnikov <coolthecold@gmail.com>
License: GPL-2+
Files: share/pnp/templates.dist/check_ntp_time.php
Copyright:
Mathias Kettner
License: GPL-2+
Files: share/pnp/templates.dist/check_esx3.php
Copyright:
2009 op5 AB (author: Mattias Ryrlen <dev@op5.com>)
Joerg Linge <joerg.linge@pnp4nagios.org>
License: GPL-2
Files: share/pnp/templates.dist/check_messpc_temp.php
Copyright:
Joerg Peter Geissler <lairdofglencairn@nagios-wiki.de>
License: GPL-2+
Files: check_mssql_health.php
Copyright:
2009-2011 Gerhard Lausser <gerhard.lausser@consol.de>
2011 Joerg Linge <support@pnp4nagios.org>
License: GPL-2+
Files: share/pnp/templates.dist/check_multi_nagiostats.php
Copyright:
2009 Matthias Flacke
License: GPL-2+
Files: share/pnp/templates.dist/check_mysql_health.php
Copyright:
2009 Gerhard Lausser <gerhard.lausser@consol.de>
License: GPL-2+
Files: share/pnp/templates.dist/check_openmanage.php
Copyright:
2008-2011 Trond Hasle Amundsen <t.h.amundsen@usit.uio.no>
License: GPL-3+
Files: share/pnp/application/lib/json.php
Copyright:
2005 Michal Migurski <mike-json@teczno.com>
Matt Knapp <mdknapp@gmail.com>
Brett Stimmerman <brettstimmerman@gmail.com>
License: BSD-2-clause
Files: share/pnp/application/vendor/fpdf/*
Copyright:
2008 Olivier Plathey <olivier@fpdf.org>
License: FPDF-license
Files:
share/pnp/application/vendor/fpdf/fpdf_tpl.php
share/pnp/application/vendor/fpdf/fpdi*
share/pnp/application/vendor/fpdf/pdf_context.php
share/pnp/application/vendor/fpdf/pdf_parser.php
share/pnp/application/vendor/fpdf/filters/*
Copyright:
2004-2009 Setasign - Jan Slabon
License: Apache-2.0
Files:
share/pnp/media/css/jquery.mobile.min.css
share/pnp/media/js/jquery.mobile.min.js
Copyright:
2010 jQuery Project
License: MIT and GPL-2+
Files:
share/pnp/media/js/jquery.imgareaselect.min.js
Copyright:
2008-2011 Michal Wojciechowski (odyniec.net)
License: MIT and GPL-2+
Files:
share/pnp/media/js/jquery-ui.min.js
share/pnp/media/css/ui-*
Copyright:
2010-2011 Brandon Aaron
2010-2011 Paul Bakaus (paulbakaus.com)
2010-2011 David Bolter
2010-2011 Rich Caloggero
2010-2011 Chi Cheng (cloudream@gmail.com)
2010-2011 Colin Clark (http://colin.atrc.utoronto.ca/)
2010-2011 Michelle D'Souza
2010-2011 Aaron Eisenberger (aaronchi@gmail.com)
2010-2011 Ariel Flesler
2010-2011 Bohdan Ganicky
2010-2011 Scott González
2010-2011 Marc Grabanski (m@marcgrabanski.com)
2010-2011 Klaus Hartl (stilbuero.de)
2010-2011 Scott Jehl
2010-2011 Cody Lindley
2010-2011 Eduardo Lundgren (eduardolundgren@gmail.com)
2010-2011 Todd Parker
2010-2011 John Resig
2010-2011 Patty Toland
2010-2011 Ca-Phun Ung (yelotofu.com)
2010-2011 Keith Wood (kbwood@virginbroadband.com.au)
2010-2011 Maggie Costello Wachs
2010-2011 Richard D. Worth (rdworth.org)
2010-2011 Jörn Zaefferer (bassistance.de)
License: MIT and GPL-2+
Files:
share/pnp/media/js/jquery-ui-timepicker-addon.js
Copyright:
2011 Trent Richardson
License: MIT and GPL-2+
Files: share/pnp/media/js/jquery.cluetip.js
Copyright:
2009 Karl Swedberg
License: MIT and GPL-2+
Comment: Copyright and license extracted from upstream website and sources.
Files: share/pnp/media/js/jquery-min.js
Copyright:
2010-2011 John Resig
2010-2011 The Dojo Foundation
License: MIT and BSD-3-clause and GPL-2+
Comment: License details extracted from upstream website.
Files: src/*
Copyright:
2006-2010 Hendrik Baecker <andurin@process-zero.de>
License: GPL-2
Files: src/utils.c
Copyright:
2006-2009 Hendrik Baecker <andurin@process-zero.de>
1999-2006 Ethan Galstad <nagios@nagios.org>
License: GPL-2
Files: debian/*
Copyright:
2009-2011, Sven Velt <sven@velt.de>
2011, Sebastian Harl <tokkee@debian.org>
2014, Markus Frosch <lazyfrosch@debian.org>
License: BSD-2-clause
Files:
debian/pnp4nagios-bin.npcd.init
Copyright:
2007 Javier Fernandez-Sanguino <jfs@debian.org>
2009 Sven Velt <sven@velt.de>
License: BSD-2-clause
Files:
debian/pnp4nagios-bin.pnp_gearman_worker.init
Copyright:
2007, Javier Fernandez-Sanguino <jfs@debian.org>
2011, Sebastian Harl <tokkee@debian.org>
License: BSD-2-clause
License: Apache-2.0
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
.
http://www.apache.org/licenses/LICENSE-2.0
.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
.
On Debian systems, the full text of the Apache License, Version 2.0
can be found in the file `/usr/share/common-licenses/Apache-2.0'.
License: BSD-3-clause
All rights reserved.
.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
.
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
.
* Neither the name of the Kohana nor the names of its contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: BSD-2-clause
All rights reserved.
.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
.
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: LGPL-2.1
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
.
On Debian systems, the full text of the GNU Lesser General Public
License version 2.1 can be found in the file
`/usr/share/common-licenses/LGPL-2.1'.
License: MIT
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
License: GPL-2
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; version 2.
.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
.
On Debian systems, the full text of the GNU General Public License version 2
can be found in the file `/usr/share/common-licenses/GPL-2'. The latest
version of the library can be found in the file
`/usr/share/common-licenses/GPL-2'.
License: GPL-2+
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
.
On Debian systems, the full text of the GNU General Public License version 2
can be found in the file `/usr/share/common-licenses/GPL-2'.
License: GPL-3+
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
.
On Debian systems, the full text of the GNU General Public License version 3
can be found in the file `/usr/share/common-licenses/GPL-3'.
License: FPDF-license
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software to use, copy, modify, distribute, sublicense, and/or sell
copies of the software, and to permit persons to whom the software is
furnished to do so.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED.
License: fonts-copyright
Fonts are (c) Bitstream (see below). DejaVu changes are in public domain.
Glyphs imported from Arev fonts are (c) Tavmjong Bah (see below)
.
Bitstream Vera Fonts Copyright
------------------------------
.
Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera is
a trademark of Bitstream, Inc.
.
Permission is hereby granted, free of charge, to any person obtaining a copy
of the fonts accompanying this license ("Fonts") and associated
documentation files (the "Font Software"), to reproduce and distribute the
Font Software, including without limitation the rights to use, copy, merge,
publish, distribute, and/or sell copies of the Font Software, and to permit
persons to whom the Font Software is furnished to do so, subject to the
following conditions:
.
The above copyright and trademark notices and this permission notice shall
be included in all copies of one or more of the Font Software typefaces.
.
The Font Software may be modified, altered, or added to, and in particular
the designs of glyphs or characters in the Fonts may be modified and
additional glyphs or characters may be added to the Fonts, only if the fonts
are renamed to names not containing either the words "Bitstream" or the word
"Vera".
.
This License becomes null and void to the extent applicable to Fonts or Font
Software that has been modified and is distributed under the "Bitstream
Vera" names.
.
The Font Software may be sold as part of a larger software package but no
copy of one or more of the Font Software typefaces may be sold by itself.
.
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME
FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING
ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE
FONT SOFTWARE.
.
Except as contained in this notice, the names of Gnome, the Gnome
Foundation, and Bitstream Inc., shall not be used in advertising or
otherwise to promote the sale, use or other dealings in this Font Software
without prior written authorization from the Gnome Foundation or Bitstream
Inc., respectively. For further information, contact: fonts at gnome dot
org.
.
Arev Fonts Copyright
------------------------------
.
Copyright (c) 2006 by Tavmjong Bah. All Rights Reserved.
.
Permission is hereby granted, free of charge, to any person obtaining
a copy of the fonts accompanying this license ("Fonts") and
associated documentation files (the "Font Software"), to reproduce
and distribute the modifications to the Bitstream Vera Font Software,
including without limitation the rights to use, copy, merge, publish,
distribute, and/or sell copies of the Font Software, and to permit
persons to whom the Font Software is furnished to do so, subject to
the following conditions:
.
The above copyright and trademark notices and this permission notice
shall be included in all copies of one or more of the Font Software
typefaces.
.
The Font Software may be modified, altered, or added to, and in
particular the designs of glyphs or characters in the Fonts may be
modified and additional glyphs or characters may be added to the
Fonts, only if the fonts are renamed to names not containing either
the words "Tavmjong Bah" or the word "Arev".
.
This License becomes null and void to the extent applicable to Fonts
or Font Software that has been modified and is distributed under the
"Tavmjong Bah Arev" names.
.
The Font Software may be sold as part of a larger software package but
no copy of one or more of the Font Software typefaces may be sold by
itself.
.
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL
TAVMJONG BAH BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
.
Except as contained in this notice, the name of Tavmjong Bah shall not
be used in advertising or otherwise to promote the sale, use or other
dealings in this Font Software without prior written authorization
from Tavmjong Bah. For further information, contact: tavmjong @ free
. fr.

2
debian/docs vendored
View File

@@ -1,2 +0,0 @@
AUTHORS
README.md

View File

@@ -1,11 +0,0 @@
# This is a sample module definition for Icinga.
#
# Copy this file to /etc/icinga/modules/ in order to activate it.
define module {
module_name npcdmod
module_type neb
path /usr/lib/pnp4nagios/npcdmod.o
args config_file=/etc/pnp4nagios/npcd.cfg
}

View File

@@ -1,2 +0,0 @@
<?php
$conf['nagios_base'] = "/cgi-bin/icinga";

View File

@@ -1,15 +0,0 @@
# Icinga configuration for PNP4Nagios's npcdmod
#
# In order to enable the npcdmod event broker module in Icinga, you'll have to
# put a file similar to this one into /etc/icinga/modules/.
#
# ATTENTION: DO NOT load the same module here AND via broker_module in
# icinga.cfg. This can lead to problems with races on ressources.
#
define module{
module_name npcdmod
module_type neb
path /usr/lib/pnp4nagios/npcdmod.o
args config_file=/etc/pnp4nagios/npcd.cfg
}

View File

@@ -1,24 +0,0 @@
Alias /pnp4nagios "/usr/share/pnp4nagios/html"
<Directory "/usr/share/pnp4nagios/html">
AllowOverride None
AuthName "Icinga Access"
AuthType Basic
AuthUserFile /etc/icinga/htpasswd.users
Require valid-user
<IfModule mod_rewrite.c>
# Turn on URL rewriting
RewriteEngine On
Options symLinksIfOwnerMatch
# Installation directory
RewriteBase /pnp4nagios/
# Protect application and system files from being viewed
RewriteRule "^(?:application|modules|system)/" - [F]
# Allow any files or directories that exist to be displayed directly
RewriteCond "%{REQUEST_FILENAME}" !-f
RewriteCond "%{REQUEST_FILENAME}" !-d
# Rewrite all other URLs to index.php/URL
RewriteRule "^.*$" "index.php/$0" [PT]
</IfModule>
</Directory>

34
debian/nagios.cfg vendored
View File

@@ -1,34 +0,0 @@
define command {
command_name pnp-synchronous-service
command_line /usr/bin/perl /usr/lib/pnp4nagios/libexec/process_perfdata.pl
}
define command {
command_name pnp-synchronous-host
command_line /usr/bin/perl /usr/lib/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA
}
##############################################################################
define command {
command_name pnp-bulk-service
command_line /usr/bin/perl /usr/lib/pnp4nagios/libexec/process_perfdata.pl --bulk=/var/spool/pnp4nagios/nagios/service-perfdata
}
define command {
command_name pnp-bulk-host
command_line /usr/bin/perl /usr/lib/pnp4nagios/libexec/process_perfdata.pl --bulk=/var/spool/pnp4nagios/nagios/host-perfdata
}
##############################################################################
define command {
command_name pnp-bulknpcd-service
command_line /bin/mv /var/spool/pnp4nagios/nagios/service-perfdata /var/spool/pnp4nagios/npcd/service-perfdata.$TIMET$
}
define command {
command_name pnp-bulknpcd-host
command_line /bin/mv /var/spool/pnp4nagios/nagios/host-perfdata /var/spool/pnp4nagios/npcd/host-perfdata.$TIMET$
}

View File

@@ -1,2 +0,0 @@
<?php
$conf['nagios_base'] = "/cgi-bin/nagios4";

View File

@@ -1,24 +0,0 @@
Alias /pnp4nagios "/usr/share/pnp4nagios/html"
<Directory "/usr/share/pnp4nagios/html">
AllowOverride None
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios4/htpasswd.users
Require valid-user
<IfModule mod_rewrite.c>
# Turn on URL rewriting
RewriteEngine On
Options symLinksIfOwnerMatch
# Installation directory
RewriteBase /pnp4nagios/
# Protect application and system files from being viewed
RewriteRule "^(?:application|modules|system)/" - [F]
# Allow any files or directories that exist to be displayed directly
RewriteCond "%{REQUEST_FILENAME}" !-f
RewriteCond "%{REQUEST_FILENAME}" !-d
# Rewrite all other URLs to index.php/URL
RewriteRule "^.*$" "index.php/$0" [PT]
</IfModule>
</Directory>

View File

@@ -1,29 +0,0 @@
Description: Install templates into /etc/ rather than /usr/share/.
Also, add support for templates.d directory.
Author: Sven Velt <sven@velt.de>, Sebastian Harl <tokkee@debian.org
Forwarded: not-needed
--- a/sample-config/pnp/config.php.in
+++ b/sample-config/pnp/config.php.in
@@ -230,13 +230,19 @@ $conf['RRD_DAEMON_OPTS'] = '';
# Add your own template directories here
# First match wins!
#$conf['template_dirs'][] = '/usr/local/check_mk/pnp-templates';
-$conf['template_dirs'][] = '@datarootdir@/templates';
+$conf['template_dirs'][] = '@sysconfdir@/templates';
+$templates_d = glob("/etc/pnp4nagios/templates.d/*", GLOB_ONLYDIR);
+if (is_array($templates_d) && (count($templates_d) > 0)) {
+ foreach ($templates_d as $dirname) {
+ $conf['template_dirs'][] = "$dirname";
+ }
+}
$conf['template_dirs'][] = '@datarootdir@/templates.dist';
#
# Directory to search for special templates
#
-$conf['special_template_dir'] = '@datarootdir@/templates.special';
+$conf['special_template_dir'] = '@sysconfdir@/templates.special';
#
# Regex to detect mobile devices

View File

@@ -1,15 +0,0 @@
Description: Fix config directory in the sample httpd.conf.
Author: Sven Velt <sven@velt.de>
Forwarded: not-needed
--- a/sample-config/httpd.conf.in
+++ b/sample-config/httpd.conf.in
@@ -11,7 +11,7 @@
#
AuthName "Nagios Access"
AuthType Basic
- AuthUserFile /usr/local/nagios/etc/htpasswd.users
+ AuthUserFile /etc/nagios4/htpasswd.users
Require valid-user
<IfModule mod_rewrite.c>
# Turn on URL rewriting

View File

@@ -1,28 +0,0 @@
Description: Include a instance based config
Author: Markus Frosch <lazyfrosch@debian.org>
Last-Update: 2017-05-20
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/sample-config/pnp/config.php.in 2017-05-20 17:52:02.532000000 +0200
+++ b/sample-config/pnp/config.php.in 2017-05-20 17:48:33.008000000 +0200
@@ -89,7 +89,8 @@
#
# Link back to Nagios or Thruk ( www.thruk.org )
#
-$conf['nagios_base'] = "/cgi-bin/nagios4";
+## Debian: please see /etc/pnp4nagios/config.<NAME>.php
+##$conf['nagios_base'] = "/cgi-bin/nagios4";
#
# Link back to check_mk´s multisite ( http://mathias-kettner.de/checkmk_multisite.html )
@@ -278,4 +279,10 @@
'#F6E8C3','#C7EAE5','#DFC27D','#80CDC1','#BF812D','#35978F','#8C510A','#01665E');
$scheme['mixed3'] = array ('#67001F','#80CDC1','#B2182B','#35978F','#D6604D','#01665E','#F4A582','#003C30',
'#FDDBC7','#92C5DE','#D1E5F0','#2166AC','#4393C3','#8C510A','#053061','#BF812D');
+
+if (file_exists('/etc/pnp4nagios/config.icinga.php')) {
+ include '/etc/pnp4nagios/config.icinga.php';
+} else if (file_exists('/etc/pnp4nagios/config.nagios4.php')) {
+ include '/etc/pnp4nagios/config.nagios4.php';
+}
?>

View File

@@ -1,15 +0,0 @@
Description: Fix cgi-bin path in config.php.
Author: Sven Velt <sven@velt.de>
Forwarded: not-needed
--- a/sample-config/pnp/config.php.in
+++ b/sample-config/pnp/config.php.in
@@ -89,7 +89,7 @@ $conf['temp'] = "/var/tmp";
#
# Link back to Nagios or Thruk ( www.thruk.org )
#
-$conf['nagios_base'] = "/nagios/cgi-bin";
+$conf['nagios_base'] = "/cgi-bin/nagios4";
#
# Link back to check_mk´s multisite ( http://mathias-kettner.de/checkmk_multisite.html )

View File

@@ -1,24 +0,0 @@
Description: Fix perfdata paths in npcd.cfg.
Author: Sven Velt <sven@velt.de>
Forwarded: not-needed
--- a/sample-config/pnp/npcd.cfg-sample.in
+++ b/sample-config/pnp/npcd.cfg-sample.in
@@ -76,7 +76,7 @@
# perfdata_spool_dir = </path/to/directory/>
#
-perfdata_spool_dir = @PERFDATA_SPOOL_DIR@
+perfdata_spool_dir = @PERFDATA_SPOOL_DIR@/npcd/
# Execute following command for each found file
@@ -163,7 +163,7 @@
# perfdata_file = </path/to/file>
#
-perfdata_file = @localstatedir@/perfdata.dump
+perfdata_file = @PERFDATA_SPOOL_DIR@/nagios/perfdata.dump
# perfdata_spool_filename - declare the destination

View File

@@ -1,26 +0,0 @@
Description: Fix use of flags in Makefiles
To pass all hardening flags to gcc.
Author: Markus Frosch <lazyfrosch@debian.org>
Last-Update: 2015-07-01
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -83,7 +83,7 @@
#
###############################
npcd: npcd.c $(NPCDOBJS) $(NPCDHEAD)
- $(CC) $(CFLAGS) -o $@ npcd.c $(NPCDOBJS) -lpthread
+ $(CC) $(CFLAGS) $(CPPFLAGS) -o $@ npcd.c $(NPCDOBJS) $(LDFLAGS) -lpthread
###############################
#
@@ -91,7 +91,7 @@
#
###############################
npcdmod.o: npcdmod.c
- $(CC) $(MOD_CFLAGS) $(CFLAGS) -o npcdmod.o npcdmod.c $(MOD_LDFLAGS) $(LDFLAGS) $(LIBS) -fPIC
+ $(CC) $(MOD_CFLAGS) $(CFLAGS) $(CPPFLAGS) -o npcdmod.o npcdmod.c $(MOD_LDFLAGS) $(LDFLAGS) $(LIBS) -fPIC
###############################
#

View File

@@ -1,16 +0,0 @@
Description: Disable INSTALL_OPTS
Author: Markus Frosch <lazyfrosch@debian.org>
Last-Update: 2014-10-26
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/configure.ac
+++ b/configure.ac
@@ -116,7 +116,7 @@
AC_SUBST(nagios_grp)
AC_DEFINE_UNQUOTED(DEFAULT_NAGIOS_USER,"$nagios_user")
AC_DEFINE_UNQUOTED(DEFAULT_NAGIOS_GROUP,"$nagios_grp")
-INSTALL_OPTS="-o $nagios_user -g $nagios_grp"
+INSTALL_OPTS=""
AC_SUBST(INSTALL_OPTS)
# Checks for programs.

View File

@@ -1,475 +0,0 @@
diff -uNr pnp4nagios.orig/README pnp4nagios-0.6.26/README
--- pnp4nagios.orig/README 2017-08-21 17:52:37.000000000 +0200
+++ pnp4nagios-0.6.26/README 2017-10-20 17:29:21.680000000 +0200
@@ -8,3 +8,8 @@
http://pnp4nagios.sourceforge.net or:
http://docs.pnp4nagios.org/
+
+## pnp-metrics-api ###
+
+https://github.com/lingej/pnp-metrics-api
+README.md
diff -uNr pnp4nagios.orig/README.md pnp4nagios-0.6.26/README.md
--- pnp4nagios.orig/README.md 1970-01-01 01:00:00.000000000 +0100
+++ pnp4nagios-0.6.26/README.md 2017-10-20 17:02:31.336000000 +0200
@@ -0,0 +1,56 @@
+# pnp-metrics-api
+## Usage examples
+### CURL
+#### Query metrics of a service on a specific host
+```
+curl -s -u '<username>:<password>' -H "Content-Type: application/json" -X POST -d '
+{
+ "targets":[
+ {
+ "host":"host1.example.org",
+ "service":"_HOST_",
+ "perflabel":"rta",
+ "type":"AVERAGE"
+ },
+ {
+ "host":"host2.example.org",
+ "service":"_HOST_",
+ "perflabel":"rta",
+ "type":"AVERAGE"
+ }
+ ],
+ "start":'UNIXEPOCHTIMESTAMP_START',
+ "end":'UNIXEPOCHTIMESTAMP_END'
+}' https://example.org/pnp4nagios/index.php/api/metrics
+```
+#### List all hosts
+```
+curl -s -u '<username>:<password>' https://example.org/pnp4nagios/index.php/api/hosts
+```
+
+#### List services of a host
+```
+curl -s -u '<username>:<password>' -H "Content-Type: application/json" -X POST -d '
+{
+ "host":"host.example.org"
+}' https://example.org/pnp4nagios/index.php/api/services
+```
+
+You can use regular expressions for host lists:
+
+```
+curl -s -u '<username>:<password>' -H "Content-Type: application/json" -X POST -d '
+{
+ "host":"/^local"
+}' https://example.org/pnp4nagios/index.php/api/services
+```
+
+
+#### List labels of a service of specific host
+```
+curl -s -u '<username>:<password>' -H "Content-Type: application/json" -X POST -d '
+{
+ "host":"host.example.org",
+ "service":"_HOST_"
+}' https://example.org/pnp4nagios/index.php/api/labels
+```
diff -uNr pnp4nagios.orig/share/pnp/application/controllers/api.php pnp4nagios-0.6.26/share/pnp/application/controllers/api.php
--- pnp4nagios.orig/share/pnp/application/controllers/api.php 1970-01-01 01:00:00.000000000 +0100
+++ pnp4nagios-0.6.26/share/pnp/application/controllers/api.php 2017-10-20 17:29:56.444000000 +0200
@@ -0,0 +1,399 @@
+<?php defined('SYSPATH') OR die('No direct access allowed.');
+/**
+* API controller.
+*
+* @package pnp4nagios
+* @author Joerg Linge
+* @license GPL
+*/
+class Api_Controller extends System_Controller {
+
+ public function __construct(){
+ parent::__construct();
+ // Disable auto-rendering
+ $this->auto_render = FALSE;
+ $this->data->getTimeRange($this->start,$this->end,$this->view);
+ // Graphana sends JSON via POST
+ $this->post_data = json_decode(file_get_contents('php://input'), true);
+
+ }
+
+ public function index() {
+ $data['pnp_version'] = PNP_VERSION;
+ $data['pnp_rel_date'] = PNP_REL_DATE;
+ $data['error'] = "";
+ return_json($data, 200);
+ }
+
+ /*
+ *
+ *
+ */
+ public function hosts($query = false) {
+ $data = array();
+ $hosts = getHosts($this->data, $query);
+ foreach ( $hosts as $host ){
+ $data['hosts'][] = array(
+ 'name' => $host
+ );
+ }
+ return_json($data, 200);
+ }
+
+ /*
+ *
+ *
+ */
+ public function services() {
+ $data = array();
+ if ($_SERVER['REQUEST_METHOD'] != 'POST') {
+ // Only Post Reuests
+ $data['error'] = "Only POST Requests allowed";
+ return_json($data, 901);
+ return;
+ }
+ $pdata = json_decode(file_get_contents('php://input'), TRUE);
+
+ $host = arr_get($pdata, "host");
+ if ( $host === false ){
+ $data['error'] = "No hostname specified";
+ return_json($data, 901);
+ return;
+ }
+ $services = array();
+ $hosts = getHosts($this->data, $host);
+ $services = getServices($this->data, $hosts);
+ $duplicates = array();
+
+ foreach($services as $service){
+ // skip duplicates
+ if(isset($duplicates[$service['servicedesc']])) {
+ continue;
+ }
+ $duplicates[$service['servicedesc']] = true;
+ $data['services'][] = array(
+ 'name' => $service['name'],
+ 'servicedesc' => $service['servicedesc'],
+ 'hostname' => $service['hostname']
+ );
+ }
+ return_json($data, 200);
+ }
+
+ /*
+ *
+ *
+ */
+ public function labels ( $host=false, $service=false ) {
+ $data = array();
+ if ($_SERVER['REQUEST_METHOD'] != 'POST') {
+ // Only Post Reuests
+ $data['error'] = "Only POST Requests allowed";
+ return_json($data, 901);
+ return;
+ }
+ $pdata = json_decode(file_get_contents('php://input'), TRUE);
+ $host = arr_get($pdata, "host");
+ $service = arr_get($pdata, "service");
+
+ if ( $host === false ){
+ $data['error'] = "No hostname specified";
+ return_json($data, 901);
+ return;
+ }
+ if ( $service === false ){
+ $data['error'] = "No service specified";
+ return_json($data, 901);
+ return;
+ }
+
+ $hosts = getHosts($this->data, $host);
+ $services = getServices($this->data, $hosts, $service);
+ $duplicates = array();
+
+ foreach($services as $service){
+ try {
+ // read XML file
+ $this->data->readXML($service['hostname'], $service['name']);
+ } catch (Kohana_Exception $e) {
+ $data['error'] = "$e";
+ return_json($data, 901);
+ return;
+ }
+
+ foreach( $this->data->DS as $KEY => $DS) {
+ // skip duplicates
+ if(isset($duplicates[$DS['LABEL']])) {
+ continue;
+ }
+ $duplicates[$DS['LABEL']] = true;
+ $data['labels'][] = array(
+ 'name' => $DS['NAME'],
+ 'label' => $DS['LABEL'],
+ 'service' => $service['name'],
+ 'hostname' => $service['hostname']
+ );
+ }
+ }
+ return_json($data, 200);
+ }
+
+
+ public function metrics(){
+ // extract metrics for a given datasource
+ // TODO Multiple sources via regex
+ if ($_SERVER['REQUEST_METHOD'] != 'POST') {
+ // Only Post Reuests
+ $data['error'] = "Only POST Requests allowed";
+ return_json($data, 901);
+ return;
+ }
+ $hosts = array(); // List of all Hosts
+ $services = array(); // List of services for a given host
+ $pdata = json_decode(file_get_contents('php://input'), TRUE);
+ $data = array();
+
+ if ( !isset($pdata['targets']) ){
+ $data['error'] = "No targets specified";
+ return_json($data, 901);
+ return;
+ }
+
+ foreach( $pdata['targets'] as $key => $target){
+
+ $this->data->TIMERANGE['start'] = arr_get($pdata, 'start');
+ $this->data->TIMERANGE['end'] = arr_get($pdata, 'end');
+ $host = arr_get($target, 'host');
+ $service = arr_get($target, 'service');
+ $perflabel = arr_get($target, 'perflabel');
+ $type = arr_get($target, 'type');
+ $refid = arr_get($target, 'refid');
+ if ( $host === false ){
+ $data['error'] = "No hostname specified";
+ return_json($data, 901);
+ return;
+ }
+ if ( $service === false ){
+ $data['error'] = "No service specified";
+ return_json($data, 901);
+ return;
+ }
+ if ( $perflabel === false ){
+ $data['error'] = "No perfdata label specified";
+ return_json($data, 901);
+ return;
+ }
+ if ( $type === false ){
+ $data['error'] = "No perfdata type specified";
+ return_json($data, 901);
+ return;
+ }
+ $hosts = getHosts($this->data, $host);
+ $services = getServices($this->data, $hosts, $service);
+
+ $hk = 0; // Host Key
+
+ foreach ( $services as $service) {
+ $host = $service['hostname'];
+ $service = $service['name'];
+ try {
+ // read XML file
+ $this->data->readXML($host, $service);
+ } catch (Kohana_Exception $e) {
+ $data['error'] = "$e";
+ return_json($data, 901);
+ return;
+ }
+
+ // create a Perflabel List
+ $perflabels = array();
+ foreach( $this->data->DS as $value){
+ $label = arr_get($value, "LABEL" );
+ if (isRegex($perflabel)) {
+ if(!preg_match( $perflabel, $label ) ){
+ continue;
+ }
+ } elseif ( $perflabel != $label ) {
+ continue;
+ }
+ $perflabels[] = array(
+ "label" => arr_get($value, "NAME" ),
+ "warn" => arr_get($value, "WARN" ),
+ "crit" => arr_get($value, "CRIT" )
+ );
+ }
+
+ foreach ( $perflabels as $tmp_perflabel){
+ try {
+ $this->data->buildXport($host, $service);
+ $xml = $this->rrdtool->doXport($this->data->XPORT);
+ } catch (Kohana_Exception $e) {
+ $data['error'] = "$e";
+ return_json($data, 901);
+ return;
+ }
+
+ $xpd = simplexml_load_string($xml);
+ $i = 0;
+ $index = -1;
+ foreach ( $xpd->meta->legend->entry as $k=>$v){
+ if($type == "WARNING" || $type == "CRITICAL") {
+ if( $v == $tmp_perflabel['label']."_AVERAGE"){
+ $index = $i;
+ break;
+ }
+ }
+ else {
+ if( $v == $tmp_perflabel['label']."_".$type){
+ $index = $i;
+ break;
+ }
+ }
+ $i++;
+ }
+ if ( $index === -1 ){
+ $data['error'] = "No perfdata found for ".$tmp_perflabel['label']."_".$type;
+ return_json($data, 901);
+ return;
+ }
+
+ $start = (string) $xpd->meta->start;
+ $end = (string) $xpd->meta->end;
+ $step = (string) $xpd->meta->step;
+ $data['targets'][$key][$hk]['start'] = $start * 1000;
+ $data['targets'][$key][$hk]['end'] = $end * 1000;
+ $data['targets'][$key][$hk]['host'] = $host;
+ $data['targets'][$key][$hk]['service'] = $service;
+ $data['targets'][$key][$hk]['perflabel'] = $tmp_perflabel['label'];
+ $data['targets'][$key][$hk]['type'] = $type;
+
+ $i = 0;
+ if($type == "WARNING" || $type == "CRITICAL") {
+ foreach ( $xpd->data->row as $row=>$value){
+ // timestamp in milliseconds
+ $timestamp = ( $start + $i * $step ) * 1000;
+ if($type == "WARNING") {
+ $d = floatval($tmp_perflabel['warn']);
+ } else {
+ $d = floatval($tmp_perflabel['crit']);
+ }
+ $data['targets'][$key][$hk]['datapoints'][] = array( $d, $timestamp );
+ $i++;
+ }
+ } else {
+ foreach ( $xpd->data->row as $row=>$value){
+ // timestamp in milliseconds
+ $timestamp = ( $start + $i * $step ) * 1000;
+ $d = (string) $value->v->$index;
+ if ($d == "NaN"){
+ $d = null;
+ }else{
+ $d = floatval($d);
+ }
+ $data['targets'][$key][$hk]['datapoints'][] = array( $d, $timestamp );
+ $i++;
+ }
+ }
+
+ $hk++;
+
+ }
+ }
+ }
+
+ return_json($data, 200);
+ }
+}
+/*
+* return array key
+*/
+function arr_get($array, $key=false, $default=false){
+ if ( isset($array) && $key == false ){
+ return $array;
+ }
+ $keys = explode(".", $key);
+ foreach ($keys as $key_part) {
+ if ( isset($array[$key_part] ) === false ) {
+ if (! is_array($array) or ! array_key_exists($key_part, $array)) {
+ return $default;
+ }
+ }
+ $array = $array[$key_part];
+ }
+ return $array;
+}
+
+/*
+*
+*/
+function return_json( $data, $status=200 ){
+ $json = json_encode($data);
+ header('Status: '.$status);
+ header('Content-type: application/json');
+ print $json;
+}
+
+function isRegex($string){
+ // if string looks like an regex /regex/
+ if ( substr($string,0,1) == "/" && substr($string,-1,1) == "/" && strlen($string) >= 2 ){
+ return true;
+ }else{
+ return false;
+ }
+}
+
+function getHosts($data, $query = false) {
+ $result = array();
+ $hosts = $data->getHosts();
+ $isRegex = false;
+ if ($query !== false && isRegex($query) ) {
+ $isRegex = true;
+ }
+ foreach ( $hosts as $host ){
+ if ( $host['state'] != 'active' ){
+ continue;
+ }
+ if($isRegex) {
+ if(preg_match("$query", $host['name']) ) {
+ $result[] = $host['name'];
+ }
+ }
+ elseif ($query !== false) {
+ if("$query" == $host['name']) {
+ $result[] = $host['name'];
+ }
+ } else {
+ $result[] = $host['name'];
+ }
+ }
+ return($result);
+}
+
+/*
+* returns list of service hashes
+*/
+function getServices($data, $hosts, $query = false) {
+ $result = array();
+ $isRegex = false;
+ if ($query !== false && isRegex($query) ) {
+ $isRegex = true;
+ }
+ foreach ( $hosts as $host){
+ $services = $data->getServices($host);
+ foreach ($services as $value) {
+ if ($isRegex) {
+ if ( preg_match("$query", $value['name']) || preg_match("$query", $value['servicedesc'])) {
+ $result[] = $value;
+ }
+ }
+ elseif ($query !== false) {
+ if("$query" == $value['name'] || "$query" == $value['servicedesc']) {
+ $result[] = $value;
+ }
+ } else {
+ $result[] = $value;
+ }
+ }
+ }
+ return($result);
+}

View File

@@ -1,8 +0,0 @@
apache-fix-path-to-userfile
fix-npcd-path
fix-nagios-url
adjust-template-path
config_instances
install_opts
hardening
pnp-metrics-api

View File

@@ -1 +0,0 @@
debian/icinga/npcdmod.cfg

View File

@@ -1,13 +0,0 @@
etc/pnp4nagios/nagios.cfg
etc/pnp4nagios/check_commands/
etc/pnp4nagios/*.cfg
usr/lib/pnp4nagios/libexec/
usr/lib/pnp4nagios/npcdmod.o
../../scripts/verify_pnp_config_v2.pl /usr/lib/pnp4nagios/libexec/
usr/sbin/npcd
usr/share/doc/pnp4nagios/examples/*.cfg
usr/share/doc/pnp4nagios/examples/check_commands/
usr/share/man/man8/npcd.8
var/log/pnp4nagios/stats/
var/lib/pnp4nagios/perfdata/
var/spool/pnp4nagios/

View File

@@ -1,7 +0,0 @@
# Default settings for the NPCD init script.
# Should NPCD be started? ("yes" to enable)
RUN="no"
# Additional options that are passed to the daemon.
DAEMON_OPTS="-d -f /etc/pnp4nagios/npcd.cfg"

View File

@@ -1,204 +0,0 @@
#!/bin/sh
#
# init.d script for NPCD of PNP4Nagios
#
# Based on a example script of Javier Fernandez-Sanguino
# Copyright (c) 2007 Javier Fernandez-Sanguino <jfs@debian.org>
# Copyright (c) 2009 Sven Velt <sven@velt.de>
#
### BEGIN INIT INFO
# Provides: npcd
# Required-Start: $network $local_fs $remote_fs
# Required-Stop: $network $local_fs $remote_fs
# Should-Start:
# Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Nagios Performance C Daemon
# Description: Speed up processing of Nagios' performance data
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/npcd
NAME=npcd
DESC="Nagios Performance C Daemon (PNP4Nagios)"
LOGDIR=/var/log/pnp4nagios
PIDFILE=/var/run/$NAME.pid
test -x $DAEMON || exit 0
. /lib/lsb/init-functions
# Default options, these can be overriden by the information
# at /etc/default/$NAME
DAEMON_OPTS=""
DIETIME=10
STARTTIME=2
LOGFILE=$LOGDIR/$NAME.log
# Include defaults if available
if [ -f /etc/default/npcd ] ; then
. /etc/default/npcd
fi
# Check if RUN is set to "yes" in /etc/defaults/npcd
if [ "x$RUN" != "xyes" ] ; then
echo "$NAME has been disabled in /etc/default/npcd."
exit 0
fi
set -e
# Check if a given process pid's cmdline matches a given name
running_pid() {
pid=$1
name=$2
[ -z "$pid" ] && return 1
[ ! -d /proc/$pid ] && return 1
cmd=`cat /proc/$pid/cmdline | tr "\000" "\n" | head -n 1 | cut -d : -f 1`
# Is this the expected server
[ "$cmd" != "$name" ] && return 1
return 0
}
# Check if the process is running looking at /proc
# (works for all users)
running() {
# No pidfile, probably no daemon present
[ ! -f "$PIDFILE" ] && return 1
pid=`cat $PIDFILE`
running_pid $pid $DAEMON || return 1
return 0
}
# Start the process using the wrapper
start_server() {
start_daemon -p $PIDFILE $DAEMON $DAEMON_OPTS
errcode=$?
return $errcode
}
# Stop the process using the wrapper
stop_server() {
killproc -p $PIDFILE $DAEMON
errcode=$?
return $errcode
}
reload_server() {
[ ! -f "$PIDFILE" ] && return 1
pid=pidofproc $PIDFILE # This is the daemon's pid
# Send a SIGHUP
kill -1 $pid
return $?
}
# Force the process to die killing it manually
force_stop() {
[ ! -e "$PIDFILE" ] && return
if running ; then
kill -15 $pid
# Is it really dead?
sleep "$DIETIME"s
if running ; then
kill -9 $pid
sleep "$DIETIME"s
if running ; then
echo "Cannot kill $NAME (pid=$pid)!"
exit 1
fi
fi
fi
rm -f $PIDFILE
}
case "$1" in
start)
log_daemon_msg "Starting $DESC" "$NAME"
# Check if it's running first
if running ; then
log_progress_msg "apparently already running"
log_end_msg 0
exit 0
fi
if start_server ; then
# NOTE: Some servers might die some time after they start,
# this code will detect this issue if STARTTIME is set
# to a reasonable value
[ -n "$STARTTIME" ] && sleep $STARTTIME # Wait some time
if running ; then
# It's ok, the server started and is running
log_end_msg 0
else
# It is not running after we did start
log_end_msg 1
fi
else
# Either we could not start it
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stopping $DESC" "$NAME"
if running ; then
# Only stop the server if we see it running
errcode=0
stop_server || errcode=$?
log_end_msg $errcode
else
# If it's not running don't do anything
log_progress_msg "apparently not running"
log_end_msg 0
exit 0
fi
;;
force-stop)
# First try to stop gracefully the program
$0 stop
if running; then
# If it's still running try to kill it more forcefully
log_daemon_msg "Stopping (force) $DESC" "$NAME"
errcode=0
force_stop || errcode=$?
log_end_msg $errcode
fi
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME"
errcode=0
stop_server || errcode=$?
# Wait some sensible amount, some server need this
[ -n "$DIETIME" ] && sleep $DIETIME
start_server || errcode=$?
[ -n "$STARTTIME" ] && sleep $STARTTIME
running || errcode=$?
log_end_msg $errcode
;;
status)
log_daemon_msg "Checking status of $DESC" "$NAME"
if running ; then
log_progress_msg "running"
log_end_msg 0
else
log_progress_msg "apparently not running"
log_end_msg 1
exit 1
fi
;;
# Use this if the daemon cannot reload
reload)
log_warning_msg "Reloading $NAME daemon: not implemented, as the daemon"
log_warning_msg "cannot re-read the config file (use restart)."
exit 1
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|force-stop|restart|force-reload|status}" >&2
exit 1
;;
esac
exit 0

View File

@@ -1,11 +0,0 @@
# Default settings for the pnp_gearman_worker init script.
# Should the gearman worker daemon be started? ("yes" to enable)
RUN="no"
# Additional options that are passed to the daemon.
DAEMON_OPTS="--config=/etc/pnp4nagios/process_perfdata.cfg"
# Change to this user before starting the daemon.
# Note: the daemon refuses to start as root.
USER=nagios

View File

@@ -1,210 +0,0 @@
#!/bin/sh
#
# init.d script for the Gearman worker daemon of PNP4Nagios
#
# Based on an example script for NPCD of Javier Fernandez-Sanguino
# Copyright (c) 2007 Javier Fernandez-Sanguino <jfs@debian.org>
# Copyright (c) 2011 Sebastian Harl <tokkee@debian.org>
#
### BEGIN INIT INFO
# Provides: pnp_gearman_worker
# Required-Start: $network $local_fs $remote_fs
# Required-Stop: $network $local_fs $remote_fs
# Should-Start:
# Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: PNP4Nagios Gearman worker daemon
# Description: Processing of Nagios' perf data in distributed setups
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/lib/pnp4nagios/libexec/process_perfdata.pl
NAME=pnp_gearman_worker
DESC="PNP4Nagios Gearman worker daemon"
PIDFILE=/var/run/pnp4nagios/$NAME.pid
test -x $DAEMON || exit 0
. /lib/lsb/init-functions
# Default options, these can be overriden by the information
# at /etc/default/$NAME
DAEMON_OPTS=""
DIETIME=10
STARTTIME=2
USER=nagios
if [ -f /etc/default/pnp_gearman_worker ] ; then
. /etc/default/pnp_gearman_worker
fi
if [ "x$RUN" != "xyes" ] ; then
echo "$NAME has been disabled in /etc/default/pnp_gearman_worker."
exit 0
fi
set -e
# Check if a given process pid's cmdline matches a given name
running_pid() {
pid=$1
name=$2
[ -z "$pid" ] && return 1
[ ! -d /proc/$pid ] && return 1
cmd=`cat /proc/$pid/cmdline | tr "\000" "\n" | head -n 1 | cut -d : -f 1`
# Is this the expected server
[ "$cmd" != "$name" ] && return 1
return 0
}
# Check if the process is running looking at /proc
# (works for all users)
running() {
# No pidfile, probably no daemon present
[ ! -f "$PIDFILE" ] && return 1
pid=`cat $PIDFILE`
running_pid "$pid" $DAEMON \
|| running_pid "$pid" "/usr/bin/perl" || return 1
return 0
}
# Start the process using the wrapper
start_server() {
if ! perl -MGearman::Worker -e '1;' > /dev/null 2>&1 \
|| ! perl -MMIME::Base64 -e '1;' > /dev/null 2>&1 \
|| ! perl -MCrypt::Rijndael -e '1;' > /dev/null 2>&1; then
echo "$NAME requires the Gearman::Worker, MIME::Base64 and" >&2
echo "Crypt::Rijndael Perl modules. Make sure that the packages" >&2
echo "perl, libgearman-client-perl and libcrypt-rijndael-perl" >&2
echo "are installed." >&2
exit 1
fi
if [ -d /var/run/pnp4nagios ]; then
chmod 755 /var/run/pnp4nagios
chown nagios.nagios /var/run/pnp4nagios
else
install -d -m 755 -o nagios -g nagios /var/run/pnp4nagios
fi
start_opts="--start --quiet --oknodo --pidfile $PIDFILE"
if [ -n "$USER" ]; then
start_opts="$start_opts --chuid $USER"
fi
start-stop-daemon $start_opts --exec $DAEMON -- \
--pidfile=$PIDFILE --gearman --daemon $DAEMON_OPTS
errcode=$?
return $errcode
}
# Stop the process using the wrapper
stop_server() {
killproc -p $PIDFILE $DAEMON
errcode=$?
return $errcode
}
# Force the process to die killing it manually
force_stop() {
[ ! -e "$PIDFILE" ] && return
if running ; then
kill -15 $pid
# Is it really dead?
sleep "$DIETIME"s
if running ; then
kill -9 $pid
sleep "$DIETIME"s
if running ; then
echo "Cannot kill $NAME (pid=$pid)!"
exit 1
fi
fi
fi
rm -f $PIDFILE
}
case "$1" in
start)
log_daemon_msg "Starting $DESC" "$NAME"
# Check if it's running first
if running ; then
log_progress_msg "apparently already running"
log_end_msg 0
exit 0
fi
if start_server ; then
# NOTE: Some servers might die some time after they start,
# this code will detect this issue if STARTTIME is set
# to a reasonable value
[ -n "$STARTTIME" ] && sleep $STARTTIME # Wait some time
if running ; then
# It's ok, the server started and is running
log_end_msg 0
else
# It is not running after we did start
log_end_msg 1
fi
else
# Either we could not start it
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stopping $DESC" "$NAME"
if running ; then
# Only stop the server if we see it running
errcode=0
stop_server || errcode=$?
log_end_msg $errcode
else
# If it's not running don't do anything
log_progress_msg "apparently not running"
log_end_msg 0
exit 0
fi
;;
force-stop)
# First try to stop gracefully the program
$0 stop
if running; then
# If it's still running try to kill it more forcefully
log_daemon_msg "Stopping (force) $DESC" "$NAME"
errcode=0
force_stop || errcode=$?
log_end_msg $errcode
fi
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME"
errcode=0
stop_server || errcode=$?
# Wait some sensible amount, some server need this
[ -n "$DIETIME" ] && sleep $DIETIME
start_server || errcode=$?
[ -n "$STARTTIME" ] && sleep $STARTTIME
running || errcode=$?
log_end_msg $errcode
;;
status)
log_daemon_msg "Checking status of $DESC" "$NAME"
if running ; then
log_progress_msg "running"
log_end_msg 0
else
log_progress_msg "apparently not running"
log_end_msg 1
exit 1
fi
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|force-stop|restart|force-reload|status}" >&2
exit 1
;;
esac
exit 0

View File

@@ -1,78 +0,0 @@
#!/bin/sh
# postinst script for pnp4nagios-bin
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
setperm() {
user="$1"
group="$2"
mode="$3"
file="$4"
shift 4
# only do something when no setting exists
if ! dpkg-statoverride --list "$file" >/dev/null 2>&1; then
chown "$user":"$group" "$file"
chmod "$mode" "$file"
fi
}
case "$1" in
configure)
if ! getent passwd nagios > /dev/null ; then
echo 'Adding system-user for nagios' 1>&2
adduser --system --group --home /var/lib/nagios \
--disabled-login --force-badname nagios > /dev/null
fi
setperm nagios www-data 750 /var/lib/pnp4nagios
setperm nagios nagios 755 /var/lib/pnp4nagios/perfdata
setperm nagios www-data 750 /var/log/pnp4nagios
setperm nagios nagios 750 /var/log/pnp4nagios/stats
setperm nagios nagios 770 /var/spool/pnp4nagios
setperm nagios nagios 770 /var/spool/pnp4nagios/nagios
setperm nagios nagios 770 /var/spool/pnp4nagios/npcd
setperm root nagios 640 /etc/pnp4nagios/process_perfdata.cfg
if [ -d /etc/nagios4/conf.d/ ]; then
if [ ! -e /etc/nagios4/conf.d/pnp4nagios.cfg ]; then
ln -s /etc/pnp4nagios/nagios.cfg /etc/nagios4/conf.d/pnp4nagios.cfg
fi
fi
if [ -d /etc/icinga/objects/ ]; then
if [ ! -e /etc/icinga/objects/pnp4nagios.cfg ]; then
ln -s /etc/pnp4nagios/nagios.cfg /etc/icinga/objects/pnp4nagios.cfg
fi
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@@ -1,57 +0,0 @@
#!/bin/sh
# postrm script for pnp4nagios-bin
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
purge|remove)
if [ -d /etc/nagios4/conf.d/ ]; then
if [ -L /etc/nagios4/conf.d/pnp4nagios.cfg ]; then
ls -l /etc/nagios4/conf.d/pnp4nagios.cfg | grep -q /etc/pnp4nagios/nagios.cfg
if [ $? -eq 0 ]; then
rm -f /etc/nagios4/conf.d/pnp4nagios.cfg
fi
fi
fi
if [ -d /etc/icinga/objects/ ]; then
if [ -L /etc/icinga/objects/pnp4nagios.cfg ]; then
ls -l /etc/icinga/objects/pnp4nagios.cfg | grep -q /etc/pnp4nagios/nagios.cfg
if [ $? -eq 0 ]; then
rm -f /etc/icinga/objects/pnp4nagios.cfg
fi
fi
fi
;;
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@@ -1,2 +0,0 @@
debian/icinga/config.icinga.php etc/pnp4nagios
debian/icinga/pnp4nagios.conf etc/apache2/conf-available

View File

@@ -1,7 +0,0 @@
# ignoring apache2 warning
# this is actually not a problem, because the handling is backwards compatible
apache2-reverse-dependency-calls-invoke-rc.d postrm
apache2-reverse-dependency-calls-wrapper-script postinst a2enmod
apache2-reverse-dependency-calls-invoke-rc.d postinst
# we actually want that
non-standard-apache2-configuration-name pnp4nagios.conf != pnp4nagios-web-config-icinga.conf

View File

@@ -1,63 +0,0 @@
#!/bin/sh
# postinst script for pnp4nagios-web-config-icinga
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
echo "enabling Apache2 config..."
COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
# NEW method for Apache >= 2.4
if [ -e /usr/share/apache2/apache2-maintscript-helper ]; then
. /usr/share/apache2/apache2-maintscript-helper
apache2_invoke enmod rewrite
apache2_invoke enconf pnp4nagios
# remove OLD Apache 2.2 link
[ -L /etc/apache2/conf.d/pnp4nagios-web.conf ] && rm /etc/apache2/conf.d/pnp4nagios-web.conf
# OLD methods for Apache < 2.4
elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
# enable mod rewrite
[ -f /etc/apache2/mods-enabled/rewrite.load ] || a2enmod rewrite
# create symlink if not existing
[ -f /etc/apache2/conf.d/pnp4nagios.conf ] || ln -vs ../conf-available/pnp4nagios.conf /etc/apache2/conf.d/pnp4nagios.conf
# reload webserver
[ -x $(which invoke-rc.d) ] && invoke-rc.d apache2 reload
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@@ -1,54 +0,0 @@
#!/bin/sh
# postrm script for pnp4nagios-web-config-icinga
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
purge|remove)
# Apache2
if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
echo "disabling Apache2 configuration ..."
. /usr/share/apache2/apache2-maintscript-helper
apache2_invoke disconf pnp4nagios-web
fi
if [ -L /etc/apache2/conf.d/pnp4nagios-web.conf ]; then
echo "removing link /etc/apache2/conf.d/pnp4nagios-web.conf ..."
# remove link to config
rm -f /etc/apache2/conf.d/pnp4nagios-web.conf
# reload webserver
[ -x $(which invoke-rc.d) ] && invoke-rc.d apache2 reload || true
fi
;;
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@@ -1,2 +0,0 @@
debian/nagios4/config.nagios4.php etc/pnp4nagios
debian/nagios4/pnp4nagios.conf etc/apache2/conf-available

View File

@@ -1,7 +0,0 @@
# ignoring apache2 warning
# this is actually not a problem, because the handling is backwards compatible
apache2-reverse-dependency-calls-invoke-rc.d postrm
apache2-reverse-dependency-calls-wrapper-script postinst a2enmod
apache2-reverse-dependency-calls-invoke-rc.d postinst
# we actually want that
non-standard-apache2-configuration-name pnp4nagios.conf != pnp4nagios-web-config-nagios4.conf

View File

@@ -1,63 +0,0 @@
#!/bin/sh
# postinst script for pnp4nagios-web-config-nagios4
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
echo "enabling Apache2 config..."
COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
# NEW method for Apache >= 2.4
if [ -e /usr/share/apache2/apache2-maintscript-helper ]; then
. /usr/share/apache2/apache2-maintscript-helper
apache2_invoke enmod rewrite
apache2_invoke enconf pnp4nagios
# remove OLD Apache 2.2 link
[ -L /etc/apache2/conf.d/pnp4nagios-web.conf ] && rm /etc/apache2/conf.d/pnp4nagios-web.conf
# OLD methods for Apache < 2.4
elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
# enable mod rewrite
[ -f /etc/apache2/mods-enabled/rewrite.load ] || a2enmod rewrite
# create symlink if not existing
[ -f /etc/apache2/conf.d/pnp4nagios.conf ] || ln -vs ../conf-available/pnp4nagios.conf /etc/apache2/conf.d/pnp4nagios.conf
# reload webserver
[ -x $(which invoke-rc.d) ] && invoke-rc.d apache2 reload
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@@ -1,54 +0,0 @@
#!/bin/sh
# postrm script for pnp4nagios-web-config-nagios4
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
purge|remove)
# Apache2
if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
echo "disabling Apache2 configuration ..."
. /usr/share/apache2/apache2-maintscript-helper
apache2_invoke disconf pnp4nagios-web
fi
if [ -L /etc/apache2/conf.d/pnp4nagios-web.conf ]; then
echo "removing link /etc/apache2/conf.d/pnp4nagios-web.conf ..."
# remove link to config
rm -f /etc/apache2/conf.d/pnp4nagios-web.conf
# reload webserver
[ -x $(which invoke-rc.d) ] && invoke-rc.d apache2 reload || true
fi
;;
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@@ -1 +0,0 @@
sample-config/httpd.conf

View File

@@ -1,14 +0,0 @@
etc/pnp4nagios/config.php
etc/pnp4nagios/background.pdf
etc/pnp4nagios/templates/
etc/pnp4nagios/templates.d/
etc/pnp4nagios/pages/
etc/pnp4nagios/templates.special/
etc/pnp4nagios/pnp4nagios_release
usr/share/doc/pnp4nagios/examples/templates.special/
usr/share/doc/pnp4nagios/examples/pages/
usr/share/doc/pnp4nagios/examples/ssi/
usr/share/pnp4nagios/html/
usr/lib/pnp4nagios/kohana/
var/log/pnp4nagios/kohana/
var/lib/pnp4nagios/

View File

@@ -1,60 +0,0 @@
#!/bin/sh
# postinst script for pnp4nagios-web
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
setperm() {
user="$1"
group="$2"
mode="$3"
file="$4"
shift 4
# only do something when no setting exists
if ! dpkg-statoverride --list "$file" >/dev/null 2>&1; then
chown "$user":"$group" "$file"
chmod "$mode" "$file"
fi
}
case "$1" in
configure)
if ! getent passwd nagios > /dev/null ; then
echo 'Adding system-user for nagios' 1>&2
adduser --system --group --home /var/lib/nagios \
--disabled-login --force-badname nagios > /dev/null
fi
setperm nagios www-data 750 /var/lib/pnp4nagios
setperm nagios nagios 755 /var/lib/pnp4nagios/perfdata
setperm nagios www-data 750 /var/log/pnp4nagios
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

113
debian/rules vendored
View File

@@ -1,113 +0,0 @@
#!/usr/bin/make -f
# debian/rules for PNP4Nagios
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
CFLAGS += -Wextra
%:
dh $@ --with autoreconf,autotools_dev
override_dh_auto_configure:
dh_auto_configure -- \
--with-layout=debian \
--mandir=/usr/share/man \
--infodir=/usr/share/info
# --without-kohana \
# --with-kohana_system=/usr/share/php/kohana2/system
override_dh_auto_build:
dh_auto_build -- all
#python -m jsmin share/pnp/media/js/jquery.imgareaselect.js \
# > share/pnp/media/js/jquery.imgareaselect.min.js
override_dh_auto_install:
dh_auto_install -- install-config
# Ignore install.php (for future debugging don't delete it)
touch debian/tmp/usr/share/pnp4nagios/html/install.ignore
mkdir -p debian/tmp/usr/share/doc/pnp4nagios/examples/
# Move template config dir to /etc/pnp4nagios/templates
rmdir debian/tmp/usr/share/pnp4nagios/html/templates
mkdir debian/tmp/etc/pnp4nagios/templates
mv debian/tmp/usr/share/pnp4nagios/html/templates.special \
debian/tmp/usr/share/doc/pnp4nagios/examples/
mkdir debian/tmp/etc/pnp4nagios/templates.special
mkdir -p debian/tmp/usr/sbin/
mv debian/tmp/usr/bin/npcd \
debian/tmp/usr/sbin/
mv debian/tmp/etc/pnp4nagios/rra.cfg-sample \
debian/tmp/etc/pnp4nagios/rra.cfg
mv debian/tmp/etc/pnp4nagios/nagios.cfg-sample \
debian/tmp/usr/share/doc/pnp4nagios/examples/nagios.cfg
mv debian/tmp/etc/pnp4nagios/misccommands.cfg-sample \
debian/tmp/usr/share/doc/pnp4nagios/examples/misccommands.cfg
mkdir debian/tmp/usr/share/doc/pnp4nagios/examples/check_commands
mv debian/tmp/etc/pnp4nagios/check_commands/check_nwstat.cfg-sample \
debian/tmp/usr/share/doc/pnp4nagios/examples/check_commands/check_nwstat.cfg
mkdir debian/tmp/usr/share/doc/pnp4nagios/examples/pages
mv debian/tmp/etc/pnp4nagios/pages/web_traffic.cfg-sample \
debian/tmp/usr/share/doc/pnp4nagios/examples/pages/web_traffic.cfg
cp -av contrib/ssi debian/tmp/usr/share/doc/pnp4nagios/examples/
rm -fv debian/tmp/usr/share/doc/pnp4nagios/examples/ssi/*.in
# Icinga module sample configuration
cp debian/icinga-module.cfg debian/tmp/usr/share/doc/pnp4nagios/examples/
# Remove external PHP classes/libraries: FPDF, FPDF-TPL, FPDI
#rm -r debian/tmp/usr/share/pnp4nagios/html/application/vendor/fpdf
# remove source files
#rm -f debian/tmp/usr/share/pnp4nagios/html/media/js/jquery.imgareaselect.Debian.txt
#rm -f debian/tmp/usr/share/pnp4nagios/html/media/js/jquery.imgareaselect.js
# Remove external JavaScript files: jQuery and jQuery-UI
# no longer present in DFSG tarball
#rm debian/tmp/usr/share/pnp4nagios/html/media/js/jquery-min.js
#rm debian/tmp/usr/share/pnp4nagios/html/media/js/jquery-ui.min.js
# Clean up some files
rmdir debian/tmp/usr/bin
mv debian/tmp/etc/pnp4nagios/check_commands/check_all_local_disks.cfg-sample \
debian/tmp/etc/pnp4nagios/check_commands/check_all_local_disks.cfg
rm debian/tmp/etc/pnp4nagios/check_commands/check_nrpe.cfg-sample
# Add Debian specific config and placeholder files
#touch debian/tmp/etc/pnp4nagios/pages/.placeholder
cp -av debian/nagios.cfg debian/tmp/etc/pnp4nagios/
cp -av debian/check_commands/* debian/tmp/etc/pnp4nagios/check_commands/
# Remove unnecessary config files (duplicates)
rm -f debian/tmp/etc/pnp4nagios/config_local.php
rm -f debian/tmp/etc/pnp4nagios/config.php.0.6*
# Add subdirs to /var/spool/pnp4nagios/ to prepare for different modes
mkdir debian/tmp/var/spool/pnp4nagios/nagios
mkdir debian/tmp/var/spool/pnp4nagios/npcd
# Delete not used and empty directories
#rmdir debian/tmp/usr/share/pnp4nagios/html/application/logs/
rmdir debian/tmp/usr/share/pnp4nagios/html/application/cache/
rmdir debian/tmp/usr/share/pnp4nagios/html/application/hooks/
#rmdir debian/tmp/usr/share/pnp4nagios/html/application/libraries/
mkdir debian/tmp/etc/pnp4nagios/templates.d
cp debian/README.templates.d debian/tmp/etc/pnp4nagios/templates.d/README
override_dh_installinit:
dh_installinit -ppnp4nagios-bin --name=npcd
dh_installinit -ppnp4nagios-bin --name=pnp_gearman_worker
# vi: noexpandtab ts=4 sw=4 :

View File

@@ -1 +0,0 @@
3.0 (quilt)

3
debian/watch vendored
View File

@@ -1,3 +0,0 @@
version=3
opts="dversionmangle=s/\+dfsg\d*//,uversionmangle=s/\.rc/~rc/" \
http://sf.net/pnp4nagios/pnp4nagios-(.+)\.tar\.gz

View File

@@ -39,4 +39,4 @@ for L in $LANG; do
((lindex++))
done
rm de_DE/dwnld.html
ln -s en_US/dwnld.html de_DE/dwnld.html
ln -s ../en_US/dwnld.html de_DE/dwnld.html

2
include/.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
config.h
stamp-h

View File

@@ -12,9 +12,6 @@
/* Define to 1 if you have the `bzero' function. */
#undef HAVE_BZERO
/* Define to 1 if you have the `getloadavg' function. */
#undef HAVE_GETLOADAVG
/* Define to 1 if you have the <dirent.h> header file. */
#undef HAVE_DIRENT_H
@@ -27,6 +24,9 @@
/* Define to 1 if you have the `fork' function. */
#undef HAVE_FORK
/* Define to 1 if you have the `getloadavg' function. */
#undef HAVE_GETLOADAVG
/* Define to 1 if you have the <getopt.h> header file. */
#undef HAVE_GETOPT_H
@@ -43,9 +43,6 @@
to 0 otherwise. */
#undef HAVE_MALLOC
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#undef HAVE_NDIR_H
@@ -89,7 +86,7 @@
/* Define to 1 if you have the `strspn' function. */
#undef HAVE_STRSPN
/* Define to 1 if `d_type' is member of `struct dirent'. */
/* Define to 1 if `d_type' is a member of `struct dirent'. */
#undef HAVE_STRUCT_DIRENT_D_TYPE
/* Define to 1 if you have the <syslog.h> header file. */
@@ -99,6 +96,12 @@
*/
#undef HAVE_SYS_DIR_H
/* Define to 1 if you have the <sys/loadavg.h> header file. */
#undef HAVE_SYS_LOADAVG_H
/* Define to 1 if you have the <sys/mman.h> header file. */
#undef HAVE_SYS_MMAN_H
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_NDIR_H
@@ -118,9 +121,6 @@
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the <sys/mman.h> header file. */
#undef HAVE_SYS_MMAN_H
/* Define to 1 if you have the `vfork' function. */
#undef HAVE_VFORK
@@ -149,13 +149,15 @@
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE
/* Define to 1 if you have the ANSI C header files. */
/* Define to 1 if all of the C90 standard headers exist (not just the ones
required in a freestanding environment). This macro is provided for
backward compatibility; new code need not use it. */
#undef STDC_HEADERS
/* Define to empty if `const' does not conform to ANSI C. */
@@ -167,7 +169,7 @@
/* Define to rpl_malloc if the replacement function should be used. */
#undef malloc
/* Define to `int' if <sys/types.h> does not define. */
/* Define as a signed integer type capable of holding a process identifier. */
#undef pid_t
/* Define to `int' if <sys/types.h> doesn't define. */

1
include/stamp-h.in Normal file
View File

@@ -0,0 +1 @@
2023-10-09T09:17:20-04:00

1
lib/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
Makefile

View File

@@ -1,7 +1,6 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
LOGDIR=@localstatedir@
CFGDIR=@sysconfdir@
BINDIR=@bindir@
CGIDIR=@sbindir@
LIBDIR=@libdir@
@@ -22,284 +21,285 @@ devclean: distclean
install:
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/controllers
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/helpers
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/libraries
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Database
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Image
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Session
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/config
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/core
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/views
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/views/pagination
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(LIBDIR)/kohana/system/fonts
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/controllers/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/controllers/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/controllers/template.php $(DESTDIR)$(LIBDIR)/kohana/system/controllers/template.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/validation.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/core.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/orm.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/image.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/session.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/database.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/event.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/errors.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/swift.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/de_DE/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/validation.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/core.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/orm.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/image.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/session.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/database.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/event.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/errors.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/swift.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/nl_NL/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/validation.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/core.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/orm.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/image.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/session.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/database.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/event.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/errors.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/swift.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/es_ES/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/validation.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/core.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/orm.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/image.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/session.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/database.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/event.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/errors.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/swift.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/ru_RU/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/validation.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/core.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/orm.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/image.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/session.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/database.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/event.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/errors.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/swift.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/en_US/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/validation.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/core.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/orm.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/image.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/session.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/database.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/event.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/errors.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/swift.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/fr_FR/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/validation.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/core.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/orm.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/image.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/session.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/database.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/event.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/errors.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/swift.php $(DESTDIR)$(LIBDIR)/kohana/system/i18n/it_IT/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/remote.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/remote.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/url.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/url.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/feed.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/feed.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/expires.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/expires.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/text.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/text.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/email.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/email.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/download.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/download.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/format.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/format.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/form.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/form.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/arr.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/arr.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/html.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/html.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/valid.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/valid.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/date.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/date.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/file.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/file.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/request.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/request.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/cookie.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/cookie.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/security.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/security.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/num.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/num.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/inflector.php $(DESTDIR)$(LIBDIR)/kohana/system/helpers/inflector.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM_Tree.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/ORM_Tree.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Encrypt.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Database_Expression.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Database_Expression.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Event_Observer.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Event_Observer.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Event_Subject.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Event_Subject.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Cache.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Session.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Mssql.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Database/Mssql.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Pdosqlite.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Database/Pdosqlite.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Mysqli.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Database/Mysqli.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Pgsql.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Database/Pgsql.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Mysql.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Database/Mysql.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Alpha.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha/Alpha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Math.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha/Math.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Word.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha/Word.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Riddle.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha/Riddle.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Basic.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha/Basic.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Black.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha/Black.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Eaccelerator.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache/Eaccelerator.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Apc.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache/Apc.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Memcache.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache/Memcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Xcache.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache/Xcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/File.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache/File.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Sqlite.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Cache/Sqlite.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image/GraphicsMagick.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Image/GraphicsMagick.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image/GD.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Image/GD.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image/ImageMagick.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Image/ImageMagick.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session/Cookie.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Session/Cookie.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session/Cache.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Session/Cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session/Database.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Session/Database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/drivers/Database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Image.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Validation.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM_Versioned.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/ORM_Versioned.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Controller.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Controller.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Model.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Model.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/View.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/View.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Router.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Router.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM_Iterator.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/ORM_Iterator.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Profiler_Table.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Profiler_Table.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/URI.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/URI.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/ORM.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Calendar_Event.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Calendar_Event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Tagcloud.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Tagcloud.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Input.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Input.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Database.php $(DESTDIR)$(LIBDIR)/kohana/system/libraries/Database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/locale.php $(DESTDIR)$(LIBDIR)/kohana/system/config/locale.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/routes.php $(DESTDIR)$(LIBDIR)/kohana/system/config/routes.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/pagination.php $(DESTDIR)$(LIBDIR)/kohana/system/config/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/sql_types.php $(DESTDIR)$(LIBDIR)/kohana/system/config/sql_types.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/captcha.php $(DESTDIR)$(LIBDIR)/kohana/system/config/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/email.php $(DESTDIR)$(LIBDIR)/kohana/system/config/email.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/image.php $(DESTDIR)$(LIBDIR)/kohana/system/config/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache_sqlite.php $(DESTDIR)$(LIBDIR)/kohana/system/config/cache_sqlite.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache_memcache.php $(DESTDIR)$(LIBDIR)/kohana/system/config/cache_memcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/session.php $(DESTDIR)$(LIBDIR)/kohana/system/config/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/database.php $(DESTDIR)$(LIBDIR)/kohana/system/config/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/credit_cards.php $(DESTDIR)$(LIBDIR)/kohana/system/config/credit_cards.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/http.php $(DESTDIR)$(LIBDIR)/kohana/system/config/http.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/mimes.php $(DESTDIR)$(LIBDIR)/kohana/system/config/mimes.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/config/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/view.php $(DESTDIR)$(LIBDIR)/kohana/system/config/view.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache.php $(DESTDIR)$(LIBDIR)/kohana/system/config/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/encryption.php $(DESTDIR)$(LIBDIR)/kohana/system/config/encryption.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/upload.php $(DESTDIR)$(LIBDIR)/kohana/system/config/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cookie.php $(DESTDIR)$(LIBDIR)/kohana/system/config/cookie.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/user_agents.php $(DESTDIR)$(LIBDIR)/kohana/system/config/user_agents.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/inflector.php $(DESTDIR)$(LIBDIR)/kohana/system/config/inflector.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache_xcache.php $(DESTDIR)$(LIBDIR)/kohana/system/config/cache_xcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Event.php $(DESTDIR)$(LIBDIR)/kohana/system/core/Event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/transliterate_to_ascii.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/transliterate_to_ascii.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ucfirst.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/ucfirst.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ord.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/ord.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strrpos.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strrpos.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strtolower.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strtolower.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/substr.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/substr.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/str_pad.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/str_pad.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strcspn.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strcspn.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/trim.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/trim.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/rtrim.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/rtrim.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strcasecmp.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strcasecmp.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strtoupper.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strtoupper.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/str_split.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/str_split.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strpos.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strpos.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/stristr.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/stristr.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ucwords.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/ucwords.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/str_ireplace.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/str_ireplace.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strlen.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strlen.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/to_unicode.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/to_unicode.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/substr_replace.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/substr_replace.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/from_unicode.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/from_unicode.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strrev.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strrev.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strspn.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/strspn.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ltrim.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8/ltrim.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Benchmark.php $(DESTDIR)$(LIBDIR)/kohana/system/core/Benchmark.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Bootstrap.php $(DESTDIR)$(LIBDIR)/kohana/system/core/Bootstrap.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Kohana.php $(DESTDIR)$(LIBDIR)/kohana/system/core/Kohana.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8.php $(DESTDIR)$(LIBDIR)/kohana/system/core/utf8.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_profiler_table.php $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana_profiler_table.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana/template.php $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana/template.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_error_page.php $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana_error_page.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_calendar.php $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana_calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/digg.php $(DESTDIR)$(LIBDIR)/kohana/system/views/pagination/digg.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/punbb.php $(DESTDIR)$(LIBDIR)/kohana/system/views/pagination/punbb.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/extended.php $(DESTDIR)$(LIBDIR)/kohana/system/views/pagination/extended.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/classic.php $(DESTDIR)$(LIBDIR)/kohana/system/views/pagination/classic.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_profiler_table.css $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana_profiler_table.css
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_profiler.php $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana_profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_error_disabled.php $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana_error_disabled.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_errors.css $(DESTDIR)$(LIBDIR)/kohana/system/views/kohana_errors.css
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/fonts/LICENSE $(DESTDIR)$(LIBDIR)/kohana/system/fonts/LICENSE
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/fonts/DejaVuSerif.ttf $(DESTDIR)$(LIBDIR)/kohana/system/fonts/DejaVuSerif.ttf
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/controllers
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Database
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Image
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Session
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/config
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/core
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/views
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/pagination
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(DATAROOTDIR)/kohana/system/fonts
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/controllers/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/controllers/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/controllers/template.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/controllers/template.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/core.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/orm.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/errors.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/de_DE/swift.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/de_DE/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/core.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/orm.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/errors.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/nl_NL/swift.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/nl_NL/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/core.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/orm.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/errors.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/es_ES/swift.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/es_ES/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/core.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/orm.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/errors.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/ru_RU/swift.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/ru_RU/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/core.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/orm.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/errors.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/en_US/swift.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/en_US/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/core.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/orm.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/errors.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/fr_FR/swift.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/fr_FR/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/core.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/core.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/orm.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/orm.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/errors.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/errors.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/i18n/it_IT/swift.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/i18n/it_IT/swift.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/remote.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/remote.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/url.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/url.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/feed.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/feed.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/expires.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/expires.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/text.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/text.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/email.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/email.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/download.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/download.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/format.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/format.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/form.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/form.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/arr.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/arr.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/html.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/html.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/valid.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/valid.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/date.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/date.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/file.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/file.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/request.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/request.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/cookie.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/cookie.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/security.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/security.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/num.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/num.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/helpers/inflector.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/helpers/inflector.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM_Tree.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/ORM_Tree.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Encrypt.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Encrypt.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Database_Expression.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Database_Expression.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Event_Observer.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Event_Observer.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Event_Subject.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Event_Subject.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Mssql.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Database/Mssql.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Pdosqlite.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Database/Pdosqlite.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Mysqli.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Database/Mysqli.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Pgsql.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Database/Pgsql.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database/Mysql.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Database/Mysql.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Alpha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha/Alpha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Math.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha/Math.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Word.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha/Word.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Riddle.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha/Riddle.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Basic.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha/Basic.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha/Black.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha/Black.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Eaccelerator.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache/Eaccelerator.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Apc.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache/Apc.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Memcache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache/Memcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Xcache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache/Xcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/File.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache/File.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Cache/Sqlite.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Cache/Sqlite.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image/GraphicsMagick.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Image/GraphicsMagick.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image/GD.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Image/GD.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Image/ImageMagick.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Image/ImageMagick.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session/Cookie.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Session/Cookie.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session/Cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Session/Cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Session/Database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Session/Database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/drivers/Database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/drivers/Database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Validation.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Validation.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM_Versioned.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/ORM_Versioned.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Controller.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Controller.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Model.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Model.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/View.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/View.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Router.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Router.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM_Iterator.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/ORM_Iterator.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Profiler_Table.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Profiler_Table.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/URI.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/URI.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/ORM.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/ORM.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Calendar_Event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Calendar_Event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Tagcloud.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Tagcloud.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Input.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Input.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/libraries/Database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/libraries/Database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/locale.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/locale.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/routes.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/routes.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/pagination.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/pagination.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/sql_types.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/sql_types.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/captcha.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/captcha.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/email.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/email.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/image.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/image.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache_sqlite.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/cache_sqlite.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache_memcache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/cache_memcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/session.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/session.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/database.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/database.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/credit_cards.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/credit_cards.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/http.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/http.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/mimes.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/mimes.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/view.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/view.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/cache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/encryption.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/encryption.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/upload.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/upload.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cookie.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/cookie.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/user_agents.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/user_agents.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/inflector.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/inflector.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/config/cache_xcache.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/config/cache_xcache.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Event.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/Event.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/transliterate_to_ascii.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/transliterate_to_ascii.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ucfirst.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/ucfirst.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ord.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/ord.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strrpos.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strrpos.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strtolower.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strtolower.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/substr.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/substr.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/str_pad.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/str_pad.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strcspn.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strcspn.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/trim.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/trim.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/rtrim.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/rtrim.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strcasecmp.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strcasecmp.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strtoupper.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strtoupper.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/str_split.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/str_split.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strpos.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strpos.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/stristr.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/stristr.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ucwords.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/ucwords.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/str_ireplace.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/str_ireplace.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strlen.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strlen.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/to_unicode.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/to_unicode.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/substr_replace.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/substr_replace.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/from_unicode.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/from_unicode.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strrev.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strrev.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/strspn.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/strspn.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8/ltrim.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8/ltrim.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Benchmark.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/Benchmark.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Bootstrap.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/Bootstrap.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Security.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/Security.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/Kohana.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/Kohana.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/core/utf8.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/core/utf8.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_profiler_table.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana_profiler_table.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana/template.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana/template.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_error_page.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana_error_page.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_calendar.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana_calendar.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/digg.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/pagination/digg.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/punbb.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/pagination/punbb.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/extended.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/pagination/extended.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/pagination/classic.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/pagination/classic.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_profiler_table.css $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana_profiler_table.css
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_profiler.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana_profiler.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_error_disabled.php $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana_error_disabled.php
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/views/kohana_errors.css $(DESTDIR)$(DATAROOTDIR)/kohana/system/views/kohana_errors.css
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/fonts/LICENSE $(DESTDIR)$(DATAROOTDIR)/kohana/system/fonts/LICENSE
$(INSTALL) -m 644 $(INSTALL_OPTS) kohana/system/fonts/DejaVuSerif.ttf $(DESTDIR)$(DATAROOTDIR)/kohana/system/fonts/DejaVuSerif.ttf

View File

@@ -1,4 +1,8 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
/**
* @package Cache
*
@@ -26,7 +30,7 @@
$config['default'] = array
(
'driver' => 'file',
'params' => APPPATH.'cache',
'params' => APPPATH . 'cache',
'lifetime' => 1800,
'requests' => 1000
);

View File

@@ -1,4 +1,8 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
/**
* @package Cache:Memcache
*
@@ -10,11 +14,11 @@ $config['servers'] = array
(
'host' => '127.0.0.1',
'port' => 11211,
'persistent' => FALSE,
'persistent' => false,
)
);
/**
* Enable cache data compression.
*/
$config['compression'] = FALSE;
$config['compression'] = false;

View File

@@ -1,4 +1,8 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
/**
* @package Cache:SQLite
*/

View File

@@ -1,4 +1,8 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
/**
* @package Cache:Xcache
*

View File

@@ -1,4 +1,8 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
/**
* @package Core
*
@@ -23,7 +27,7 @@ $config['default'] = array
'height' => 50,
'complexity' => 4,
'background' => '',
'fontpath' => SYSPATH.'fonts/',
'fontpath' => SYSPATH . 'fonts/',
'fonts' => array('DejaVuSerif.ttf'),
'promote' => FALSE,
'promote' => false,
);

View File

@@ -1,4 +1,8 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
/**
* @package Core
*
@@ -23,10 +27,10 @@ $config['expire'] = 0;
* Enable this option to only allow the cookie to be read when using the a
* secure protocol.
*/
$config['secure'] = FALSE;
$config['secure'] = false;
/**
* Enable this option to disable the cookie from being accessed when using a
* secure protocol. This option is only available in PHP 5.2 and above.
*/
$config['httponly'] = FALSE;
$config['httponly'] = false;

View File

@@ -1,4 +1,8 @@
<?php defined('SYSPATH') OR die('No direct access allowed.');
<?php
// phpcs:disable PSR1.Files.SideEffects
defined('SYSPATH') or die('No direct access allowed.');
// phpcs:enable PSR1.Files.SideEffects
/**
* Credit card validation configuration.
*
@@ -13,48 +17,48 @@ $config = array
(
'length' => '13,14,15,16,17,18,19',
'prefix' => '',
'luhn' => TRUE
'luhn' => true
),
'american express' => array
(
'length' => '15',
'prefix' => '3[47]',
'luhn' => TRUE
'luhn' => true
),
'diners club' => array
(
'length' => '14,16',
'prefix' => '36|55|30[0-5]',
'luhn' => TRUE
'luhn' => true
),
'discover' => array
(
'length' => '16',
'prefix' => '6(?:5|011)',
'luhn' => TRUE,
'luhn' => true,
),
'jcb' => array
(
'length' => '15,16',
'prefix' => '3|1800|2131',
'luhn' => TRUE
'luhn' => true
),
'maestro' => array
(
'length' => '16,18',
'prefix' => '50(?:20|38)|6(?:304|759)',
'luhn' => TRUE
'luhn' => true
),
'mastercard' => array
(
'length' => '16',
'prefix' => '5[1-5]',
'luhn' => TRUE
'luhn' => true
),
'visa' => array
(
'length' => '13,16',
'prefix' => '4',
'luhn' => TRUE
'luhn' => true
),
);

Some files were not shown because too many files have changed in this diff Show More