### DEVELOPMENT OPTIONS ### # Building trunk or branch versions # %bcond_with branch %bcond_with trunk # subver is used as the Real Version # %global subVer 1 %global branchVer 4.3.30 %global trunkVersion 8110 #global releaseVersion -rc2 # Prepare for a coverity scan %bcond_with coverity # POSIX btree routines %bcond_without posixbtree # Build everything to use a libxymon.so shared library %bcond_with shared # Package a libxymon.a devel-static RPM %bcond_with staticlib # Build orcamon and reduced-functionality client RPMs %bcond_with extraclients # Build nanomsg support %bcond_with nanomsg # Relocatable/SCL - Borked - Do not use # %bcond_with reloc %if %{with reloc} %global _prefix /opt %endif ### CLIENT POLICY OPTIONS ### # Highly advised to build the client message on tmpfs some where # so that you can get an alert about a 100% full /tmp/ dir. # Recent systems might be able to use /run or /var/run, but # /dev/shm is guaranteed to be present on pretty much any Linux. %bcond_without clientshmtmp %global clienttmpdir /dev/shm # logfetch must be able to read /var/log/messages to send contents # back up to xymond. Use both facl's and regular unix group privs %bcond_without facl %bcond_without logreader %global logReaderGroup adm # Use a more efficient shell %bcond_without altshell %if 0%{?rhel} %if 0%{?rhel} < 5 %global shell /bin/ash %else %if 0%{?rhel} == 6 %global shell /bin/dash %else %global shell /bin/sh %endif %endif %else %global shell /bin/dash %endif ########################################################################## # Package Build Conditionals # ########################################################################## # http://fedoraproject.org/wiki/Packaging:Guidelines#PIE %define _hardened_build 1 # Systemd unit files instead of init scripts (default: yes on Fedora18+/RHEL7+) # Use file ACLs to give xymon user read privs on /var/log/messages? (default: yes on Fedora18+/RHEL6+) # Use system c-ares-devel instead of compiling our own (default: yes on Fedora/RHEL5+) # SELinux support (default: yes on Fedora/RHEL5+) # Experimental native snmp support (default: yes on Fedora/RHEL5+) %if 0%{?fedora} %if 0%{?fedora} >= 29 # BZ#1691825 %define __brp_mangle_shebangs %{nil} %endif %if 0%{?fedora} >= 27 %bcond_with dietlibc %else %bcond_without dietlibc %endif %bcond_without systemd %bcond_without systemcares %bcond_without selinux %bcond_without tirpc %bcond_without snmp %endif %if 0%{?rhel} %if 0%{?rhel} >= 7 %bcond_without systemd %else %bcond_with systemd %endif %if 0%{?rhel} >= 6 %bcond_without tirpc %else %bcond_with tirpc %endif %if 0%{?rhel} >= 5 %bcond_without systemcares %bcond_without selinux %bcond_without snmp %endif %if 0%{?rhel} == 4 %define with_tirpc 0 %define with_snmp 0 %endif %if 0%{?rhel} == 3 %define with_tirpc 0 %define with_snmp 0 %define with_facl 0 %define with_oldps 1 %endif %if 0%{?rhel} == 2 %define with_tirpc 0 %define with_snmp 0 %define with_facl 0 %define with_oldps 1 %define with_oldsed 1 %endif %endif # If it's shared lib install, no sense compiling our own version of c-ares %if %{with shared} %define with_systemcares 1 %endif # Trunk requires openssl in the client build %if %{with trunk} %define with_dietlibc 0 %endif ########################################################################## # Headers # ########################################################################## %define serverName xymon %define clientName xymon-client %define xymonRoot %{_datadir}/xymon %define xymonServerRoot %{_datadir}/%{serverName} %define xymonClientRoot %{_datadir}/%{clientName} Name: xymon Summary: A system for monitoring servers and networks Group: Applications/System # The entire source code is GPLv2 except: # librmd160.c and md5.c which are BSD-like, # sha2.c, which is BSD, # xxHash, which is BSD (3 clause) # icons from app-bits.com are Creative Commons Attribution-NoDerivs (CC-BY-ND) # fping and minilzo are all GPLv2 # c-ares (if bundled) is MIT %if %{with systemcares} License: GPLv2 and BSD and CC-BY-ND %else License: GPLv2 and BSD and CC-BY-ND and MIT %endif URL: http://xymon.sourceforge.net/ %if %{without trunk} %if %{without branch} ### Build Regular Version ### Version: 4.3.30 Release: %{subVer}%{?dist} Source0: https://downloads.sourceforge.net/%{name}/%{name}-%{version}%{?releaseVersion}.tar.gz %else ### Build Branch Version ### Version: %{branchVer} Release: 0.0.%{trunkVersion}.%{subVer}%{?dist} Source0: http://sourceforge.net/code-snapshots/svn/x/xy/xymon/code/xymon-code-%{trunkVersion}-branches-%{branchVer}.zip %endif %else ### Build Trunk Version ### Version: 0.%{trunkVersion} Release: %{subVer}%{?dist} Source0: http://sourceforge.net/code-snapshots/svn/x/xy/xymon/code/xymon-code-%{trunkVersion}-trunk.zip %endif # Updated init scripts Source1: xymon.server-init Source2: xymon.client-init Source3: xymonlaunch.default Source4: xymon-client.default Source5: xymon.README.terabithia Source6: xymon.CHANGES.terabithia Source7: xymon430.README.core Source8: xymonlaunch.service Source9: xymoncgimsg.conf Source10: xymonlaunch.service.preset Source11: xymon-tmpfiles.conf # Drop-in additions to the local client Source21: xymon.sections.mounts Source22: xymon.sections.meminfo Source23: xymon.sections.vmstats Source24: xymon.sections.ipcs # xymonlaunch task files for periodic report generation Source31: xymonreports.daily.task Source32: xymonreports.weekly.task Source33: xymonreports.monthly.task # xymonserver.cfg.d snippets #Source35: xymon.vmstatgraphs # SELinux policy sources Source41: xymon.te Source42: xymon-client.te # Some extra images for xymongen Source50: xymon.README-extraicons Source51: xymon.info.gif Source52: xymon.trends.gif Source53: xymon.client.gif # SUBMITMODE/STATUSMODE-based client extention scripts (using "clientconfig" command) Source61: xymon.logfetchupdate.sh Source62: xymon.logfetchupdate.cfg ### # New source tarball packages # ### # See README for rmd160c.c credits - FreeBSD Provides: bundled(librmd) = 20060414 # See README for sha2.c credits Provides: bundled(sha2-ogay) = 20070202 %define md5Ver 20020413 Provides: bundled(md5-deutsch) = %{md5Ver} Source73: https://downloads.sourceforge.net/libmd5-rfc/md5.tar.gz %define caresVer 1.15.0 %if %{with systemcares} BuildRequires: c-ares-devel >= 1.5.1 %else Provides: bundled(c-ares) = %{caresVer} %endif # Digest %define xxHashVer 0.7.1 Source74: https://github.com/Cyan4973/xxHash/archive/v%{xxHashVer}.tar.gz #Source741: xxhash-intrin.patch %if %{with systemxxhash} BuildRequires: xxhash-devel %else Provides: bundled(xxHash) = %{xxHashVer} %endif # Compression %define lzoVer 2.10 Source75: https://www.oberhumer.com/opensource/lzo/download/minilzo-%{lzoVer}.tar.gz %if %{with systemlzo} BuildRequires: lzo-devel %else Provides: bundled(minilzo) = %{lzoVer} %endif # Backported Source Files (from trunk) Source81: compression.c Source82: compression.h Source83: Makefile.test-zlib Source84: test-zlib.c Source85: zlib.sh Source86: Makefile.test-lzo Source87: test-lzo.c Source88: lzo.sh Source89: Makefile.test-lz4 Source90: test-lz4.c Source91: lz4.sh Source101: xymoncombine.c ## BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildRequires: gcc BuildRequires: openssl-devel, pcre-devel, rrdtool-devel, openldap-devel BuildRequires: /usr/bin/man2html # https://fedoraproject.org/wiki/Changes/SunRPCRemoval %if %{with tirpc} BuildRequires: libtirpc-devel %endif # Compression is now required even in 4.3.x, but we gracefully degrade with lzo/lz4 # BuildRequires: lz4-devel, lzo-devel BuildRequires: zlib-devel # BuildRequires: lz4-devel # recommended soon # BuildRequires: lzo-devel # soon? (minilzo works fine for us) %if %{with dietlibc} BuildRequires: zlib-static # BuildRequires: lz4-static # recommended soon # BuildRequires: lzo-static # soon? (minilzo works fine for us) %endif %if %{with trunk} BuildRequires: sqlite-devel >= 3 %if %{with dietlibc} BuildRequires: openssl-static glibc-static %endif %endif Provides: xymon-client-passive%{?_isa} = %{version}-%{release}, xymon-client-core%{?_isa} = %{version}-%{release} Requires: /usr/sbin/httpd logrotate psmisc fping net-tools Requires(pre): /usr/sbin/httpd %if %{with oldsed} Requires(post): perl %endif %if %{with selinux} %global selinux_types %(%{__awk} '/^#[[:space:]]*SELINUXTYPE=/,/^[^#]/ { if ($3 == "-") printf "%s ", $2 }' /etc/selinux/config 2>/dev/null) %global selinux_variants %([ -z "%{selinux_types}" ] && echo mls targeted || echo %{selinux_types}) # Very ugly, but the preferred hack from http://fedoraproject.org/wiki/SELinux_Policy_Modules_Packaging_Draft -- for RHEL and Fedora, up to and including 20 %{!?_selinux_policy_version: %global _selinux_policy_version %(sed -e 's,.*selinux-policy-\\([^/]*\\)/.*,\\1,' /usr/share/selinux/devel/policyhelp 2>/dev/null || echo 0.0.0)} %if "%{_selinux_policy_version}" != "" Requires: selinux-policy >= %{_selinux_policy_version} %endif BuildRequires: checkpolicy, selinux-policy-devel # This was removed in BZ 1498429, because Fedora people hate EPEL %if ( (0%{?fedora} >= 18 && 0%{?fedora} < 27) || (0%{?rhel} >=5 && 0%{?rhel} <= 7) ) BuildRequires: /usr/share/selinux/devel/policyhelp %endif Requires(post): /usr/sbin/semodule, /usr/sbin/semanage, /sbin/restorecon Requires(postun): /usr/sbin/semodule, /usr/sbin/semanage %endif %if %{with systemd} BuildRequires: systemd Requires(post): systemd Requires(preun): systemd Requires(postun): systemd %endif %if %{without trunk} %if 0%{?rhel} <= 7 Requires: ntp %endif %endif %if %{with altshell} Requires: %{shell} %endif %if %{with snmp} BuildRequires: net-snmp-devel %endif %if %{with dietlibc} BuildRequires: /usr/bin/diet %endif %if %{with nanomsg} BuildRequires: nanomsg-devel %endif ################# # Patches # ################# # move static www files from HOME/www to HOME/static Patch1: xymon_4317.installstaticwww.patch # specify location of help files instead of assuming Patch2: xymon.helpdir.patch.4329 # prevent refresh loop when loading "trends" page when locator is enabled Patch44: xymon.trendsloop.patch # create missing www/rep www/snap www/html www/notes directories if needed # (for tmps wwwdir) Patch45: xymon.mkdir.patch.4329 # Move /periodic (xymonreports output) and /notes from the web tree # to /var/lib/xymon/ Patch46: xymon.varlibwww.patch # point apache-writable /rep and /snap to /var/cache/xymon Patch51: xymon.wwwcachedir.patch # move pid files to rundir # see: https://sourceforge.net/tracker/?func=detail&aid=3170854&group_id=128058&atid=710490 Patch303: xymon_trunk.rundir.patch Patch3: xymon.rundir.patch # Activate (has to be applied after launchlogging patch, below) # send HUPs from xymonlaunch Patch603: xymon.rundir-tasks.patch # add a "sections" directory, for scripts whose output will automatically be included in the Xymon client data # based on trunk: http://xymon.svn.sourceforge.net/viewvc/xymon?view=revision&sortby=rev&sortdir=down&revision=6800 # but w/o "local:" header Patch4: xymon.sections.patch # insert /etc/xymon/*.d/ references in config files Patch5: xymon.breakout-directories.patch # Include directories for xymonserver.cfg and xymonclient.cfg environment inclusions automatically Patch6: xymon.envdirs.patch # Server server's homedir to /usr/share/xymon instead of /usr/share/xymon/server Patch7: xymon.serveristopdir.patch # remove auto-updating of scripts and binaries from xymonclient.sh # since there's no good way to make this work on an RPM system Patch8: xymon.noclientupdate.patch # Flag uses of --local mode for the client when the client-local RPM isn't installed Patch9: xymon.localclientcheck.patch # Fix actual use of xymond_client in --local mode so we don't think our submission is a duplicate ### in branch/4.3.19 Patch11: xymon.client-localmode.patch # Ensure only client messages (and not client requests, like 'clientlog') get handled # a certain way by xymonproxy Patch12: xymon.proxy-clientlog.patch # Also check /usr/local/share/xymon-client for client add-ins ### keep as patch Patch13: xymon.usrlocallocaldir.patch # don't sleep after running xymonclient Patch15: xymon.nosleep.patch # Make useable flag for xymond_rrd to bail out early ### in branh 4.3.19 Patch16: xymon.rrd_running.patch # macro-wrap dbgprintf ### in branch 4.3.19 Patch17: xymon.dbgmacro.patch # xymond not following {net,disp}include lines # see https://sourceforge.net/mailarchive/message.php?msg_id=28657398 Patch18: xymon.nullfollowsincl.patch # Add Apache compatibility rewrite for older /hobbit URLs Patch19: xymon.hobbitapache.patch # Fix wrong logic on pcre bug ### in branch/4.3.19 Patch23: xymon_7494.pcrefix.patch # allow http tests to store the raw output as a data message (data=) # or in a xymonnet-collected "client" message (sent as status) #xymon_branch.datahttp.patch Patch27: xymon.dataclienthttp_xymonnet.patch # Add a useful macro Patch28: xymon.strbufsz.patch # move environment file used message from err to debug # see: https://sourceforge.net/tracker/?func=detail&aid=3170846&group_id=128058&atid=710490 Patch30: xymon.quietcmd.patch # ensure XYMONCLIENTHOME is present since it's not given in init any more # see: https://sourceforge.net/tracker/?func=detail&aid=3170916&group_id=128058&atid=710490 Patch36: xymon.xymonclienthome.patch # allow xymoncmd to be run without XYMONHOME env variable pre-set Patch50: xymon.homelesscmd.patch # TODO: Create a channel for "metric" messages # Long term ### Patch38: xymon.metricchn.patch # check XYMMSG as a location for a message to send Patch41: xymon.xymonmsg.patch # Have mercy on those who type /xymon instead of /xymon/ ## in branch/4.3.19 Patch47: xymon.dirredir.patch # Try harder to send a xymon message when segfaulting Patch48: xymon.sigbetter.patch # Silence an rpmlint warning about packaging an empty file Patch49: xymon.confreport_back.patch # Ensure CLIENTOS and CLIENTHOSTNAME are used by xymonclient.sh Patch39: xymon.sysconfigoverrides.patch # xymoncmd executes xymonlaunch, so certain variables are set for us # ahead of time (like MACHINEDOTS) Patch40: xymon.xymoncmdsetsthis.patch # Hard-code XYMSRV as 0.0.0.0 in the environment, so we always # fall through to checking for multiple server destinations. # This is from an environment variable perspective, however... # the "xymon" command line tool (unless run /within/ an environment, # such as with "xymoncmd" prepended) will assume localhost if not # given a destination. Patch52: xymon.alwaysmultiservers.patch # Include the /etc/sysconfig/xymon-client file from within # /etc/xymon-client/clientlaunch.cfg (since xymonlaunch can handle # shell-style semantics) instead of including it in an initscript # environment. This solves several problems for us, like the # sysv/systemd migration and the unified "where do I send health?" # question. Patch53: xymon.usesysconfig.patch # Include /etc/xymon-client/clientlaunch.cfg from /etc/xymon/tasks.cfg # (instead of duplicating the xymon-client configuration) Patch54: xymon.serverclient.patch # More verbose logging from xymond in non-debug mode Patch55: xymon.morexymondlogs.patch Patch355: xymon_trunk.morexymondlogs.patch # Needs to be modified for branc Patch56: xymon.logprintf.patch Patch1056: xymon_4318.logprintf.patch # Use $SHELL in xymonclient-linux.sh Patch57: xymon.shellclient.patch # Check for whether we're in a position to respond back in xymond.c Patch58: xymon.canrespondcheck.patch # Allow "source" and "." as synonyms for "include" (file only) Patch59: xymon.shellinclude.patch # Use unix timestamps instead of english dates for history logs Patch60: xymon.epoch_histlogs.patch # Use POSIX btree routines instead of native ones Patch61: xymon.useposixtree.patch # Fix warning about uninitialized "now" variable Patch62: xymon.proxynow.patch # Fix memleak Patch63: xymon.btreeleak.patch Patch663: xymon.treedebug.patch.4329 # Make some default choices on checkfile locations for xymond and # xymond_alert; assume in xymond that if a checkfile is found, # we're restarting off that (like xymond_alert does). # Patch64: xymon.defaultchk.patch # Control logging and PIDFILE generation from xymonlaunch # instead of the individual xymon programs Patch65: xymon.launchpidfile.patch Patch66: xymon.launchlogging.patch Patch780: xymon.launchsendhup.patch # Remove default PID writing from xymond, xymonproxy, msgcache, and xymond_history # unless actually specified Patch67: xymon.nopid.patch Patch367: xymon_trunk.nopid.patch # Add clientconfig command Patch68: xymon.clientconfig.patch Patch368: xymon_trunk.clientconfig.patch # Add a 28-day HWPREDICT (and MIN/MAX for the 12/48 day records) to the default rrddefinitions.cfg file # Also, remove the compiled default if rrddefinitions.cfg is not available (throw an error instead) Patch69: xymon.rrddefs-hwpredict.patch # Serve a cached copy of hosts.cfg to requestors until we reload it ourselves Patch70: xymon.hostconfigcache.patch Patch370: xymon_trunk.hostconfigcache.patch # Standardize the header line of xymonnet, xymongen, and xymond a little Patch71: xymon.reportline.patch #Patch371: xymon_trunk.reportline.patch ### in branch 4.3.20 Patch471: xymon.proxyreportline.patch # Don't wait for a schedule response Patch72: xymon.norespsched.patch # Fix AIX with weird vmstat call Patch73: xymon.vmstat-aix.patch # Verbage changes for xymond status Patch74: xymon.last10m.patch ## add submitted summary results to nongreen.html ### in branch 4.3 20 Patch75: xymon.nongreensummaries.patch # fork the vmstat collector on clients by piping to a shell instead # of putting it all on a single command line Patch76: xymon.pipevmstatfork.patch # Search /usr for libs too Patch77: xymon.usrlibs.patch # Better Logging patch; make log rotations more reliable by propagating HUPs Patch78: xymon.betterlogging.patch # Break out the trunk/release patches, since trunk code sets up pidfiles and logfiles differently Patch79: xymon.evenbetterlogging.patch # Don't let a hung xymond_channel or other semaphore user keep us from starting xymond up #Patch80: xymon.clientcountwarn.patch Patch380: xymon_branch.clientcountwarn.patch # Optimize stats and purple calculation in xymond loop, fix off-by-1 err # Extend subclient expiry time default status TTL time + 2xPURPLE cycles Patch81: xymon.calc-statspurple-opt.patch # Don't auto-revert to file load if xymond failed -- xymonnet and xymongen should # both fail and try again at the next launch -- behavior too unpredicatable at launch # time otherwise, depending on timeout settings... Patch82: xymon.nofilerevert.patch # Make sendmsg.c able to handle binary (eg, compressed) data Patch83: xymon.sendmsg-binarysafe.patch Patch1083: xymon.msglenrecalc.patch # Patch the workers to pay attention to HUPs and reload their log files Patch84: xymon.launchlog_workers.patch # Rotate logs via killall to xymonlaunch Patch85: xymon.huplogrota.patch # Add 'xymondclientlog' alias Patch86: xymon.xymondclientlog.patch # Keep logfetch status file persistent, even if XYMONTMP points to a tmpfs Patch95: xymon.logfetchlog.patch # Fix some F21 warnings ### in branch 4.3.19 Patch96: xymon.tokptrnull.patch # Some minor cleanups for dietlibc to stop complaining ### in branch 4.3.19 Patch98: xymon.dietlibcwarnings.patch # Launch the channel worker process (or try to) before we actually connect to the # channel the first time Patch100: xymon.launch1st.patch # Fork xymond_rrd when doing its final cacheflush, since that can take a while Patch102: xymon.rrd_doublefork.patch # More comprehensive error checking/output when xymonproxy has various TCP errors # Also, remove IP in favor of socket descriptors in errors to prevent having to # pass an address around which occasionally seemed to get corrupted (?!) Patch103: xymon.proxy_socketerrors.patch # Increase the starting and incremental buffer size xymond uses for messages Patch109: xymon.inbuf.patch.4.3.29 # Fix downtime recovery messages ### in branch 4.3.20 Patch110: xymon.downtimecolor.patch # Force c-ares to be re-configured # to deal with CFLAGS v CPPFLAGS issues in 1.10.0 Patch111: xymon.c-ares-1.10.0.patch Patch311: xymon_trunk.c-ares-1.10.0.patch # Add newlines to 'Full log' header in case the clientlog doesn't end with two \n\n already # Add '&green' to "No entries found" subline Patch112: xymon.msgs_newlines.patch # Add "noprefer" option Patch113: xymon.noprefer.patch # Change content-type of HTTP response to text/plain; always ensure a valid HTTP response Patch114: xymon.cgimsg-contenttype.patch # DNS failures not a xymonnet warning Patch115: xymon.noyellowdnsfail.patch # Break out initial buffer size in xymonproxy from incremental sizes Patch116: xymon.proxy_init.patch # Replace delimiters in our $0 cmdline so it doesn't look strange Patch117: xymon.listenport.patch # Add support for xymond_client to send 'modify' messages after 'msgs' status messages Patch118: xymon.msgs_modify.patch # xymond_rrd; load hosts (which can be expensive) before backgrounding Patch120: xymon.rrdloadhosts.patch # tune some parameters in xymonproxy Patch121: xymon.proxytune.patch # add debug lines to handle_linux_client Patch122: xymon.client_linux.debug.patch # Fix depends= parsing in xymonnet (v4) Patch123: xymon.netdeptests.patch # Fix a compile warning with non-static rcsid ### in branch 4.3.19 #Patch124: xymon4329.rcsidfix.patch # Add DELAY option to tasks.cfg to wait after a NEEDS startup. # # Add FAILDELAY option to tasks.cfg to control how long to penalize # a process that keeps exiting in failure state. # Also, reset failure count after FAILDELAY, so xymonlaunch # doesn't delay a relaunch because of issues weeks ago. Patch125: xymon.launchfaildelay.patch # Fix inner bytesleft bug in logfetch #Patch128: xymon.logfetchbytesleft.patch # Experimental combodata message -- somewhat mooted with extcombo's now # in existence, but kept for compatibility Patch127: xymon.combodata.patch Patch427: xymon_trunk.combodata.patch # xymon client honors $XYMON_TIMEOUT if it's available and --timeout not specified Patch129: xymon.clienttimeout.patch Patch130: xymon.retries.patch # Large patch: # combine status messages from xymond_client and only flush when needed # as opposed to for every hostname/clientmsg we encounter # add combodata_add fuction # Patch331: xymon_branch.combodata-sendmsgclient-sendmsgtimeout-moarcombo.patch # Add some output when searching for a cookie Patch132: xymon.findcookiedebug.patch # Remove environment variable lookup from xymonproxy when not needed Patch133: xymon.noenv.patch # Reduce semaphore alarms for both xymond_channel and xymond to 1s Patch134: xymon.shortalarm.patch # Don't create spurious testname records for fake client status messages Patch135: xymon.clientcolor.patch # Let xymond_filestore understand client channel messages # (Needs re-work... There are new functions available for splitting # client messages and it might be better to use them here...) # Patch136: xymon.filestoreclient.patch # Use bfq in more spots # add --bfq/--no-bfq options to xymonnet Patch137: xymon_branch.xymonnet.usebfq.patch Patch138: xymon.rrd_extcombo+maint.patch Patch1138: xymon_trunk.rrd_extcombo+maint.patch Patch141: xymon.combo_addchar.patch # Fix BFQ vs TCP starvation - provide more debugging output relating to BFQ setup Patch142: xymon.tcpcheckinterval.patch Patch143: xymon.ipcdebug.patch Patch180: xymon.bfq_noblockretry.patch # Give a separate MAXMSG_BFQ knob to tweak Patch181: xymon.maxmsg_bfqsize.patch # Pass the channel we're dealing with down to xymond_channel's children Patch182: xymon.channelenv.patch # Make a function out of the possible sendmessage error conditions Patch183: xymon.strxymonsendresult.patch # Try to re-send the message in more cases than just a connection timeout Patch184: xymon.moreretries.patch # Make use of patch182 to make arguments to xymond_filestore optional Patch185: xymon.channelenv_filestore.patch Patch285: xymon.channelenv_capture.patch # Valgrind/GCC fixes ### in branch 4.3.19 Patch186: xymon.miscfree.patch # Bail out of writing rrd data even earlier with --no-rrd Patch187: xymon.norrd_nofile2.patch # Cache the bufsz values for speed Patch188: xymon.bufszcache.patch # parse new client "status" message syntax Patch144: xymon.clientparse.patch Patch344: xymon_trunk.clientparse.patch # Add SUBMITMODE/STATUSMODE variables to xymonclient.sh to send # via status (needs patch144 above) Patch145: xymon.statusmode-submitmode.patch # On "current status" pages modifiers are H3's above line1, but on # historical status logs they're between line1 and the start of the regular text # -- make alerts more clearly indicate that modifiers (the more important thing) are on top # -- make the current look like the log Patch146: xymon.consistentmodifyspot.patch # Increase bf_bufsz to size_t Patch147: xymon.bfq_bufsz_size_t.patch Patch1047: xymon_trunk.bfq_bufsz_size_t.patch # KB not B! Patch148: xymon.bfqdebug.patch Patch149: xymon.bfqmsgzero.patch # More sendmessage timeout work Patch139: xymon.timeout.patch Patch339: xymon_trunk.timeout.patch # Some more debugging around update stats Patch150: xymon.channeldebug.patch # Split bogus/unknown commands from timeouts Patch151: xymon.timeoutstats.patch Patch351: xymon_trunk.timeoutstats.patch # Fix compile warning ### in branch 4.3.19 Patch152: xymon.tokrinit.patch # Fix wrong test in xymond_capture # trunk only Patch153: xymon.captureextest.patch # Extend modify syntax to allow variable number of subsequent status overrides Patch155: xymon.modify-valid.patch Patch955: xymon.modify-validtime.patch # Use longs for cookies since we're potentially in 64bit land Patch156: xymon.64bitcookies.patch # Use unique "modify" tags for each DS line handled by xymond_rrd Patch157: xymon.rrdds-cfid.patch # Check for errors getting the current state in xymond_alert and bail out # (will get relaunched) if xymond doesn't respond... Patch158: xymon.alert-bailerror.patch # Consider a stale alert a form of recovery instead of silently dropping them, # and send a recovery message when a host/test has been dropped by xymond as well Patch159: xymon.staledroprecovery.patch # Label log messages from xymond_channel/xymonlaunch # and fix a few incorrect or ambiguous error messages Patch160: xymon.errlabel.patch # Add XYMONEXNETWORKS= option to xymonserver.cfg and xymonnet Patch161: xymon.exnetworks.patch # Add --bfq option to xymonproxy Patch163: xymon.proxyusebfq.patch # Recombine incoming combo/combodata messages into extcombos when using BFQ Patch963: xymon.proxybfqrecombine.patch # Fix a GCC warning ### in branch 4.3.19 Patch164: xymon.useradmgcc.patch # Add numeric comparisons (timestamps) against lastchange,logtime,validtime,acktime,enabletime # Also msg=PCRE filtering, to xymondboard commands (includes previous msgfilter.patch) ## in branch 4.3.19 Patch165: xymon.boardfieldmatch.patch # Fix some gcc warnings on EL4 (?!) ### in branch 4.3.19 Patch166: xymon.gcc-miscwarnings.patch Patch366: xymon_trunk.gcc-miscwarnings.patch # Log the entire first line of messages in xymonproxy when told to do so Patch168: xymon.proxymorelog.patch # Don't load a full hosts.cfg copy if we don't need to (getting info columns) Patch170: xymon.quickinfo.patch # Allow xymond_channel to use multiple local peers (must be discrete scripts -- no arguments to each of them) Patch171: xymon.multilocal.patch # Add option to buffer message before doing PCRE matching Patch172: xymon.filterlater.patch # Decrease default wait time when trying to push to channel readers # This might actually be better as a configurable option, but compiled is more # efficient. Patch173: xymon.channelspeed.patch # Use the same input buffer rather than re-allocating through the loop Patch174: xymon.reusemem.patch # When adding messages, use size_t rather than int for buffer size Patch175: xymon.channel_size_t.patch # Slightly improve speed of the 'stdfilter' by only looking at the first line # Wrap macros with defines to handle really old PCRE's though # trunk only Patch176: xymon.firstlinefilter_macro.patch # Stop xymond_channel if the semaphore we're looking at goes away Patch177: xymon.channelabortonfatal.patch # Detach from the xymond channel quickly, but allow time for workers to process # whatever's left in the buffer. Patch178: xymon.safechannelexit.patch # Add --exfilter, --metafilter, and --metaexfilter options to xymond_channel Patch278: xymon.channelmetafilter.patch # Add a --multirun option to xymond_channel, which treats its peers as (naive) # load balancing... Just send a message to a single peer. Patch280: xymon.channel-multirun.patch # Wait a few seconds before xymonlaunch exits to help ensure children # get a chance to TERM before our controller takes other steps (eg, SIGKILL, which # we don't do, or starting us back up). Patch179: xymon.launchexitsleep.patch Patch279: xymon.launchverbosity.patch # Don't leave garbage in the modifier list Patch189: xymon.modify_list.patch # Faster debug, error, and regular logging out by keeping a static buffer around # and not doing a new localtime() lookup for each line # in branch 4.3.19 Patch190: xymon.logoutfast.patch # Fix ignore/trigger condition #Patch191: xymon.logfetch_triggerignore.patch # Add nproc to xymonclient-linux.sh (+ others maybe eventually?) Patch192: xymon.client-nproc.patch # Don't run crondate twice in the same minute Patch193: xymon.cronmin.patch # Fix bug in hostfilter check Patch194: xymon.hostfilter.patch # Don't exclude tmpfs partitions from disk scanning Patch195: xymon.df-tmpfs.patch # Don't rescan the entire host tree from the beginning when removing -- just move on Patch196: xymon.nodroprescan.patch # Make sure modifiers tree set to null on creation of log #Patch197: xymon.modifiernull.patch # Don't short circuit on LDAP checks, since there could be multiple, and with URLs (like http) that # don't match the base IP of the hostname Patch198: xymon.noldapshortcircuit.patch # Debugging around modifiers Patch199: xymon.modifier_debug.patch # Memory leak when freeing xymond_log_t Patch201: xymon.memleaks.patch # Fix some pointer sign warnings #Patch202: xymon.signwarnings.patch Patch203: xymon.mallocchk.patch # Exit properly when given odd arguments to configure Patch204: xymon.configure-exit.patch # Be a little safer when retrieving via xymongen (don't segfault when a partial line comes in) ### in branch 4.3.20 Patch205: xymon.loaddata_validate.patch # Fix some compiler warnings by making sure to check return values # Patch206: xymon.checkreturnvalues.patch # Ensure we're using non-bogus values in top cpu output # http://lists.xymon.com/archive/2014-July/039925.html Patch207: xymon.cpuloop.patch # Try the uname syscall before forking the uname command in xymoncmd ### in branch 4.3.20 Patch208: xymon.cmdsysuname.patch # Add 'proxyping' command Patch209: xymon.proxyping.patch # Fix AAAA parsing in xymonnet.c ### in branch 4.3.19 Patch210: xymon.dns_aaaa.patch # Leave /etc/services open in xymonnet, since we use it a lot Patch213: xymon.setservent.patch # Only stat RRD files for existence once per run Patch214: xymon.rrd_cachestat.patch # Only run utimes (rrdtool 1.2+) when we're flushing cache # by request Patch215: xymon.rrd_nofsync.patch # When forking a shell from xymoncmd, use $SHELL and make it interactive Patch216: xymon.cmdshell.patch # Put each schedule response on a new line Patch217: xymon.sched_nl.patch # Potential corruption debug when dropping test Patch218: xymon.debugdrop.patch # Fix off-by-one error in DISPLAYGROUP parsing Patch219: xymon.displaygroup.patch # Add debug output to send_alert Patch220: xymon.do_alerttxt.patch # Don't create xymond_rrd cache files unless we're writing to disk and cacheing Patch221: xymon.rrd_noctlunlesscache.patch # Add RRDCACHED_ADDRESS support to showgraph.c (set in cgioptions.cfg) Patch222: xymon.web_rrdcached.patch # Allow separate --reload-interval for xymond Patch223: xymon.rescan.patch # Allow --reload-interval and --loadhostsfromxymond for xymond_alert Patch224: xymon.alert_loadhosts.patch # Don't dump the full combo message when debugging enabled in xymonproxy Patch225: xymon.proxy_nocombodump.patch # Add cacheszmultiplier option to xymond_rrd to alter how often the auto-flush occurs # (which prevents spikes) Patch226: xymon.rrdcacheflushsz.patch # Increase CACHESZ from 12 to 63 (default package = 1m xymonnet, 3/5m client reports) # This sets xymond_rrd caching to slightly over 1 hour Patch227: xymon.rrdcachesztune.patch # Add "histsync" command Patch228: xymon.histsync.patch # Add --debug option to xymongrep # in branch 4.3.19 Patch229: xymon.grepdebug.patch # trunk only Patch1229: xymon_trunk.grepdebug.patch # Check for NULL as a pointer instead of a struct Patch230: xymon.sendmsg_structnull.patch # Don't run gettimer() in every loop -- uses a syscall Patch231: xymon.hist_timer.patch # Fully buffer allevents / remove gettimer() / remove wait in xymond_history Patch232: xymon.hist_perfwaitmisc.patch # Optimize for the case where files exist in xymond_history, avoiding unneeded syscalls Patch233: xymon.hist_fastermkdirs.patch # Rewrite savestatusevents to use POSIX open instead of fopen Patch234: xymon.hist_saveperf.patch # Fix memory leak adding tree records with bintree enabled Patch235: xymon.btreedeletedestroy.patch # When in headermatch mode, search headers even if body is null ### in branch 4.3.19 Patch236: xymon.headermatchnull.patch # Destroy some structures properly when exiting, so valgrind is happy Patch237: xymon.rrdcleanup.patch.4329 # Clean up records of type namelist_t Patch238: xymon.freenamelist.patch #Patch1238: xymon_trunk.freenamelist.patch # Check for NULL hosts to lookup Patch239: xymon.loadhosts_safer.patch # headfoot.c redefines treerec_t Patch240: xymon.headfoot_treerec.patch # Allow size_t (off_t) sizes as extcombo offsets Patch241: xymon.extoffset64.patch # Set our initial extcombo buffer size to the max size # of a bfq post, so we don't increment one msg at a time # later on. Patch242: xymon.extcombo_strbufmaxsz.patch # Additional debugging in logfetch when --debug enabled ### in branch Patch243: xymon.logfetch_moardebug.patch # Handle multiple trigger sections appropriately ### in branch Patch244: xymon.logfetch-multitrigger.patch # Guard against null characters in our log files... ### in branch Patch245: xymon.logfetch-skipnulls.patch # Don't convert premature vmstat output to 'data' messages in xymond_client ### in branch 4.3.20 Patch246: xymon.vmstat_terminated.patch # xymongrep should load the file, not via xymond, by default Patch247: xymon.grepnofallback.patch # Add debugging to rrd caching Patch248: xymon.rrd_debug.patch # BACKPORTED TO CURRENT RELEASE ONLY # Include "TEXT=" data to flagged log lines Patch104: xymon.msgs_prependstatustext.patch # Change title in msgs test from System logs to more PC Log files Patch105: xymon.msgslogs.patch # Add missing modify/hostinfo in xymond_stats (already in trunk) ### in branch 4.3.19 -- deleteme Patch352: xymon.missinglabels.patch # Correct flipped logic in xymond_rrd external processor SIGPIPE handling ### trunk only Patch353: xymon.rrdsigpipefix.patch # Backport including compression.h everywhere (trunk 7491) Patch354: xymon.43_enablecompression.patch # Bring in minilzo as a compression option and xxhash as an available hash Patch356: xymon.xxhash.patch Patch357: xymon.xxhash-extern.patch # Fix old PCRE patch ### in branch 4.3.19 Patch358: xymon.matching-oldpcre.patch # DIFFERING VERSIONS ONLY # allow custom http headers to be specified for http tests for a given host Patch326: xymon_trunk.httpheaders.patch Patch26: xymon.httpheaders.patch # Add option to disable saving or using cookies during web tests (non-trunk) # (Trunk uses xymonnet2) #Patch316: xymon.cookiesoptional.patch Patch336: xymon_branch.cookiesoptional.patch # When saving RRD files for web tests, use the specified column name if one is given # NOTE: You will need to rename your rrd files at the time of upgrade! # (Trunk uses xymonnet2) Patch317: xymon.httpcolnamerrd.patch # Check /etc/services for port of 'bb' as well as 'bbd' # (Trunk already looks it up as 'bb' only) ### in branch 4.3.19 Patch318: xymon.services-bb.patch Patch320: xymon.rrd7316.patch Patch322: xymon.proxydbg.patch # Fix memory leak in xymondlog processing Patch323: xymon.outbuf.patch # Tightening freeing so valgrind doesn't complain Patch324: xymon.strbuf_free.patch # fix compile warning in 4.3.18 branch ### in branch 4.3.19 Patch325: xymon.mdstatinit.patch # RHEL<=3 and RH 7 don't have a procps that understands output formats Patch329: xymon.oldps.patch # Add --debug option and slightly improve argument parsing in logfetch # in branch 4.3.19 Patch330: xymon.logfetch_debug.patch # Specify client libs in xymond/Makefile for xymond_client builds in ./configure --client and client-config mode Patch499: xymon.client-localbuild.patch # from mailing list # XXX pending trunk Patch500: xymond-xboard-v2.1.diff # don't build xymonping if not told to Patch501: xymon.noxymonping.patch # Use library variable names everywhere Patch502: xymon.makelib.patch Patch602: xymon_trunk.makelib.patch # Hook up the bits to allow dynamic libraries to be built Patch503: xymon.dynamiclibs.patch # Build shared libraries! Patch504: xymon.dynamiclibs_enable.patch Patch604: xymon_trunk.dynamiclibs_enable.patch Patch505: xymon.dynamiclibs_enable3.patch # Increase max buffer allocation in logfetch from 100K to 10M Patch506: xymon.logfetch_lgmaxsize.patch # Clean up some of the logic around position counts ### in branch Patch507: xymon.logfetch_poscount.patch Patch607: xymon_trunk.logfetch_poscount.patch Patch6071: xymon.r6811.patch # Optimize connectime calculations in xymonproxy Patch508: xymon.proxyconntime.patch # Exclude ".rpmorig" from stackio searches, and anything starting with 'README' ### in branch 4.3.20 Patch509: xymon.readmerpmorig.patch # Fix malloc issue in http://lists.xymon.com/pipermail/xymon/2014-August/040003.html # XXX pending trunk Patch510: xymon.remallocack.patch # Fix bufp buf confusion when cleaning up proxy connections for idle prep ## in branch 4.3.19 Patch511: xymon.proxybufp.patch # Report processes in "ASCII art forest" mode #### in branch 4.3.19 Patch512: xymon.psforest.patch # Add RRD_EXTPROC_BUFSIZ value to override default BUFSIZ # external processor is now system-buffered. To fflush after every # incoming status message has been processed (prior default behavior) set # RRD_EXTPROC_DOFLUSH=1 Patch513: xymon.rrdextprocbufflush.patch # Skip over an initial 'export ' when loading environment ### in branch 4.3.19 Patch514: xymon.envexport.patch # Properly exclude downtimeactive hosts from purpleing ### in branch 4.3.20 Patch515: xymon.purplechecks.patch Patch516: xymon.rrd_divzero.patch Patch517: xymon.sresleak.patch # Generic memory leaks (mostly via coverity) Patch518: xymon.misc_leaks.patch # Don't leak tcp services Patch519: xymon.noinittcpleak.patch # Start using setenv() if available ## in branch 4.3.20 Patch520: xymon.setenv.patch # Drop logs, then hosts Patch521: xymon.hostlogdroporder.patch # Look up comparison function for each tree, not each node # Patch522: xymon.btree_compare.patch # https://sourceforge.net/p/xymon/mailman/xymon-developer/?viewmonth=201506 Patch972: xymon.compact_fix.patch # Don't re-calculate lengths when converting a buffer to a strbuffer; could have nulls Patch973: xymon.strfunc_convertbin.patch # Assume that single/double digit values in combo.cfg are constants # This is ugly ### in branch 4.3.20 Patch975: xymon.combo_uglyhack.patch ### Fix modifies causing flaps Patch974: xymon.modflap.patch # Fix c-ares-shim on some non-GNU systems ### in branch 4.3.20 Patch976: xymon.c-ares.noegrep.patch # Don't crash on fake wrong hosts ### in branch 4.3.20 Patch977: xymon.alertcriteriasafe.patch # Fix uptime report to include dash ### in branch 4.3.20 Patch978: xymon.uptimedash.patch # Fix linux memory on 3.4+ kernels ### in branch 4.3.20 Patch979: xymon.free_meminfo_avail.patch # TRUNK ONLY # no need to build the included fping; there's no binary dependency # (this is RPM, just pull in the distro one via depends) Patch401: xymon_trunk.nofping.patch # add zliblibs Patch402: xymon_trunk.zlibfix.patch # wrap ssl in HAVE_OPENSSL Patch403: xymon_trunk.nossl.patch # let trunk build with <= 3.3.6 sqlite, eg RHEL 5 # TODO: old-style sqlite error handling needs to be added here # otherwise we'll need to enforce use of a current version # which realistically means building our own like with c-ares Patch405: xymon_trunk.old_sqlite.patch # configure.client more like configure.server Patch406: xymon_trunk.configureclient.patch # lib/stdopt.c calls malloc now; needs header Patch408: xymon_trunk.stdopt_malloc.patch # originally: Patch555: xymon.130918.dbg.patch # Fix combo size calculation for over-size messages Patch554: xymon.comboflushcalc.patch # Add some error checks in dupstrbuffer Patch555: xymon.dupstrbufdebug.patch # Strbuffers should be using size_t Patch556: xymon.strbuf_size_t.patch # Error checking for strbuffergrow + copytobuffer Patch557: xymon.strfunc_saferealloc.patch # Use strbuffer_t types in xymond_rrd instead of allocating/re-allocating cache memory Patch558: xymon.strfunc_duptobuffer.patch # Nanomsg source Patch559: xymon.nanomsg.patch # post-compression/binary fixes Patch560: xymon.43_enablecompression-supplemental.patch # Mark the current location in the log (for this run) in logfetch output # so downstream users can use it more effectively ### in branch 4.3.19 Patch561: xymon.logfetch-current.patch # Check for banner being valid Patch562: xymon.xymonnet_bannercheck.patch # Allow through SHA{256,512,224,384} support + recognition/tracking of xxHash #Patch563: xymon.sha-xxhash-support.patch Patch563: xymon.sha-xxhash-.only.xxxhash.support.patch # Add support for "deltacount " as a client-local.cfg option ### in branch 4.3.19 Patch564: xymon.deltacount.patch Patch574: xymon.deltacount_server.patch # Add support for "optional (include|directory)" to suppress errors about non existant files/dirs Patch565: xymon.stackio-optional.patch # More channel tuning - don't strlen twice Patch566: xymon.channel-tune.patch # Temporary -- needs to be-integrated with original patches ## # backfeedqueuenumber global variable -- controls submission delta on C_FEEDBACK_QUEUE Patch567: xymon.bfqnum.patch Patch568: xymon.bfqnum-xymond.patch Patch569: xymon.bfqnum-clients.patch # Add build support for SOURCE101, xymoncombine Patch570: xymon.combine.patch # Fix some weird variables Patch571: xymon.secenviron.patch #Patch572: xymon.clientgarbage.patch # Use arrival time instead of current time when calculating clock drift # and use proxy arrival time before xymond's Patch573: xymon.proxyarrivaltime.patch # Add support for EXTIME= specifications in alerts.cfg Patch575: xymon.extime.patch # Keep track of written bytes when posting to channel so we don't have to strncat Patch576: xymon.posttochannel_perf1.patch # Combine snprintfs except for modifier strings Patch577: xymon.posttochannel_perf2.patch # Finally, pre-load the nl-encoded version of the current modifiers and store in the log record, # allowing us to combine posttochannel loads into a single snprintf Patch578: xymon.posttochannel_perf3.patch # Pre-calculate the line1 field since it's frequently used Patch579: xymon.posttochannel_perf4.patch # 4.3.22-4 # Fix bad 64 shifts Patch881: xymon.chkflags32.patch # 4.3.22-2 # Fix loadalerts.c:822 compile warning Patch882: xymon.constwarnings.patch # Fix XYMONCLIENTHOME being looked for when no default exists Patch883: xymon.cmdsearch.patch # Fix purple heap crashing Patch884: xymon.logfetch_child.patch Patch885: xymon.contestwarn.patch Patch886: xymon.ntpdate.patch Patch887: xymon.sslcert.patch Patch888: xymon.rrdprec.patch #4.3.24#Patch889: heapbash.patch ## Branch 4.3.20 Patch580: xymon.xymongen_noline1.patch Patch581: xymon.clientsvcsnull.patch Patch980: xymon.htmllog.patch Patch981: xymon-ack-man.patch Patch982: xymon.acklog2fix.patch Patch983: xymon.clientcolumn.patch Patch984: xymon.xymond_clientcreate.patch Patch985: xymon.bbwinleak.patch # not upstreamed yet Patch986: xymon.chan_workmem.patch Patch987: xymon.pagegenbuffer.patch Patch988: xymon.closepagetag.patch # end ### in branch 4.3.20 Patch989: xymon.httphead.patch Patch990: xymon.coldoc.patch Patch991: xymon.logfetchnullfix.patch Patch992: xymon.conftimespecfix.patch Patch993: xymon.pullfix.patch Patch994: xymon.urlcasefix.patch Patch995: xymon.cgiwrap-hardlink.patch Patch996: xymon.summarypatch.patch # not upstreamed yet Patch997: xymon.channel_maxpeerwrites.patch Patch998: xymon.channelflushchk.patch Patch999: xymon.bfq_rr.patch # end # Add variable XYMONNETWORKCOUNT instead of hard-coded max # From: Franco Gasperino # note: not needed in 4.x-master, as this is dynamic there Patch1050: xymon.xymonnet-maxnetwork.patch Patch582: workmembuf.sec.patch #Patch9001: ssl-connstrange.patch Patch8001: svcstatus-cspfix-5.patch Patch8002: enadis-secfix.patch Patch8003: xymon.bfq1.patch Patch8004: xymon.clientpcre.patch #Patch8004: xymon.dirsize0.patch #Patch8005: xymon.summary.patch #Patch8006: xymonnet.argi.patch #Patch8007: xymon.netappissues.patch #Patch432905: xymon4329.seccve.patch2 ########################################################################## ########################################################################## %description Xymon monitors your hosts, your network services, and anything else you configure it to do via extensions. Xymon will periodically generate requests to network services - HTTP, FTP, SMTP and so on - and record if the service is responding as expected. Through the use of agents installed on the servers (the xymon-client package), you can also monitor local disk utilization, log files and processes. Xymon is the successor to the BBGEN toolkit, which has been available as an add-on to Big Brother since late 2002. It was also previously known as Hobbit. If you have used BBGEN before, Xymon will seem quite familiar. You should install this package if you want this machine to monitor services running on other machines. ########################################################################### %package client Summary: The reporting client service for the Xymon monitoring system Group: Applications/System Provides: xymon-client-core%{?_isa} = %{version}-%{release}, xymon-client-passive%{?_isa} = %{version}-%{release} Requires: logrotate psmisc net-tools %if %{with reloc} # Relocations are very experimental. Uncomment here if you want to try them Prefix: %{_prefix} Prefix: %{_sysconfdir} Prefix: %{_localstatedir} %endif %if %{with facl} Requires(post): acl Requires(postun): acl %endif %if %{with selinux} Requires: selinux-policy >= %{_selinux_policy_version} Requires(post): /usr/sbin/semodule Requires(postun): /usr/sbin/semodule %endif %if %{with altshell} Requires: %{shell} %endif %description client This package contains a client/agent for the Xymon monitor. Clients report data about the local system to the monitor, allowing it to check on the status of the system load, file system utilization, processes that must be running, and so forth. This package does not need to be installed on a system that is already running as a Xymon server (indeed, it conflicts with it). The Xymon server already contains the files necessary to run its built-in monitor. If you want to perform local threshold configuration (rarely needed), you'll also need to install the xymon-client-local package. ########################################################################### %package client-local Summary: Local analysis option for Xymon client Group: Applications/System Requires: xymon-client%{?_isa} = %{version}-%{release} Requires(pre): xymon-client%{?_isa} = %{version}-%{release} %if %{with shared} # Don't accidentally bring in the main 'xymon' package instead :/ Requires: xymon-libs%{?_isa} = %{version}-%{release} %endif %if %{with altshell} Requires: %{shell} %endif %description client-local This package contains the xymond_client program, which, installed on a system with the xymon-client package, allows for local control of the threshold and local client calculation (rather than server-side analysis, which is more common). You should install this package if you want to use the --local option when running xymon-client and to configure localclient.cfg locally. ########################################################################### %if %{with shared} %package libs Summary: Libraries for running components of the xymon monitor Group: System Environment/Libraries %description libs This package contains shared libraries for various programs used by the xymon monitoring system. %endif ########################################################################### %if %{with staticlib} %package static Summary: Static libraries for running components of the xymon monitor Group: Development/Libraries %description static This package contains static libraries necessary for developing xymon worker modules and other components of the xymon system. Most users will not need to install this package. %endif %package devel Summary: Header files for developing xymon modules Group: Development/Libraries %if %{with shared} Requires: xymon-libs%{?_isa} = %{version}-%{release} %endif %if %{without staticlib} Provides: xymon-static%{?_isa} = %{version}-%{release} %endif %description devel This package contains header files necessary for developing xymon worker modules and other components of the xymon system. %if %{without staticlib} It also contains static libraries needed for linking. %endif ########################################################################### %if %{with dietlibc} %package client-static Summary: Static client binaries for the Xymon monitoring system Group: Applications/System %if %{with altshell} Requires: %{shell} %endif %description client-static This package contains statically-compiled client binaries for the Xymon monitor. If you already have the client on the system, these binaries may be used by appending ".static" to xymon, xymoncfg, xymoncmd, xymondigest, or xymonlaunch. If you need this, you probably already know what you're doing. Most people won't need this package. ########################################################################### %endif %if %{with extraclients} %package client-passive Summary: Run-time utilities and a client for the Xymon monitoring system Group: Applications/System Conflicts: xymon xymon-client Provides: xymon-client%{?_isa} = %{version}-%{release}, xymon-client-core%{?_isa} = %{version}-%{release} Requires: net-tools #%if %{with selinux} #Requires: selinux-policy >= %{_selinux_policy_version} #Requires(post): /usr/sbin/semodule #Requires(postun): /usr/sbin/semodule #%endif %if %{with altshell} Requires: %{shell} %endif %description client-passive This package contains run-time utilities and a manual client for communicating with the Xymon monitor. It does not set up a user account and does not contain init scripts for the client agent. You should install this package if you want to retrieve data about a machine on a manual basis or automated outside the bailiwick of the xymonlaunch process. Note that this software may leave temp files around that are owned by whichever user last ran the client script. You should try to run the client consistently by the same method. %package client-core Summary: Utilities for communicating with the Xymon monitoring system Group: Applications/System %description client-core This package contains run-time utilities for communicating with the Xymon monitor: the xymon, xymoncfg, and xymoncmd commands and associated configuration files. It does not contain the local client daemon which regularly reports system status back. You should install xymon-client for that instead. Install this package if you have scripts which may need to report back a result, but you cannot or don't want to install the local xymon-client daemon or scripts. If you later decide to install the full client, you can upgrade to either the active or passive client directly over this one. %package client-orca Summary: Orca collector client for the Xymon monitoring system Group: Applications/System %description client-orca orcaxymon is an add-on tool for the Xymon client. It is used to grab data collected by the ORCA data collection tool (orcallator.se), and send it to the Xymon server in NCV format. %endif %package tools Summary: Small debugging tools and scripts for the xymon monitor Group: Applications/System %description tools Contains debugging and miscellaneous tools for analyzing the xymon server. Most users and administrators won't need these binaries. ########################################################################## # Common directories used on both servers and clients %define logDirectory %{_localstatedir}/log/%{name} %define localClientDirectory %{_prefix}/local/share/%{clientName} # See http://fedoraproject.org/wiki/Packaging:Tmpfiles.d %if %{with systemd} %define runDirectory /run/%{name} %else %define runDirectory %{_localstatedir}/run/%{name} %endif # long-term data for the server, generated html, templates, and apache-writable configs %define libDirectory %{_localstatedir}/lib/%{name} %define wwwDirectory %{_localstatedir}/www/%{name} %define wwwCacheDirectory %{_localstatedir}/cache/%{serverName} %define wwwConfigDirectory %{libDirectory}/configs # temp directories. if clientshmtmp is specified, the client # tries to use /dev/shm instead %define tmpDirectorySrv %{_localstatedir}/lib/%{name}/tmp %define tmpDirectoryCli %{clienttmpdir} # web template files %define webDirectory %{_sysconfdir}/%{serverName}/web # static web documents that get replaced on upgrade %define wwwStaticDirectory %{xymonServerRoot}/static # customizable web documents (marked config = in sysconfig also) - gifs and CSS %define wwwConfigStaticDirectory %{_sysconfdir}/%{serverName}/static # Shared libraries location (subdir maybe at some point -- we don't have SONAMEs) %define sharedlibdir %{_libdir} ########################################################################## ########################################################################## %prep %if %{without trunk} %if %{without branch} %setup -q -n %{name}-%{version}%{?releaseVersion} %else %setup -q -n %{name}-code-%{trunkVersion}-branches-%{branchVer} %endif %else %setup -q -n %{name}-code-%{trunkVersion}-trunk %endif # Bring in backported raw files from trunk # compression.c/.h - trunk 7491 install -m 644 %{SOURCE81} %{SOURCE82} lib/ # ZLIB install -m 644 %{SOURCE83} %{SOURCE84} build/ install -m 755 %{SOURCE85} build/ # LZO install -m 644 %{SOURCE86} %{SOURCE87} build/ install -m 755 %{SOURCE88} build/ # LZ4 install -m 644 %{SOURCE89} %{SOURCE90} build/ install -m 755 %{SOURCE91} build/ # xymoncombine install -m 644 %{SOURCE101} common/xymoncombine.c # Temp new features %patch573 -b .proxyarrivaltime # Fixes / unapplied bugs # %patch972 -b .compactfix %if %{with trunk} %patch23 -b .pcrefix %patch358 -b .pcre %patch152 -b .tokrinit %patch210 -b .aaaa %patch236 -b .headermatchnull %patch325 -b .mdstatinit %patch571 -b .secenviron %patch575 -b .extime %patch11 -b .client-localmode %patch28 -b .strbufsz %patch73 -b .vmstat-aix %patch117 -b .listenport %patch149 -b .bfqmsgzero %patch153 -b .captureextest %patch176 -b .firstlinefilter %patch189 -b .modify_list %patch193 -b .cronmin %patch194 -b .hostfilter %patch201 -b .memleaks %patch203 -b .mallocchk %patch204 -b .configure-exit %patch207 -b .cpuloop %patch219 -b .displaygroup %patch323 -b .outbuf %patch324 -b .strbuf_free %patch353 -b .rrdsigpipefix patch -p0 --ignore-whitespace < %{PATCH500} %patch510 -b .remallocack %patch511 -b .proxybufp %endif # backport #4320#%patch471 -b .proxyreportline %patch198 -b .noldapshortcircuit %patch12 -b .proxy-clientlog #%patch230 -b .sendnull %patch235 -b .tdestroydelete %patch237 -b .rrdcleanup %if %{without trunk} %patch238 -b .freenamelist %endif %patch239 -b .loadhosts_safer %patch240 -b .headfoot_treerec %patch241 -b .extoffset64 %patch242 -b .extcombo_strbufmaxsz #4320#%patch246 -b .vmstatterm #4322#%patch247 -b .grepnofallback %patch517 -b .sresleak %patch518 -b .miscleak %patch519 -b .noinittcpleak #4320#%patch520 -b .setenv %patch521 -b .hostlogdroporder # Build/GCC %patch62 -b .uninitnow %if %{without trunk} %if %{with posixbtree} %patch61 -b .useposixtree %patch63 -b .tree-btreefix %patch663 -b .treedebug # %patch522 -b .btree_compare %endif %endif %patch77 -b .usrlibs #4320#%patch516 -b .rrddivzero %if %{with trunk} %patch96 -b .tokptrnull %patch164 -b .gcc48 %patch186 -b .miscfree %endif %patch98 -b .dietlibcwarnings %if %{without trunk} #%patch124 -b .rcsidfix %endif %if %{without trunk} %patch147 -b .bfq_bufsz_size_t %else %patch1047 -b .bfq_bufsz_size_t %endif %patch175 -b .channel_size_t #%patch202 -b .signwarnings #%patch206 -b .checkretval - modify later %patch499 -b .client-local-build %if %{without trunk} %patch502 -b .makelib %else %patch602 -b .makelib %endif %patch503 -b .libs %patch556 -b .strbuf_size_t %patch557 -b .saferealloc # Package management / RPM complaints / FHS %patch4 -b .sections %patch5 -b .breakout %patch6 -b .envdirs %patch7 -b .serveristopdir %patch8 -b .noclientupdate %patch9 -b .localclientcheck %patch13 -b .usrlocallocaldir %patch39 -b .sysconfigoverrides %patch40 -b .xymoncmdsetsthis # confreport_back.patch %patch49 %patch52 -b .alwaysmultiservers %patch53 -b .usesysconfig %patch54 -b .serverclient %patch57 -b .shell #4320#%patch509 -b .readmerpmorig # "/static" and tmpfs support %patch1 -b .installstaticwww %patch2 -b .helpdir %patch45 -b .mkdir %patch46 -b .varlibwww # WWW ease of use %patch19 -b .hobbitapache %patch44 -b .trendsloop #branch4322#%patch47 -b .dirredir %patch51 -b .wwwcachedir %patch74 -b .last10m %patch104 -b .statustext %patch112 -b .msgs_newlines # Logging %if %{with trunk} %patch17 -b .dbgmacro %endif %if %{without trunk} %patch65 -b .launchpidfile %else patch -s -p0 --fuzz=0 --ignore-whitespace < %{PATCH65} %endif %patch780 -b .launchsendhup %if %{without trunk} %patch56 -b .logprintf %else %patch1056 -b .logprintf %endif %patch66 -b .launchlogging %patch78 -b .betterlogging %patch81 -b .calc-statspurple-opt %patch84 -b .launchlog_workers %patch85 -b .huplogrota #exit 0 %patch103 -b .proxy_socketerrors %patch132 -b .findcookiedebug %patch143 -b .ipcdebug %patch150 -b .channeldebug %patch160 -b .errlabel %patch168 -b .proxymorelog %if %{without trunk} %patch183 -b .strxymonsendresult %patch218 -b .debugdrop %endif %if %{with trunk} # 190 will eventually combine patches 17 and 56 %patch190 -b .logoutfast %endif %patch199 -b .modifierdebug %patch220 -b .do_alerttxt %patch225 -b .proxy_nocombodump %if %{with trunk} %patch1229 -b .grepdebug %patch330 -b .logfetch_debug %endif %patch248 -b .rrd_cachedebug %patch603 -b .rundir-tasks # command pipeline/conveniences #branch4322#%patch30 -b .quietcmd %patch36 -b .clienthomecheck %patch41 -b .xymonmsg #branch4322#%patch50 -b .homelesscmd %patch59 -b .shellinclude %patch18 -b .nullfollowsincl %if %{with trunk} %patch514 -b .envexport %endif #branch4322#%patch565 -b .stackio-optional %patch570 -b .combine # runtime reliability %if %{with trunk} %patch16 -b .rrd_running %endif %patch48 -b .sigbetter %if %{without trunk} %patch58 -b .canrespond %endif %patch102 -b .doublefork %patch109 -b .inbuf %patch129 -b .clienttimeout #4325# %patch158 -b .bailerror %patch159 -b .staledroprecovery %patch177 -b .channelabortonfatal %patch178 -b .safechannelexit %patch179 -b .launchexitsleep %if %{without trunk} %patch180 -b .bfq_noblockretry %endif %patch181 -b .maxmsg_bfqsize #4320#%patch205 -b .loaddata_validate %patch279 -b .launchverbosity %patch506 -b .lgmaxsize %if %{with trunk} %patch607 -b .poscount %endif %if %{without trunk} %patch554 -b .comboflushcalc %endif %patch555 -b .dupstrbufdebug %if %{with trunk} # Depends on poscount %patch243 -b .logfetch_moardebug %patch244 -b .logfetch-multitrigger %patch245 -b .logfetch-skipnulls %endif # Performance %patch15 -b .nosleep %if %{with trunk} %patch72 -b .norespsched %endif %patch95 -b .logfetchlog %patch100 -b .launch1st %patch116 -b .proxy_init %patch120 -b .rrdloadhosts %patch121 -b .proxytune %patch133 -b .noenv %patch134 -b .shortalarm %if %{without trunk} %patch138 -b .moarextcombo %else %patch1138 -b .moarextcombo %endif %patch170 -b .quickinfo %patch187 -b .norrd_nofile2 %patch188 -b .bufszcache #4320#%patch208 -b .cmdsysuname %if %{without trunk} %patch213 -b .setservent %endif %patch214 -b .rrd_cachestat %patch215 -b .rrd_nofsync %patch221 -b .cachectl %patch222 -b .web_rrdcached %patch226 -b .cacheflushsz %patch227 -b .rrdcachesztune %patch231 -b .hist_timer %patch232 -b .hist_perfwaitmisc %patch233 -b .hist_fastermkdirs %patch234 -b .hist_saveperf %patch508 -b .proxyconntime %patch513 -b .rrdextprocbufflush #4320#%patch515 -b .purplechecks %patch558 -b .strfunc_duptobuffer %if %{with trunk} %patch561 -b .logfetch-current %endif %patch566 -b .channel-tune %patch576 -b .posttochannel_perf1 %patch577 -b .posttochannel_perf2 %patch578 -b .posttochannel_perf3 %patch579 -b .posttochannel_perf4 #4320#%patch580 -b .noline1 # New features / mods %patch60 -b .epoch_histlogs #4320#%patch75 -b .nongreensummaries %patch86 -b .xymondclientlog #4320#%patch110 -b .downtimecolor %patch113 -b .noprefer %patch114 -b .cgimsg %patch118 -b .msgs_modify %patch125 -b .launchdelay #%patch126 -b .vmstatgraphs %patch135 -b .clientcolor #%patch136 -b .filestoreclient %if %{with trunk} patch -p0 --ignore-whitespace < %{PATCH165} %endif %patch155 -b .modify-valid %patch955 -b .modify-validity %patch156 -b .lgcookie %patch157 -b .rrdds # BFQ xymonproxy %patch141 -b .combo_addchar %patch163 -b .proxyusebfq %patch171 -b .multilocal # xymond_channel sequence tuning %patch172 -b .filterlater %patch173 -b .channelspeed %patch174 -b .reusemem %patch182 -b .channelenv %patch185 -b .channelenv_filestore %patch285 -b .channelenv_capture #patch4322#%patch192 -b .client-nproc %patch195 -b .tmpfs %patch196 -b .nodroprescan %patch209 -b .proxyping %patch216 -b .cmdshell %if %{without trunk} %patch223 -b .rescan %endif #4325#%patch224 -b .rescan_alert %patch228 -b .histsync %patch278 -b .channelmetafilter %patch280 -b .channel-multirun %if %{with trunk} %patch512 -b .psforest %endif %if %{without trunk} %patch356 -b .xxhash %endif %patch563 -b .sha-xxhash-support %if %{with trunk} %patch564 -b .deltacount %patch574 -b .deltacount_server %endif %if %{without trunk} %patch504 -b .shared %else %patch604 -b .shared %endif %patch505 -b .shared2 %if %{with nanomsg} %patch559 -b .nanomsg chmod 644 xymond/xymond_nanomsg.c %endif %if %{with oldps} %patch329 -b .oldps %endif #################################################### %if %{without trunk} #################################################### # Some of these are xymonnet-dependent (which is a different # program in trunk), others just touch things that are different enough # to merit distinct patch sets. %patch115 -b .noyellowdnsfail %patch122 -b .clientlinuxdbg %patch123 -b .netdeptests %patch68 -b .clientconfig %patch501 -b .noxymonping # xymond support for combodata %patch127 -b .combodata %patch139 -b .timeout %patch130 -b .retries %patch184 -b .moreretries %patch151 -b .timeoutstats ### HACK for XYMONLIBOBJS and CLIENTLIBOBJS ### %patch354 -b .enablecompression #%{__perl} -pi -e 's/ crondate.o/ compression.o crondate.o/' lib/Makefile ############ %patch148 -b .bfqdebug # trunk uses xymonnet2 %patch27 -b .dataclienthttp %patch137 -b .bfq %patch336 -b .optcook # rrd %patch69 -b .rrddefs-hwpredict %patch142 -b .tcpcheckinterval %patch380 -b .clientcountwarn %patch144 -b .clientparse %patch145 -b .statusmode %patch146 -b .consistentmodifyspot %patch331 -b .combodata-sendmsgclient-sendmsgtimeout-moarcombo %patch562 -b .xymonnet_bannercheck %patch3 -b .rundir #branch4322#%patch26 -b .httpheaders %patch67 %patch70 -b .hostconfigcache # UI backport %patch71 -b .reportline %patch317 -b .httpcolnamerrd %patch320 -b .rrd %patch322 -b .moredebug # feature diffs %patch82 -b .nofilerevert %patch55 -b .morexymondlogs %patch79 -b .evenbetterlogging %patch161 -b .exnet # Backports / UI %patch105 -b .msgslogs # Backport binary safeness (needed for compression in patch 354) %patch83 -b .binarysafe %patch1083 -b .recalchttp %patch560 -b .43_enablecompression-supplemental ############################## %else ########## with trunk only ############################## ## update sqlite version ##install -m 644 %{SOURCE72} ./ %patch303 -b .rundir %patch326 -b .httpheaders %patch368 -b .clientconfig # xymond support for combodata %patch427 -b .combodata %patch344 -b .clientparse %patch145 -b .statusmode %patch339 -b .timeout %patch351 -b .timeoutstats %patch355 -b .morexymondlogs %patch367 %patch370 -b .hostconfigcache %patch79 -b .evenbetterlogging %patch401 -b .nofping %patch402 -b .zlibfix %patch403 -b .nossl %patch405 -b .old_sqlite %patch406 -b .configureclient %patch408 -b .malloc %patch366 -b .gcc-miscwarnings %endif ####################################################################### #Temporary location %patch567 -b .bfqnum %patch568 -b .bfqnum-xymond %patch569 -b .bfqnum-clients %patch963 -b .proxybfqrecombine %patch973 -b .strfunc_convertbin %patch974 -b .modflap #%patch881 -b .chkflags32 #%patch882 -b .constwarnings %patch883 -b .cmdsearch #%patch884 -b .logfetch_child #%patch885 -b .contestwarn #%patch886 -b .ntpdate #%patch887 -b .sslcert #%patch888 -b .rrdprec #%patch889 -b .heapbash #4320#%patch975 -b .combo_uglyhack #4320#%patch976 -b .noegrep #4320#%patch977 -b .alertcriteriasafe #4320#%patch978 -b .uptimedash #4320#%patch979 -b .freemem #4320#%patch980 -b .htmllog #4320#%patch981 -b .ack-man #4320#%patch982 -b .acklogfix #4320#%patch983 -b .clientcolumn #4320#%patch984 -b .clientcreate #4320#%patch985 -b .bbwinleak %patch986 -b .chan_workmem %patch987 -b .pagegenbuffer %patch988 -b .closepagetag #4320#%patch989 -b .httphead #4320#%patch990 -b .coldocfix #4320#%patch991 -b .logfetchnullfix #4320#%patch992 -b .conftimespecfix #4320#%patch993 -b .pullfix #4320#%patch994 -b .urlcasefix #4320#%patch995 -b .cgiwrap-hardlink %patch998 -b .channelflushchk %patch997 -b .maxpeerwrites %patch999 -b .bfq_rr %patch1050 -b .maxnetworks #4320#%patch996 -b .summary #4320#%patch581 -b .clientsvcsnull %patch582 -b .workmem #%patch9001 -b .ssl-connstrange #%patch8001 -b .usecanon #%patch8002 -b .enadis %patch8003 -b .bfq1 #%patch8004 -b .clientpcre #%patch8005 -b .cgifix #%patch8005 -b .summary #%patch8006 -b .netargi #%patch8007 -b .netappissues ##4329 prep## #%patch432901 -b .intmax #%patch432902 -b .tirpc #%patch432903 -b .errmsg #%patch432904 -b .gcc4 ##4329 Sec #%patch432905 -b .seccve %if %{without tirpc} # Remove hard-coding to revert to GLIBC rpc perl -pi -e 's/-ltirpc//' build/Makefile.Linux %endif ############################################################## # update md5 version? #mkdir md5 #tar --directory=md5/ -xzvf %{SOURCE73} #mv lib/md5.c lib/md5.c.back #mv lib/md5.h lib/md5.h.back #cp -fp md5/md5.c md5/md5.h lib/ # Add xxHash from lz4: tar -xzvf %{SOURCE74} #cd xxHash-* # patch -p0 < %{SOURCE741} #cd .. cp -fp xxHash-*/*.h xxHash-*/*.c lib/ cp -fp xxHash-*/LICENSE LICENSE.xxHash # %patch357 -b .extern # Add minilzo from lzo tar -xzvf %{SOURCE75} cp -fp minilzo-*/*.h minilzo-*/minilzo.c lib/ ############################################################## # Create automatic include.d directories ############################################################## %if %{without trunk} PROTOFILE="xymonnet/protocols.cfg" %else PROTOFILE="xymonnet/protocols2.cfg" %endif echo " # include additional sections directory @XYMONHOME@/etc/protocols.d" >> $PROTOFILE ############################################################## # Before we break out the heavy text mods, ensure utf8 data # perl scans will work correctly on ancient RedHat 8.0 export LANG=C %if %{with selinux} mkdir SELinux install -m 644 %{SOURCE41} SELinux/%{serverName}.te install -m 644 %{SOURCE42} SELinux/%{clientName}.te %{__perl} -p -e 's/VERSION/%{version}.%{release}/' -i SELinux/*.te %endif # Way simpler than a patch to put all these variables into place (but see patch54) %{__perl} -pe 's#nohup sh #nohup \$SHELL #' -i ./client/xymonclient-*.sh %patch76 -b .pipevmstatfork # Convert remaining configure-time tweaked paths to their fixed equivalents. # eg, /usr/share/xymon/etc/tasks.cfg is now: # /etc/xymon/tasks.cfg find -type f > tmp.flist find xymond/ xymongen/ xymonnet/ xymonproxy/ -type f > tmp.slist xargs -r %{__perl} -p \ -e 's#\@XYMONTOPDIR\@/server/bin/xymond\b#%{_sbindir}/xymond#g;' \ -e 's#\@XYMONTOPDIR\@/server/bin/xymonlaunch\b#%{_sbindir}/xymonlaunch#g;' \ -e 's#\@XYMONTOPDIR\@/server/bin#%{_libexecdir}/%{serverName}#g;' \ -e 's#\@XYMONTOPDIR\@/server/etc#%{_sysconfdir}/%{serverName}#g;' \ -e 's#\@XYMONTOPDIR\@/server/ext#%{_sysconfdir}/%{serverName}/ext#g;' \ -e 's#\@XYMONTOPDIR\@/client/bin/xymonlaunch\b#%{_sbindir}/xymonlaunch#g;' \ -e 's#\@XYMONTOPDIR\@/client/bin#%{_libexecdir}/%{clientName}#g;' \ -e 's#\@XYMONTOPDIR\@/client/etc#%{_sysconfdir}/%{clientName}#g;' \ -e 's#\@XYMONTOPDIR\@/client/ext#%{xymonClientRoot}/ext#g;' \ -e 's#\@XYMONTOPDIR\@/client"#%{xymonClientRoot}"#g;' \ -e 's#XYMONCLIENTHOME="\@XYMONTOPDIR\@"#XYMONCLIENTHOME="%{xymonClientRoot}"#g;' \ -i < tmp.flist xargs -r %{__perl} -p \ -e 's#\@XYMONHOME\@/bin#%{_libexecdir}/%{serverName}#g;' \ -e 's#\@XYMONHOME\@/etc#%{_sysconfdir}/%{serverName}#g;' \ -e 's#\@XYMONHOME\@/ext#%{_sysconfdir}/%{serverName}/ext#g;' \ -i < tmp.slist rm -f tmp.flist tmp.slist # Remove any patch debris from the /docs/ directory find docs/manpages/ -type f | grep -v .html$ | xargs -r rm # fix perms on patch4 chmod 644 client/README-sections* # It's just too painful to do this as a patch :/ %{__perl} -p -e 's# INSTALLETCDIR="# INSTALLLIBDIR="\$(INSTALLLIBDIR)" INSTALLETCDIR="#g;' -i Makefile */Makefile* # Temporary testing alteration - jc 4/16/15 %{__perl} -p -e 's#ZLIBLIBS#COMPLIBS#g;' -e 's#ZLIBINCDIR#COMPINCDIR#g;' -i Makefile */Makefile* # The Terabithia RPMs have enough changes in them that they should be flagged in bug reports # and other communication. This isn't a fork from upstream, but needs some sanity. %{__perl} -p -e 's/4.[34].\d+/%{version}-%{release}.terabithia/' -i include/version.h # Rebuild HTML man pages: sh ./build/updmanver %{version}-%{release}.terabithia sh ./build/makehtml.sh %{version}-%{release}.terabithia ########################################################################## ########################################################################## %build # Remove hard-coded compiler options so we can use our own in the build system %{__perl} -p -e 's/^\s*CC/#CC/g;' -i build/Makefile.Linux %{__perl} -p -e 's#^(\s*)CFLAGS = -g -O2 -Wall #\1CFLAGS = %{optflags} -Wno-pointer-sign #g;' -i build/Makefile.Linux %if %{with dietlibc} # Include strings.h in code that has a str(n)casecmp function, which may not always be in "string.h" # This kind of stuff gets caught with automake, but we're not using that here find -type f | grep \.c$ | xargs -r grep -l -e strcasecmp -e strncasecmp -e histlogtime | xargs -r \ %{__perl} -pe 's|#include |#include \n#include |' -i.dietback # Build static dietlibc client before the regular server export ENABLESSL=n SSLOK=NO \ XYMONUSER=xymon \ XYMONTOPDIR=%{xymonRoot} \ XYMONHOSTIP=127.0.0.1 \ CONFTYPE=server \ CC="diet -Os gcc" \ CFLAGS="%{optflags} -DREALLY_SMALL -finline-functions -Werror=format-security" # LDFLAGS="${LDFLAGS} %{__global_ldflags}" # As of 4.3.13, we need -lcompat thanks to the client using ftok() for BFQ stuff %{__perl} -pe 's/^(XYMONCLIENT(COMM)?LIBS) = /\1 = -lcompat /' -i.dietback {common,build,client}/Makefile ./configure.client # dietlibc doesn't have useful posix btree functions, even though this compiles (?) make V=1 PKGBUILD=1 include/config.h %{__perl} -pe 's/define HAVE_BINARY_TREE 1/undef HAVE_BINARY_TREE/' -i.dietback include/config.h make V=1 PKGBUILD=1 client cp -fpR client client-diet # Move our tweaked files back so as to not affect the regular build find -type f -iname \*.dietback | %{__perl} -pe 's/\.dietback//' | xargs -r -i mv {}.dietback {} make distclean %endif export CC="gcc" \ CFLAGS="%{optflags} -Werror=format-security" export USEXYMONPING=n \ USERFPING=%{_sbindir}/fping \ ENABLESSL=y SSLOK=YES \ ENABLELDAP=y \ ENABLELDAPSSL=y \ CONFTYPE=server \ XYMONUSER=xymon \ XYMONTOPDIR=%{xymonRoot} \ XYMONVAR=%{libDirectory} \ XYMONHOSTURL=/xymon \ CGIDIR=%{xymonServerRoot}/cgi-bin \ XYMONCGIURL=/xymon-cgi \ SECURECGIDIR=%{xymonServerRoot}/cgi-secure \ SECUREXYMONCGIURL=/xymon-seccgi \ HTTPDGID=apache \ XYMONLOGDIR=%{logDirectory} \ XYMONRUNDIR=%{runDirectory} \ XYMONHOSTNAME=localhost \ XYMONHOSTIP=127.0.0.1 \ MANROOT=%{_mandir} \ INSTALLLIBDIR=%{sharedlibdir} \ INSTALLBINDIR=%{_libexecdir}/%{serverName} \ INSTALLETCDIR=%{_sysconfdir}/%{serverName} \ INSTALLEXTDIR=%{_sysconfdir}/%{serverName}/ext \ INSTALLWEBDIR=%{webDirectory} \ INSTALLTMPDIR=%{tmpDirectorySrv} \ INSTALLWWWDIR=%{wwwDirectory} \ INSTALLSTATICWWWDIR=%{wwwStaticDirectory} %if %{with snmp} export SNMP=1 %endif %if %{with shared} export SHARED=1 %endif # this will fail, and it's fine... we're only interested in setting environment varables like mv configure _configure_old %{__ln_s} /bin/true configure %configure mv _configure_old configure CFLAGS="%{optflags} -Werror=format-security" # Make the client binaries (which have fewer requirements), then # move them out of the way and make the full server package (which makes heavier ones) ./configure.client make V=1 PKGBUILD=1 client cp -fpR client client-build make distclean # Now FINALLY build the main package ./configure # Make %if %{without coverity} make V=1 PKGBUILD=1 %else export PATH="$PATH:/home/rpmbuild/coverity/bin" rm -fR minilzo-* xxHash-* xymonnet/c-ares*gz xymonnet/fping*gz # Clean out patched source/header files find -name *\.c\.* -o -name *\.h\.* | xargs -r rm cov-build --dir cov-int make V=1 PKGBUILD=1 exit 0 %endif %if %{with selinux} pushd SELinux for selinuxvariant in %{selinux_variants} ; do make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile mv %{serverName}.pp %{serverName}.pp.${selinuxvariant} mv %{clientName}.pp %{clientName}.pp.${selinuxvariant} make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean done popd %endif ########################################################################## ########################################################################## %install rm -fR %{buildroot} install -d %{buildroot}%{wwwCacheDirectory} install -d %{buildroot}%{runDirectory} install -d %{buildroot}%{_bindir} install -d %{buildroot}%{_sbindir} make V=1 PKGBUILD=1 INSTALLROOT=%{buildroot} install # Copy the smaller client binaries back into the client section for bin in xymon xymoncfg xymoncmd xymoncombine xymondigest xymongrep xymonlaunch logfetch msgcache; do install -m 755 client-build/$bin %{buildroot}%{xymonRoot}/client/bin/${bin} done %if %{with dietlibc} # Copy the smaller, static client binaries back into the client section for bin in xymon xymoncfg xymoncmd xymoncombine xymondigest xymongrep xymonlaunch logfetch msgcache; do install -m 755 client-diet/$bin %{buildroot}%{xymonRoot}/client/bin/${bin}.static done %endif # Fix a utf8 warning from rpmlint iconv --from=ISO-8859-1 --to=UTF-8 CREDITS > CREDITS.utf8 && \ touch -r CREDITS CREDITS.utf8 && mv CREDITS.utf8 CREDITS # Move client home directory to /usr/share/xymon-client mv %{buildroot}%{xymonRoot}/client %{buildroot}%{xymonClientRoot} ln -s %{xymonClientRoot} %{buildroot}%{xymonRoot}/client # Handled below rm -f %{buildroot}%{xymonClientRoot}/local/README install -m 644 %{SOURCE5} README.terabithia install -m 644 %{SOURCE6} CHANGES.terabithia # Install init scripts or systemd unit file. # NB: the systemd "xymon" service file is unified -- it runs xymonlaunch, # which will look in the package-designated location for a xymonserver.cfg # and then a xymonclient.cfg file. There is no xymon/xymon-client service difference. # # Remove installed run scripts rm -f %{buildroot}%{_libexecdir}/%{serverName}/xymon-client.init rm -f %{buildroot}%{_libexecdir}/%{serverName}/xymon.sh rm -f %{buildroot}%{xymonClientRoot}/runclient.sh rm -f %{buildroot}%{xymonRoot}/xymon.sh %if %{with systemd} install -d %{buildroot}%{_unitdir} install -d %{buildroot}%{_presetdir} install -m 644 %{SOURCE8} %{buildroot}%{_unitdir}/xymonlaunch.service install -m 644 %{SOURCE10} %{buildroot}%{_presetdir}/98-xymonlaunch.preset install -d %{buildroot}%{_tmpfilesdir} install -m 644 %{SOURCE11} %{buildroot}%{_tmpfilesdir}/%{name}.conf %else install -d %{buildroot}%{_initrddir} install -m 755 %{SOURCE1} %{buildroot}%{_initrddir}/%{serverName} install -m 755 %{SOURCE2} %{buildroot}%{_initrddir}/%{clientName} %endif # Install the apache config and touch htpasswd files touch %{buildroot}%{_sysconfdir}/%{serverName}/critical.cfg touch %{buildroot}%{_sysconfdir}/%{serverName}/critical.cfg.bak touch %{buildroot}%{_sysconfdir}/%{serverName}/xymonpasswd touch %{buildroot}%{_sysconfdir}/%{serverName}/xymongroups install -d %{buildroot}%{_sysconfdir}/httpd/conf.d mv -f %{buildroot}%{_sysconfdir}/%{name}/xymon-apache.conf \ %{buildroot}%{_sysconfdir}/httpd/conf.d/%{serverName}.conf # this gets pulled in by %%doc later on install -m 644 %{SOURCE9} xymoncgimsg.conf # Only if needed %if %{with snmp} touch %{buildroot}%{_sysconfdir}/%{serverName}/snmphosts.cfg %endif # Certs = config files install -d %{buildroot}%{_sysconfdir}/%{serverName}/certs ln -s %{_sysconfdir}/%{serverName}/certs %{buildroot}%{xymonRoot}/certs # Dynamically create these directories if/when needed rmdir %{buildroot}%{wwwDirectory}/{html,notes,rep,snap,wml} rmdir %{buildroot}%{libDirectory}/logs # this is for [storestatus], not /var/log/xymon # we've moved the positions of some of these directories %{__perl} -p -e 's#\$XYMONWWWDIR/rep#%{wwwCacheDirectory}/rep#g;' \ -e 's#\$XYMONWWWDIR/snap#%{wwwCacheDirectory}/snap#g;' \ -e 's#\$XYMONHOME/static#%{wwwStaticDirectory}#g;' \ -e 's#\$XYMONHOME/www#%{wwwDirectory}#g;' \ -i %{buildroot}%{_sysconfdir}/%{serverName}/xymonserver.cfg # logrotate scripts for servers and clients # make sure we kill xymonlaunch, which is the only constant -- it's been patched to HUP as needed install -d %{buildroot}%{_sysconfdir}/logrotate.d install -m 644 rpm/xymon.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/xymon %{__perl} -p -e 's#/var/log/xymon/\*.log#%{logDirectory}/*.log#;' \ -e 's#/etc/init.d/xymon rotate#killall -HUP xymonlaunch >/dev/null 2>/dev/null#;' -i %{buildroot}%{_sysconfdir}/logrotate.d/xymon # sysconfig files: # -- xymonlaunch used for runtime for servers and clients # -- xymon-client used for specifying client destination addresses install -d %{buildroot}%{_sysconfdir}/sysconfig install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/xymonlaunch install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/%{clientName} %if 0%{?rhel} == 3 echo 'CLIENTOS="rhel3"' >> %{buildroot}%{_sysconfdir}/sysconfig/%{clientName} %endif %if 0%{?rhel} == 3 || 0%{?rhel} == 4 %{__perl} -pe 's/readlink -m/readlink/' -i %{buildroot}%{xymonClientRoot}/bin/xymonclient-linux.sh %endif %if 0%{?rhel} == 4 || 0%{?rhel} == 5 || 0%{?rhel} == 6 %{__perl} -pe 's/netstat -antuW 2/netstat -antuT 2/' -i %{buildroot}%{xymonClientRoot}/bin/xymonclient-linux.sh %endif %if 0%{?rhel} == 3 %{__perl} -pe 's/netstat -antuW 2/netstat -antu 2/' -i %{buildroot}%{xymonClientRoot}/bin/xymonclient-linux.sh %endif # copy some extra icons, and fix permissions generally install -m 644 %{SOURCE50} README.extraicons install -m 644 %{SOURCE51} %{buildroot}%{wwwStaticDirectory}/gifs/info.gif install -m 644 %{SOURCE52} %{buildroot}%{wwwStaticDirectory}/gifs/trends.gif install -m 644 %{SOURCE53} %{buildroot}%{wwwStaticDirectory}/gifs/client.gif mv -f %{buildroot}%{wwwStaticDirectory}/gifs/README README.gifs find %{buildroot}%{wwwStaticDirectory} -type f | xargs -r chmod 644 # disable "clientupdate", which won't/shouldn't work on RPM systems rmdir %{buildroot}%{xymonRoot}/download/ rm -f %{buildroot}%{xymonClientRoot}/bin/clientupdate rm -f %{buildroot}%{_mandir}/*/clientupdate.* # remove unneeded HOME variables, but note that xymond_client (in --local mode) is in the server dir %{__perl} -p -e 's#\$XYMONHOME/bin/xymond_client#%{_libexecdir}/%{serverName}/xymond_client#g;' \ -e 's#\$XYMONHOME/bin#%{_libexecdir}/%{clientName}#g;' \ -e 's#\$XYMONHOME/etc#%{_sysconfdir}/%{clientName}#g;' -e 's#\$XYMONHOME/#%{xymonClientRoot}/#g;' \ -i %{buildroot}%{xymonClientRoot}/etc/xymonclient.cfg %{buildroot}%{xymonClientRoot}/bin/xymonclient.sh %{__perl} -p -e 's#\$XYMONHOME/bin#%{_libexecdir}/%{serverName}#g;' \ -e 's#\$XYMONHOME/etc#%{_sysconfdir}/%{serverName}#g;' \ -i %{buildroot}%{_sysconfdir}/%{serverName}/xymonserver.cfg # Save a fork and hard-code our RPM version into xymonclient.sh %{__perl} -p -e 's/`\$XYMON --version`/Xymon version %{version}-%{release}/' -i %{buildroot}%{xymonClientRoot}/bin/xymonclient.sh # Since environment is always set, full pathnames aren't needed %{__perl} -p -e 's#CMD \$XYMONCLIENTHOME/bin/#CMD #g;' -e 's#CMD %{_libexecdir}/%{clientName}/#CMD #g;' \ -e 's#CMD \$XYMONHOME/ext/#CMD %{_sysconfdir}/%{serverName}/ext/#g;' \ -e 's#CMD \$XYMONHOME/bin/#CMD #g;' \ -e 's#\$XYMONHOME/logs#%{logDirectory}#g;' \ -i %{buildroot}%{_sysconfdir}/%{serverName}/tasks.cfg %{__perl} -p -e 's#CMD \$XYMONCLIENTHOME/bin/#CMD #g;' \ -e 's#CMD \$XYMONCLIENTHOME/ext/#CMD %{_sysconfdir}/%{clientName}/ext/#g;' \ -e 's#\$XYMONCLIENTHOME/etc#%{_sysconfdir}/%{clientName}#g;' \ -e 's#CMD %{xymonRoot}/client/bin/#CMD #g;' \ -i %{buildroot}%{xymonClientRoot}/etc/clientlaunch.cfg %{__perl} -p -e 's#\$XYMONHOME/bin#%{_libexecdir}/%{serverName}#g;' -i %{buildroot}%{_libexecdir}/%{serverName}/*.sh if [ -f %{buildroot}%{_sysconfdir}/%{serverName}/ext/xymonnet-again.sh ] ; then %{__perl} -p -e 's#\$XYMONHOME/bin#%{_libexecdir}/%{serverName}#g;' -i %{buildroot}%{_sysconfdir}/%{serverName}/ext/xymonnet-again.sh fi # Move client-ish client binaries to /usr/bin pushd %{buildroot}%{xymonClientRoot} for this in xymon xymoncfg xymoncmd xymoncombine xymondigest xymongrep logfetch msgcache; do mv -f bin/$this %{buildroot}%{_bindir}/$this ln -s %{_bindir}/$this bin/$this %if %{with dietlibc} if [ -f "bin/${this}.static" ] ; then mv -f bin/${this}.static %{buildroot}%{_bindir}/${this}.static ln -s %{_bindir}/${this}.static bin/${this}.static fi %endif done # Move server-ish client binaries to /usr/sbin for this in xymonlaunch; do mv -f bin/$this %{buildroot}%{_sbindir}/$this ln -s %{_sbindir}/$this bin/$this %if %{with dietlibc} if [ -f "bin/${this}.static" ] ; then mv -f bin/${this}.static %{buildroot}%{_sbindir}/${this}.static ln -s %{_sbindir}/${this}.static bin/${this}.static fi %endif done # Put the rest of the home directory in their proper places mv -f bin %{buildroot}%{_libexecdir}/%{clientName} mv -f etc %{buildroot}%{_sysconfdir}/%{clientName} ln -s %{_libexecdir}/%{clientName} bin ln -s %{_sysconfdir}/%{clientName} etc rmdir local logs ln -s %{logDirectory} logs popd # Move server-ish SERVER binaries to /usr/sbin # (note: the server version of xymonlaunch used to be moved here, but # now we use the client version instead since there's no functional # difference but we can reduce more dependencies.) pushd %{buildroot}%{_libexecdir}/%{serverName} for this in xymond ; do mv -f $this %{buildroot}%{_sbindir}/$this ln -s %{_sbindir}/$this $this done popd # Move some miscelleaneous debugging binaries into libexec for our tools package for THIS in lib/stackio lib/locator lib/tree lib/availability lib/loadhosts web/xymonpage xymonnet/contest xymond/rrdcachectl; do install -m 755 $THIS %{buildroot}%{_libexecdir}/%{serverName}/ done # Make sure XYMONTMP and PATH are always set properly whenever things are run via xymoncmd %{__perl} -p -e 's#XYMONTMP=".*"#XYMONTMP="%{tmpDirectorySrv}"#g;' -i %{buildroot}%{_sysconfdir}/%{serverName}/xymonserver.cfg %{__perl} -p -e 's#XYMONTMP=".*"#XYMONTMP="%{tmpDirectoryCli}"#g;' -i %{buildroot}%{_sysconfdir}/%{clientName}/xymonclient.cfg %{__perl} -p -e 's#PATH="#PATH="%{_libexecdir}/%{serverName}:#' -i %{buildroot}%{_sysconfdir}/%{serverName}/xymonserver.cfg %{__perl} -p -e 's#PATH="#PATH="%{_libexecdir}/%{clientName}:#' -i %{buildroot}%{_sysconfdir}/%{clientName}/xymonclient.cfg # Now that XYMOMTMP is hard-coded to where we need it; remove extraneous symlinks which RPM complains about rmdir %{buildroot}%{xymonClientRoot}/tmp rm -f %{buildroot}%{xymonServerRoot}/tmp # Don't need local dir /lib/ link either... rm -f %{buildroot}%{xymonServerRoot}/lib # Big Brother compatibility symlinks ln -s xymon %{buildroot}%{_bindir}/bb ln -s xymoncmd %{buildroot}%{_bindir}/bbcmd ln -s %{_bindir}/xymon %{buildroot}%{_libexecdir}/%{clientName}/bb ln -s %{_bindir}/xymoncmd %{buildroot}%{_libexecdir}/%{clientName}/bbcmd ln -s xymon.1 %{buildroot}%{_mandir}/man1/bb.1 ln -s xymoncmd.1 %{buildroot}%{_mandir}/man1/bbcmd.1 %if %{with dietlibc} # Duplicate man pages for static versions for bin in xymon xymoncfg xymoncmd xymondigest xymongrep logfetch; do %{__cp} -fp %{buildroot}%{_mandir}/man1/${bin}.1 %{buildroot}%{_mandir}/man1/${bin}.static.1 done for bin in xymonlaunch msgcache; do %{__cp} -fp %{buildroot}%{_mandir}/man8/${bin}.8 %{buildroot}%{_mandir}/man8/${bin}.static.8 done %endif # Since they're read/(write) by apache, move critical.cfg and xymonpasswd/groups files out of /etc/xymon/ install -d %{buildroot}%{wwwConfigDirectory} for FILENAME in xymonpasswd xymongroups critical.cfg critical.cfg.bak; do mv "%{buildroot}%{_sysconfdir}/%{serverName}/$FILENAME" "%{buildroot}%{wwwConfigDirectory}/$FILENAME" || : %{__ln_s} "%{wwwConfigDirectory}/$FILENAME" "%{buildroot}%{_sysconfdir}/%{serverName}/$FILENAME" || : done ln -s %{xymonClientRoot}/ext %{buildroot}%{_sysconfdir}/%{clientName}/ext %if %{with extraclients} install -m 644 %{SOURCE7} README.core %else ## remove orcaxymon from tree rm -f %{buildroot}%{_libexecdir}/%{clientName}/orcaxymon rm -f %{buildroot}%{_mandir}/*/orcaxymon.* %endif # Create /etc/xymon*/*.d/ configuration directories # For the server for THIS in alerts analysis combo configure-local rrddefinitions graphs hosts protocols tasks; do install -d %{buildroot}%{_sysconfdir}/%{serverName}/${THIS}.d done install -d %{buildroot}%{_sysconfdir}/%{serverName}/xymonserver.cfg.d # For the client install -d %{buildroot}%{_sysconfdir}/%{clientName}/client.d install -d %{buildroot}%{_sysconfdir}/%{clientName}/xymonclient.cfg.d echo " # Include add-on modules -- do not confuse with /local/ scripts, which are tests inserted directly into the client report directory %{_sysconfdir}/%{clientName}/client.d" >> %{buildroot}%{_sysconfdir}/%{clientName}/clientlaunch.cfg # Add sections to client install -m 755 %{SOURCE21} %{buildroot}%{xymonClientRoot}/sections/mounts install -m 755 %{SOURCE22} %{buildroot}%{xymonClientRoot}/sections/meminfo install -m 755 %{SOURCE23} %{buildroot}%{xymonClientRoot}/sections/vmstats install -m 755 %{SOURCE24} %{buildroot}%{xymonClientRoot}/sections/ipcs # Automatic periodic SLA reports (daily/weekly/monthly) install -m 644 %{SOURCE31} %{buildroot}%{_sysconfdir}/%{serverName}/tasks.d/dailyreport install -m 644 %{SOURCE32} %{buildroot}%{_sysconfdir}/%{serverName}/tasks.d/weeklyreport install -m 644 %{SOURCE33} %{buildroot}%{_sysconfdir}/%{serverName}/tasks.d/monthlyreport # Add xymonserver.cfg.d additions # install -m 644 %{SOURCE35} %{buildroot}%{_sysconfdir}/%{serverName}/xymonserver.cfg.d/vmstatgraphs # Add logfetchupdate client.d script install -m 755 %{SOURCE61} %{buildroot}%{xymonClientRoot}/ext/logfetchupdate install -m 644 %{SOURCE62} %{buildroot}%{_sysconfdir}/%{clientName}/client.d/logfetchupdate.cfg # deal with alternative shells %if %{with altshell} %{__perl} -pe 's#/bin/sh#%{shell}#' -i \ %{buildroot}%{xymonClientRoot}/sections/* \ %{buildroot}%{_sysconfdir}/%{clientName}/xymonclient.cfg %{buildroot}%{_sysconfdir}/%{serverName}/xymonserver.cfg # Update script shebangs generally (web shims, etc) find %{buildroot}%{xymonClientRoot}/ %{buildroot}%{_sysconfdir}/%{serverName}/ext/ %{buildroot}%{_sysconfdir}/%{clientName}/ext/ \ %{buildroot}%{_libexecdir}/%{clientName}/xymonclient.sh %{buildroot}%{_libexecdir}/%{clientName}/xymonclient-linux.sh -type f | grep -e \.sh$ | \ xargs -r %{__perl} -pe 's|^#!/bin/sh|#!%{shell}|' -i %endif %if %{with selinux} # SELinux policy for selinuxvariant in %{selinux_variants}; do install -d %{buildroot}%{_datadir}/selinux/${selinuxvariant} for policyname in %{serverName} %{clientName}; do install -p -m 644 SELinux/${policyname}.pp.${selinuxvariant} %{buildroot}%{_datadir}/selinux/${selinuxvariant}/${policyname}.pp done done %endif # For server tests, increase the frequency of all 5m testing up to 1m; xymonnet-again to 30s %{__perl} -p -e 's/INTERVAL 5m/INTERVAL 1m/g;' -i %{buildroot}%{_sysconfdir}/%{serverName}/tasks.cfg %{__perl} -0pe 's/xymonnetagain.log\n\tINTERVAL \d+\w?/xymonnetagain.log\n\tINTERVAL 30s/s' -i %{buildroot}%{_sysconfdir}/%{serverName}/tasks.cfg # For client reports, increase the frequency from 5m to 100s %{__perl} -p -e 's/INTERVAL 5m/INTERVAL 100s/g;' -i %{buildroot}%{_sysconfdir}/%{clientName}/clientlaunch.cfg %{__perl} -0pe 's/xymonclient.log\n\tINTERVAL \d+\w?/xymonclient.log\n\tINTERVAL 100s/s' -i %{buildroot}%{_sysconfdir}/%{serverName}/tasks.cfg # Move static libraries into the main _libdir # They're either in the devel subpackage or the static one, # but either way, this is the correct spot, even for a private lib install -d %{buildroot}%{_libdir} %if "%{sharedlibdir}" != "%{_libdir}" mv %{buildroot}%{sharedlibdir}/*.a %{buildroot}%{_libdir}/ %endif # %if %{with shared} # # Hack until there's a real SONAME here # pushd %{buildroot}%{sharedlibdir} # LIBS=`ls -1 *.so 2>/dev/null` # for THISLIB in $LIBS; do # rm -f ${THISLIB} ${THISLIB}.0 # %{__ln_s} ${THISLIB}.0.0.0 ${THISLIB}.0 # %{__ln_s} %{sharedlibdir}/${THISLIB}.0.0.0 %{buildroot}%{_libdir}/${THISLIB} # done # popd # %endif # Prep header files for our devel subpackage. To build using them, # (after they're installed), one would replace "libxymon.h" with ... install -d %{buildroot}%{_includedir}/%{name} install -m 644 include/*.h %{buildroot}%{_includedir}/%{name}/ # The "system" header files shouldn't reference "../lib/" anymore %{__perl} -pe 's#../lib/##' -i %{buildroot}%{_includedir}/%{name}/*.h for DIR in lib web xymond xymongen xymonnet ; do install -m 644 ${DIR}/*.h %{buildroot}%{_includedir}/%{name}/ done ########################################################################## ########################################################################## %clean rm -fR %{buildroot} ####################################################################### %if %{with shared} %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %endif %pre # create user if it doesn't exist getent passwd xymon >/dev/null || \ useradd -r -d "%{xymonRoot}" -s /sbin/nologin -c "xymon Monitor" xymon 2>/dev/null || : %if %{with logreader} # add to any existing user too (eg, upgrades) getent group "%{logReaderGroup}" >/dev/null && \ usermod -a -G "%{logReaderGroup}" xymon 2>/dev/null || : %endif # Migrate config files to new location as of 4.3.25 for FILENAME in xymonpasswd xymongroups critical.cfg critical.cfg.bak ; do if [ -e "%{_sysconfdir}/%{serverName}/$FILENAME" -a ! -L "%{_sysconfdir}/%{serverName}/$FILENAME" \ -a -d "%{wwwConfigDirectory}/" -a ! -e "%{wwwConfigDirectory}/$FILENAME" ] ; then mv "%{_sysconfdir}/%{serverName}/$FILENAME" "%{wwwConfigDirectory}/$FILENAME" || : %{__ln_s} "%{wwwConfigDirectory}/$FILENAME" "%{_sysconfdir}/%{serverName}/$FILENAME" || : chown apache:apache "%{wwwConfigDirectory}/$FILENAME" chmod 600 "%{wwwConfigDirectory}/$FILENAME" fi done ################################################################### %pre client # create user if it doesn't exist getent passwd xymon >/dev/null || \ useradd -r -d "%{xymonClientRoot}" -s /sbin/nologin -c "xymon Monitor (client)" xymon 2>/dev/null || : %if %{with logreader} # add to any existing user too (eg, upgrades) getent group "%{logReaderGroup}" >/dev/null && \ usermod -a -G "%{logReaderGroup}" xymon 2>/dev/null || : %endif ################################################################### %post if [ "$1" -eq 1 ]; then # Try to send useful information about ourself on an initial install HOSTNAME="`uname -n`" %if %{without oldsed} %{__sed} -e "s/^127.0.0.1 *localhost/127.0.0.1 $HOSTNAME/" -i %{_sysconfdir}/%{serverName}/hosts.cfg %{__sed} -e 's/^XYMONSERVERS=""/XYMONSERVERS="127.0.0.1"/' -i %{_sysconfdir}/sysconfig/%{clientName} %else %{__perl} -pe "s/^127.0.0.1\s+localhost\b/127.0.0.1\t$HOSTNAME/;" -i %{_sysconfdir}/%{serverName}/hosts.cfg %{__perl} -pe 's/^XYMONSERVERS=""/XYMONSERVERS="127.0.0.1"/;' -i %{_sysconfdir}/sysconfig/%{clientName} %endif fi # Prior to 4.3.17 (and some trunk versions), the server XYMONHOME was /usr/share/xymon/server/ # which contained a set of symlinks to various other FHS locations. XYMONHOME is now /usr/share/xymon/ # and those symlinks live in this dir. /server/ should be a symlink to the new HOME, but RPM # doesn't handle directory->symlink upgrades very well (and yum doesn't at all), so we have to # do this by hand.... cf. BZ #447156, #975909 %if %{without oldsed} %{__sed} -e 's/\/usr\/share\/xymon\/server/\/usr\/share\/xymon/' -i %{_sysconfdir}/%{serverName}/xymonserver.cfg %{__sed} -e 's/XYMONEXNETWORKS=/XYMONEXNETWORK=/' -i %{_sysconfdir}/%{serverName}/xymonserver.cfg %else %{__perl} -pe 's#/usr/share/xymon/server#/usr/share/xymon#;' -i %{_sysconfdir}/%{serverName}/xymonserver.cfg %{__perl} -pe 's#XYMONEXNETWORKS=#XYMONEXNETWORK=#;' -i %{_sysconfdir}/%{serverName}/xymonserver.cfg %endif # (We do this again in %posttrans just to be sure) if [ ! -e "%{xymonRoot}/server" ] ; then %{__ln_s} "%{xymonServerRoot}" "%{xymonRoot}/server" || : fi # Must be able to read /var/log/messages to be effective %if %{with facl} setfacl -m u:xymon:r "%{_localstatedir}/log/messages" 2>/dev/null || : %endif %if %{with logreader} chgrp "%{logReaderGroup}" "%{_localstatedir}/log/messages" chmod g+r "%{_localstatedir}/log/messages" %endif %if %{with selinux} # policycoreutils-python /usr/sbin/semanage fcontext -a -t initrc_var_run_t '%{_localstatedir}/run/%{name}(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -a -t httpd_cache_t '%{wwwCacheDirectory}(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -a -t httpd_sys_script_exec_t '%{xymonServerRoot}/cgi-bin(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -a -t httpd_sys_script_exec_t '%{xymonServerRoot}/cgi-secure(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -a -t httpd_sys_script_exec_t '%{_libexecdir}/%{serverName}/cgiwrap' 2>/dev/null || : /usr/sbin/semanage fcontext -a -t httpd_sys_content_t '%{libDirectory}(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -a -t tmp_t '%{tmpDirectorySrv}(/.*)?' 2>/dev/null || : # Only go through all of /var/lib/xymon/ on installs, since that might be huge if [ "$1" -eq 1 ]; then /sbin/restorecon -R %{_libexecdir}/%{serverName}/cgiwrap %{xymonServerRoot}/cgi-* %{wwwCacheDirectory} %{runDirectory} %{libDirectory} %{wwwConfigDirectory} %{tmpDirectorySrv} >/dev/null || : else /sbin/restorecon -R %{_libexecdir}/%{serverName}/cgiwrap %{xymonServerRoot}/cgi-* %{wwwCacheDirectory} %{runDirectory} %{wwwConfigDirectory} %{tmpDirectorySrv} >/dev/null || : fi if [ -x /usr/sbin/semodule ] ; then for selinuxvariant in %{selinux_variants}; do /usr/sbin/semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/%{serverName}.pp &> /dev/null || : /usr/sbin/semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/%{clientName}.pp &> /dev/null || : done if [ "$1" -eq 1 ]; then /usr/sbin/setsebool -P httpd_can_network_connect on 2>/dev/null || : fi fi %endif # add unit file or init script; restart if already running %if %{with systemd} %systemd_post xymonlaunch.service %else /sbin/chkconfig --add %{serverName} /sbin/service %{serverName} condrestart >/dev/null 2>&1 || : %endif # Reload httpd to take our apache snippets into account /sbin/service httpd status >/dev/null 2>&1 && /sbin/service httpd graceful >/dev/null 2>&1 || : ################################################################### %post client %if %{with selinux} if [ -x /usr/sbin/semodule ] ; then for selinuxvariant in %{selinux_variants}; do /usr/sbin/semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/%{clientName}.pp &> /dev/null || : done fi %endif # Must be able to read /var/log/messages to be effective %if %{with facl} setfacl -m u:xymon:r "%{_localstatedir}/log/messages" 2>/dev/null || : %endif %if %{with logreader} chgrp "%{logReaderGroup}" "%{_localstatedir}/log/messages" chmod g+r "%{_localstatedir}/log/messages" %endif # This is a hack, but we don't want to double-bounce xymonlaunch, # so let the server package handle it if both are installed... if [ ! -e "%{_sysconfdir}/%{serverName}/xymonserver.cfg" ] ; then # add unit file or init script; restart if already running %if %{with systemd} %systemd_post xymonlaunch.service %else /sbin/chkconfig --add %{clientName} /sbin/service %{clientName} condrestart >/dev/null 2>&1 || : %endif fi exit 0 ################################################################### %verifyscript SUCMD=su test -x /sbin/runuser && SUCMD=/sbin/runuser for this in "%{_localstatedir}/log/messages"; do echo -n "Checking for read privileges in $this... " if ! $SUCMD -s /bin/sh xymon -c "test -r $this"; then echo "failed" echo "The xymon user needs read privileges for $this" >&2 %if %{with facl} echo "Try: setfacl -m u:xymon:r $this" >&2 %endif %if %{with logreader} echo "Try: change its group to '%{logReaderGroup}' and provide group read permissions" >&2 %endif else echo "ok" fi done %verifyscript client SUCMD=su test -x /sbin/runuser && SUCMD=/sbin/runuser for this in "%{_localstatedir}/log/messages"; do echo -n "Checking for read privileges in $this... " if ! $SUCMD -s /bin/sh xymon -c "test -r $this"; then echo "failed" echo "The xymon user needs read privileges for $this" >&2 %if %{with facl} echo "Try: setfacl -m u:xymon:r $this" >&2 %endif %if %{with logreader} echo "Try: change its group to '%{logReaderGroup}' and provide group read permissions" >&2 %endif else echo "ok" fi done ################################################################### %preun if [ "$1" -eq 0 ]; then %if %{with systemd} %systemd_preun xymonlaunch.service %else /sbin/service %{serverName} stop >/dev/null 2>&1 || : /sbin/chkconfig --del %{serverName} || : %endif fi %postun if [ "$1" -eq 0 ]; then %if %{with selinux} # policycoreutils-python /usr/sbin/semanage fcontext -d -t tmp_t '%{tmpDirectorySrv}(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -d -t httpd_cache_t '%{wwwCacheDirectory}(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -d -t initrc_var_run_t '%{_localstatedir}/run/%{name}(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -d -t httpd_sys_script_exec_t '%{xymonServerRoot}/cgi-bin(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -d -t httpd_sys_script_exec_t '%{xymonServerRoot}/cgi-secure(/.*)?' 2>/dev/null || : /usr/sbin/semanage fcontext -d -t httpd_sys_content_t '%{libDirectory}(/.*)?' 2>/dev/null || : # policycoreutils if [ -x /usr/sbin/semodule ] ; then for selinuxvariant in %{selinux_variants}; do /usr/sbin/semodule -s ${selinuxvariant} -r %{clientName} &> /dev/null || : /usr/sbin/semodule -s ${selinuxvariant} -r %{serverName} &> /dev/null || : done fi %endif /bin/true fi %if %{with systemd} %systemd_postun_with_restart xymonlaunch.service %endif %preun client # Let the server RPM handle removals if it's installed if [ "$1" -eq 0 ]; then %if %{with systemd} if [ ! -e "%{_sysconfdir}/%{serverName}/xymonserver.cfg" ] ; then %systemd_preun xymonlaunch.service fi %else /sbin/service %{clientName} stop >/dev/null 2>&1 || : /sbin/chkconfig --del %{clientName} || : %endif fi %postun client if [ "$1" -eq 0 ]; then %if %{with facl} setfacl -x u:xymon %{_localstatedir}/log/messages || : %endif %if %{with selinux} if [ -x /usr/sbin/semodule ] ; then for selinuxvariant in %{selinux_variants}; do /usr/sbin/semodule -s ${selinuxvariant} -r %{clientName} &> /dev/null || : done fi %endif /bin/true fi %if %{with systemd} %systemd_postun_with_restart xymonlaunch.service %endif %posttrans # See note on 4.3.17 upgrade in %post # Post-trans is only available on RPM >= 4.4, so really old distributions # might need to do this by hand. if [ ! -e "%{xymonRoot}/server" ] ; then %{__ln_s} "%{xymonServerRoot}" "%{xymonRoot}/server" || : fi ################################################################### %if %{with extraclients} ################################################################### ####################################### %pre client-passive %if %{with selinux} if [ -x /usr/sbin/semodule ] ; then for selinuxvariant in %{selinux_variants}; do /usr/sbin/semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/%{clientName}.pp &> /dev/null || : done fi /bin/true %endif ####################################### %pre client-core /bin/true ####################################### %postun client-passive %if %{with selinux} if [ -x /usr/sbin/semodule ] ; then for selinuxvariant in %{selinux_variants}; do /usr/sbin/semodule -s ${selinuxvariant} -r %{clientName} &> /dev/null || : done fi /bin/true %endif /bin/true ####################################################################### %endif ####################################################################### %files %defattr(-,root,root) %doc README README.CLIENT README.backfeed README.gifs Changes COPYING CREDITS RELEASENOTES %doc README.terabithia README.extraicons CHANGES.terabithia %doc LICENSE.xxHash %doc client/README-local client/README-sections %doc xymoncgimsg.conf %doc %{wwwStaticDirectory}/help/manpages/* %doc %{wwwStaticDirectory}/help/manpages/*/* %if %{with selinux} %doc SELinux/%{serverName}.te %doc SELinux/%{clientName}.te %{_datadir}/selinux/*/%{serverName}.pp %{_datadir}/selinux/*/%{clientName}.pp %endif # These are private libs and don't need to be in their own subpackage %if %{with shared} %{sharedlibdir}/libxymon*.so* %endif %if %{with systemd} %attr(644,root,root) %{_unitdir}/xymonlaunch.service %attr(644,root,root) %{_presetdir}/98-xymonlaunch.preset %attr(644,root,root) %{_tmpfilesdir}/%{name}.conf %else %attr(755,root,root) %{_initrddir}/%{serverName} %endif # Initscript config is under xymonlaunch now %attr(644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/xymonlaunch %attr(644,root,root) %config(noreplace) %{_sysconfdir}/logrotate.d/%{serverName} %dir %attr(-,root,root) %{_libexecdir}/%{serverName} %attr(-,root,root) %{_libexecdir}/%{serverName}/bb* %attr(-,root,root) %{_libexecdir}/%{serverName}/cgiwrap %attr(-,root,root) %{_libexecdir}/%{serverName}/*.cgi %attr(-,root,root) %{_libexecdir}/%{serverName}/combostatus %attr(-,root,root) %{_libexecdir}/%{serverName}/convertnk %attr(-,root,root) %{_libexecdir}/%{serverName}/beastat %attr(-,root,root) %{_libexecdir}/%{serverName}/moverrd.sh %attr(-,root,root) %{_libexecdir}/%{serverName}/trimhistory # %attr(-,root,root) %{_libexecdir}/%{serverName}/xymon %attr(-,root,root) %{_libexecdir}/%{serverName}/xymon-mailack %if %{with snmp} %attr(-,root,root) %{_libexecdir}/%{serverName}/xymon-snmpcollect %endif %attr(-,root,root) %{_libexecdir}/%{serverName}/xymoncombine %attr(-,root,root) %{_libexecdir}/%{serverName}/xymoncfg %attr(-,root,root) %{_libexecdir}/%{serverName}/xymoncmd %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_alert %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_capture %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_channel %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_client %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_distribute %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_filestore %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_history %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_hostdata %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_locator %if %{with nanomsg} %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_nanomsg %endif %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_rrd %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_sample %attr(-,root,root) %{_libexecdir}/%{serverName}/xymondigest %attr(-,root,root) %{_libexecdir}/%{serverName}/xymonfetch %attr(-,root,root) %{_libexecdir}/%{serverName}/xymongen %attr(-,root,root) %{_libexecdir}/%{serverName}/xymongrep %attr(-,root,root) %{_libexecdir}/%{serverName}/xymonlaunch %attr(-,root,root) %{_libexecdir}/%{serverName}/xymonnet %attr(-,root,root) %{_libexecdir}/%{serverName}/xymonproxy %attr(-,root,root) %{_libexecdir}/%{serverName}/xymonreports.sh %dir %{_sysconfdir}/%{serverName} %dir %{_sysconfdir}/%{serverName}/ext %dir %{_sysconfdir}/%{serverName}/certs %dir %{_sysconfdir}/%{serverName}/*.d %config(noreplace) %{_sysconfdir}/%{serverName}/*.d/* %config(noreplace) %{_sysconfdir}/%{serverName}/*.cfg %config(noreplace) %{_sysconfdir}/%{serverName}/columndoc.csv %config(noreplace) %ghost %attr(644,apache,apache) %{_sysconfdir}/%{serverName}/critical.cfg* %config(noreplace) %ghost %attr(600,apache,apache) %{_sysconfdir}/%{serverName}/xymonpasswd %config(noreplace) %ghost %attr(600,apache,apache) %{_sysconfdir}/%{serverName}/xymongroups %if %{with snmp} %config(noreplace) %ghost %attr(644,root,root) %{_sysconfdir}/%{serverName}/snmphosts.cfg %endif %attr(755,xymon,xymon) %{libDirectory} %attr(755,xymon,xymon) %{logDirectory} %attr(755,xymon,xymon) %{runDirectory} %attr(755,xymon,xymon) %{wwwDirectory} %attr(755,apache,apache) %dir %{wwwCacheDirectory} %attr(755,apache,apache) %dir %{wwwConfigDirectory} %config(noreplace) %ghost %attr(644,apache,apache) %{wwwConfigDirectory}/critical.cfg* %config(noreplace) %ghost %attr(600,apache,apache) %{wwwConfigDirectory}/xymonpasswd %config(noreplace) %ghost %attr(600,apache,apache) %{wwwConfigDirectory}/xymongroups %attr(-,root,root) %dir %{webDirectory} %attr(-,root,root) %config(noreplace) %{webDirectory}/* %attr(-,root,root) %dir %{wwwStaticDirectory} %attr(-,root,root) %{wwwStaticDirectory}/help %attr(-,root,root) %dir %{wwwStaticDirectory}/gifs %attr(-,root,root) %dir %{wwwStaticDirectory}/menu %attr(-,root,root) %{wwwStaticDirectory}/gifs/* %attr(-,root,root) %{wwwStaticDirectory}/menu/* %attr(-,root,root) %dir %{xymonServerRoot} # Most of these are symlinks /client and /server point to /usr/share/xymon-client and /usr/share/xymon # /server is unused at this point, but would be a symlink back to xymonServerRoot if RPM wasn't lame #%%attr(-,root,root) %%{xymonServerRoot}/server %attr(-,root,root) %{xymonServerRoot}/client %attr(-,root,root) %{xymonServerRoot}/certs %attr(-,root,root) %{xymonServerRoot}/bin %attr(-,root,root) %{xymonServerRoot}/etc %attr(-,root,root) %{xymonServerRoot}/ext %attr(-,root,root) %{xymonServerRoot}/web %attr(-,root,root) %{xymonServerRoot}/www %attr(-,root,root) %{xymonServerRoot}/cgi-bin %attr(-,root,root) %{xymonServerRoot}/cgi-secure %if %{without trunk} %attr(755,root,root) %{_sysconfdir}/%{serverName}/ext/xymonnet-again.sh %endif %attr(644,root,root) %config(noreplace) %{_sysconfdir}/httpd/conf.d/xymon.conf %{_bindir}/* %{_sbindir}/* %{_mandir}/man*/* ### client stuff ### %attr(-,root,root) %{xymonClientRoot} %attr(-,root,root) %{_libexecdir}/%{clientName} %attr(644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/%{clientName} %attr(644,root,root) %config(noreplace) %{_sysconfdir}/%{clientName}/xymonclient.cfg %attr(644,root,root) %config(noreplace) %{_sysconfdir}/%{clientName}/clientlaunch.cfg %attr(644,root,root) %config(noreplace) %{_sysconfdir}/%{clientName}/localclient.cfg %dir %{_sysconfdir}/%{clientName} %config(noreplace) %{_sysconfdir}/%{clientName}/client.d %config(noreplace) %{_sysconfdir}/%{clientName}/xymonclient.cfg.d %{_sysconfdir}/%{clientName}/ext ### end client stuff ### %files client %defattr(-,root,root) %doc README README.CLIENT Changes COPYING CREDITS RELEASENOTES %doc README.terabithia CHANGES.terabithia %doc LICENSE.xxHash %doc client/README-local client/README-sections %if %{with selinux} %doc SELinux/%{clientName}.te %{_datadir}/selinux/*/%{clientName}.pp %endif %if %{with shared} %{sharedlibdir}/libxymonclient*.so* %{sharedlibdir}/libxymontime.so* %endif %{_bindir}/bb %{_bindir}/bbcmd %{_bindir}/logfetch %{_bindir}/msgcache %{_bindir}/xymon %{_bindir}/xymoncfg %{_bindir}/xymoncmd %{_bindir}/xymoncombine %{_bindir}/xymondigest %{_bindir}/xymongrep %{_sbindir}/xymonlaunch %{_mandir}/man1/bb.1.gz %{_mandir}/man1/bbcmd.1.gz %{_mandir}/man1/logfetch.1.gz %{_mandir}/man8/msgcache.8.gz %{_mandir}/man1/xymon.1.gz %{_mandir}/man1/xymoncfg.1.gz %{_mandir}/man1/xymoncmd.1.gz %{_mandir}/man1/xymondigest.1.gz %{_mandir}/man1/xymongrep.1.gz %{_mandir}/man8/xymonlaunch.8.gz %{_mandir}/man5/clientlaunch.cfg.5.gz %{_mandir}/man5/xymonclient.cfg.5.gz ### client stuff ### %if %{with systemd} %attr(644,root,root) %{_unitdir}/xymonlaunch.service %attr(644,root,root) %{_presetdir}/98-xymonlaunch.preset %attr(644,root,root) %{_tmpfilesdir}/%{name}.conf %else %attr(755,root,root) %{_initrddir}/%{clientName} %endif # Initscript config (and logrotate control) is under xymonlaunch now %attr(644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/xymonlaunch %attr(644,root,root) %config(noreplace) %{_sysconfdir}/logrotate.d/%{serverName} %attr(-,root,root) %{xymonClientRoot} %attr(-,root,root) %dir %{_libexecdir}/%{clientName} %attr(-,root,root) %{_libexecdir}/%{clientName}/bb %attr(-,root,root) %{_libexecdir}/%{clientName}/bbcmd %attr(-,root,root) %{_libexecdir}/%{clientName}/logfetch %attr(-,root,root) %{_libexecdir}/%{clientName}/msgcache %attr(-,root,root) %{_libexecdir}/%{clientName}/xymon %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncfg %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncmd %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncombine %attr(-,root,root) %{_libexecdir}/%{clientName}/xymondigest %attr(-,root,root) %{_libexecdir}/%{clientName}/xymonlaunch %attr(-,root,root) %{_libexecdir}/%{clientName}/xymonclient.sh %attr(-,root,root) %{_libexecdir}/%{clientName}/xymonclient-linux.sh %attr(644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/%{clientName} %attr(644,root,root) %config(noreplace) %{_sysconfdir}/%{clientName}/xymonclient.cfg %attr(644,root,root) %config(noreplace) %{_sysconfdir}/%{clientName}/clientlaunch.cfg %dir %{_sysconfdir}/%{clientName} %config(noreplace) %{_sysconfdir}/%{clientName}/client.d %config(noreplace) %{_sysconfdir}/%{clientName}/xymonclient.cfg.d %{_sysconfdir}/%{clientName}/ext %attr(755,xymon,xymon) %{logDirectory} %attr(755,xymon,xymon) %{runDirectory} ### end client stuff ### %files client-local %defattr(-,root,root) %doc COPYING %{_mandir}/man5/analysis.cfg.5.gz %{_mandir}/man8/xymond_client.8.gz %attr(-,root,root) %{_libexecdir}/%{serverName}/xymond_client %config(noreplace) %{_sysconfdir}/%{clientName}/localclient.cfg %if %{with shared} %files libs %defattr(-,root,root) %doc COPYING README %{sharedlibdir}/*.so* %endif %if %{with staticlib} %files static %defattr(-,root,root) %doc COPYING %{_libdir}/*.a %endif %files devel %defattr(-,root,root) %doc COPYING CREDITS RELEASENOTES %dir %{_includedir}/%{name} %{_includedir}/%{name}/*.h %if %{with shared} %if "%{sharedlibdir}" != "%{_libdir}" %{_libdir}/*.so %endif %endif %if %{without staticlib} %{_libdir}/*.a %endif ################ start extra clients ################ %if %{with dietlibc} %files client-static %defattr(-,root,root) %doc COPYING %{_bindir}/logfetch.static %{_bindir}/msgcache.static %{_bindir}/xymon.static %{_bindir}/xymoncfg.static %{_bindir}/xymoncmd.static %{_bindir}/xymoncombine.static %{_bindir}/xymondigest.static %{_bindir}/xymongrep.static %{_sbindir}/xymonlaunch.static %{_mandir}/man1/logfetch.static.1.gz %{_mandir}/man8/msgcache.static.8.gz %{_mandir}/man1/xymon.static.1.gz %{_mandir}/man1/xymoncfg.static.1.gz %{_mandir}/man1/xymoncmd.static.1.gz %{_mandir}/man1/xymondigest.static.1.gz %{_mandir}/man1/xymongrep.static.1.gz %{_mandir}/man8/xymonlaunch.static.8.gz %attr(-,root,root) %{_libexecdir}/%{clientName}/logfetch.static %attr(-,root,root) %{_libexecdir}/%{clientName}/msgcache.static %attr(-,root,root) %{_libexecdir}/%{clientName}/xymon.static %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncfg.static %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncmd.static %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncombine.static %attr(-,root,root) %{_libexecdir}/%{clientName}/xymondigest.static %attr(-,root,root) %{_libexecdir}/%{clientName}/xymongrep.static %attr(-,root,root) %{_libexecdir}/%{clientName}/xymonlaunch.static %endif %if %{with extraclients} %files client-passive %defattr(-,root,root) %doc README README.CLIENT Changes COPYING CREDITS RELEASENOTES %doc README.terabithia CHANGES.terabithia %doc client/README-local client/README-sections %if %{with selinux} %doc SELinux/%{clientName}.te %{_datadir}/selinux/*/%{clientName}.pp %endif %if %{with shared} %{sharedlibdir}/libxymonclient*.so* %endif %{_mandir}/man1/bb.1.gz %{_mandir}/man1/bbcmd.1.gz %{_mandir}/man1/logfetch.1.gz %{_mandir}/man1/xymon.1.gz %{_mandir}/man1/xymoncfg.1.gz %{_mandir}/man1/xymoncmd.1.gz %{_mandir}/man1/xymondigest.1.gz %{_mandir}/man1/xymongrep.1.gz %{_mandir}/man5/xymonclient.cfg.5.gz %{_bindir}/bb %{_bindir}/bbcmd %{_bindir}/logfetch %{_bindir}/xymon %{_bindir}/xymoncfg %{_bindir}/xymoncmd %{_bindir}/xymondigest %{_bindir}/xymongrep %attr(755,root,root) %dir %{_libexecdir}/%{clientName} %attr(-,root,root) %{_libexecdir}/%{clientName}/bb* %attr(-,root,root) %{_libexecdir}/%{clientName}/xymon %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncfg %attr(-,root,root) %{_libexecdir}/%{clientName}/xymoncmd %attr(-,root,root) %{_libexecdir}/%{clientName}/xymondigest %attr(-,root,root) %{_libexecdir}/%{clientName}/xymongrep %attr(-,root,root) %{_libexecdir}/%{clientName}/xymonclient.sh %attr(-,root,root) %{_libexecdir}/%{clientName}/xymonclient-linux.sh %{xymonClientRoot} %exclude %{xymonClientRoot}/logs %dir %{_sysconfdir}/%{clientName} %config(noreplace) %{_sysconfdir}/%{clientName}/xymonclient.cfg %config(noreplace) %{_sysconfdir}/%{clientName}/localclient.cfg %config(noreplace) %{_sysconfdir}/sysconfig/%{clientName} %if %{with logreader} %attr(2711,root,%{logReaderGroup}) %{_bindir}/logfetch %attr(2711,root,%{logReaderGroup}) %{_libexecdir}/%{clientName}/logfetch %else %attr(755,root,root) %{_bindir}/logfetch %attr(755,root,root) %{_libexecdir}/%{clientName}/logfetch %endif %files client-core %defattr(-,root,root) %doc README README.CLIENT Changes COPYING CREDITS RELEASENOTES %doc README.terabithia CHANGES.terabithia %{_mandir}/man1/bb.1.gz %{_mandir}/man1/bbcmd.1.gz %{_mandir}/man1/xymon.1.gz %{_mandir}/man1/xymoncfg.1.gz %{_mandir}/man1/xymoncmd.1.gz %{_mandir}/man1/xymondigest.1.gz %{_bindir}/bb %{_bindir}/bbcmd %{_bindir}/xymon %{_bindir}/xymoncfg %{_bindir}/xymoncmd %{_bindir}/xymondigest %{_libexecdir}/%{clientName}/bb %{_libexecdir}/%{clientName}/bbcmd %{_libexecdir}/%{clientName}/xymon %{_libexecdir}/%{clientName}/xymoncfg %{_libexecdir}/%{clientName}/xymoncmd %{_libexecdir}/%{clientName}/xymondigest %dir %{_libexecdir}/%{clientName} # Still need to know where to send data %dir %{_sysconfdir}/%{clientName} %config(noreplace) %{_sysconfdir}/%{clientName}/xymonclient.cfg %config(noreplace) %{_sysconfdir}/sysconfig/%{clientName} # $XYMONCLIENTHOME %dir %{xymonClientRoot} %{xymonClientRoot}/bin %{xymonClientRoot}/etc %files client-orca %defattr(-,root,root) %doc README README.CLIENT Changes COPYING CREDITS RELEASENOTES %doc README.terabithia CHANGES.terabithia %{_libexecdir}/%{clientName}/orcaxymon %{_mandir}/*/orcaxymon.* %endif %files tools %defattr(-,root,root) %doc COPYING CREDITS RELEASENOTES %{_libexecdir}/%{serverName}/stackio %{_libexecdir}/%{serverName}/locator %{_libexecdir}/%{serverName}/tree %{_libexecdir}/%{serverName}/availability %{_libexecdir}/%{serverName}/loadhosts %{_libexecdir}/%{serverName}/xymonpage %{_libexecdir}/%{serverName}/contest %{_libexecdir}/%{serverName}/rrdcachectl %if %{with nanomsg} %{_libexecdir}/%{serverName}/xymond_nanomsg %endif ################ end extra clients ################ ################################################### %changelog * Thu Sep 05 2019 Japheth Cleaver 4.3.30-1 - Update to 4.3.30 * Wed Sep 04 2019 Japheth Cleaver 4.3.30-0.7 - Fix crashes in xymongen availbility report generation - Wrap GCC pragmas - Remove upstreamed netstat-W patch - systemd: support xymonlaunch reload; enable restart-on-failure * Wed Aug 21 2019 Japheth Cleaver 4.3.30-0.5 - Update xxHash to 0.7.1 - Fix crashes caused by now-double-null-frees in timing output * Tue Jul 23 2019 Japheth Cleaver 4.3.29-1 - Disable GCC diagnostic pragmas - Code cleanup for addressing string length issues (Henrik), addressing the following CVEs: CVE-2019-13451, CVE-2019-13452, CVE-2019-13455, CVE-2019-13473, CVE-2019-13474, CVE-2019-13484, CVE-2019-13485, CVE-2019-13486 * Sat May 11 2019 Japheth Cleaver 4.3.29-0.8.1 - Add RHEL8 logic - Remove ntpdate RPM Requires - Backport xxHash 0.7.0 fix for EL5: https://github.com/Cyan4973/xxHash/pull/206/files * Tue May 7 2019 Japheth Cleaver 4.3.29-0.7 - Revert use of dash on EL7+; client-only installs may not have EPEL - Fix duplicate logrotate configs on server+client installs - Gate tirpc usage to recent Fedora and EL6+ - Downgrade to xxHash 0.6.5 on EL5 due to FTFBS * Thu Apr 25 2019 Japheth Cleaver 4.3.29-0.6 - Upstream patches to 4.3.29 - Update xxHash to 0.7.0 * Wed Nov 7 2018 Japheth Cleaver 4.3.28-8 - Fix tirpc testing (only use when rpc fails) - Build requiring dash on EL7 now that it's in EPEL (BZ #1381509) * Mon Oct 8 2018 Japheth Cleaver 4.3.28-7 - Large spec file updates and cleanup - Remove oldgcc conditional * Wed Sep 5 2018 Japheth Cleaver 4.3.28-6 - Clarify WML page generation error messages when xymond down * Wed Sep 5 2018 Japheth Cleaver 4.3.28-5 - Use tirpc instead of glibc rpc - Add BuildRequires: gcc - Fedora 27+: Disabled broken dietlibc builds (0.34+) * Tue Sep 4 2018 Japheth Cleaver 4.3.28-4 - Fix FTBFS for recent glibc (u)intmax_t missing - Update SELinux macro for F27+ support - Fix some rpmlint warnings in the spec file - Compile with -Wno-pointer-sign for now * Mon Aug 27 2018 Japheth Cleaver 4.3.28-3 - update xxHash to 0.6.5 - update c-ares to 1.14.0 - prep for 4.3.29 * Fri Sep 22 2017 Japheth Cleaver 4.3.28-2 - update xxHash to 0.6.3 - update c-ares to 1.13.0 - update minilzo to 2.10 * Tue Jan 17 2017 Japheth Cleaver 4.3.28-1 - update to 4.3.28 * Thu Jan 05 2017 Japheth Cleaver 4.3.28-0.6.1 - update to 4.3.28-rc2 * Wed Dec 28 2016 Japheth Cleaver 4.3.28-0.5.1 - update to 4.3.28-rc1 - fix misparsed PCRE regex's in client-local.cfg (Reported by Erik D. Schminke) - don't warn when XYMONNETWORKCOUNT not present - add maxnetworks patch (XYMONNETWORKCOUNT env passed to set max) Thanks, Franco Gasperino - update c-ares bundle to 1.12.0 when used * Fri Oct 14 2016 Japheth Cleaver 4.3.27-4 - xymond_rrd: fix memory leak in do_netapp - update xxHash bundle to r0.6.2 - Merge experimental relocation bits. This won't work very well until all FHS work is unrolled and wrapped in conditionals. * Fri Sep 9 2016 Japheth Cleaver 4.3.27-3 - xymonnet: Fix timelimit and --huge arg processing * Thu Jun 9 2016 Japheth Cleaver 4.3.27-2 - TCP error after connection opened reporting fix (Rep by Mike Burger) * Thu Mar 24 2016 Japheth Cleaver 4.3.27-1 - Update to 4.3.27 * Thu Mar 17 2016 Japheth Cleaver 4.3.26-3 - Change SELinux labels for run directory from unconfied_execmem_t to initrc_var_run_t as the former is missing in EL7 and later F. * Thu Mar 3 2016 Japheth Cleaver 4.3.26-2 - Fix improper redirecting on CGI pages - Fix empty (0 byte) directories flagged as error * Fri Feb 19 2016 Japheth Cleaver 4.3.26-1 - Xymon 4.3.26 - Try to recover better from BFQ errors, or exit cleanly if unable - Simply discard BFQ message if E2BIG received, since MAXMSG system size is unknown * Mon Feb 08 2016 Japheth Cleaver 4.3.25-1 - Xymon 4.3.25 - Fix crash with oversized client/data msgs under max buffer size (Thanks, Matt Vander Werf) * Wed Feb 03 2016 Japheth Cleaver 4.3.25-0.9.2 - Xymon 4.3.25-rc2 - update xxHash bundle to r0.5.0 - remove upstreamed xymond_alert patches - Restore SELinux context on upgrades as well as installs, except the recursive /var/lib/xymon/ directory, which can take a significant length of time on large installations. (/var/lib/xymon/configs/ is still applied) * Sat Jan 09 2016 Japheth Cleaver 4.3.25-0.1 - Add logrotate to client RPM requires; add psmisc to client and server as it's not included in some minimal installs (Thanks, Thomas Leavitt) * Tue Dec 29 2015 Japheth Cleaver 4.3.25-0.0.4 - Testing 4.3.25 - Don't force environment loading when setting up signal handler - Adjust default report for xymon crash on an unknown system to "localhost" - Fix crash on bogus SSL expiration dates * Wed Dec 16 2015 Japheth Cleaver 4.3.25-0.0.2 - Testing 4.3.25 - Add ssl-connstrange.patch * Wed Dec 02 2015 Japheth Cleaver 4.3.24-3 - Only match trends segments on full RRD names * Sun Nov 29 2015 Japheth Cleaver 4.3.24-2 - Ensure all non-empty clienthttp sections make it into a unified client message from xymonnet's http polls - Document clienthttp[,svc,only] tags in hosts.cfg * Mon Nov 23 2015 Japheth Cleaver 4.3.24-1 - Release 4.3.24 (fixes HTTP status code mis-processing) - liblzo should be liblzo2 on most modern systems. * Thu Nov 12 2015 Japheth Cleaver 4.3.23-1 - Release 4.3.23 * Wed Nov 11 2015 Japheth Cleaver 4.3.22-5 - Fix broken TRACK / OPTIONAL configs in analysis.cfg * Tue Nov 10 2015 Japheth Cleaver 4.3.22-3 - fix netstat (ports) output missing on EL6 clients * Sun Nov 8 2015 Japheth Cleaver 4.3.22-2 - fix loadalerts.c compile warning - xymoncmd: don't assume XYMONCLIENTHOME is present when searching for xymonclient.cfg (Thanks, Matt Vander Werf) * Fri Nov 6 2015 Japheth Cleaver 4.3.22-1 - Update to 4.3.22 release * Thu Nov 5 2015 Japheth Cleaver 4.3.22-0.8 - back out ACCEPTONLY changes - logfetch: fix deltacount segfault when checked file is missing * Wed Nov 4 2015 Japheth Cleaver 4.3.22-0.7 - sanitize group names - RC3 * Mon Nov 2 2015 Japheth Cleaver 4.3.22-0.5.3 - update to 4.3.22-rc2 (conn multigraphs when manually selected fix) - combostatus null fixes for Solaris - update sqlite to 3090200 * Thu Oct 29 2015 Japheth Cleaver 4.3.22-0.1 - update to 4.3.22-beta - update sqlite to 3090100 * Mon Oct 19 2015 Japheth Cleaver 4.3.22-0.0.11 - update sqlite to 3090000 - 4.3.22 testing - r7707 * Wed Sep 30 2015 Japheth Cleaver 4.3.21-7 - increase precision in xymonnet timing and allowed RRD NCV parsing - don't truncate netstat output in EL3+ * Wed Sep 30 2015 Japheth Cleaver 4.3.21-6 - xymond: fix purple tree crash (Thanks Franco Gasperino) - update xxHash bundle to r42 * Sun Jun 7 2015 Japheth Cleaver 4.3.21-5 - xymongen: fix broken COMPACT lines / missing XMH_DATA (Thanks Jacek Tomasiak) * Sun May 24 2015 Japheth Cleaver 4.3.21-4 - compression: lz4 returns fully negative ints instead of size/ssize_t * Sat May 23 2015 Japheth Cleaver 4.3.21-3 - Fix HTTP submission to xymoncgimsg script (Reported by k_vlado@hotmail.com) - cgi: pass content length data of POST blobs - strfunc: don't re-calc length when converting to strbuffer - xymoncgimsg: Match max message CGI size to xymond size - xymoncgimsg: Ensure binary/compressed data OK * Fri May 22 2015 Japheth Cleaver 4.3.21-1 - Update to 4.3.21 * Wed May 20 2015 Japheth Cleaver 4.3.20-3 - Properly calculate "worst case scenario" for LZO/LZ4 when compressing - LZ4 returns <0 on decompression failure - Fix display of compressed message size when an error occurred - If BFQ message is too large, remove it from the queue rather than trying again and wedging. xymond: exit on perm errors. * Tue May 19 2015 Japheth Cleaver 4.3.20-2 - Fix spurious flapping detection for non-color-changing modifies (Reported by Mike Burger) * Fri May 15 2015 Japheth Cleaver 4.3.20-1 - Update to 4.3.20 - Rebuild HTML man pages to incorporate man patches - Add BuildRequires: man2html * Thu May 14 2015 Japheth Cleaver 4.3.20-0.2.2 - reduce criteria non-match from error to debug * Wed May 13 2015 Japheth Cleaver 4.3.20-0.2.1 - update to 4.3.20-rc2 - fix broken normal modify statements; document syntax in xymon(1) * Tue May 12 2015 Japheth Cleaver 4.3.20-0.0.2 - ugly hack to interpret constants in combo.cfg properly * Tue May 12 2015 Japheth Cleaver 4.3.20-0.0.1 - update to 4.3.20-rc1 - remove upstreamed patches - add xymon.c-ares.noegrep.patch * Tue May 12 2015 Japheth Cleaver 4.3.19-35 - modify vaildity support (duration specifiers) + modifyup/modifydown to prevent modifies from accidentally moving status the wrong way - send status messages through when a new modify cause is inserted, even if color has not changed * Thu May 07 2015 Japheth Cleaver 4.3.19-33 - don't crash in xymond_alert when testing against an undefined hostname (Thanks, John Thurston) * Wed May 06 2015 Japheth Cleaver 4.3.19-32 - set Physical Used memory to previous calculations * Sun May 03 2015 Japheth Cleaver 4.3.19-31 - fix "actual" memory calculation on recent linux (rhel7/f21) (Reported by Dominique Frise) - add dash to uptime report to match other client status messages - fix building on F20/21 * Thu Apr 30 2015 Japheth Cleaver 4.3.19-28 - don't drop host records before dropping logs - wrap POSIX binary tree modifications for key drops with #ifdef's - fix small leak with result buffer on hosts reload * Wed Apr 29 2015 Japheth Cleaver 4.3.19-26 - wrap uname() availability if #ifdef's for very old systems - start using setenv instead of putenv if present - fix leaks loading tcp services and checking purples - add GRAPHS_ specifier patch (from Werner Maier) * Tue Apr 28 2015 Japheth Cleaver 4.3.19-22 - add coverity flag to spec file - add acknowledgements patches from Andy Smith - fix leak in network hostinfo load - clichg buffer overrides (different value than client) should be handled properly - coverity: guard against some div-by-zeros in compression.c * Fri Apr 24 2015 Japheth Cleaver 4.3.19-20 - xymond_client: svcs crash debugging - hosts in downtime shouldn't go purple * Wed Apr 22 2015 Japheth Cleaver 4.3.19-19 - cache 'line1' field for status messages (perf4) - but don't even request them for xymongen (since it doesn't use them) * Tue Apr 21 2015 Japheth Cleaver 4.3.19-18.5 - exclude fake clientcolumn status from info page; add docs - pre-compute encoded modify strings (perf3) - fix a valgrind complaint - fix a divide-by-0 error in some cases (Reported by John Thurston) * Mon Apr 20 2015 Japheth Cleaver 4.3.19-18.1 - fix size args to lzo compression routines improperly case on EL3/4 - fix an older GCC warning in xymond_rrd - performance tuning in posttochannel (perf1 / perf2) * Mon Apr 20 2015 Japheth Cleaver 4.3.19-17 - upstreamed patches - create host tree on first client receipt, not first status - add fake "client" test similar to info/trends, with link to clientlog - don't exceed buffer size when reading from msgp (long offset for msgp) * Fri Apr 17 2015 Japheth Cleaver 4.3.19-15 - really fix the RPM hardlinking issue - fix a missing table cell tag closure on pages - improve write buffering for page output in xymongen - pre-allocate channel master working memory for data/client messages - fix a memory leak in handling bbwin/winps svcs test results - fix a memory leak with zlib compression (oops) * Fri Apr 17 2015 Japheth Cleaver 4.3.19-14 - fix unterminated log sections in logfetch (Reported by Johan) - build: convert ZLIBLIBS/INCDIR to more generic COMPLIBS/INCDIR - experimental LZ4 support now available (if present during build) - fix column documentation link (Reported by Andy Smith) - httphead= syntax in hosts.cfg to support http HEAD method requests * Mon Apr 13 2015 Japheth Cleaver 4.3.19-11 - fix confreport.sh not displaying timespecs - modify order in files section to ensure RPM hardlinks properly * Fri Apr 10 2015 Japheth Cleaver 4.3.19-10 - pulldata= specifiers now honored (Reported by John Thurston) * Thu Apr 09 2015 Japheth Cleaver 4.3.19-9 - SELinux: fix cache permissions for snapshots and availability reports (Reported by Dirk Kastens) - SELinux: also, acknowledgements/notifications.log reading - remove auto-add of FollowSymLinks to pre-existing snippets on upgrade * Wed Apr 08 2015 Japheth Cleaver 4.3.19-5 - add deflateBound() for really old zlib (EL3 building works again woot) - fix spurious filtering out of summary reports - accept URLs for http/https (etc) regardless of protocol case - add URL recognition for "ftps" - fix URL recognition for "ldaps" - hardlink cgiwrap cgi copies instead of symlinking to obviate the need for FollowSymLinks to be set in apache * Fri Apr 03 2015 Japheth Cleaver 4.3.19-3 - fix wrong system clock delta reported when xymon_client in --local mode - maxpeerwrites defaults to 1 (when message rcvd via channel) - compress:none is deprecated (confusing), use compress:plain instead - release * Wed Apr 01 2015 Japheth Cleaver 4.3.19-2 - update to 4.3.19 final release - remove all upstreamed patches - lower xymond_channel pause from 25us to 15us - limit consecutive writes to peers when something was received from xymond (default=2; --maxpeerwrites to change) * Mon Mar 30 2015 Japheth Cleaver 4.3.19-0.0.7618.30 - xymond_channel: only walk msgq for flushing every 5s - don't setup BFQ's we're not going to use - rotate BFQ's on each message posted, not just extcombos * Sun Mar 29 2015 Japheth Cleaver 4.3.19-0.0.7617.29 - patch BFQ rotation semantics * Wed Mar 25 2015 Japheth Cleaver 4.3.19-0.0.7617.28 - update to 4.3.19-rc1 (see Changelog for full details) - remove various upstreamed patches / specfile cleanup - proxy: recombine incoming combo messages into extcombos in bfq mode too - proxy: ensure we're not above MAX_OPEN_SOCKS when selecting - Terabithia-specific CHANGES documentation cleanup - fix "client" messages being sent only to final destination server - support SUBMITMODE as preferred variable for one-way client messages - LOGFETCHSKIPTEXT/LOGFETCHCURRENTTEXT supported via override env variables - LOGFETCHSCROLLBACK env variable now preferred over LOGFETCH_SCROLLBACK - fix logfetch not sending correct final snippet in low-maxbytes trigger situations - fix logfetch readline incorrect options on EL3/4 - allow "--debug=stderr" to be specified to logfetch to prevent contents from going into raw client message sent to xymon * Sun Mar 22 2015 Japheth Cleaver 4.3.19-0.0.7611.23 - update to (latest branch version) - fix debug filename in logfetch.c * Fri Mar 20 2015 Japheth Cleaver 4.3.19-0.0.7601.20 - add acknowledgements.sh report (Thanks, Andy Smith) * Sun Mar 15 2015 Japheth Cleaver 4.3.19-0.0.7601.19 - update to (latest branch version) (fixes pre-tag oddness in msgs/procs tests) - only run restorecon on initial installs to prevent huge /var/lib/xymon/ directories from getting forceably rescanned on package updates * Fri Mar 13 2015 Japheth Cleaver 4.3.19-0.0.7597.17 - update to 7597 * Fri Feb 27 2015 Japheth Cleaver 4.3.19-0.0.7591.15 - add TCPCHUNKSIZE control over max number of accept()s per loop - when c-ares is compiled/bundled in, ensure MIT added to License field - rpmlint: no man page for xymoncombine yet - filter CDATA in xymondboard * Thu Feb 26 2015 Japheth Cleaver 4.3.19-0.0.7591.13 - update to 7591 - revert various find_xymon_rrd optimizations for debugging - ensure decompression buffers are properly null terminated * Tue Feb 24 2015 Japheth Cleaver 4.3.19-0.0.7585.9 - update to 7585 - calloc mismatch and leak fix in xymonrrd.c - fix msglen_t missing in dietlibc build - add EXTIME= patch * Mon Feb 23 2015 Japheth Cleaver 4.3.19-0.0.7583.8 - really fix the apache 2.4 stuff - add 'clientsubmit' support; like clientconfig, but the opposite - add 'xymondclientlog' alias for 'clientlog' query - minor changes to help text for xymoncombine - properly check for system lzo header files in test-lzo.c * Thu Feb 19 2015 Japheth Cleaver 4.3.19-0.0.7582.7 - upstream apache 2.4 modifications as needed (Thanks, Jean-Pierre Pitout) - server-side support for "deltacount" line counting (xymond_client/rrd) - fix SELinux policy for rrdcached socket file writing - fix non-working rrdcached directory walking - reduce debugging verbosity in loadhosts - logfetch: fix unterminated string in curpos assembly - xymoncombine: add error output if given bogus initial args - xymonproxy: add 'arrival' time for incoming client messages - xymond_client: use xymomd/xymonproxy receipt time instead of current when calculating message clock drift - update to 7582 * Wed Feb 18 2015 Japheth Cleaver 4.3.19-0.0.7575.3 - update to 7575 / branch packages (see upstream change notes) - package work removing upstreamed patches - update bundled minilzo to 2.09 - xymongrep: don't load from xymond unless asked - properly clean up when we cannot give a response to a message - add xymoncombine utility * Thu Feb 05 2015 Japheth Cleaver 4.3.18-1 - updated to xymon 4.3.18 (final) - now the fun part begins - fix dietlibc building option on Fedora (will require zlib-static) - add generic shims to compression routines, enabling "none" and "lzo" - compression is still experimental - fix spurious trailing byte being posted to bfq - revert multipeer for locator services patch * Tue Feb 03 2015 Japheth Cleaver 4.3.18-0.9.8.1 - fix building on 4.3.18-0.9.8 - compression.o should be in comm libs, not standard xymon libs - fix client building in local mode, also experimental shared lib builds - add multibfq syntax support to xymond_client/rrd, xymonnet and xymonproxy - wrap lz4 and (full) lzo in #ifdef and remove hard BuildRequires - patch refactoring and cleanup - updated to 7492 * Sun Feb 01 2015 Japheth Cleaver 4.3.18-0.9.7.8.5.8 - proxy: only send "clientlog" and "hobbitd" messages to final server - updated README to note dual xymon/xymon-client package installs now recommended - don't double-restart xymonlaunch on upgrade if both packages are installed * Fri Jan 30 2015 Japheth Cleaver 4.3.18-0.9.7.8.5.7 - xymond and client support for multiple backfeed queues - xymon: add --bfq support and --bfq=# to specify BFQ number on submission - xymond: --bfq=# to specify BFQ numbers (0->#) - enable XYMON_SENDBFQ override for various tools - local clientlaunch.cfg optional in server package * Thu Jan 29 2015 Japheth Cleaver 4.3.18-0.9.7.8.5.5 - F18: don't bail in test-rrd.c due to -Wunused-variables * Wed Jan 28 2015 Japheth Cleaver 4.3.18-0.9.7.8.5.4 - performance improvements in channel posting - make "optional" include keyword actually work * Tue Jan 27 2015 Japheth Cleaver 4.3.18-0.9.7.8.5.3 - don't recompress any compressed messages at transport time - don't post to peers when we've filtered the message out - filterlater bug fix and other xymond_channel tuning - fix xymond_client --local mode seeing our submission as a dup message (Thanks, Guillaume Chane) * Mon Jan 26 2015 Japheth Cleaver 4.3.18-0.9.7.8.5 - fix --local client path (Thanks, Guillaume Chane) - fix dumb --multirun bug * Sat Jan 24 2015 Japheth Cleaver 4.3.18-0.9.7.8.4 - logfetch: fix off-by-one on CURRENT posting on otherwise-ignored line - logfetch: logs-were-rotated note should not be on stdout - xymond_alert: fix stale alerts not being purged from checkpoint file - xymond_channel: add metafilter, exfilter, and metaexfilter options - xymond_channel: fix improper case logic on "standard filter" (oops) - xymond_channel: add --multrun option for primitive load balancing - xymond_channel: (multilocal) multiple copies of same cmd can be run - sendmsg: fix memory leak with compression buffer * Thu Jan 22 2015 Japheth Cleaver 4.3.18-0.9.7.8 - logfetch/client-local: client support for "deltacount" syntax - logfetch: accept --debug= syntax - xymon: accept --compress= syntax (only zlib supported) - xymondigest: enable use of SHA-256/512/224/384 as digest formats - xymond_client: reduce overly-verbose debugging in client message handling - xymond_client: prepend flagged log lines with "TEXT=" string if any - xymond_client: send modify messages subsequent to 'msgs' generation * Tue Jan 20 2015 Japheth Cleaver 4.3.18-0.9.7.7 - zlib, lzo, and lz4-devel packages now BuildRequires (EPEL for lz4) - various compression fixes, and add xxhash hashing bits - performance optimizations - slight refactor of comboflush trunk/branch patches - increase max buffer to 64MB, max message to 32MB, and begin to distinguish the two - logfetch: add "current line" marker in msgs output (Thanks, Franco Gasperino) - LOGFETCH_SCROLLBACK can be set to configure how many runs back logfetch should begin parsing data (max/default = 6) - update sqlite to 3080801 - flag version to match full RPM release string + 'terabithia' for tracking * Mon Jan 19 2015 Japheth Cleaver 4.3.18-0.9.7.5 - more compression support (experimental!) - xymon: add --compress option (other binaries use XYMON_COMPRESS from env) - added various routines for buffer/binary safe message transport - add minilzo object - prevent prematurely Terminated vmstat processes from giving invalid RRD data - initscript: rely on rh_status when determining if we're already running and ignore lock files if "subsys is dead" - update sqlite to 3080800 - btree fixes * Mon Jan 12 2015 Japheth Cleaver 4.3.18-0.9.7.4.1 - backport compression routines from trunk 7491 - modify compression library routines for 64bit (int -> size_t) - disable dietlibc building on Fedora * Fri Jan 09 2015 Japheth Cleaver 4.3.18-0.9.7.3 - revert posix btree usage on 4.x - logfetch: properly count valid ignore/trigger regex's only - fix an F21 warning * Thu Jan 08 2015 Japheth Cleaver 4.3.18-0.9.7.1 - logfetch: deal with nulls in log files (Thanks, Franco Gasperino) - logfetch: handle multiple triggers in low maxbytes situations properly (Thanks, Franco Gasperino) * Mon Jan 05 2015 Japheth Cleaver 4.3.18-0.9.7 - fix crash with AAAA records in xymonnet (Thanks, Mark Felder) * Mon Dec 22 2014 Japheth Cleaver 4.3.18-0.9.6.2 - additional debugging in logfetch * Wed Dec 10 2014 Japheth Cleaver 4.3.18-0.9.6.1 - minor fixes for f20 builds * Tue Dec 09 2014 Japheth Cleaver 4.3.18-0.9.6 - use maxbfqsize as the default buffer size when building extcombo msgs - xymon 4.x: include backport compression.c/.h from trunk - allow >4MB extcombo offsets - add xxHash/minilzo tarballs to SRPM - update sqlite to 3080704 * Thu Nov 06 2014 Japheth Cleaver 4.3.18-0.9.4 - xymonnet: when 'headermatch' specified, match even when HTTP body is null - posix: perform manual tree deletions for hostlist - remove various debug lines - rrd tree leak * Fri Oct 17 2014 Japheth Cleaver 4.3.18-0.9 - hostlist / btree / posix leaks and null checks - type fixes to posix btree tdestroy patch - build on RHEL6.6 - patch tweaks for trunk builds * Wed Oct 08 2014 Japheth Cleaver 4.3.18-0.8 - add debug option to logfetch, xymongrep - add comma-separated XYMON(EX)NETWORK support to xymongrep - fix flipped logic in envexport.patch - fix memory leak with POSIX btrees enabled (glibc req.) * Thu Oct 02 2014 Japheth Cleaver 4.3.18-0.5 - ensure cgiwrap receives the proper SELinux context - try to re-attach if BFQ goes away when sending * Mon Sep 29 2014 Japheth Cleaver 4.3.18-0.2 - add new STRBUFSZ macro - add new copytobuffer() routine, safer strbuffergrow() - xymond_rrd: wait 10m before starting automatic/on-demand cache flushes - xymond_history: flush allevents file on idle - skip over "export " in environment files that are no longer processed via shell includes * Sun Sep 28 2014 Japheth Cleaver 4.3.18-0.1 - update to 4.3.18 (7491) - remove upstreamed patches - add rrddefinitions.d and client-local.d directories - on upgrade add appropriate apache config option for cgiwrap * Fri Sep 26 2014 Japheth Cleaver 4.3.18-0.0.7471.1 - update to 7471 - remove upstreamed patches - xymond_history: proper compilation options for pread(); add strings.h * Thu Sep 25 2014 Japheth Cleaver 4.3.18-0.0.7464.36 - xymond: add "ip=" filter to xymond (XMH_IP internally) - xymond: add "histsync" command to force resync through stchg channel (uses xymondboard-style filters to select affected tests) - xymond_rrd: CACHESZ increased to 64 (= ~1 hr cache with default RPM params) - xymonlaunch: log to stderr when a task reaches max number of failures - xymond_history: --epochtimestamps option preferred over $EPOCHHIST to enable - xymond_history: rewrite save_statusevents handler for POSIX compliance - xymond_history: various other performance improvements * Mon Sep 22 2014 Japheth Cleaver 4.3.18-0.0.7464.35 - xymonlaunch: reduce failure delay output to debug level - xymond/xymonproxy: leave IP:port command arguments as we found them - xymond_rrd: increase default CACHESZ from 12 to 23 - xymond_rrd: add --cachemultiplier option to decrease global flushing interval - xymond_rrd: properly wrap rrd_flushcached for rrdtool-1.4+ * Thu Sep 18 2014 Japheth Cleaver 4.3.18-0.0.7464.33.1 - don't use POSIX btrees under dietlibc (not supported) - reduce bfq verbosity when debug enabled - xymonproxy: improve error checking with all TCP connection errors - xymonproxy: don't dump the full combo message when debugging enabled - xymonproxy: add conn id when --log-details enabled - xymonproxy: separate initial and incremental buffer size tunables - xymonproxy: handle SIGPIPE * Tue Sep 16 2014 Japheth Cleaver 4.3.18-0.0.7464.31 - xymonlaunch: additional verbosity when starting and stopping changed tasks - xymonlaunch: fix FAILDELAY not working, and accept m/h/d - increase speed of channel posting * Mon Sep 15 2014 Japheth Cleaver 4.3.18-0.0.7464.30 - xymond: add --reload-interval option (default: 300s) - xymond_alert: reload hosts regularly to pick up XMH_RAW and other modifications for alert scripts - xymond_alert: add --reload-interval option (default: 300s) - xymond_alert: add --loadhostsfromxymond option - xymond_alert: exit immediately if xymondboard unavailable to prevent false - check SENDHUP and DELAY for tasks.cfg alterations - xymonproxy: additional error checking around connection issues; more debugging * Wed Sep 10 2014 Japheth Cleaver 4.3.18-0.0.7464.28 - add FAILDELAY option to xymonlaunch - use POSIX btree routines - xymonproxy: log error on EPIPE, but don't exit - fix wrong vmstat call on AIX (reported by Stef Coene) - xymond_rrd: do the right thing when rrdcached in use (inspired by Martin Sperl) - showgraph.cgi: respect rrdcached and try to flush any files seen * Wed Sep 03 2014 Japheth Cleaver 4.3.18-0.0.7464.27 - xymond_alert: fix mis-parsing of (EX)DISPLAYGROUP= entries - don't create rrd sockets unless caching and writing to disk - add random splay to proxy bfq retries to prevent flooding - add debugging * Thu Aug 28 2014 Japheth Cleaver 4.3.18-0.0.7464.25 - xymond: fix possible corrupted log record on droptest - xymond: separate scheduled tasks report with newlines - xymond_alert: send final recovery when dropping a host or service - xymoncmd: revert login shell patch - make shell only interactive - remove unneeded comparison in cronmin patch - more patch consolidation * Mon Aug 18 2014 Japheth Cleaver 4.3.18-0.0.7464.23 - patch cleanups and refactoring - ensure updated versions of included libs always present in SRPM - client-local: Requires main client package in Pre - xymond_rrd: bail out sooner if --bfq given and not yet ready - xymoncmd: respect the SHELL environment variable (if set) - xymoncmd: when no cmd given, print note and make resulting shell a login sh - xymond_capture: determine channel from environment if possible - xymond_filestore: no default XYMOND_CHANNELNAME - xymond: fix FTBFS on rh7/ancient gcc * Fri Aug 15 2014 Japheth Cleaver 4.3.18-0.0.7464.20 - xymonproxy: --extcombine and --no-extcombine opts available in --bfq mode - xymond_channel: fix completely broken safechannelexit patch - xymond_alert: on recovery set ACKCODE to "0" instead of empty string (restore previous behavior) - xymond_rrd: don't re-stat() or utimes() RRD files unless needed - xymond_rrd: move cacheflush and zombie wait() check out of critical loop - xymond_rrd: fix not re-executing external processor on SIGPIPE - xymond_rrd: ensure external processor stream is fully buffered (to force proc flush after each xymond message, set RRD_EXTPROC_DOFLUSH) - xymonnet: leave services db open for lookups * Mon Aug 11 2014 Japheth Cleaver 4.3.18-0.0.7464.18.1 - track # of bfq recovered (retried successfully) messages in xymonproxy status - xymonclient (linux only): add 'f' option to ps list (ASCII art forest) - xymond_client: skip initial spaces/ascii when PCRE matching process names * Mon Aug 11 2014 Japheth Cleaver 4.3.18-0.0.7464.18 - add parsing support for AAAA records in xymonnet (reported by Anthony Letchet) - xymon binary should expect a response to the 'proxyping' command - fix flipped logic on 'oldgcc' build conditional - fix sockets leaving garbage servers list on cleanup in xymonproxy - increase max sockets in xymonproxy to 4K, retry times from 4x10s to 5x12s * Sun Aug 10 2014 Japheth Cleaver 4.3.18-0.0.7464.16 - fix missing xymonclient.cfg.d on server package - fix off-by-one error in logfetch poscount patch - xymoncmd: try uname() syscall before forking uname command - xymonproxy: fix bufp clearing and nextconntime not being set in P_CLEANUP - xymonproxy: add 'proxyping' command - svcstatus.cgi: set INFOQUICKLOAD to prevent full hosts.cfg load on info pages * Sat Aug 09 2014 Japheth Cleaver 4.3.18-0.0.7464.15 - 4.3.18 branch now default - add xymonserver.cfg.d and xymonclient.cfg.d directories as config includes - exclude README and .rpmorig files from directory config scans - fix memory segfault in acknowledge.c (reported by Martin Lenko) - fix spurious warnings when xymond_filestore writing empty files - logfetch: increase max allowed buffer size from 100K to 10M - logfetch: (branch) de-hardcode position count - xymonproxy: retry posting to bfq when fails - handle cookies throughout as strings instead of numbers - reduce c-ares version requirement to 1.5.1 (SONAME.2) - EL5/6: use system c-ares-devel library instead of bundled one * Thu Jul 31 2014 Japheth Cleaver 4.3.18-0.0.7464.12.1 - use client-built binaries in xymon-client packages to remove unneeded shared library requirements (non-trunk) - remove unused pthread linkage * Wed Jul 30 2014 Japheth Cleaver 4.3.18-0.0.7464.11 - use more accurate cpu info from 'top' on Linux - add new xymon-static, xymon-devel, and xymon-libs packages - use build conditionals for a shared library * Tue Jul 29 2014 Japheth Cleaver 4.3.18-0.0.7464.9.2 - only include xymon-snmpcollect when snmp is enabled - improve error message when building without selinux-policy RPM * Thu Jul 24 2014 Japheth Cleaver 4.3.18-0.0.7464.9 - spec cleanup * Wed Jul 23 2014 Japheth Cleaver 4.3.18-0.0.7464.8 - actually close the channel in client_channel to allow clients to stick around for a bit (eg, flushing caches) w/o still being attached - xymond_alert: fix 64bit cookie buffer overflow - xymond: don't try to pass down drops for null hostname records * Mon Jul 21 2014 Japheth Cleaver 4.3.18-0.0.7464.6 - really don't build xymonping anymore - be a little more strict about checking return values - server RPM now explicitly lists libexec files to avoid bringing in xymon-tools utilities * Thu Jul 17 2014 Japheth Cleaver 4.3.18-0.0.7464.4 - add documentation for xymondboard filter patches - add xymond-xboard-v2.1.diff * Thu Jul 17 2014 Japheth Cleaver 4.3.18-0.0.7464.3 - update to 7464 (--uptime-status support) - add timestamp filters to xymondboard (lastchange,logtime,validtime,acktime,disabletime) - genericize the xymondboard msg filter to other include fields (ackmsg and dismsg) - fix the xymongen fix * Mon Jul 14 2014 Japheth Cleaver 4.3.18-0.0.7463.8.1 - check for corrupted lines when xymongen is downloading the board - spec: optional nanomsg build requires libnanomsg * Thu Jul 10 2014 Japheth Cleaver 4.3.18-0.0.7463.7 - add new xymon-tools RPM with standalone binaries generated at compile time - configure script cleanly exits if given unrecognized arguments (Ken Dreyer) - strfunc.c: check for memory allocation failures (Sean Clark) * Wed Jul 09 2014 Japheth Cleaver 4.3.18-0.0.7463.6 - ensure rpmbuild-specified compile options are passed in to GCC - add -Werror=format-security to meet future Fedora requirements - xymond: ensure buffer sizes are size_t instead of unsigned ints * Fri Jun 27 2014 Japheth Cleaver 4.3.18-0.0.7463.4 - XYMONNETWORK can now accept a list of networks (comma separated) - $XYMONEXNETWORKS -> $XYMONEXNETWORK to match above (rpm upgrade will handle) - max number of networks/excluded networks increased from 31 to 63 - note: xymongrep still not yet modified * Thu Jun 26 2014 Japheth Cleaver 4.3.18-0.0.7463.3 - fix small memory leak when dropping host tests - update httpd legacy patch to remove unneeded escaping - xymond_rrd/EL6: built with 1.4.8-13 but should remain ABI compatible * Tue Jun 24 2014 Japheth Cleaver 4.3.18-0.0.7463.2 - rebuilt on rhel7 (final) - add error check for bfq buffer size malloc fail - fix garbage modifiers left in the list - increase debugging around modifier calculations - xymonclient: only don't-exclude tmpfs, not devtmpfs * Fri Jun 20 2014 Japheth Cleaver 4.3.18-0.0.7463.1.75 - xymonlaunch: don't run crondate tasks more than once the same minute (reported by Andy Smith) - update sqlite to 3080500 - xymond_alert: send recovery messages for stale alerts (again?) - xymond_alert: separate modifiers from the base status message for clarity - xymonnet: don't shortcircuit "ldap://" tests by assuming the test address has the same IP of the host itself * Tue Jun 10 2014 Japheth Cleaver 4.3.18-0.0.7463.1.60 - xymonclient: don't exclude tmpfs partitions from disk space scanning - xymonclient: return number of installed processing units (cores) - increase default xymon command timeout from 15s to 50s - xymond: fix hostfilter bug * Fri May 30 2014 Japheth Cleaver 4.3.18-0.0.7463.1.5 - xymonnet: add httpclient(,only,svc) and dataonly= tests * Sun May 04 2014 Japheth Cleaver 4.3.18-0.0.7463.1 - logfetch: fix ignorecount/triggercount mismatch - logfetch: fix wrong bytesread variable with small bufsz * Mon Apr 14 2014 Japheth Cleaver 4.3.17-13.1 - update sqlite to 3080403 - fix errbuf not being printed in daemon status messages - add unconfined_execmem_t unix_dgram_socket sendto in SElinux for multigraphing * Thu Mar 27 2014 Japheth Cleaver 4.3.17-12 - fix building on ancient PCRE; convert new functions to macros - xymonclient: fix hostname/ostype overrides in sysconfig - xymonclient: fix 'ps' line for old procps and ostype on EL3 - update sqlite to 3080402 * Mon Mar 24 2014 Japheth Cleaver 4.3.17-11 - xymond_rrd: ensure templates are properly cached - xymonlaunch: small logging chances * Sun Mar 23 2014 Japheth Cleaver 4.3.17-10 - valgrind: pedantic buffer freeing in xymond_channel - xymond: don't unlink an unconfigured pid file * Sat Mar 22 2014 Japheth Cleaver 4.3.17-9 - xymond_rrd: when in --no-rrd mode don't try to create directories; send DS modifies before doing any file operations - fix some valgrind/compile warnings in 7461; resolve two leaks - add bundled() provides per Fedora guidelines for included sha2 lib from Olivier Gay - update Source URL for branch/trunk versions to actual SF tarball - on new installs, assume MACHINEDOTS set by xymoncmd environment * Fri Mar 21 2014 Japheth Cleaver 4.3.17-8 - update to branch 7461 - even more documentation for patches - xymond_filestore: add auto-reading of channel if type not specified - sendmsg: try to re-sent messages in more cases of connection failure - svcstatus: print human readable connection error messages - xymond_channel: don't try to close the channel over and over * Sat Mar 15 2014 Japheth Cleaver 4.3.17-7.1 - more documentation for patches - add XYMOND_CHANNELNAME env variable to xymond_channel's children * Thu Mar 13 2014 Japheth Cleaver 4.3.17-7 - update sqlite to 3080401 - update clienthome patch - add documentation to several patches - xymond_channel: decrease usec wait timer from 50 to 25 - add /hobbit -> /xymon apache line as patch * Tue Mar 11 2014 Japheth Cleaver 4.3.17-6.3 - update sqlite to 3080400 - add bundled() provides per Fedora guidelines for included libs and update License to include BSD-like (librmd, md5.c) - package a hosts.d breakout directory * Fri Mar 07 2014 Japheth Cleaver 4.3.17-6.2 - modify package build defaults for rhel7 (beta) (+systemcares, -dietlibc, -altshell) - explicitly require net-tools package (netstat, ifconfig, etc) since it's no longer pulled in by initscripts * Thu Mar 06 2014 Japheth Cleaver 4.3.17-6 - xymonlaunch: don't kill ourself while cleaning up - debug output speed optimizations - error/debug output now timestamped with microseconds * Mon Mar 03 2014 Japheth Cleaver 4.3.17-5 - fix filter sending duplicate messages - clean up xymond_sample debug output; fix log rotation on startup * Sun Mar 02 2014 Japheth Cleaver 4.3.17-4.5 - xymonlaunch: wait a few seconds before exiting when given TERM - xymond_channel: continue sending buffered messages to peers when given a TERM (though disconnecting from the channel asap) * Sun Mar 02 2014 Japheth Cleaver 4.3.17-4.4 - xymond_channel: abort when the semaphore set goes away on us - dietlibc: only replace msglen_t in dietlibc build - not regular - try to organize/recombine myriad patch files - more spec file cleanup * Sat Mar 01 2014 Japheth Cleaver 4.3.17-4.2 - xymond_channel: match special messages more quickly - xymond_channel: actually filter on the right persistent buffer - March is not April * Fri Feb 28 2014 Japheth Cleaver 4.3.17-3 - sprintf->snprintf in 64bitcookie patch - xymond_channel: int -> size_t conversion - xymond_channel: add --filterlater option (speed up semops at the expense of memory allocation/deallocation) - xymond_channel: reduce timeout in write attempts to channel reader - xymond_channel: keep a constant message buffer size - xymond_channel: add multilocal patch - man page / documentation added for certain patches - spec file cleanup * Mon Feb 24 2014 Japheth Cleaver 4.3.17-2.1 - fix wrong combo calculation in combo_addchar - increase compiled hard limit on xymonproxy sockets from 256 to 1024 - increase MAX_XYMON_INBUFSZ from 10MB to 16MB - XYMONPROXY_NOEXTCOMBINE environment variable, if set, causes msgs to be passed straight through when in --bfq mode * Sun Feb 23 2014 Japheth Cleaver 4.3.17-1 - update to release 4.3.17 - move XYMONHOME/server symlink upgrade logic to RPM %%posttrans - consolidate important entries in the CHANGES.terabithia file - minor fixes for building on ancient gcc (2.96) with ancient sed * Fri Feb 21 2014 Japheth Cleaver 4.3.17-0.0.7440.15 - don't expect a response when sending an actual schedule command - add one-way xymond checks for clientconfig and 'config hosts.cfg' commands - xymonproxy: use sendmessage_local when in bfq mode - xymonproxy: die if we get EPIPE writing to a socket - xymonproxy: log entire first line when logging - xymonproxy: bfq logic implemented for real * Fri Feb 21 2014 Japheth Cleaver 4.3.17-0.0.7440.10 - client-static: (rpmlint) copy man pages, don't symlink - xymon: (rpmlint) un-config-mark the /static/ directory. (Note: to save customizations, copy /static/ and point the web root to an appropriate location) - do not use altshell (if configured) in non-linux xymonclient-*.sh scripts - ensure facl/logreader logic runs on server rpm - check in xymond whether we're in a one-way environment before attempting to respond (based on patch from Franco Gasperino) * Wed Feb 19 2014 Japheth Cleaver 4.3.16-8 - updated to branch 7440 - change server root from /usr/share/xymon/server to /usr/share/xymon - removed some pre-2012 legacy upgrade code (mostly symlink moves) - update dietlibc build in EL5/6 to 0.33-0.1904.20120825 - warn when using --local mode and xymon-client-local not installed - fix compile warning about uninitialized variable in xymonproxy - fix xymond (stdout) logs not rotating when using LOGFILE in tasks.cfg instead of passing in a --log filename (thanks Franco Gasperino) * Thu Feb 13 2014 Japheth Cleaver 4.3.16-4 - gcc: fix some compiler warnings on EL4 * Thu Feb 13 2014 Japheth Cleaver 4.3.16-3 - updated to branch 7436 - upstreamed safexargs patch removed in branch builds - auto-disable SELinux/snmp before EL5 * Mon Feb 10 2014 Japheth Cleaver 4.3.16-2 - updated to branch 7430 - add xymon-client-local subpackage, including xymond_client and localclient.cfg, to allow the --local option in xymon-client - localclient.cfg itself removed from the xymon-client package - use $SHELL when passing to nohup in client * Mon Feb 10 2014 Japheth Cleaver 4.3.16-1.5 - updated to branch 7430 - Static CSS and GIF content marked config(noreplace) to preserve edits - dietlibc+facl enabled (by default) only RHEL6+/Fedora - update sqlite to 3080301 + only include in trunk builds - GIF docs moved to docdir, fix file typo - exclude patch debris from static web directories - remove upstreamed trunk patches - remove initscript munge-ing during Makefile - update installstaticwww patch - update c-ares patch for trunk - add raw msg= filter option * Sun Feb 09 2014 Japheth Cleaver 4.3.16-1.1 - fix systemcares logic on Fedora * Sun Feb 09 2014 Japheth Cleaver 4.3.16-1 - update to release 4.3.16 - dietlibc build (static client RPMs) fixed and re-enabled - client-static RPM no longer requires client-core * Fri Feb 07 2014 Japheth Cleaver 4.3.16-0.0.7391 - update sqlite to 3080300 - update branch - debugging code - spec cleanups * Mon Feb 03 2014 Japheth Cleaver 4.3.15-3 - bump package version - RPM Requires: fix cares-devel -> c-ares-devel - fix headermatch crash - always label /var/run/xymon/ for selinux even when actually /run/xymon/ * Sun Feb 02 2014 Japheth Cleaver 4.3.15-0.1 - update to 4.3.15 release * Mon Jan 27 2014 Japheth Cleaver 4.3.14-0.1 - update to 4.3.14 release (branch) - use system c-ares-devel library on F19 and newer (>1.10.0) * Tue Jan 21 2014 Japheth Cleaver 4.3.13-4 - update to trunk/branch 7361 * Mon Jan 20 2014 Japheth Cleaver 4.3.13-3 - update to trunk/branch 7358 * Fri Jan 17 2014 Japheth Cleaver 4.3.13-2 - add tmpfiles.d configs on systemd builds for /var/run/ - xymonproxy: add debug lines - xymonproxy: bfq experimental fixes * Mon Jan 13 2014 Japheth Cleaver 4.3.13-1.1 - rpmlint warning on client init script - fix incorrect _selinux_policy_version Require - client: client.d now marked as config(noreplace) - remove some legacy upgrade logic * Thu Jan 09 2014 Japheth Cleaver 4.3.13-1 - update to release 4.3.13 - rpmlint: remove .orig file from /docs/ - selinux: fix RPM macros for F20 - systemd: add 'preset' file so service aliases work - initscript: client now matches server script - add makefile xargs patch - remove upstreamed patches: xymon.rrd_pipe.patch xymon.4313-tlsv1.patch * Tue Dec 17 2013 Japheth Cleaver 4.3.13-0.7316.27.1 - eliminate one compiler warning in gcc 4.8 * Mon Dec 16 2013 Japheth Cleaver 4.3.13-0.7316.27 - xymonproxy.c: --bfq fixes - xymon.c: print warning when assuming localhost recipient - systemd: xymon.service -> xymonlaunch.service - systemd/sysv: configure xymonlaunch log file dest in /etc/sysconfig/xymonlaunch - sysv: use xymoncmd here too - rpmlint: re-ghost xymonpasswd file on new install - logreader group: if enabled, append supplementary group (don't replace) - less verbose hostinfo debugging * Tue Dec 10 2013 Japheth Cleaver 4.3.13-0.7316.25 - enable SENDHUP for xymond/xymonproxy in tasks.cfg for logrotation (F18+) - use apache 2.4-compatible snippets in 2.4 systems (F18+) - experimental --bfq option to xymonproxy - add docs for various patches: modify-valid, SENDHUP - bump sqlite to 3.8.2 - fix the 'stale' alert patch (maybe?) - add TLSv1 patch * Thu Dec 05 2013 Japheth Cleaver 4.3.13-0.7316.24 - add XYMONEXNETWORKS support to exclude NET: tags from xymonnet - xymond_rrd: don't die from SIGPIPE when an external processor goes away * Wed Nov 27 2013 Japheth Cleaver 4.3.13-0.7316.21.1 - really fix the systemd service unit file * Wed Nov 27 2013 Japheth Cleaver 4.3.13-0.7316.21 - xymonlaunch: log file now set in /etc/sysconfig/xymon* instead of the init script itself. SysV systems have default set in init.d, systemd systems have no default and will go to syslog. - support proper systemd install/upgrade scriptlets - fix some f19 compile warnings * Wed Nov 27 2013 Japheth Cleaver 4.3.13-0.7316.19.8 - xymond_alert: send "recovery" message out for stale alerts before dropping - tag error messages from xymonlaunch/xymond_channel in worker logs - reduce debug verbosity in hostinfo - include sample xymoncgimsg apache config snippet - include xymon.service file for systemd (F18+) - remove "ghost" from xymonpasswd file to ensure httpd works on install * Tue Nov 26 2013 Japheth Cleaver 4.3.13-0.7316.19.6 - update to trunk 7316 (image type) - fix to xymonrrd.c in 7316 preventing compile - fix multiple modifiers from xymond_rrd overwriting each other - increase STATUSMODE sleep to 4s * Thu Nov 21 2013 Japheth Cleaver 4.3.13-0.7314.19.5 - rebuild on RHEL 6.5 (rebased openssl pkg) * Wed Nov 20 2013 Japheth Cleaver 4.3.13-0.7314.19.4 - can specify number of subsequent status messages a modify state can override - accept large cookies on 64bit systems - xymond: log when closing connection due to timeout * Mon Nov 18 2013 Japheth Cleaver 4.3.13-0.7314.19.3 - xymond_alert: bail out if can't connect to xymond to compare checkpoint - xymonproxy: increase max number of servers to 5 - xymonnet: add debug output to dependency processing - add 1s sleep when STATUSMODE set to prevent submission race condition - restore some ancient RPM changelog history - update sqlite to 3080100 * Mon Oct 14 2013 Japheth Cleaver 4.3.13-0.7314.19 - log, but not a xymonnet err, when host lookup failures occur * Wed Oct 09 2013 Japheth Cleaver 4.3.13-0.7314.18 - change content-type of HTTP response to text/plain - prevent HTTP 500 errors when given blank submission - add feature docs to sysconfig/xymon-client - minor tuning in clientconfig retrieval * Wed Oct 02 2013 Japheth Cleaver 4.3.13-0.7314.17 - add HWPREDICT to default rrddefinitions.cfg - xymond_rrd: bail if rrddefinitions.cfg has no default stanza - client: when STATUSMODE enabled, fork individual xymon commands to each destination in $XYMSERVERS * Thu Sep 26 2013 Japheth Cleaver 4.3.13-0.7314.16 - modify internal timeout flag value to allow for timeouts of 0 - $XYMON_RETRIES environment variable used (default: 2) - client: $XYMCONFIGSRV support when STATUSMODE is on * Wed Sep 25 2013 Japheth Cleaver 4.3.13-0.7314.15 - new version format for 4.3.13 branch - add systemd support to .spec file (F18+) - fix wrong result in sendmsg for halfway open connections - NOTE: if using bfq submission, use /usr/libexec/xymon/xymon on server * Thu Sep 19 2013 Japheth Cleaver 4.3.12-14 - honor maxmsgspercombo even when using bfq - banner bug fixes in xymonnet * Wed Sep 18 2013 Japheth Cleaver 4.3.12-13.4.5 - ensure 64bit safe strbuffers now that we're using larger extcombos * Wed Sep 18 2013 Japheth Cleaver 4.3.12-13.4.3 - fix: check for allocation failure in dupstrbuffer - debug extcombo size flushing * Wed Sep 18 2013 Japheth Cleaver 4.3.12-13.3 - fix some compile warnings on F19 - init: we don't actually need xymonlaunch to make a pid file - add --bfq/--no-bfq support to xymond_client / xymond_rrd / xymonnet * Wed Sep 11 2013 Japheth Cleaver 4.3.12-13 - shm msg queue key can be 0 * Sat Sep 07 2013 Japheth Cleaver 4.3.12-12.4 - faster debug print short circuit - add ipcs info to client report - report errors in bfq id generation - bfq size/allocation debugging - xymond.c: increase bf_bufsz to a size_t here too * Wed Sep 04 2013 Japheth Cleaver 4.3.12-12.1 - update trunk to 7312 - use memmove instead of memcpy now that we're actually using large buffers in combo_add * Tue Sep 03 2013 Japheth Cleaver 4.3.12-12 - update trunk to 7310 - update sqlite to 3080002 * Sat Aug 31 2013 Japheth Cleaver 4.3.12-11.2 - 4.3.x: add missing modify and hostinfo to xymond_stats - distinguish message timeouts from bogus/unknown commands in xymond_stats - specify relevant channel id on certain xymond errors * Thu Aug 29 2013 Japheth Cleaver 4.3.12-11 - trunk: update sqlite ver to 3080001 * Wed Aug 28 2013 Japheth Cleaver 4.3.12-10.2 - add XYMONRUNDIR to environ.c - fix moarextcombo bug in rrd - trunk: bump included sqlite ver to 3080000 * Mon Aug 26 2013 Japheth Cleaver 4.3.12-10 - bump to 7306 - upstream bfq patches / split moarcombo for rrd * Sat Aug 24 2013 Japheth Cleaver 4.3.12-9 - bump to 7301 - remove 2 upstreamed patches - reduce default bfqchunk size to 50; make environment tuneable - don't include /etc/sysconfig/xymon-client in xymonserver.cfg * Tue Aug 20 2013 Japheth Cleaver 4.3.12-8.1 - use proper max_backfeedsz - reduce default tcpcheckinterval to 1s * Tue Aug 20 2013 Japheth Cleaver 4.3.12-8 - bump trunk/branch release number - fixes in clientparse / combo_addchar / tcpcheckinterval patches - query XYMONDTCPINTERVAL env variable for tcpcheckinterval - propagate errors from xymon back to xymonlaunch in logfetchupdate * Mon Aug 19 2013 Japheth Cleaver 4.3.12-7 - try to cope with malformed status/client messages more - re-add client sempahore proceed anyway patch - increase bf_bufsz to size_t (msglen_t fix) * Mon Aug 19 2013 Japheth Cleaver 4.3.12-6 - update trunk to 7295 - extend client "status" message syntax to include ostype/class - add STATUSMODE to xymonclient.sh and add logfetchupdate scripts - make location of modify override line display consistent * Sat Aug 17 2013 Japheth Cleaver 4.3.12-3.9.1 - fix do_rrd reporting * Fri Aug 16 2013 Japheth Cleaver 4.3.12-3.9 - update trunk to 7283 - use bfq in xymonnet's report column - use bfg and extcombo messages in do_rrd.c - respect XYMON_TIMEOUT across the board in sendmsg.c for reals - fix double-init of hostinfo in xymond_rrd.c * Wed Aug 14 2013 Japheth Cleaver 4.3.12-3.7 - update trunk to 7280 - update trunk combodata and clientconfig patches to match - don't use msglen_t in 4.3.13+, since it doesn't exist in dietlibc * Tue Aug 06 2013 Japheth Cleaver 4.3.12-3.5 - trunk/branch update to 7255 - fix "client " pseudo-status client messages creating fake test recs * Sun Aug 04 2013 Japheth Cleaver 4.3.12-3.1 - shorten semaphore alarms to 1s on both channels and workers - branch fixes to xymond_client combo calls * Wed Jul 31 2013 Japheth Cleaver 4.3.12-3 - trunk update to 7250 - branch rpm update to 4.3.13 (7250) - fix: dual log rotation when HUP given - xymond: don't attempt to continue if shm already taken - split xymonproxytune, xymondlogging into two patches - major .spec file work * Fri Jul 26 2013 Japheth Cleaver 4.3.12-2 - cleaned up RPM readme and changes files slightly - xymond_client.c: don't wait forever to flush combo when timeout not given - fix segfault in malformed client messages masq. as status messages - add clientconfig support to xymon.c * Fri Jul 26 2013 Japheth Cleaver 4.3.12-1 - properly count combodata messages - clientconfig command * Thu Jul 25 2013 Japheth Cleaver 4.3.12-0.3 - updated to version 4.3.12 - heavier debugging in loadhosts.c:hostinfo and xymond_client.c - sendmsg: combodata support - sendmsg: honor $XYMON_TIMEOUT if in environment - xymond: fix combodata patch - xymond_client: combine data messages together as "combodata" - remove the following upstreamed/mooted patches: - xymon.msgtimeout.patch - xymon.nokilllocchildren.patch - xymon.sco_sv.patch - xymon.loadhosts_vpage.patch - xymon.missingdropchns.patch - xymon.linux-ifconfig-stderr.patch - xymon.freebsd-clockstr.patch - xymon.psalign.patch - xymon.ipad.patch - xymon.lqueue.patch - xymon.rrdclearok.patch - xymon.contest_errors.patch - xymon.croninterval.patch - xymon.rrdnospace_take2.patch - xymon.sendmsgdbg.patch - xymongen-4311.diff - xymon_trunk.reportline.patch - xymon_trunk.eolchar.patch - xymon.snmp-compile-warns.patch - xymon.norrd.patch - xymon.shell.patch - xymon.generic_client.patch - xymon.cmdnl.patch - xymon.loadhosts-lgbuf.patch - xymon.includetabsok.patch - xymon.cmdhostname.patch - xymon.channelfilterenv.patch * Tue Jul 23 2013 Japheth Cleaver 4.3.11-12 - xymon.c: honor $XYMON_TIMEOUT if in environment and timeout not specified - even more debugging code in xymond_client - experimental combodata, hostsnap, senderstats commands - Fedora: re-enable hardened build * Sat Jul 20 2013 Japheth Cleaver 4.3.11-11 - run local client on server by including clientlaunch.cfg on new installs - split xymon.resetfails.patch into two patches - add DELAY (after NEEDS launched) and SENDHUP options to tasks.cfg syntax - add (existing) vmstat1-5 graphs into the trends page * Sat Jul 20 2013 Japheth Cleaver 4.3.11-10.4.5 - check for attempts to drop dirs up a path - xymond_client: add --flushtimeout option to delay combo msg sends - xymond_client: load hostinfo (if needed) before getting the next message - client/linux.c: more debug lines - weekly logrotate.conf snippet - remove getenv from xymonproxy which can segfault under high load when multithreaded and stack enforcement is on - disable hardened build (performance) * Wed Jul 17 2013 Japheth Cleaver 4.3.11-10.4.1 - actually apply the psalign patch - fix CSS to work with iPad hover tags - add --lqueue option to xymond - xymond_rrd: swap blue and clear logic; parse clear, ignore blue - xymond_rrd: load host config prior to connecting socket - Remove netstat pid patch (unprivileged users don't get useful info) * Mon Jul 08 2013 Japheth Cleaver 4.3.11-10.2 - Fix broken clock test in freebsd (reported by Eddie Stassen) - Fix some incorrect DoWs in the changelog - Fix gcc 4.8 and dietlibc warnings - Fix rcsid warning in xymon-snmpcollect.c - Fix warning in filtering patch - Move some stuff around in the .spec file - trunk: Forward port timefunc.null * Fri Jun 14 2013 Japheth Cleaver 4.3.11-10.1 - fix 5m -> 100s update in clientlaunch.cfg, which broke at some point * Tue Jun 11 2013 Japheth Cleaver 4.3.11-10 - fix generic client patch to not leave 0-byte file in src - send ifconfig stderr to /dev/null on linux (need to move stats to ip) - add vmstat -s section on Linux client - fix missing cast in epoch_hist patch - minor patch cleanup * Mon Jun 10 2013 Japheth Cleaver 4.3.11-9.1 - add /proc/meminfo section on Linux client - fix improper var init in msgtimeout.patch * Sat Jun 08 2013 Japheth Cleaver 4.3.11-9 - send drop/rename commands to clichg/user channels - add noprefer hosts.cfg directive * Tue May 28 2013 Japheth Cleaver 4.3.11-8.1 - add xymon.psalign.patch (orig by Christoph Schug, pointed out by Jeremy Laidman) * Thu May 23 2013 Japheth Cleaver 4.3.11-8 - update sqlite in trunk to 3.7.17 * Mon May 20 2013 Japheth Cleaver 4.3.11-7.1 - fix availabiity logs link in uptime reports when using epochhist * Sat May 18 2013 Japheth Cleaver 4.3.11-7 - backport xymon.downtimecolor.patch - update c-ares version to 1.10.0 (trunk and release) and deal with the CFLAGS/CPPFLAGS mess - add xymon.loaddatanull.patch - back out stachg histsync patch - restore localclient.cfg and xymongrep into client package * Thu May 09 2013 Japheth Cleaver 4.3.11-6 - don't flood xymond_history on restart unless a status is different - check for debug status before calling dbgprintf in a few more places - increase the length of time xymond will keep around "stale" client sub-messages to match the default purple expire time - add debug code in find_cookie - add missing newline in clientcountwarn patch - increase xymond starting and incremental buffer size from 128/32 to 256/256 * Mon May 06 2013 Japheth Cleaver 4.3.11-5.1 - really fix the vpage/vsubpage/vsubparent parsing * Fri May 03 2013 Japheth Cleaver 4.3.11-5 - backport memory size overflow on SCO OS with large amounts of ram - fix vertical page/parent/subparent path and title storage - refer to msgs test as "Log files" rather than "System logs" - fix xymond_channel filter flag not being set - add --delay option for xymond_channel between initial fork of child process and registering via IPC with xymond - restore xymoncfg to client rpms * Mon Apr 29 2013 Japheth Cleaver 4.3.11-4 - start xymond_channel worker process before registering with IPC - fix bug where running daemons in --locator mode could accidentally take down xymonlaunch - add --unknownclientosok option to xymond_client - add --msgtimeout option to xymond_channel - actually include the static www apache snippet change - init files now use xymonlaunch as the name for subsys locking - revert to file when the HOSTSCFG variable actually matches - background the final cache flush when xymond_rrd is closing out - don't complain about message sequence gaps when xymond_channel is known to be filtering messages before we get them * Mon Apr 22 2013 Japheth Cleaver 4.3.11-1 - ensure static www directory is set readable in apache snippet - fully support reading hist files regardless of EPOCHHIST - selinux fixes for fedora 18 - remove patches upstreamed in trunk 7194 - add xymongen-4311.diff * Sun Apr 21 2013 Japheth Cleaver 4.3.11-0.2 - update to 4.3.11 - remove various backported patches - fix dietlibc warning in build/test-endianness - spec file cleanups * Sat Apr 20 2013 Japheth Cleaver 4.3.10-9.4.1 - hide stderr in upgrade scriptlet - use upstream loadhosts-prefer-speedup.diff * Thu Apr 18 2013 Japheth Cleaver 4.3.10-9.4 - backport 5 fixes from 4.3.11 - tab whitespace accepted after include and directory lines in configs - xymoncmd checks and uses HOSTNAME if set before forking uname -n - fix some dietlibc warnings (mainly spurious fflushes) - add strncasecmp to functs checked for strings.h add in dietlibc - move checkpoint files to the proper location during upgrades - wrap epoch history filenames in EPOCHHIST var * Tue Apr 16 2013 Japheth Cleaver 4.3.10-9.3 - move checkpoint files to non-rundir storage (thanks Tom Diehl) - move client logfetch .status files to logfile storage - add pids to netstat output on linux clients - set PREFEREARLIER env var to ignore 'prefer' tags reading hosts.cfg - set HTTPRRDCOLNAME to force xymonnet to write http URLs with custom column names to rrd files under those names instead (use if you suspect you'll be changing URLs but want to keep the data sets the same) * Mon Apr 15 2013 Japheth Cleaver 4.3.10-9.2.4 - fix improper initscript 'status' exit code when xymonlaunch not running (thanks Scott Stone) - update sqlite in trunk to 3.7.16.2 - xymongen: ignore 'prefer' tag in hosts.cfg -- assume earlier lines are more preferred -- to prevent linear scans of host tree - increase status report ttl for xymond/xymonproxy from 6 to 11m * Sat Mar 23 2013 Japheth Cleaver 4.3.10-9.2.1 - strip trailing newlines from SERVEROSTYPE/CONFIGCLASS if not set - add timing code to loadhosts.c for debugging - xymongen: don't go yellow if runtime was longer than a non-existant interval (eg, via crondate) - don't make flap detection trigger a yellow color for the xymond test * Tue Feb 19 2013 Japheth Cleaver 4.3.10-9 - add generic client tester for files/logs/msgs monitoring * Thu Feb 14 2013 Japheth Cleaver 4.3.10-8.5 - rotate logs via xymonlaunch HUP - change logrotate from weekly to daily - fix the do_rrd.c fix - xymond: don't send @@logrotate on HUP * Fri Feb 01 2013 Japheth Cleaver 4.3.10-8 - updated fix for tree crash - fix segfault in do_rrd.c (reported by Nicolas LOYAU) - fix missing rundir definition in xymonclient.cfg - fix warnings in timefunc.c on F18 - pay attention to xymonlaunch log file env variable in xymond_sample - wait longer after starting a dependency before starting tasks that list them as 'needs' in tasks.cfg - xymonproxy line1 format now matches xymond - add 6m ttl for xymonproxy/xymond status tests - client init script now runs xymonlaunch from /usr/sbin - slightly more efficient shell/forking in lib/run.c - remove Provides: xymon-client from xymon, to prevent server-side being pulled in accidentally by client-requesting packages - don't fall back to loading from the local hosts.cfg if told to get it from xymond and xymond fails -- just quit - abort xymonnet if hostlist is empty * Tue Jan 29 2013 Japheth Cleaver 4.3.10-6.5.2 - fix off-by-1s error when performing checks for expired tests - fix typo in sendmsg.c (non-trunk) - xymond: more verbose logging - dbgprintf optimization * Mon Jan 28 2013 Japheth Cleaver 4.3.10-6.5 - xymond: if SysV memory already found, warn instead of dying - logprintf function (+timestamp to stdout) added to errprint.c - clarify that ghosts/multi-src reports are only of those within the last 10m - xymond_channel: pass HUP to children on receipt - xymond_channel: pass logfn to children from xymonlaunch * Fri Jan 25 2013 Japheth Cleaver 4.3.10-6.3 - null key fix in lib/tree.c - move symlnks for xymonlaunch and xymond to /usr/sbin/ - get default port for 'bb' in /etc/services also (non trunk) * Thu Jan 17 2013 Japheth Cleaver 4.3.10-6 - fix incorrect log time epoch conv shown in historical status pages - xymond: send cached copies of hosts.cfg until our next reload (should improve performance when using many procs loading configs over net simultaneously) - add standard line1 header for xymond/xymonnet/xymongen reports - add missing space back to http column name statuses - add --no-cookies and --no-save-cookies options to xymonnet - http tests that have a given column name for (e.g.) content tests now are named after that column at rrd time (instead of using the full URL). YOU WILL NEED TO RENAME YOUR RRD FILES BY HAND FOR ANY TEST USING THIS FEATURE AFTER UPGRADING TO KEEP/MERGE TCP HISTORY. * Fri Jan 11 2013 Japheth Cleaver 4.3.10-5 - revert defaultchk patch - add strfunc_null patch from Tom Schmidt * Fri Jan 11 2013 Japheth Cleaver 4.3.10-4 - add runtime opt var for xymonlaunch to /etc/sysconfig/xymon-client - really fix the silly segfault in defaultchk patch * Thu Jan 10 2013 Japheth Cleaver 4.3.10-3 - dietlibc builds create a parallel client-static RPM - /usr/bin/xymonlaunch symlink was not included in client RPMs - zero-pad xymon2.rrd data output (already in trunk) * Thu Jan 03 2013 Japheth Cleaver 4.3.10-2.1 - add --no-rrd option for xymond_rrd * Thu Jan 03 2013 Japheth Cleaver 4.3.10-2 - don't leave patch debris in the /docs/ directory - check default locations for checkpoint files (xymond/xymond_alert) * Wed Jan 02 2013 Japheth Cleaver 4.3.10-1.71 - daemons don't write pid files out on their own unless specified - set high timeout value when issuing a 'xymon crashed' alert to give xymonlaunch a chance to start xymond back up to receive it. - updated README.terabithia and CHANGES.terabithia * Mon Dec 31 2012 Japheth Cleaver 4.3.10-1.70 - xymonlaunch: handle more logging directly in default config - xymonlaunch: search more locations for default config - xymonlaunch: support PIDFILE lines in tasks.cfg - xymonlaunch: after 10m, no longer delay by 10m if a proc has exited non-zero > MAX_FAIL times since our launch - xymonnet: don't go yellow if runtime was longer than a non-existant interval (eg, via crondate) - spec: add ghost entry for /etc/snmphosts.cfg - fix: some compiler warnings in xymon-snmpcollect - apply alertcount and rootfs fixes from 4.3.11 - update non-trunk c-ares to 1.9.1 * Sun Dec 23 2012 Japheth Cleaver 4.3.10-1.5 - more verbose xymonnet logs when weird connection test errors occur - accept (and write out) epoch TIMEBUFs when selecting history logs - append protocols.d lookup to correct protocols file * Fri Nov 16 2012 Japheth Cleaver 4.3.10-1.1 - binaries were still reporting as 4.3.9 * Mon Aug 06 2012 Japheth Cleaver 4.3.10-1 - update to 4.3.10 release - removed eight upstreamed patches, updated rundir patch - note: trunk builds for EL4/EL5 are likely to be unstable due to sqlite error handling * Tue Jul 31 2012 Japheth Cleaver 4.3.9-4 - fix: gcc warning in xymond_filestore mkdir patch - fix: ifstat not working for F17 (ifstat patch for F17 from John Horne) - use /sbin/service in logrotate script and redirect output to null (thanks Mike Grozak) * Mon Jul 30 2012 Japheth Cleaver 4.3.9-3.1 - final EL5 SELinux fixes (hopefully!) * Mon Jul 30 2012 Japheth Cleaver 4.3.9-3 - use upstreamed version of showgraph null tmpdir patch - SEL: EL5 fix: use httpd_cache_t type for /var/cache/xymon/ - SEL: add var_lib_t to allowed fping output files type - SEL: fix tmp_t permission on /var/lib/xymon/tmp not being removed - EL5 x86_64 built on RHEL * Fri Jul 27 2012 Japheth Cleaver 4.3.9-2 - fix: don't segfault when tmpdir (rundir) is not accessible by showgraph.cgi - fix: allow compile trunk w/ ssl disabled - fix: blank XYMONSERVERHOSTNAME value on new server installs - fix: use list_dir_perms in SELinux for EL5 - fix: don't build EL4 with SELinux - roll back scope of lber-redux patch - add contest_oldopenssl, osslinc, notshellscript, and xymoncfg from 4.3.10 branch - require the httpd path rather than the package name (for 7.3) * Wed Jul 25 2012 Japheth Cleaver 4.3.9-1 - update to 4.3.9 - fix wrong client homedir set on new installs (thanks Colin Coe) - fix semanage not listed as a Require, leading to files with incorrect SELinux contexts if policyutils-python wasn't installed - don't pre-package client's $XYMONHOME/local directory as /usr/local/share/xymon-client (cf: RHBA-2012:0843-1, BZ#732799) - remove version >= 3 requirement for fping - add x509_name patch for building on ancient openssl - add lber-redux and usrlibs patches for building on el3 - fix pre scriptlet failing with empty if statement - extraordinarily old versions of sed can't in-place edit, and we're already using perl elsewhere, so just use perl... - remove upstreamed patches: - .xymsrvoops - .combostatus - now rpmlint error free! * Tue Jul 17 2012 Japheth Cleaver 4.3.8-0.56 - add xymon.combostatus.patch - upstreamed FPING xymonserver.cfg build patch - move usr-ldap patch from trunk to 4.3.x * Mon Jul 16 2012 Japheth Cleaver 4.3.8-0.5 - TEST update release version to 4.3.8, trunk to 7090 - don't chgrp /var/log/messages if --without logreader - rhel3 support: add --with facl build conditional - remove largemem patch (only affects new installs) - remove the following upstreamed patches: - .sha2 - .nl - .gcc296 - .dispinclude - .xymservers - .crondate - .rrdnospace - .closefh - .string - .hostsvcinfolinks - .badhttpnl - .rrd-sprintf - .rrdprocessortabs - .enableinode - .inode - .maxmsg - .clearok - .normstatlines - .refreshonerr - .usermsg - .adminconfig - .stderrcgi - .workerlocatorseq - .clientbuild (trunk) * Mon Jul 09 2012 Japheth Cleaver 4.3.7-26.85 - update trunk to 7018 * Thu Jun 21 2012 Japheth Cleaver 4.3.7-26.81 - add 'source' and '.' as aliases for 'include' in env config files for increased shell compatibility (systemd unit files) * Mon Jun 11 2012 Japheth Cleaver 4.3.7-26.1 - fix buffer overflows in rrd processing - patch updates for trunk - add 'rotate' option to client init script (thanks Mike Grozak) and more init script LSB compliance * Wed May 23 2012 Japheth Cleaver 4.3.7-25 - quiet install if xymonserver.cfg doesn't already exist - single source rpm now contains both trunk and non-trunk patch files - trunk: gcc 4.7 (F17) compatibility for DSO link changes - trunk: client now requires zlib and openssl for building - trunk: ensure configure.client build brings in zlib/ssl - trunk: dietlibc disabled (static build errors, see BZ 807050) - rpmlint: add bb and bbcmd man pages as symlinks * Mon May 14 2012 Japheth Cleaver 4.3.7-24.2 - print warnings from verify script properly - print to correct filehandle when CGI freopen() fails - pathname rewrite for FHS compat - fix: message seq numbers not incrementing when locator svc used - remove --no-cache from xymond_rrd * Sat May 12 2012 Japheth Cleaver 4.3.7-24 - selinux/rpmlint: loosen permissions on /var/cache/xymon - selinux/rpmlint: use rundir for rrdctl sockets - selinux: restrict httpd access to /var/lib/xymon/tmp - rpmlint: remove unneeded dangling /tmp symlinks - fix segfault when failing to open cgierror.err - unless XYMONCGILOGDIR set, send CGI errors to stderr - adminsenders allowed to download configs (xymond_client needs it) * Sat May 12 2012 Japheth Cleaver 4.3.7-23.8 - mark html man pages as documentation - remove duplicate specification of logdir in server package - create rundir in init scripts if missing * Mon May 07 2012 Japheth Cleaver 4.3.7-23 - CGI-generated files (/rep and /snap) moved to /var/cache/xymon for better SELinux control and fewer rpmlint warnings - /web templates moved to /etc/xymon/web for the same reason - hosts.cfg man page updated - 'store' tag in hosts.cfg converted to 'data' and 'datasvc' tags - cannot be applied to trunk * Sun May 06 2012 Japheth Cleaver 4.3.7-22 - reworked recipient patch - fix duplicate messages sent to localhost by xymond_client - web templates now marked as config so local changes don't get overwritten - server package no longer modifies permissions on /var/log/messages automatically. (client package is unchanged) * Wed May 02 2012 Japheth Cleaver 4.3.7-21.1.1 - strip '\r\n' from bad HTTP error messages instead of '\n' - update some patches for recent trunks - xymon can read a message from XYMMSG for use when Bernstein chaining * Mon Apr 30 2012 Japheth Cleaver 4.3.7-21 - facls aren't handled by logrotate properly thanks to BZ#666677, 683622, and 683626; use supplemental adm group for xymon client - restorecon was not being run on updates, leading to incorrect selinux lables on some files - update xymon.1 manpage for norecip patch - updated README.redhat - spec file cleanup * Fri Apr 27 2012 Japheth Cleaver 4.3.7-20 - remove xymonping in favor of fping3 - add fping to SELinux policy - use comprehensive staticwww patch - no pthreads for client with dietlibc - missing description for client-orca package * Fri Apr 27 2012 Japheth Cleaver 4.3.7-19 - fix missing user channel stats to xymond report - fix 'notes' messages mishandled in xymond_filestore - fix 'trends' svc refresh loop when using locator service - fix rpmlint/selinux: move apache-writable critical.cfg to xymonvar - tmpfs: move 'notes' and periodic html reports from www to xymonvar - tmpfs: recreate missing subdirs in www and xymonvar - tmpfs: specify location of 'help' for xymongen - add autorefresh to html error pages - add verifyscript to check xymon facl/read privs on /var/log/messages * Wed Apr 25 2012 Japheth Cleaver 4.3.7-18 - compile with -pthread (instead of D_REENTRANT) - trunk: require fping >= 3.0 and remove tarballed version - trunk: annotate patch sources - remove public domain xymon-rclient scripts - move ocraxymon to optional sub-package * Fri Apr 20 2012 Japheth Cleaver 4.3.7-17.3 - correct xymonlaunch.pid location on server - clear client reports (eg, when no defined procs tests) should be 'ok' - files/msgs test status lines made like others * Thu Apr 19 2012 Japheth Cleaver 4.3.7-17.1 - remove lsb from Requires - really fix client SELinux policy * Wed Apr 18 2012 Japheth Cleaver 4.3.7-16 - patch filename cleanup - respect all vendor/rpm cflags - all config files marked noreplace - dietlibc client binary building now works - server-side client can run when xymond is off in tasks * Mon Apr 09 2012 Japheth Cleaver 4.3.7-15 - on new server installs, configure client for reporting to localhost - include selinux policy files for client and server - add selinux context to histlogs directory - fix crash with blank storehttpdata col name - remove sgid logfetch in favor of facls * Thu Apr 05 2012 Japheth Cleaver 4.3.7-14 - add storehttpdata patch to allow http test data to be saved - tweak vmstat launch line in client to pipe commands to sh - merge some spec formating changes from trunk - add selinux policy from Viliam Pucik - use facls for syslog permissions instead of a sgid logfetch * Fri Feb 24 2012 Japheth Cleaver 4.3.7-13 - add httpheaders patch * Wed Jan 25 2012 Japheth Cleaver 4.3.7-12.3 - add xymond-download-closefilehandle.patch - fix crondate parsing - fix rrd spacing - cleaner vmstat invocation - update patch references * Wed Jan 18 2012 Japheth Cleaver 4.3.7-11.1 - more missing newlines in errprintf statements caught - move automated reports from cron to xymonlaunch control - remove Requires for crontabs - inode 'section' client patched into client script - sar 'section' client removed - all configs now marked noreplace - note: crondate parsing appears broken * Sat Jan 14 2012 Japheth Cleaver 4.3.7-9 - include task file for xymon-rclient * Fri Jan 13 2012 Japheth Cleaver 4.3.7-8 - patch for two more compile errors on gcc-2.96-113 (RedHat 7.3) - assume recipients are in the env if not declared on command line - keep all xymonclient-*.sh scripts on server - package xymon-rclient on server * Thu Jan 12 2012 Japheth Cleaver 4.3.7-7.1 - remove unusued localclient.cfg from --local server invocations - xymongen was not following dispinclude lines properly - xymond wasn't following net/disp includes - disable rrd caching by default -- still not working - enable inode section checking on linux * Mon Jan 09 2012 Japheth Cleaver 4.3.7-6.2 - ensure client symlinks are handled properly during upgrades - add breakout directories for alerts.d and analysis.d - because the /var/run/ directory is removed tasks.cfg is NOT marked config(noreplace) on servers during this upgrade - remove inode and mounts patches and replace with section scripts - sar script included as client extra * Fri Jan 06 2012 Japheth Cleaver 4.3.7-5 - logrotate script was looking at an incorrect directory - replace perl with %%{__perl} -p in scriptlets - fix lots of rpmlint warnings - move static HTML (gifs, help, menu) out of /var/www/xymon and compress html-ized man pages - add Default-Start/Stop to init scripts - use tmpdir for runtime info (F15 compliance for tmpfs /var/run/) * Wed Jan 04 2012 Japheth Cleaver 4.3.7-4 - build requires net-snmp-devel for experimental snmp support - client now installs to /usr/share/xymon-client - remove all clientupdate and orcaxymon references - clients don't need xymoncfg installed - remove unusued client tmp directory - add 'sections' plugin directory for packaged client scripts * Tue Jan 03 2012 Japheth Cleaver 4.3.7-3 - use build conditionals for extra clients, dietlibc, and alt shells - add /usr/local/share/xymon-client for local pre-fab client scripts - modify CGI scripts when using alternative shell (eg, /bin/dash) - rename dfinodes report (from patch) to match what xymond_rrd expects - fix dietlibc x86_64 builds with updated sha2 libs - include strings.h when needed - add upstart flags to init scripts - remove legacy runclient.sh and xymon.sh startup scripts - remove unused xymonclient-$os scripts * Thu Dec 29 2011 Japheth Cleaver 4.3.7-1 - patch xymond_rrd to delimit stdout streams with tabs - create combos.d and protocols.d directories for server - add PIE compilation for security - add rrd_rec patch for RH7's gcc - update license to GPLv2 - clean up misc rpmlint warnings * Tue Dec 13 2011 Japheth Cleaver 4.3.7-0 - upgrade to 4.3.7 * Mon Nov 07 2011 Japheth Cleaver 4.3.5-2 - 2 patches were failing due to fuzz being stricter in RHEL6 * Tue Oct 11 2011 Japheth Cleaver 4.3.5-1 - upgrade to 4.3.5 - bug: xymonrun left trailing DIR in replacement * Wed Aug 03 2011 Japheth Cleaver 4.3.4-0 - upgrade to 4.3.4 - remove minor rrd patch until can be re-tested on old rh7.3 box * Sun May 08 2011 Japheth Cleaver 4.3.3-0 - upgrade to 4.3.3 * Thu Apr 14 2011 Japheth Cleaver 4.3.2-0 - upgrade to 4.3.2 * Thu Mar 24 2011 Japheth Cleaver 4.3.0-0.959 - add pre-upgrade script to convert client sysconfig to new variable names * Wed Mar 23 2011 Japheth Cleaver 4.3.0-0.958 - remove "-l" in second useradd call (oops) - clean up several patches that were succeeding due to fuzziness but were failing on fedora 14 - add useLogReaderGrp flag in .spec - add /usr/bin/xymon{,cmd} symlinks in client package - remove gcc-c++ BuildRequires; seems to no longer be needed * Fri Mar 18 2011 Japheth Cleaver 4.3.0-0.956 - remove "-l" in useradd call (allow legacy rh builds) - alwaysXYMONSERVERS: don't place localhost into xymonclient.cfg (oops) * Thu Mar 17 2011 Japheth Cleaver 4.3.0-0.955 - update to 4.3.0 release - several init script typo fixes - remove sar and yum check scripts (to be packaged separately); also remove Requires: perl - add ghost /etc/xymon/xymon{passwd,groups} files - replace localhost entries in default hosts.cfg with hostname * Mon Feb 14 2011 Japheth Cleaver 4.3.0-RC1-0.900 - massive spec file cleanup - update to 4.3.0-RC1, with most files and variables removing references to 'hobbit' anywhere - remove patches integrated upstream - replacement init scripts now parsed by Makefile with variables - add upstream xymonreports.sh to cron; Requires: crontabs, logrotate - /etc/sysconfig/xymon on server is now a ghost config - rename /etc/xymon-client/launch.d/ to client.d * Fri Jul 9 2010 Japheth Cleaver 4.3.0_beta2-0.6 - slight spec file clean up - hobbitgraph.cfg now broken out into a directory (taken from Mandrake's RPM) - user creation in scriptlets done per Fedora standards * Tue Mar 16 2010 Japheth Cleaver 4.3.0_beta2-0.5.4 - add inodes check to hobbitclient-linux.sh * Tue Sep 01 2009 Japheth Cleaver 4.3.0_beta2-0.5.3 - add perl to Requires due to use in hobbitclient-sar - bugfixes in sample yum check-update script * Mon Aug 24 2009 Japheth Cleaver 4.3.0_beta2-0.5.2 - fix sadc version determiniation for alternate arguments - add hobbitd_rrd.rec.patch for RH7 * Fri Jul 31 2009 Japheth Cleaver 4.3.0_beta2-0.5.1 - apply bbcombotest patch - re-add (unused) clientupdate man page to client-passive rpm - bbcmd: hush when using default environment file unless in debug mode - client: submit data from /proc/mounts along with the mount command's version - bb: --both switch to append any STDIN after the msg on the command line - add sysstat checks if available (in 1m intervals) - remove sleep in hobbitclient.sh for vmstat (and sar) calls - initscripts clean up both temp vmstat and sadc data files * Fri Jul 17 2009 Japheth Cleaver 4.3.0_beta2-0.4.1 - disable hobbitd_rrd caching - data loss in high channel loads - remove superfluous "exit" in hobbitclient-sh to make easier to patch - add xymon.do_ncv.offbyone.patch - add hobbitgraph-ff3.5.zoom.patch * Wed Jul 08 2009 Japheth Cleaver 4.3.0_beta2-0.4 - add client-passive package w/o user or service files - minor spec file cleanup - bug in hobbit -> xymon httpd.conf rewrite rule * Fri Jun 12 2009 Japheth Cleaver 4.3.0_beta2-0.3 - fix perms on both server AND client logfetch tool packages - split clientlaunch.cfg into /etc/xymon-client/launch.d/ on clients - move pidfile for msgcache daemon on client to /var/run where it belongs - improved README.redhat doc * Fri Jun 12 2009 Japheth Cleaver 4.3.0_beta2-0.2.3 - back out dependency patch pending further review, rename hobbitd to _hobbitd inside launch.d/ to work around - add hobbitlaunch_newline patch for the above error condition - leave BBTMP in place throughout, since we now differentiate between client and server at the environment variable level - allow other users to execute logfetch tool, for remote execution * Thu Jun 11 2009 Japheth Cleaver 4.3.0_beta2-0.2.1 - bug: /var/lib/xymon/tmp (for the server) was not apache-writable; hobbitgraph.sh was exiting immediately - include sample sysconfig files on server as well - don't require dependencies in hobbitlaunch.cfg to be in any specific order * Thu May 28 2009 Japheth Cleaver 4.3.0_beta2-0.2 - add xymonClientRoot to client-core to prevent bbcmd errors * Mon Apr 27 2009 Japheth Cleaver 4.3.0_beta2-0.1 - update to beta2, remove upstreamed patches - insert new server variable for pid location: BBRUNDIR * Mon Apr 20 2009 Japheth Cleaver 4.3.0_beta1-0.97.1 - add xymon.hobbitd_buflen patch * Fri Apr 17 2009 Japheth Cleaver 4.3.0_beta1-0.97 - remove sar files (will create separate extensions package) - bb/bbcmd broken off into a client-core package for non-daemon installs * Thu Apr 9 2009 Japheth Cleaver 4.3.0_beta1-0.965 - ensure load from client-runtime.cfg file in hobbitserver.cfg - reduce sadc report frequency from 30s to 2m * Fri Mar 27 2009 Japheth Cleaver 4.3.0_beta1-0.964 - bugfixes in xymon-sadc.sh - FIXME: double-check using right /tmp directories between sadc scripts and hobbitclient-linux reader * Fri Mar 27 2009 Japheth Cleaver 4.3.0_beta1-0.963 - increase default MAXMSG_* to at least 512K - add xymon-sadc.sh and xymon-sardata.sh for better sar integration on clients - server-side script to take data reports and make status reports coming soon - data module enabled by default on server (until rrd integration done) * Thu Mar 26 2009 Japheth Cleaver 4.3.0_beta1-0.962 - add bb-sar script to client (and client on server); Requires: sysstat - ensure HOBBITCLIENTHOME is defined in hobbitclient.cfg so that bbcmd has a valid environment on clients even when not being run by an init script - redirect /hobbit in apache config instead of just /hobbit/ - if using xymon, add mod_rewrites for the older "hobbit" locations * Wed Mar 25 2009 Japheth Cleaver 4.3.0_beta1-0.96 - bbcmd looks in both the server and client configs for its default environment instead of just the server - the client running on the server now loads /etc/sysconfig/xymon-client like the standalone client does (so we can report our local status to an additional xymon server besides ourself) - touch an empty hobbit-holidays.cfg file - logfetch is now chmod 2700 (sgid) with a configurable group for reading /var/log/messages (normally the 'daemon' group) * Tue Mar 24 2009 Japheth Cleaver 4.3.0_beta1-0.95 - switch client's tmpdir to /dev/shm to ensure it can continue to run even when /tmp and /var/tmp are full. - move out unused runclient.sh and hobbit.sh scripts and replace with symlinks to the init scripts - convert hobbitlaunch's config to seperate files in /etc/xymon/launch.d - hobbitlaunch patch: ignore .rpm files - hobbitlaunch patch: don't segfault on empty configs * Thu Mar 05 2009 Japheth Cleaver 4.3.0_beta1-0.92 - replace BBSERVERLOGS, BBVAR, BBTMP in server hobbitlaunch.cfg * Wed Mar 04 2009 Japheth Cleaver 4.3.0_beta1-0.91 - add four patches from hobbitmon list - add lsbrelease.patch and Requires: lsb - add README.redhat describing package changes - per Fedora guidelines, no longer delete user/group on uninstall - chmod perms on /var/log/messages to allow 'daemon' group to read - client: launch pid now stored in /var/run/xymon/hobbitlaunch.pid - server: tmpdir moved from /var/lib/xymon/tmp to /var/tmp/xymon - server: web templates moved from /etc/xymon/web to /usr/share/xymon/web * Tue Mar 03 2009 Japheth Cleaver 4.3.0_beta1-0.6 - update package name, service name, and user/groups created from hobbit to xymon - rewrite large portions of spec file for clarity - make alternate shell configurable in the package - tighten a few permissions throughout - clean up vmstat files lying around upon service stop * Wed Nov 19 2008 Japheth Cleaver 4.2.0-14 - Add BuildRequires: gcc-c++ * Mon Aug 04 2008 Japheth Cleaver 4.2.0-13 - fix integer bug in relver determiniation in init scripts * Thu Jun 05 2008 Japheth Cleaver 4.2.0-11 - make sure we exclude scripts run during install from our sh -> ash search * Wed Mar 05 2008 Japheth Cleaver 4.2.0-10 - rebuild * Thu Oct 12 2006 Japheth Cleaver 4.2.0-9 - print summaries on bb2 page * Fri Oct 6 2006 Japheth Cleaver 4.2.0-8 - update to use most recent all-in-one patch - replace all occurances of dig in bb-hosts to dns - cleaner killing of vmstat and other processes hanging around after initscript: stop - add Obsoletes for big brother * Wed Oct 4 2006 Japheth Cleaver 4.2.0-7 - update to use most recent all-in-one patch - use ash in more places, if package is compiled to use it - better error given if reload attempted when server is not running * Mon Oct 2 2006 Japheth Cleaver 4.2.0-6 - $PATH in initscripts now set by init.d/functions, with libexec added * Thu Sep 28 2006 Japheth Cleaver 4.2.0-5 - additional released patches from distribution - minor package cleanup * Mon Aug 21 2006 Japheth Cleaver 4.2.0-4 - lots of patches from distribution - initscript: runtimefile was not being created on cond restart * Thu Aug 10 2006 Japheth Cleaver 4.2.0-1 - updated to release version * Fri Aug 04 2006 Japheth Cleaver 4.2-0.99_08041 - update to latest allinone patch - minor cleanups * Tue Jul 25 2006 Japheth Cleaver 4.2-0.97-RC-20060712 - bugfix on cgi-secure/hobbit-enadis.sh - modify description of main package * Tue Jul 25 2006 Japheth Cleaver 4.2-0.97-RC-20060712 - restore /var/www/hobbit/notes - initscript: better compatibility for RH9, restore differing behavior for multiple HOBBITSERVERS in client-runtime.cfg, erase pids and client-runtime * Tue Jul 25 2006 Japheth Cleaver 4.2-0.95-RC-20060712 - initscript: check for FC5+ and use newer options to killproc and status only when available - initscript: add client-runtime.cfg generation in hobbit server script as well - move ext directories from libexec to /etc/hobbit{-client}/ext - force remove of /usr/share/hobbit/client/ext dir if it exists - use ash only per a define in package file - bugfix: --no-pin quote fix in hobbit/hobbitcgi.cfg - patch: "ps" display parsing: see http://www.hswn.dk/hobbiton/2006/07/msg00397.html * Mon Jul 24 2006 Japheth Cleaver 4.2-0.93-RC-20060712 - add symlinks to bb and bbcmd to hobbit-client package as well - move ext scripts into /usr/libexecdir/hobbit{-client} with other scripts, add symlink - Require /bin/ash instead of ash - substitute hostname for localhost in /etc/hobbit/hobbitserver.cfg on install * Mon Jul 24 2006 Japheth Cleaver 4.2-0.8.5-RC-20060712 - update to latest allinone patch - hardcode most paths to their FHS values at prep/build time * Thu Jul 20 2006 Japheth Cleaver 4.2-0.8.2-RC-20060712 - update to latest allinone patch - use new fedora-specific initscripts for hobbit and hobbit-client - make a few variables in hobbitclient.cfg more direct (remove references to BBHOME) - move all pidfiles to /var/run/hobbit - add proper man pages to hobbit-client package * Wed Jul 19 2006 Japheth Cleaver 4.2-0.8.1-RC-20060712 - update to latest allinone patch - fix perms on logfetch in hobbit-client * Tue Jul 18 2006 Japheth Cleaver 4.2-0.7.1-RC-20060712 - update to RC-20060712 + allinone - add httpd reload to Post scripts - remove fping from Requires * Tue Jun 27 2006 Japheth Cleaver 4.2-0.4-beta-20060605 - add allinone patch * Mon Jun 19 2006 Japheth Cleaver 4.2-0.3-beta-20060605 - update to beta-20060605 - add httpd to Requires(pre) for server * Fri Apr 28 2006 Japheth Cleaver 4.2-0.2-alfa-20060423 - move binaries into libexec for both server and client - move hobbit-client config files into /etc/hobbit-client - delete hobbit user in Postun * Fri Apr 28 2006 Japheth Cleaver 4.2-0.1-alfa-20060423 - typos in pre/preun scripts - fix initscripts to point to /etc/sysconfig and /usr/share/hobbit * Thu Apr 27 2006 Japheth Cleaver 4.2-0-alfa-20060423 - new spec file based on one included in package