From b5575740aee6a1f4f6b19e13d8183f0abd49a8a6 Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 1/9] Patched installstaticwww --- build/Makefile.rules | 39 +++++++++++++++++++------------- common/xymonserver.cfg.5 | 4 ++++ configure.client | 3 +++ configure.server | 3 +++ debian/rules | 6 +---- docs/Makefile | 8 +++---- rpm/xymon.spec | 1 + xymond/Makefile | 8 +++---- xymond/etcfiles/xymon-apache-open.DIST | 9 ++++++++ xymond/etcfiles/xymon-apache-secure.DIST | 9 ++++++++ xymond/etcfiles/xymonserver.cfg.DIST | 1 + 11 files changed, 62 insertions(+), 29 deletions(-) diff --git a/build/Makefile.rules b/build/Makefile.rules index f1f441d..84b0f93 100644 --- a/build/Makefile.rules +++ b/build/Makefile.rules @@ -50,6 +50,9 @@ endif ifndef INSTALLWWWDIR INSTALLWWWDIR = $(XYMONHOME)/www endif +ifndef INSTALLSTATICWWWDIR +INSTALLSTATICWWWDIR = $(XYMONHOME)/static +endif ARESVER = 1.7.3 FPINGVER = 3.0 @@ -105,19 +108,19 @@ xymonproxy-build: lib-build common-build CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" SSLLIBS="$(SSLLIBS)" NETLIBS="$(NETLIBS)" LIBRTDEF="$(LIBRTDEF)" XYMONHOME="$(XYMONHOME)" $(MAKE) -C xymonproxy all xymond-build: lib-build build-build common-build - CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" DORRD="$(DORRD)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" SSLFLAGS="$(SSLFLAGS)" SSLLIBS="$(SSLLIBS)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" SQLITELIBS="$(SQLITELIBS)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" LIBRTDEF="$(LIBRTDEF)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" FPING="$(FPING)" $(MAKE) -C xymond all + CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" DORRD="$(DORRD)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" SSLFLAGS="$(SSLFLAGS)" SSLLIBS="$(SSLLIBS)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" SQLITELIBS="$(SQLITELIBS)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" LIBRTDEF="$(LIBRTDEF)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" FPING="$(FPING)" $(MAKE) -C xymond all web-build: lib-build build-build common-build - CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" DORRD="$(DORRD)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" SSLLIBS="$(SSLLIBS)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" LIBRTDEF="$(LIBRTDEF)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" $(MAKE) -C web all + CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" DORRD="$(DORRD)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" SSLLIBS="$(SSLLIBS)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" LIBRTDEF="$(LIBRTDEF)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" $(MAKE) -C web all xymond-client: lib-client build-build common-client - CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" LIBRTDEF="$(LIBRTDEF)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" $(MAKE) -C xymond client + CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" LIBRTDEF="$(LIBRTDEF)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" $(MAKE) -C xymond client docs-build: XYMONHOSTURL="$(XYMONHOSTURL)" $(MAKE) -C docs all custom-build: lib-build - CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" $(MAKE) -C custom all || echo "Skipped custom modules" + CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" RRDDEF="$(RRDDEF)" RRDINCDIR="$(RRDINCDIR)" PCREINCDIR="$(PCREINCDIR)" NETLIBS="$(NETLIBS)" RRDLIBS="$(RRDLIBS)" PCRELIBS="$(PCRELIBS)" ZLIBINCDIR="$(ZLIBINCDIR)" ZLIBLIBS="$(ZLIBLIBS)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONHOSTNAME="$(XYMONHOSTNAME)" XYMONHOSTIP="$(XYMONHOSTIP)" XYMONHOSTOS="$(XYMONHOSTOS)" XYMONUSER="$(XYMONUSER)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONHOSTURL="$(XYMONHOSTURL)" XYMONCGIURL="$(XYMONCGIURL)" SECUREXYMONCGIURL="$(SECUREXYMONCGIURL)" MAILPROGRAM="$(MAILPROGRAM)" RUNTIMEDEFS="$(RUNTIMEDEFS)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" $(MAKE) -C custom all || echo "Skipped custom modules" demo-build: CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" RPATHOPT="$(RPATHOPT)" NETLIBS="$(NETLIBS)" $(MAKE) -C demotool all @@ -234,14 +237,18 @@ ifndef PKGBUILD chmod 755 $(INSTALLROOT)$(INSTALLWEBDIR) endif - mkdir -p $(INSTALLROOT)$(INSTALLWWWDIR) $(INSTALLROOT)$(INSTALLWWWDIR)/gifs $(INSTALLROOT)$(INSTALLWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/rep $(INSTALLROOT)$(INSTALLWWWDIR)/snap $(INSTALLROOT)$(INSTALLWWWDIR)/wml + mkdir -p $(INSTALLROOT)$(INSTALLWWWDIR) $(INSTALLROOT)$(INSTALLSTATICWWWDIR) $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/gifs $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/rep $(INSTALLROOT)$(INSTALLWWWDIR)/snap $(INSTALLROOT)$(INSTALLWWWDIR)/wml ifneq ($(INSTALLWWWDIR),$(XYMONHOME)/www) rm -f $(INSTALLROOT)$(XYMONHOME)/www || true ln -s $(INSTALLWWWDIR) $(INSTALLROOT)$(XYMONHOME)/www || true endif +ifneq ($(INSTALLSTATICWWWDIR),$(XYMONHOME)/static) + rm -f $(INSTALLROOT)$(XYMONHOME)/static || true + ln -s $(INSTALLSTATICWWWDIR) $(INSTALLROOT)$(XYMONHOME)/static || true +endif ifndef PKGBUILD - chown $(XYMONUSER) $(INSTALLROOT)$(INSTALLWWWDIR) $(INSTALLROOT)$(INSTALLWWWDIR)/gifs $(INSTALLROOT)$(INSTALLWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/rep $(INSTALLROOT)$(INSTALLWWWDIR)/snap $(INSTALLROOT)$(INSTALLWWWDIR)/wml - chgrp `$(IDTOOL) -g $(XYMONUSER)` $(INSTALLROOT)$(INSTALLWWWDIR) $(INSTALLROOT)$(INSTALLWWWDIR)/gifs $(INSTALLROOT)$(INSTALLWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/rep $(INSTALLROOT)$(INSTALLWWWDIR)/snap $(INSTALLROOT)$(INSTALLWWWDIR)/wml + chown $(XYMONUSER) $(INSTALLROOT)$(INSTALLWWWDIR) $(INSTALLROOT)$(INSTALLSTATICWWWDIR) $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/gifs $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/rep $(INSTALLROOT)$(INSTALLWWWDIR)/snap $(INSTALLROOT)$(INSTALLWWWDIR)/wml + chgrp `$(IDTOOL) -g $(XYMONUSER)` $(INSTALLROOT)$(INSTALLWWWDIR) $(INSTALLROOT)$(INSTALLSTATICWWWDIR) $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/gifs $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/rep $(INSTALLROOT)$(INSTALLWWWDIR)/snap $(INSTALLROOT)$(INSTALLWWWDIR)/wml chmod 755 $(INSTALLROOT)$(INSTALLWWWDIR) $(INSTALLROOT)$(INSTALLWWWDIR)/gifs $(INSTALLROOT)$(INSTALLWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/rep $(INSTALLROOT)$(INSTALLWWWDIR)/snap $(INSTALLROOT)$(INSTALLWWWDIR)/wml ifdef HTTPDGID # The www/rep and www/snap directories must be writable by the apache daemon @@ -307,25 +314,25 @@ ifndef PKGBUILD endif install-common: install-dirs - XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" $(MAKE) -C common install + XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" $(MAKE) -C common install install-xymongen: install-common - XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" $(MAKE) -C xymongen install + XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" $(MAKE) -C xymongen install install-xymongen-nocgi: install-common - XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" $(MAKE) -C xymongen install-nocgi + XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" $(MAKE) -C xymongen install-nocgi install-xymonnet: install-common - XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" ARESVER="$(ARESVER)" FPINGVER="$(FPINGVER)" DOSNMP="$(DOSNMP)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" PKGBUILD="$(PKGBUILD)" $(MAKE) -C xymonnet install + XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" ARESVER="$(ARESVER)" FPINGVER="$(FPINGVER)" DOSNMP="$(DOSNMP)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" PKGBUILD="$(PKGBUILD)" $(MAKE) -C xymonnet install install-xymonproxy: install-common - XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" $(MAKE) -C xymonproxy install + XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" $(MAKE) -C xymonproxy install install-xymond: install-common - DORRD="$(DORRD)" MANROOT="$(MANROOT)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" HTTPDGID="$(HTTPDGID)" $(MAKE) -C xymond install + DORRD="$(DORRD)" MANROOT="$(MANROOT)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" HTTPDGID="$(HTTPDGID)" $(MAKE) -C xymond install install-web: install-common - DORRD="$(DORRD)" MANROOT="$(MANROOT)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" $(MAKE) -C web install + DORRD="$(DORRD)" MANROOT="$(MANROOT)" XYMONTOPDIR="$(XYMONTOPDIR)" XYMONHOME="$(XYMONHOME)" XYMONVAR="$(XYMONVAR)" CGIDIR="$(CGIDIR)" SECURECGIDIR="$(SECURECGIDIR)" XYMONLOGDIR="$(XYMONLOGDIR)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" $(MAKE) -C web install find $(INSTALLROOT)$(INSTALLWWWDIR) -type f -exec chmod 644 {} \; @@ -340,10 +347,10 @@ install-man: find $(INSTALLROOT)$(MANROOT) -type f -exec chmod 644 {} \; install-docs: - XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" $(MAKE) -C docs install + XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" $(MAKE) -C docs install install-custom: - XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" $(MAKE) -C custom install || echo "Skipped custom modules" + XYMONHOME="$(XYMONHOME)" MANROOT="$(MANROOT)" XYMONUSER="$(XYMONUSER)" IDTOOL="$(IDTOOL)" PKGBUILD="$(PKGBUILD)" INSTALLROOT="$(INSTALLROOT)" INSTALLBINDIR="$(INSTALLBINDIR)" INSTALLETCDIR="$(INSTALLETCDIR)" INSTALLEXTDIR="$(INSTALLEXTDIR)" INSTALLTMPDIR="$(INSTALLTMPDIR)" INSTALLWEBDIR="$(INSTALLWEBDIR)" INSTALLWWWDIR="$(INSTALLWWWDIR)" INSTALLSTATICWWWDIR="$(INSTALLSTATICWWWDIR)" $(MAKE) -C custom install || echo "Skipped custom modules" client-install: install-client diff --git a/common/xymonserver.cfg.5 b/common/xymonserver.cfg.5 index 9125888..4ca815c 100644 --- a/common/xymonserver.cfg.5 +++ b/common/xymonserver.cfg.5 @@ -177,6 +177,10 @@ Directory used for temporary files. Default: $XYMONHOME/tmp/ Directory for Xymon webfiles. The $XYMONWEB URL must map to this directory. Default: $XYMONHOME/www/ +.IP XYMONSTATICWWWDIR +Directory for static Xymon webfiles like gifs and CSS files. +Default: $XYMONHOME/static/ + .IP XYMONNOTESDIR Directory for Xymon notes-files. The $XYMONNOTESSKIN URL must map to this directory. Default: $XYMONHOME/www/notes/ diff --git a/configure.client b/configure.client index 583c0ce..2bca8fd 100755 --- a/configure.client +++ b/configure.client @@ -230,6 +230,9 @@ fi if test "$INSTALLWWWDIR" != ""; then echo "INSTALLWWWDIR = $INSTALLWWWDIR" >>Makefile fi +if test "$INSTALLSTATICWWWDIR" != ""; then + echo "INSTALLSTATICWWWDIR = $INSTALLSTATICWWWDIR" >>Makefile +fi echo "" >>Makefile if test "$CONFTYPE" = "client" then diff --git a/configure.server b/configure.server index 3ac2520..1fc3818 100755 --- a/configure.server +++ b/configure.server @@ -569,6 +569,9 @@ fi if test "$INSTALLWWWDIR" != ""; then echo "INSTALLWWWDIR = $INSTALLWWWDIR" >>Makefile fi +if test "$INSTALLSTATICWWWDIR" != ""; then + echo "INSTALLSTATICWWWDIR = $INSTALLSTATICWWWDIR" >>Makefile +fi echo "" >>Makefile echo "# Add local CFLAGS etc. settings here" >>Makefile echo "" >>Makefile diff --git a/debian/rules b/debian/rules index 627d4df..ba33c38 100755 --- a/debian/rules +++ b/debian/rules @@ -34,6 +34,7 @@ Makefile: configure INSTALLEXTDIR=/usr/lib/xymon/server/ext \ INSTALLTMPDIR=/var/lib/xymon/tmp \ INSTALLWWWDIR=/var/lib/xymon/www \ + INSTALLSTATICWWWDIR=/usr/share/xymon \ ./configure build: build-stamp @@ -67,11 +68,6 @@ install-server: build install-clean dh_install -a dh_installdirs -a PKGBUILD=1 INSTALLROOT=$S/ $(MAKE) install - # Static content in /usr/share - cd $S/var/lib/xymon/www && \ - mv gifs ../../../../usr/share/xymon && ln -s ../../../../usr/share/xymon/gifs . && \ - mv help ../../../../usr/share/xymon && ln -s ../../../../usr/share/xymon/help . && \ - mv menu ../../../../usr/share/xymon && ln -s ../../../../usr/share/xymon/menu . # We depend on the -client package rm -rf $S/usr/lib/xymon/client # This needs root diff --git a/docs/Makefile b/docs/Makefile index 593884b..41e0fed 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -5,10 +5,10 @@ clean: rm -f xymon-tips.html *~ install: - mkdir -p $(INSTALLROOT)$(INSTALLWWWDIR)/help/manpages - cd manpages; tar cf - . | (cd $(INSTALLROOT)$(INSTALLWWWDIR)/help/manpages; tar xf -) - cp -f *html *txt *png *jpg $(INSTALLROOT)$(INSTALLWWWDIR)/help/; rm -f $(INSTALLROOT)$(INSTALLWWWDIR)/help/man-index.html - cp -f man-index.html $(INSTALLROOT)$(INSTALLWWWDIR)/help/manpages/index.html + mkdir -p $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help/manpages + cd manpages; tar cf - . | (cd $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help/manpages; tar xf -) + cp -f *html *txt *png *jpg $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help/; rm -f $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help/man-index.html + cp -f man-index.html $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help/manpages/index.html ifndef PKGBUILD chown -R $(XYMONUSER) $(INSTALLROOT)$(INSTALLWWWDIR)/help chgrp -R `$(IDTOOL) -g $(XYMONUSER)` $(INSTALLROOT)$(INSTALLWWWDIR)/help diff --git a/rpm/xymon.spec b/rpm/xymon.spec index e1ce934..2c1beea 100644 --- a/rpm/xymon.spec +++ b/rpm/xymon.spec @@ -60,6 +60,7 @@ rm -rf $RPM_BUILD_ROOT INSTALLEXTDIR=/usr/lib/xymon/server/ext \ INSTALLTMPDIR=/var/lib/xymon/tmp \ INSTALLWWWDIR=/var/lib/xymon/www \ + INSTALLSTATICWWWDIR=/usr/lib/xymon/static \ ./configure %build diff --git a/xymond/Makefile b/xymond/Makefile index ce71a6e..5084186 100644 --- a/xymond/Makefile +++ b/xymond/Makefile @@ -137,7 +137,7 @@ else endif cfgfiles: - cat $(APACHECONF) | sed -e 's!@XYMONHOME@!$(XYMONHOME)!g' | sed -e 's!@INSTALLETCDIR@!$(INSTALLETCDIR)!g' | sed -e 's!@INSTALLWWWDIR@!$(INSTALLWWWDIR)!g' | sed -e 's!@CGIDIR@!$(CGIDIR)!g' | sed -e 's!@SECURECGIDIR@!$(SECURECGIDIR)!g' | sed -e 's!@XYMONHOSTURL@!$(XYMONHOSTURL)!g' | sed -e 's!@XYMONCGIURL@!$(XYMONCGIURL)!g' | sed -e 's!@SECUREXYMONCGIURL@!$(SECUREXYMONCGIURL)!g' >etcfiles/xymon-apache.conf + cat $(APACHECONF) | sed -e 's!@XYMONHOME@!$(XYMONHOME)!g' | sed -e 's!@INSTALLETCDIR@!$(INSTALLETCDIR)!g' | sed -e 's!@INSTALLWWWDIR@!$(INSTALLWWWDIR)!g' | sed -e 's!@INSTALLSTATICWWWDIR@!$(INSTALLSTATICWWWDIR)!g' | sed -e 's!@CGIDIR@!$(CGIDIR)!g' | sed -e 's!@SECURECGIDIR@!$(SECURECGIDIR)!g' | sed -e 's!@XYMONHOSTURL@!$(XYMONHOSTURL)!g' | sed -e 's!@XYMONCGIURL@!$(XYMONCGIURL)!g' | sed -e 's!@SECUREXYMONCGIURL@!$(SECUREXYMONCGIURL)!g' >etcfiles/xymon-apache.conf cat etcfiles/xymonserver.cfg.DIST | sed -e 's!@XYMONTOPDIR@!$(XYMONTOPDIR)!g'| sed -e 's!@XYMONLOGDIR@!$(XYMONLOGDIR)!g'| sed -e 's!@XYMONHOSTNAME@!$(XYMONHOSTNAME)!g'| sed -e 's!@XYMONHOSTIP@!$(XYMONHOSTIP)!g'| sed -e 's!@XYMONHOSTOS@!$(XYMONHOSTOS)!g' | sed -e 's!@XYMONHOSTURL@!$(XYMONHOSTURL)!g' | sed -e 's!@XYMONCGIURL@!$(XYMONCGIURL)!g' | sed -e 's!@SECUREXYMONCGIURL@!$(SECUREXYMONCGIURL)!g' | sed -e 's!@XYMONHOME@!$(XYMONHOME)!g' | sed -e 's!@XYMONVAR@!$(XYMONVAR)!g' | sed -e 's!@FPING@!$(FPING)!g' | sed -e 's!@MAILPROGRAM@!$(MAILPROGRAM)!g' | sed -e 's!@RUNTIMEDEFS@!$(RUNTIMEDEFS)!g' >etcfiles/xymonserver.cfg ../build/bb-commands.sh >>etcfiles/xymonserver.cfg cat etcfiles/hosts.cfg.DIST | sed -e 's!@XYMONHOSTNAME@!$(XYMONHOSTNAME)!g' | sed -e 's!@XYMONHOSTIP@!$(XYMONHOSTIP)!g' >etcfiles/hosts.cfg @@ -188,15 +188,15 @@ install-cfg: cd etcfiles; ../../build/merge-lines columndoc.csv $(INSTALLROOT)$(INSTALLETCDIR)/columndoc.csv cd etcfiles; (echo "hosts.cfg"; echo "alerts.cfg"; echo "analysis.cfg"; echo "combo.cfg"; echo "client-local.cfg"; echo "holidays.cfg"; echo "rrddefinitions.cfg"; echo snmpmibs.cfg; echo xymonmenu.cfg; echo xymon-apache.conf) | ../../build/setup-newfiles $(INSTALLROOT)$(INSTALLETCDIR)/ cd $(INSTALLROOT)$(XYMONHOME); rm -f xymon.sh; ln -sf bin/xymon.sh . - cd wwwfiles; find . | grep -v RCS | grep -v ".svn" | grep -v DIST | ../../build/setup-newfiles $(INSTALLROOT)$(INSTALLWWWDIR)/ ../../build/md5.dat + cd wwwfiles; find . | grep -v RCS | grep -v ".svn" | grep -v DIST | ../../build/setup-newfiles $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/ ../../build/md5.dat cd webfiles; find . | grep -v RCS | grep -v ".svn" | grep -v DIST | ../../build/setup-newfiles $(INSTALLROOT)$(INSTALLWEBDIR)/ ../../build/md5.dat touch $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg.bak chmod 664 $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg.bak mkdir -p $(INSTALLROOT)$(XYMONLOGDIR); chmod 755 $(INSTALLROOT)$(XYMONLOGDIR) mkdir -p $(INSTALLROOT)$(INSTALLETCDIR)/tasks.d; chmod 755 $(INSTALLROOT)$(INSTALLETCDIR)/tasks.d ifndef PKGBUILD - chown $(XYMONUSER) $(INSTALLROOT)$(XYMONLOGDIR) $(INSTALLROOT)$(XYMONHOME) $(INSTALLROOT)$(XYMONHOME)/* $(INSTALLROOT)$(INSTALLBINDIR)/* $(INSTALLROOT)$(INSTALLETCDIR)/* $(INSTALLROOT)$(INSTALLEXTDIR)/* $(INSTALLROOT)$(INSTALLWEBDIR)/* $(INSTALLROOT)$(INSTALLWWWDIR)/gifs $(INSTALLROOT)$(INSTALLWWWDIR)/gifs/* $(INSTALLROOT)$(INSTALLWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/menu/* $(INSTALLROOT)$(INSTALLWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/wml $(INSTALLROOT)$(XYMONVAR) $(INSTALLROOT)$(XYMONVAR)/* - chgrp `$(IDTOOL) -g $(XYMONUSER)` $(INSTALLROOT)$(XYMONLOGDIR) $(INSTALLROOT)$(XYMONHOME) $(INSTALLROOT)$(XYMONHOME)/* $(INSTALLROOT)$(INSTALLBINDIR)/* $(INSTALLROOT)$(INSTALLETCDIR)/* $(INSTALLROOT)$(INSTALLEXTDIR)/* $(INSTALLROOT)$(INSTALLWEBDIR)/* $(INSTALLROOT)$(INSTALLWWWDIR)/gifs $(INSTALLROOT)$(INSTALLWWWDIR)/gifs/* $(INSTALLROOT)$(INSTALLWWWDIR)/menu $(INSTALLROOT)$(INSTALLWWWDIR)/menu/* $(INSTALLROOT)$(INSTALLWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/wml $(INSTALLROOT)$(XYMONVAR) $(INSTALLROOT)$(XYMONVAR)/* + chown $(XYMONUSER) $(INSTALLROOT)$(XYMONLOGDIR) $(INSTALLROOT)$(XYMONHOME) $(INSTALLROOT)$(XYMONHOME)/* $(INSTALLROOT)$(INSTALLBINDIR)/* $(INSTALLROOT)$(INSTALLETCDIR)/* $(INSTALLROOT)$(INSTALLEXTDIR)/* $(INSTALLROOT)$(INSTALLWEBDIR)/* $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/gifs $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/gifs/* $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/menu $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/menu/* $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/wml $(INSTALLROOT)$(XYMONVAR) $(INSTALLROOT)$(XYMONVAR)/* + chgrp `$(IDTOOL) -g $(XYMONUSER)` $(INSTALLROOT)$(XYMONLOGDIR) $(INSTALLROOT)$(XYMONHOME) $(INSTALLROOT)$(XYMONHOME)/* $(INSTALLROOT)$(INSTALLBINDIR)/* $(INSTALLROOT)$(INSTALLETCDIR)/* $(INSTALLROOT)$(INSTALLEXTDIR)/* $(INSTALLROOT)$(INSTALLWEBDIR)/* $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/gifs $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/gifs/* $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/menu $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/menu/* $(INSTALLROOT)$(INSTALLSTATICWWWDIR)/help $(INSTALLROOT)$(INSTALLWWWDIR)/notes $(INSTALLROOT)$(INSTALLWWWDIR)/html $(INSTALLROOT)$(INSTALLWWWDIR)/wml $(INSTALLROOT)$(XYMONVAR) $(INSTALLROOT)$(XYMONVAR)/* chgrp $(HTTPDGID) $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg.bak chmod 664 $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg $(INSTALLROOT)$(INSTALLETCDIR)/critical.cfg.bak diff --git a/xymond/etcfiles/xymon-apache-open.DIST b/xymond/etcfiles/xymon-apache-open.DIST index 5e0dee4..c2ff926 100644 --- a/xymond/etcfiles/xymon-apache-open.DIST +++ b/xymond/etcfiles/xymon-apache-open.DIST @@ -11,6 +11,15 @@ # # DocumentRoot @INSTALLWWWDIR@ +Alias @XYMONHOSTURL@/help "@INSTALLSTATICWWWDIR@/help" +Alias @XYMONHOSTURL@/menu "@INSTALLSTATICWWWDIR@/menu" +Alias @XYMONHOSTURL@/gifs "@INSTALLSTATICWWWDIR@/gifs" +<Directory "@INSTALLSTATICWWWDIR@/"> + Options Indexes FollowSymLinks Includes MultiViews + Order allow,deny + Allow from all +</Directory> + Alias @XYMONHOSTURL@/ "@INSTALLWWWDIR@/" <Directory "@INSTALLWWWDIR@"> Options Indexes FollowSymLinks Includes MultiViews diff --git a/xymond/etcfiles/xymon-apache-secure.DIST b/xymond/etcfiles/xymon-apache-secure.DIST index eff7313..9154a45 100644 --- a/xymond/etcfiles/xymon-apache-secure.DIST +++ b/xymond/etcfiles/xymon-apache-secure.DIST @@ -11,6 +11,15 @@ # # DocumentRoot @INSTALLWWWDIR@ +Alias @XYMONHOSTURL@/help "@INSTALLSTATICWWWDIR@/help" +Alias @XYMONHOSTURL@/menu "@INSTALLSTATICWWWDIR@/menu" +Alias @XYMONHOSTURL@/gifs "@INSTALLSTATICWWWDIR@/gifs" +<Directory "@INSTALLSTATICWWWDIR@/"> + Options Indexes FollowSymLinks Includes MultiViews + Order allow,deny + Allow from all +</Directory> + Alias @XYMONHOSTURL@/ "@INSTALLWWWDIR@/" <Directory "@INSTALLWWWDIR@"> Options Indexes FollowSymLinks Includes MultiViews diff --git a/xymond/etcfiles/xymonserver.cfg.DIST b/xymond/etcfiles/xymonserver.cfg.DIST index 595952b..c9a81c7 100644 --- a/xymond/etcfiles/xymonserver.cfg.DIST +++ b/xymond/etcfiles/xymonserver.cfg.DIST @@ -107,6 +107,7 @@ XYMONHISTDIR="$XYMONVAR/hist" # History logs are stored here (xymond_history) XYMONHISTLOGS="$XYMONVAR/histlogs" # Historical detail status-loge are stored here (xymond_history) XYMONRAWSTATUSDIR="$XYMONVAR/logs" # Status logs go here (xymond_filestore --status). Not needed by Xymon. XYMONWWWDIR="$XYMONHOME/www" # The directory for Xymon webpage files. +XYMONSTATICWWWDIR="$XYMONHOME/static" # The directory for static Xymon webpage files (help, gifs, and menu). XYMONHTMLSTATUSDIR="$XYMONWWWDIR/html" # HTML status logs go here (xymond_filestore --status --html) XYMONNOTESDIR="$XYMONWWWDIR/notes" # For notes-files (xymond_filestore --notes) XYMONREPDIR="$XYMONWWWDIR/rep" # Top-level directory for Xymon reports. -- 1.8.4.5 From 716f3d0d2955cb682233ffda10c22f435867d4f4 Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 2/9] Patched helpdir --- lib/links.c | 18 +++++++++++------- xymond/etcfiles/xymonserver.cfg.DIST | 1 + 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/lib/links.c b/lib/links.c index 6699d9c..0f81791 100644 --- a/lib/links.c +++ b/lib/links.c @@ -78,7 +78,7 @@ static link_t *init_link(char *filename, char *urlprefix) return newlink; } -static void load_links(char *directory, char *urlprefix) +static void load_links(char *directory, char *urlprefix, int softfail) { DIR *linkdir; struct dirent *d; @@ -88,7 +88,8 @@ static void load_links(char *directory, char *urlprefix) linkdir = opendir(directory); if (!linkdir) { - errprintf("Cannot read links in directory %s\n", directory); + if (softfail) { dbgprintf("Cannot read links in directory %s\n", directory); } + else errprintf("Cannot read links in directory %s\n", directory); return; } @@ -141,13 +142,16 @@ void load_all_links(void) if (!hostdocurl || (strlen(hostdocurl) == 0)) { strcpy(dirname, xgetenv("XYMONNOTESDIR")); - load_links(dirname, notesskin); + load_links(dirname, notesskin, 1); } - /* Change xxx/xxx/xxx/notes into xxx/xxx/xxx/help */ - strcpy(dirname, xgetenv("XYMONNOTESDIR")); - p = strrchr(dirname, '/'); *p = '\0'; strcat(dirname, "/help"); - load_links(dirname, helpskin); + /* If no XYMONHELPDIR, change xxx/xxx/xxx/notes into xxx/xxx/xxx/help */ + if (xgetenv("XYMONHELPDIR")) strcpy(dirname, xgetenv("XYMONHELPDIR")); + else { + strcpy(dirname, xgetenv("XYMONNOTESDIR")); + p = strrchr(dirname, '/'); *p = '\0'; strcat(dirname, "/help"); + } + load_links(dirname, helpskin, 0); linksloaded = 1; diff --git a/xymond/etcfiles/xymonserver.cfg.DIST b/xymond/etcfiles/xymonserver.cfg.DIST index c9a81c7..0d7056f 100644 --- a/xymond/etcfiles/xymonserver.cfg.DIST +++ b/xymond/etcfiles/xymonserver.cfg.DIST @@ -111,6 +111,7 @@ XYMONSTATICWWWDIR="$XYMONHOME/static" # The directory for static Xymon webpage XYMONHTMLSTATUSDIR="$XYMONWWWDIR/html" # HTML status logs go here (xymond_filestore --status --html) XYMONNOTESDIR="$XYMONWWWDIR/notes" # For notes-files (xymond_filestore --notes) XYMONREPDIR="$XYMONWWWDIR/rep" # Top-level directory for Xymon reports. +XYMONHELPDIR="$XYMONSTATICWWWDIR/help" # Online help files are located here XYMONSNAPDIR="$XYMONWWWDIR/snap" # Top-level directory for Xymon snapshots. # For the xymond_history module -- 1.8.4.5 From 68167d7ed9e1c8c91bda3db609cf835c694c39cc Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 3/9] Patched mkdir --- web/report.c | 6 +++++- web/snapshot.c | 5 ++++- xymond/xymond_filestore.c | 10 +++++++++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/web/report.c b/web/report.c index 5c9dbf7..9bdc450 100644 --- a/web/report.c +++ b/web/report.c @@ -257,13 +257,17 @@ int main(int argc, char *argv[]) sprintf(dirid, "%lu-%u", (unsigned long)getpid(), (unsigned int)getcurrenttime(NULL)); if (!csvoutput) { sprintf(outdir, "%s/%s", xgetenv("XYMONREPDIR"), dirid); - mkdir(outdir, 0755); + if (mkdir(outdir, 0755) == -1) { + if (xgetenv("XYMONREPDIR") && mkdir(xgetenv("XYMONREPDIR"), 0755) != -1) dbgprintf("Created %s\n", xgetenv("XYMONREPDIR")); + if (mkdir(outdir, 0755) == -1) errormsg("Cannot create output directory"); + } xymongen_argv[newargi++] = outdir; sprintf(xymonwebenv, "XYMONWEB=%s/%s", xgetenv("XYMONREPURL"), dirid); putenv(xymonwebenv); } else { sprintf(outdir, "--csv=%s/%s.csv", xgetenv("XYMONREPDIR"), dirid); + if (xgetenv("XYMONREPDIR")) mkdir(xgetenv("XYMONREPDIR"), 0755); // superfluous, but handled here xymongen_argv[newargi++] = outdir; sprintf(csvdelimopt, "--csvdelim=%c", csvdelim); xymongen_argv[newargi++] = csvdelimopt; diff --git a/web/snapshot.c b/web/snapshot.c index 7e83057..bef8ce2 100644 --- a/web/snapshot.c +++ b/web/snapshot.c @@ -197,7 +197,10 @@ int main(int argc, char *argv[]) sprintf(dirid, "%lu-%u", (unsigned long)getpid(), (unsigned int)getcurrenttime(NULL)); sprintf(outdir, "%s/%s", xgetenv("XYMONSNAPDIR"), dirid); - if (mkdir(outdir, 0755) == -1) errormsg("Cannot create output directory"); + if (mkdir(outdir, 0755) == -1) { + if (xgetenv("XYMONSNAPDIR") && mkdir(xgetenv("XYMONSNAPDIR"), 0755) != -1) dbgprintf("Created %s\n", xgetenv("XYMONSNAPDIR")); + if (mkdir(outdir, 0755) == -1) errormsg("Cannot create output directory"); + } sprintf(xymonwebenv, "XYMONWEB=%s/%s", xgetenv("XYMONSNAPURL"), dirid); putenv(xymonwebenv); diff --git a/xymond/xymond_filestore.c b/xymond/xymond_filestore.c index aaa7f9c..0f8f3cb 100644 --- a/xymond/xymond_filestore.c +++ b/xymond/xymond_filestore.c @@ -16,6 +16,7 @@ static char rcsid[] = "$Id: xymond_filestore.c 7281 2013-08-15 08:53:34Z storner $"; +#include <sys/stat.h> #include <stdio.h> #include <string.h> #include <stdlib.h> @@ -57,6 +58,11 @@ void update_file(char *fn, char *mode, char *msg, time_t expire, char *sender, t } logfd = fopen(tmpfn, mode); + if (!logfd) { + errprintf("Could not open '%s' as '%s', mode %s: %s\n", fn, tmpfn, mode, strerror(errno)); + MEMUNDEFINE(tmpfn); + return; + } fwrite(msg, strlen(msg), 1, logfd); if (sender) fprintf(logfd, "\n\nMessage received from %s\n", sender); if (timesincechange >= 0) { @@ -254,6 +260,8 @@ int main(int argc, char *argv[]) errprintf("No directory given, aborting\n"); return 1; } + if (filedir && mkdir(filedir, 0755) != -1) dbgprintf("Created %s\n", filedir); + if (htmldir && mkdir(htmldir, 0755) != -1) dbgprintf("Created %s\n", htmldir); /* For picking up lost children */ setup_signalhandler("xymond_filestore"); @@ -358,7 +366,7 @@ int main(int argc, char *argv[]) /* @@notes|timestamp|sender|hostname */ hostname = metadata[3]; statusdata = msg_data(statusdata, 0); if (*statusdata == '\n') statusdata++; - sprintf(logfn, "%s/%s", basename(filedir), hostname); + sprintf(logfn, "%s/%s", filedir, basename(hostname)); expiretime = 0; update_file(logfn, "w", statusdata, expiretime, NULL, -1, seq); } -- 1.8.4.5 From b27ef16d72f2919c96d9bef340b10f523dd4267d Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 4/9] Patched varlibwww --- xymond/Makefile | 2 +- xymond/etcfiles/xymon-apache-open.DIST | 14 ++++++++++++++ xymond/etcfiles/xymon-apache-secure.DIST | 14 ++++++++++++++ xymond/etcfiles/xymonserver.cfg.DIST | 2 +- xymond/xymonreports.sh.DIST | 2 +- 5 files changed, 31 insertions(+), 3 deletions(-) diff --git a/xymond/Makefile b/xymond/Makefile index 5084186..89a6d8f 100644 --- a/xymond/Makefile +++ b/xymond/Makefile @@ -137,7 +137,7 @@ else endif cfgfiles: - cat $(APACHECONF) | sed -e 's!@XYMONHOME@!$(XYMONHOME)!g' | sed -e 's!@INSTALLETCDIR@!$(INSTALLETCDIR)!g' | sed -e 's!@INSTALLWWWDIR@!$(INSTALLWWWDIR)!g' | sed -e 's!@INSTALLSTATICWWWDIR@!$(INSTALLSTATICWWWDIR)!g' | sed -e 's!@CGIDIR@!$(CGIDIR)!g' | sed -e 's!@SECURECGIDIR@!$(SECURECGIDIR)!g' | sed -e 's!@XYMONHOSTURL@!$(XYMONHOSTURL)!g' | sed -e 's!@XYMONCGIURL@!$(XYMONCGIURL)!g' | sed -e 's!@SECUREXYMONCGIURL@!$(SECUREXYMONCGIURL)!g' >etcfiles/xymon-apache.conf + cat $(APACHECONF) | sed -e 's!@XYMONHOME@!$(XYMONHOME)!g' | sed -e 's!@INSTALLETCDIR@!$(INSTALLETCDIR)!g' | sed -e 's!@INSTALLWWWDIR@!$(INSTALLWWWDIR)!g' | sed -e 's!@INSTALLSTATICWWWDIR@!$(INSTALLSTATICWWWDIR)!g' | sed -e 's!@XYMONVAR@!$(XYMONVAR)!g' | sed -e 's!@CGIDIR@!$(CGIDIR)!g' | sed -e 's!@SECURECGIDIR@!$(SECURECGIDIR)!g' | sed -e 's!@XYMONHOSTURL@!$(XYMONHOSTURL)!g' | sed -e 's!@XYMONCGIURL@!$(XYMONCGIURL)!g' | sed -e 's!@SECUREXYMONCGIURL@!$(SECUREXYMONCGIURL)!g' >etcfiles/xymon-apache.conf cat etcfiles/xymonserver.cfg.DIST | sed -e 's!@XYMONTOPDIR@!$(XYMONTOPDIR)!g'| sed -e 's!@XYMONLOGDIR@!$(XYMONLOGDIR)!g'| sed -e 's!@XYMONHOSTNAME@!$(XYMONHOSTNAME)!g'| sed -e 's!@XYMONHOSTIP@!$(XYMONHOSTIP)!g'| sed -e 's!@XYMONHOSTOS@!$(XYMONHOSTOS)!g' | sed -e 's!@XYMONHOSTURL@!$(XYMONHOSTURL)!g' | sed -e 's!@XYMONCGIURL@!$(XYMONCGIURL)!g' | sed -e 's!@SECUREXYMONCGIURL@!$(SECUREXYMONCGIURL)!g' | sed -e 's!@XYMONHOME@!$(XYMONHOME)!g' | sed -e 's!@XYMONVAR@!$(XYMONVAR)!g' | sed -e 's!@FPING@!$(FPING)!g' | sed -e 's!@MAILPROGRAM@!$(MAILPROGRAM)!g' | sed -e 's!@RUNTIMEDEFS@!$(RUNTIMEDEFS)!g' >etcfiles/xymonserver.cfg ../build/bb-commands.sh >>etcfiles/xymonserver.cfg cat etcfiles/hosts.cfg.DIST | sed -e 's!@XYMONHOSTNAME@!$(XYMONHOSTNAME)!g' | sed -e 's!@XYMONHOSTIP@!$(XYMONHOSTIP)!g' >etcfiles/hosts.cfg diff --git a/xymond/etcfiles/xymon-apache-open.DIST b/xymond/etcfiles/xymon-apache-open.DIST index c2ff926..6b806b3 100644 --- a/xymond/etcfiles/xymon-apache-open.DIST +++ b/xymond/etcfiles/xymon-apache-open.DIST @@ -20,6 +20,20 @@ Alias @XYMONHOSTURL@/gifs "@INSTALLSTATICWWWDIR@/gifs" Allow from all </Directory> +Alias @XYMONHOSTURL@/periodic "@XYMONVAR@/periodic" +<Directory "@XYMONVAR@/periodic"> + Options Indexes FollowSymLinks Includes MultiViews + Order allow,deny + Allow from all +</Directory> + +Alias @XYMONHOSTURL@/notes "@XYMONVAR@/notes" +<Directory "@XYMONVAR@/notes"> + Options Indexes FollowSymLinks Includes MultiViews + Order allow,deny + Allow from all +</Directory> + Alias @XYMONHOSTURL@/ "@INSTALLWWWDIR@/" <Directory "@INSTALLWWWDIR@"> Options Indexes FollowSymLinks Includes MultiViews diff --git a/xymond/etcfiles/xymon-apache-secure.DIST b/xymond/etcfiles/xymon-apache-secure.DIST index 9154a45..835e962 100644 --- a/xymond/etcfiles/xymon-apache-secure.DIST +++ b/xymond/etcfiles/xymon-apache-secure.DIST @@ -20,6 +20,20 @@ Alias @XYMONHOSTURL@/gifs "@INSTALLSTATICWWWDIR@/gifs" Allow from all </Directory> +Alias @XYMONHOSTURL@/periodic "@XYMONVAR@/periodic" +<Directory "@XYMONVAR@/periodic"> + Options Indexes FollowSymLinks Includes MultiViews + Order allow,deny + Allow from all +</Directory> + +Alias @XYMONHOSTURL@/notes "@XYMONVAR@/notes" +<Directory "@XYMONVAR@/notes"> + Options Indexes FollowSymLinks Includes MultiViews + Order allow,deny + Allow from all +</Directory> + Alias @XYMONHOSTURL@/ "@INSTALLWWWDIR@/" <Directory "@INSTALLWWWDIR@"> Options Indexes FollowSymLinks Includes MultiViews diff --git a/xymond/etcfiles/xymonserver.cfg.DIST b/xymond/etcfiles/xymonserver.cfg.DIST index 0d7056f..a392edf 100644 --- a/xymond/etcfiles/xymonserver.cfg.DIST +++ b/xymond/etcfiles/xymonserver.cfg.DIST @@ -109,7 +109,7 @@ XYMONRAWSTATUSDIR="$XYMONVAR/logs" # Status logs go here (xymond_filestore --st XYMONWWWDIR="$XYMONHOME/www" # The directory for Xymon webpage files. XYMONSTATICWWWDIR="$XYMONHOME/static" # The directory for static Xymon webpage files (help, gifs, and menu). XYMONHTMLSTATUSDIR="$XYMONWWWDIR/html" # HTML status logs go here (xymond_filestore --status --html) -XYMONNOTESDIR="$XYMONWWWDIR/notes" # For notes-files (xymond_filestore --notes) +XYMONNOTESDIR="$XYMONVAR/notes" # For notes-files (xymond_filestore --notes) XYMONREPDIR="$XYMONWWWDIR/rep" # Top-level directory for Xymon reports. XYMONHELPDIR="$XYMONSTATICWWWDIR/help" # Online help files are located here XYMONSNAPDIR="$XYMONWWWDIR/snap" # Top-level directory for Xymon snapshots. diff --git a/xymond/xymonreports.sh.DIST b/xymond/xymonreports.sh.DIST index bedc9fc..ef9b270 100644 --- a/xymond/xymonreports.sh.DIST +++ b/xymond/xymonreports.sh.DIST @@ -35,7 +35,7 @@ if [ "$XYMONHOME" = "" ]; then fi # This is the top-level directory for the pre-generated reports. -REPORTTOPDIR="$XYMONWWWDIR/periodic" +REPORTTOPDIR="$XYMONVAR/periodic" REPORTTOPURL="$XYMONWEB/periodic" REPTYPE=$1 -- 1.8.4.5 From af2a2cdb0ed588ab928d8393d74aed85e1944dfb Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 5/9] Patched sections --- client/Makefile | 2 ++ client/README-sections | 18 ++++++++++++++++++ client/xymonclient.sh | 12 ++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 client/README-sections diff --git a/client/Makefile b/client/Makefile index e5c1dc3..275a9c3 100644 --- a/client/Makefile +++ b/client/Makefile @@ -69,8 +69,10 @@ install: if test ! -d $(INSTALLROOT)$(XYMONHOME)/logs ; then mkdir -p $(INSTALLROOT)$(XYMONHOME)/logs ; chmod 755 $(INSTALLROOT)$(XYMONHOME)/logs ; fi if test ! -d $(INSTALLROOT)$(XYMONHOME)/ext ; then mkdir -p $(INSTALLROOT)$(XYMONHOME)/ext ; chmod 755 $(INSTALLROOT)$(XYMONHOME)/ext ; fi if test ! -d $(INSTALLROOT)$(XYMONHOME)/local ; then mkdir -p $(INSTALLROOT)$(XYMONHOME)/local ; chmod 755 $(INSTALLROOT)$(XYMONHOME)/local; fi + if test ! -d $(INSTALLROOT)$(XYMONHOME)/sections ; then mkdir -p $(INSTALLROOT)$(XYMONHOME)/sections ; chmod 755 $(INSTALLROOT)$(XYMONHOME)/sections; fi if test ! -f $(INSTALLROOT)$(XYMONHOME)/etc/localclient.cfg ; then cp localclient.cfg $(INSTALLROOT)$(XYMONHOME)/etc/ ; chmod 644 $(INSTALLROOT)$(XYMONHOME)/etc/localclient.cfg; fi if test ! -f $(INSTALLROOT)$(XYMONHOME)/local/README; then cp README-local $(INSTALLROOT)$(XYMONHOME)/local/README ; chmod 644 $(INSTALLROOT)$(XYMONHOME)/local/README; fi + if test ! -f $(INSTALLROOT)$(XYMONHOME)/sections/README; then cp README-sections $(INSTALLROOT)$(XYMONHOME)/sections/README ; chmod 644 $(INSTALLROOT)$(XYMONHOME)/sections/README; fi chmod 755 runclient.sh $(PROGRAMS) xymonclient*.sh $(COMMONTOOLS) $(EXTRATOOLS) cp -fp runclient.sh $(INSTALLROOT)$(XYMONHOME) cp -fp $(PROGRAMS) xymonclient*.sh $(COMMONTOOLS) $(EXTRATOOLS) $(INSTALLROOT)$(XYMONHOME)/bin/ diff --git a/client/README-sections b/client/README-sections new file mode 100644 index 0000000..eb0a870 --- /dev/null +++ b/client/README-sections @@ -0,0 +1,18 @@ +This directory - the client/sections/ directory - can be used to +install Xymon client add-on scripts. The Xymon client will run +all files in this directory that are executable, and include the +output from each script in a section in the Xymon client +message which is sent to the Xymon server. Sections will appear +just like normal client sections. + +This directory is intended for use with automatically deployed files. Local +scripts for this host should be placed in the client/local/ directory instead. + +This output will have to be processed on the Xymon server; there +is no default processing done by Xymon on the output from these +scripts. They are merely added to the client data. + +If you want to install an add-on script that direcly generates a +status column in Xymon, this should go in the client/ext/ directory +instead. + diff --git a/client/xymonclient.sh b/client/xymonclient.sh index 6057125..d33b256 100755 --- a/client/xymonclient.sh +++ b/client/xymonclient.sh @@ -62,6 +62,18 @@ fi echo "[clientversion]" >>$MSGTMPFILE echo "$CLIENTVERSION" >> $MSGTMPFILE +# See if there are any individual client sections +if test -d $XYMONHOME/sections; then + for MODULE in `ls $XYMONHOME/sections/* 2>/dev/null | grep -v -e \.rpm -e \.dpkg` + do + if test -x $MODULE -a -f $MODULE + then + echo "[`basename $MODULE`]" >>$MSGTMPFILE + $MODULE >>$MSGTMPFILE + fi + done +fi + # See if there are any local add-ons (must do this before checking the clock) if test -d $XYMONHOME/local; then for MODULE in $XYMONHOME/local/* -- 1.8.4.5 From 1a70bdcc2f29a38e475943b3fc0e371eb0bc48b4 Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 6/9] Patched breakout --- xymond/etcfiles/alerts.cfg.DIST | 5 +++++ xymond/etcfiles/analysis.cfg | 6 ++++++ xymond/etcfiles/combo.cfg | 5 +++++ xymond/etcfiles/graphs.cfg | 5 +++++ 4 files changed, 21 insertions(+) diff --git a/xymond/etcfiles/alerts.cfg.DIST b/xymond/etcfiles/alerts.cfg.DIST index d1cc2c2..8f1ae90 100644 --- a/xymond/etcfiles/alerts.cfg.DIST +++ b/xymond/etcfiles/alerts.cfg.DIST @@ -116,3 +116,8 @@ # DOWNSECS - Number of seconds the service has been down. # DOWNSECSMSG - When recovered, holds the text "Event duration : N" where # N is the DOWNSECS value. + + +# include additional sections +directory @XYMONHOME@/etc/alerts.d + diff --git a/xymond/etcfiles/analysis.cfg b/xymond/etcfiles/analysis.cfg index bc86c77..b1334d2 100644 --- a/xymond/etcfiles/analysis.cfg +++ b/xymond/etcfiles/analysis.cfg @@ -345,6 +345,12 @@ # will result in the load-limits being 7.0/12.0 for the "bax.foo.com" host, # and 3.0/8.0 for all other foo.com hosts. # + + +# include additional sections +directory @XYMONHOME@/etc/analysis.d + + # The special DEFAULT section can modify the built-in defaults - this must # be placed at the end of the file. It should ONLY be used to modify the # default thresholds, do NOT put PROC, LOG, DISK or any other lines here diff --git a/xymond/etcfiles/combo.cfg b/xymond/etcfiles/combo.cfg index 6b1653c..2889941 100644 --- a/xymond/etcfiles/combo.cfg +++ b/xymond/etcfiles/combo.cfg @@ -12,3 +12,8 @@ # See the combo.cfg(5) man-page for details on how you can # define tests. + + +# include additional sections +directory @XYMONHOME@/etc/combo.d + diff --git a/xymond/etcfiles/graphs.cfg b/xymond/etcfiles/graphs.cfg index 33ab13e..c7d8caf 100644 --- a/xymond/etcfiles/graphs.cfg +++ b/xymond/etcfiles/graphs.cfg @@ -2101,3 +2101,8 @@ ########### end of ifmib graphs ########### + + +# include additional sections +directory @XYMONHOME@/etc/graphs.d + -- 1.8.4.5 From c88756f8e83c3465f5d8ec01445a9adcdf668284 Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 7/9] Patched serveristopdir --- build/Makefile.rules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/Makefile.rules b/build/Makefile.rules index 84b0f93..d5b9281 100644 --- a/build/Makefile.rules +++ b/build/Makefile.rules @@ -29,7 +29,7 @@ else INSTALLTARGETS = install-xymongen install-xymonnet install-xymonproxy install-xymond install-web install-docs install-client install-servermsg CFLAGS += $(PCREINCDIR) XYMONCLIENTHOME = $(XYMONTOPDIR)/client - XYMONHOME = $(XYMONTOPDIR)/server + XYMONHOME = $(XYMONTOPDIR) endif ifndef INSTALLBINDIR -- 1.8.4.5 From 1c56c56cefda5d01beb7b5a957f4175ff240d857 Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 8/9] Patched noclientupdate --- client/xymonclient.sh | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/client/xymonclient.sh b/client/xymonclient.sh index d33b256..f7a81e1 100755 --- a/client/xymonclient.sh +++ b/client/xymonclient.sh @@ -42,10 +42,7 @@ rm -f $MSGTMPFILE touch $MSGTMPFILE -CLIENTVERSION="`$XYMONHOME/bin/clientupdate --level`" -if test -z "$CLIENTVERSION"; then - CLIENTVERSION="`$XYMON --version`" -fi +CLIENTVERSION="`$XYMON --version`" if test "$LOCALMODE" = "yes"; then echo "@@client#1|0|127.0.0.1|$MACHINEDOTS|$SERVEROSTYPE" >> $MSGTMPFILE @@ -110,13 +107,5 @@ fi rm -f $MSGFILE mv $MSGTMPFILE $MSGFILE -if test "$LOCALMODE" != "yes" -a -f $LOGFETCHCFG; then - # Check for client updates - SERVERVERSION=`grep "^clientversion:" $LOGFETCHCFG | cut -d: -f2` - if test "$SERVERVERSION" != "" -a "$SERVERVERSION" != "$CLIENTVERSION"; then - exec $XYMONHOME/bin/clientupdate --update=$SERVERVERSION --reexec - fi -fi - exit 0 -- 1.8.4.5 From 601acc306ec242058606f6577525f8ff2edee7c4 Mon Sep 17 00:00:00 2001 From: William Murphy <warrendiogenese@gmail.com> Date: Thu, 7 Aug 2014 22:30:59 -0700 Subject: [PATCH 9/9] Patched localclientcheck --- client/xymonclient.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/client/xymonclient.sh b/client/xymonclient.sh index f7a81e1..626f44e 100755 --- a/client/xymonclient.sh +++ b/client/xymonclient.sh @@ -28,6 +28,11 @@ if test $# -ge 1; then shift fi +if test "$LOCALMODE" = "yes" -a ! -x $XYMONHOME/bin/xymond_client; then + echo "ERROR: Local mode (--local) disabled because $XYMONHOME/bin/xymond_client not found; you may need to install a xymon-client-local package" >&2 + LOCALMODE="no" +fi + if test "$XYMONOSSCRIPT" = ""; then XYMONOSSCRIPT="xymonclient-`uname -s | tr '[ABCDEFGHIJKLMNOPQRSTUVWXYZ/]' '[abcdefghijklmnopqrstuvwxyz_]'`.sh" fi -- 1.8.4.5