mirror of https://github.com/sipwise/heartbeat.git
Once we have a fully working package (needs lots of testing right now) we might want to integrate full sources, but for now this is the relevant stuff to build the heartbeat-2_2.1.3-6lenny4~bpo60+1 Debian package for Debian/squeeze, using the sources retrieved via dget http://ftp.de.debian.org/debian/pool/main/h/heartbeat/heartbeat_2.1.3-6lenny4.dsc From: Michael Prokop <mprokop@sipwise.com>remotes/svn/trunk
commit
2625e302a0
@ -0,0 +1,43 @@
|
||||
#
|
||||
# linux-ha: Linux-HA heartbeat code
|
||||
#
|
||||
# Copyright (C) 2001 Michael Moerz
|
||||
# This instance created by Horms
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
EXTRA_DIST = apply changelog compat control copyright \
|
||||
dpkg-checkbuild rules \
|
||||
heartbeat.dirs heartbeat.files \
|
||||
heartbeat.postinst heartbeat.postrm \
|
||||
heartbeat.preinst \
|
||||
heartbeat-dev.dirs heartbeat-dev.files \
|
||||
heartbeat-gui.dirs heartbeat-gui.files \
|
||||
heartbeat-2.prerm \
|
||||
ldirectord.files ldirectord.postinst \
|
||||
ldirectord.postrm \
|
||||
patches/ipv6-check.patch \
|
||||
patches/init-remote_fs.patch \
|
||||
patches/init-openhpid.patch \
|
||||
patches/init-ntp.patch \
|
||||
patches/series/2.1.3-1 \
|
||||
patches/series/2.1.3-2
|
||||
|
||||
clean-local:
|
||||
rm -f *.substvars *.debhelper files
|
||||
rm -r -f heartbeat heartbeat-dev ldirectord \
|
||||
libpils0 libpils-dev libstonith0 libstonith-dev stonith tmp
|
||||
@ -0,0 +1,529 @@
|
||||
# Makefile.in generated by automake 1.10 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
subdir = debian
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||
$(top_srcdir)/configure.in
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||
CONFIG_HEADER = $(top_builddir)/include/config.h \
|
||||
$(top_builddir)/include/hb_config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
ALIGN = @ALIGN@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CIMOM = @CIMOM@
|
||||
CMPI_HEADER_PATH = @CMPI_HEADER_PATH@
|
||||
CMPI_PROVIDER_DIR = @CMPI_PROVIDER_DIR@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CRM_DIR = @CRM_DIR@
|
||||
CRM_ENABLED = @CRM_ENABLED@
|
||||
CRYPTOLIB = @CRYPTOLIB@
|
||||
CURSESLIBS = @CURSESLIBS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DISABLE_TIMES_KLUDGE = @DISABLE_TIMES_KLUDGE@
|
||||
DISTDIR = @DISTDIR@
|
||||
DISTRO_STYLE_RPMS = @DISTRO_STYLE_RPMS@
|
||||
DLOPEN_FORCE_FLAGS = @DLOPEN_FORCE_FLAGS@
|
||||
ECHO = @ECHO@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_CMD = @ECHO_CMD@
|
||||
ECHO_E = @ECHO_E@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
F77 = @F77@
|
||||
FFLAGS = @FFLAGS@
|
||||
GETENT = @GETENT@
|
||||
GLIBHEAD = @GLIBHEAD@
|
||||
GLIBLIB = @GLIBLIB@
|
||||
GNUTLSHEAD = @GNUTLSHEAD@
|
||||
GNUTLSLIBS = @GNUTLSLIBS@
|
||||
GREP = @GREP@
|
||||
GZIP_PROG = @GZIP_PROG@
|
||||
HAVE_DECL_GETOPT = @HAVE_DECL_GETOPT@
|
||||
HAVE_STRLCPY = @HAVE_STRLCPY@
|
||||
HA_APIGID = @HA_APIGID@
|
||||
HA_APIGROUP = @HA_APIGROUP@
|
||||
HA_CCMUID = @HA_CCMUID@
|
||||
HA_CCMUSER = @HA_CCMUSER@
|
||||
HA_COREDIR = @HA_COREDIR@
|
||||
HA_DATADIR = @HA_DATADIR@
|
||||
HA_HAVE_ALPHASORT = @HA_HAVE_ALPHASORT@
|
||||
HA_HAVE_DAEMON = @HA_HAVE_DAEMON@
|
||||
HA_HAVE_INET_PTON = @HA_HAVE_INET_PTON@
|
||||
HA_HAVE_SCANDIR = @HA_HAVE_SCANDIR@
|
||||
HA_HAVE_SETENV = @HA_HAVE_SETENV@
|
||||
HA_HAVE_STRERROR = @HA_HAVE_STRERROR@
|
||||
HA_HAVE_STRNDUP = @HA_HAVE_STRNDUP@
|
||||
HA_HAVE_STRNLEN = @HA_HAVE_STRNLEN@
|
||||
HA_HAVE_UNSETENV = @HA_HAVE_UNSETENV@
|
||||
HA_HAVE_UUID_PARSE = @HA_HAVE_UUID_PARSE@
|
||||
HA_HBCONF_DIR = @HA_HBCONF_DIR@
|
||||
HA_LIBDIR = @HA_LIBDIR@
|
||||
HA_LIBHBDIR = @HA_LIBHBDIR@
|
||||
HA_LOGDAEMON_IPC = @HA_LOGDAEMON_IPC@
|
||||
HA_NOARCHDATAHBDIR = @HA_NOARCHDATAHBDIR@
|
||||
HA_PLUGIN_DIR = @HA_PLUGIN_DIR@
|
||||
HA_RC_DIR = @HA_RC_DIR@
|
||||
HA_URLBASE = @HA_URLBASE@
|
||||
HA_VARLIBDIR = @HA_VARLIBDIR@
|
||||
HA_VARLIBHBDIR = @HA_VARLIBHBDIR@
|
||||
HA_VARLOCKDIR = @HA_VARLOCKDIR@
|
||||
HA_VARLOGDIR = @HA_VARLOGDIR@
|
||||
HA_VARRUNDIR = @HA_VARRUNDIR@
|
||||
HA_VARRUNHBDIR = @HA_VARRUNHBDIR@
|
||||
HA_VARRUNHBRSCDIR = @HA_VARRUNHBRSCDIR@
|
||||
HB_INITSTARTPRI = @HB_INITSTARTPRI@
|
||||
HB_INITSTOPPRI = @HB_INITSTOPPRI@
|
||||
HB_PKG = @HB_PKG@
|
||||
HB_RA_DIR = @HB_RA_DIR@
|
||||
HG = @HG@
|
||||
HTML2TXT = @HTML2TXT@
|
||||
IFCONFIG = @IFCONFIG@
|
||||
IFCONFIG_A_OPT = @IFCONFIG_A_OPT@
|
||||
INCLTDL = @INCLTDL@
|
||||
INITDIR = @INITDIR@
|
||||
INIT_EXT = @INIT_EXT@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
IP2UTIL = @IP2UTIL@
|
||||
IPCSOCKET_C = @IPCSOCKET_C@
|
||||
IPCSOCKET_LO = @IPCSOCKET_LO@
|
||||
JAVA_HOME = @JAVA_HOME@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LEX = @LEX@
|
||||
LEXLIB = @LEXLIB@
|
||||
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
|
||||
LIBADD_DL = @LIBADD_DL@
|
||||
LIBADD_INTL = @LIBADD_INTL@
|
||||
LIBGNUTLS_CONFIG = @LIBGNUTLS_CONFIG@
|
||||
LIBLTDL = @LIBLTDL@
|
||||
LIBLTDL_DIR = @LIBLTDL_DIR@
|
||||
LIBNETCONFIG = @LIBNETCONFIG@
|
||||
LIBNETDEFINES = @LIBNETDEFINES@
|
||||
LIBNETLIBS = @LIBNETLIBS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBRT = @LIBRT@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LN_S = @LN_S@
|
||||
LOCALE = @LOCALE@
|
||||
LRM_ENABLED = @LRM_ENABLED@
|
||||
LRM_PLUGIN_DIR = @LRM_PLUGIN_DIR@
|
||||
LSB_RA_DIR = @LSB_RA_DIR@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAILCMD = @MAILCMD@
|
||||
MAKE = @MAKE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MD5 = @MD5@
|
||||
MIBS_DIR = @MIBS_DIR@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MKTEMP = @MKTEMP@
|
||||
MSGFMT = @MSGFMT@
|
||||
MSGHDR_TYPE = @MSGHDR_TYPE@
|
||||
NETSTAT = @NETSTAT@
|
||||
NON_FATAL_CFLAGS = @NON_FATAL_CFLAGS@
|
||||
OBJEXT = @OBJEXT@
|
||||
OCF_RA_DIR = @OCF_RA_DIR@
|
||||
OCF_ROOT_DIR = @OCF_ROOT_DIR@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PILSPKG = @PILSPKG@
|
||||
PING = @PING@
|
||||
PING_TIMEOUT_OPT = @PING_TIMEOUT_OPT@
|
||||
PKGCONFIG = @PKGCONFIG@
|
||||
PKGNAME = @PKGNAME@
|
||||
POD2MAN = @POD2MAN@
|
||||
POWEROFF_CMD = @POWEROFF_CMD@
|
||||
POWEROFF_OPTIONS = @POWEROFF_OPTIONS@
|
||||
PRETTY_CC = @PRETTY_CC@
|
||||
PROCROUTE = @PROCROUTE@
|
||||
PYTHON = @PYTHON@
|
||||
PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
|
||||
PYTHON_INCLUDES = @PYTHON_INCLUDES@
|
||||
PYTHON_PLATFORM = @PYTHON_PLATFORM@
|
||||
PYTHON_PREFIX = @PYTHON_PREFIX@
|
||||
PYTHON_VERSION = @PYTHON_VERSION@
|
||||
QUIET_LIBTOOL_OPTS = @QUIET_LIBTOOL_OPTS@
|
||||
QUIET_MAKE_OPTS = @QUIET_MAKE_OPTS@
|
||||
QUORUMD_ENABLED = @QUORUMD_ENABLED@
|
||||
RANLIB = @RANLIB@
|
||||
REBOOT = @REBOOT@
|
||||
REBOOT_OPTIONS = @REBOOT_OPTIONS@
|
||||
ROUTE = @ROUTE@
|
||||
ROUTEPARM = @ROUTEPARM@
|
||||
RPM = @RPM@
|
||||
RPMREL = @RPMREL@
|
||||
RPMTARGET = @RPMTARGET@
|
||||
RPM_ENABLE_MGMT_CONFIG = @RPM_ENABLE_MGMT_CONFIG@
|
||||
RPM_ENABLE_OPENHPI = @RPM_ENABLE_OPENHPI@
|
||||
RPM_ENABLE_SNMP_SUBAGENT = @RPM_ENABLE_SNMP_SUBAGENT@
|
||||
SCP = @SCP@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SNMPAGENTLIB = @SNMPAGENTLIB@
|
||||
SNMPCONFIG = @SNMPCONFIG@
|
||||
SNMPLIB = @SNMPLIB@
|
||||
SNMP_RPM_BUILD_REQUIRES = @SNMP_RPM_BUILD_REQUIRES@
|
||||
SSH = @SSH@
|
||||
STONITHPKG = @STONITHPKG@
|
||||
STONITH_RA_DIR = @STONITH_RA_DIR@
|
||||
STRIP = @STRIP@
|
||||
SWIG = @SWIG@
|
||||
TAR = @TAR@
|
||||
TARFILE = @TARFILE@
|
||||
TEST = @TEST@
|
||||
TIPC_INCLUDE = @TIPC_INCLUDE@
|
||||
TSA_DIR = @TSA_DIR@
|
||||
UCDSNMPDEVEL = @UCDSNMPDEVEL@
|
||||
USE_MODULES = @USE_MODULES@
|
||||
VALGRIND_BIN = @VALGRIND_BIN@
|
||||
VERSION = @VERSION@
|
||||
WHOAMI = @WHOAMI@
|
||||
XML2CONFIG = @XML2CONFIG@
|
||||
XPERIMENTALDIRS = @XPERIMENTALDIRS@
|
||||
YACC = @YACC@
|
||||
YFLAGS = @YFLAGS@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_configure_args = @ac_configure_args@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
base_includedir = @base_includedir@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
cleaned_configure_args = @cleaned_configure_args@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
hb_libdir = @hb_libdir@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
pils_includedir = @pils_includedir@
|
||||
pils_plugindir = @pils_plugindir@
|
||||
pkgpyexecdir = @pkgpyexecdir@
|
||||
pkgpythondir = @pkgpythondir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
pyexecdir = @pyexecdir@
|
||||
pythondir = @pythondir@
|
||||
saf_includedir = @saf_includedir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
stonith_ext_plugindir = @stonith_ext_plugindir@
|
||||
stonith_includedir = @stonith_includedir@
|
||||
stonith_plugindir = @stonith_plugindir@
|
||||
subdirs = @subdirs@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
|
||||
#
|
||||
# linux-ha: Linux-HA heartbeat code
|
||||
#
|
||||
# Copyright (C) 2001 Michael Moerz
|
||||
# This instance created by Horms
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
EXTRA_DIST = apply changelog compat control copyright \
|
||||
dpkg-checkbuild rules \
|
||||
heartbeat.dirs heartbeat.files \
|
||||
heartbeat.postinst heartbeat.postrm \
|
||||
heartbeat.preinst \
|
||||
heartbeat-dev.dirs heartbeat-dev.files \
|
||||
heartbeat-gui.dirs heartbeat-gui.files \
|
||||
heartbeat-2.prerm \
|
||||
ldirectord.files ldirectord.postinst \
|
||||
ldirectord.postrm \
|
||||
patches/ipv6-check.patch \
|
||||
patches/init-remote_fs.patch \
|
||||
patches/init-openhpid.patch \
|
||||
patches/init-ntp.patch \
|
||||
patches/series/2.1.3-1 \
|
||||
patches/series/2.1.3-2
|
||||
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu debian/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu debian/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
tags: TAGS
|
||||
TAGS:
|
||||
|
||||
ctags: CTAGS
|
||||
CTAGS:
|
||||
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile
|
||||
installdirs:
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool clean-local mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am:
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||
clean-local distclean distclean-generic distclean-libtool \
|
||||
distdir dvi dvi-am html html-am info info-am install \
|
||||
install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-pdf install-pdf-am install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
uninstall uninstall-am
|
||||
|
||||
|
||||
clean-local:
|
||||
rm -f *.substvars *.debhelper files
|
||||
rm -r -f heartbeat heartbeat-dev ldirectord \
|
||||
libpils0 libpils-dev libstonith0 libstonith-dev stonith tmp
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
@ -0,0 +1,250 @@
|
||||
#!/bin/sh
|
||||
# Apply script for managing patches for debian builts
|
||||
# Taken from debian kernel-source-2.4.27 package
|
||||
# Original Author: Herbert Xu
|
||||
|
||||
set -e
|
||||
|
||||
length=50
|
||||
|
||||
die() {
|
||||
echo "E: $@" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
warn() {
|
||||
echo "W: $@" >&2
|
||||
}
|
||||
|
||||
uncompress_patch() {
|
||||
patch=$1
|
||||
case "$patch" in
|
||||
*.bz2) bzcat $patch ;;
|
||||
*.gz) zcat $patch ;;
|
||||
*) cat $patch ;;
|
||||
esac
|
||||
}
|
||||
|
||||
find_patch() {
|
||||
patch=$1
|
||||
|
||||
if [ -f "$patch" ]; then
|
||||
echo "$patch"
|
||||
elif [ -f "$patch.bz2" ]; then
|
||||
echo "$patch.bz2"
|
||||
elif [ -f "$patch.gz" ]; then
|
||||
echo "$patch.gz"
|
||||
else
|
||||
die "$patch is in the series, but doesn't exist!"
|
||||
fi
|
||||
}
|
||||
|
||||
apply_patch() {
|
||||
patch=$(find_patch $home/$1)
|
||||
base=$1
|
||||
if uncompress_patch "$patch" | patch -p1 -s -t --no-backup-if-mismatch; then
|
||||
printf "%-${length}s\tOK (+)\n" "$base"
|
||||
else
|
||||
printf "%-${length}s\tFAIL (+)\n" "$base"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
deapply_patch() {
|
||||
patch=$(find_patch $home/$1)
|
||||
base=$1
|
||||
if uncompress_patch "$patch" | patch -p1 -s -t -R --no-backup-if-mismatch; then
|
||||
printf "%-${length}s\tOK (-)\n" "$base"
|
||||
else
|
||||
printf "%-${length}s\tFAIL (-)\n" "$base"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
unpatch_series() {
|
||||
series=$1
|
||||
[ -f "$series" ] || die "I wasn't passed a series!"
|
||||
|
||||
tac $series | while read action patch; do
|
||||
case "$action" in
|
||||
+) deapply_patch $patch ;;
|
||||
-) apply_patch $patch ;;
|
||||
X)
|
||||
bakfile="$(dirname $patch)/.$(basename $patch).bak"
|
||||
if [ -f "$bakfile" ]; then
|
||||
mv -f "$bakfile" "$patch"
|
||||
printf "%-${length}s\tRESTORED (X)\n" "$patch"
|
||||
else
|
||||
printf "%-${length}s\tNO BACKUP (X)\n" "$patch"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
echo "--> $(basename $series) fully unapplied."
|
||||
}
|
||||
|
||||
patch_series() {
|
||||
series=$1
|
||||
[ -f "$series" ] || die "I wasn't passed a series!"
|
||||
|
||||
while read action patch; do
|
||||
case "$action" in
|
||||
+) apply_patch $patch ;;
|
||||
-) deapply_patch $patch ;;
|
||||
X)
|
||||
bakfile="$(dirname $patch)/.$(basename $patch).bak"
|
||||
if [ -f "$patch" ]; then
|
||||
mv -f "$patch" "$bakfile"
|
||||
printf "%-${length}s\tREMOVED (X)\n" "$patch"
|
||||
else
|
||||
printf "%-${length}s\tNO FILE (X)\n" "$patch"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done < $series
|
||||
echo "--> $(basename $series) fully applied."
|
||||
}
|
||||
|
||||
bubble_sort ()
|
||||
{
|
||||
DIR=$1
|
||||
shift
|
||||
SORTED=$@
|
||||
|
||||
SWAPED=1
|
||||
while [ $SWAPED = 1 ]; do
|
||||
X=0
|
||||
A=""
|
||||
SWAPED=0
|
||||
NEW=""
|
||||
for i in $SORTED; do
|
||||
if [ -z "$A" ]; then
|
||||
A="$i"
|
||||
continue
|
||||
fi
|
||||
B="$i"
|
||||
|
||||
if dpkg --compare-versions "$A" "$DIR" "$B"; then
|
||||
SWAPED=1
|
||||
NEW="$NEW $B"
|
||||
else
|
||||
NEW="$NEW $A"
|
||||
A="$B"
|
||||
fi
|
||||
|
||||
X=$(($X + 1))
|
||||
done
|
||||
SORTED="$NEW $A"
|
||||
done
|
||||
|
||||
echo $SORTED
|
||||
}
|
||||
|
||||
bubble_sort_fwd ()
|
||||
{
|
||||
bubble_sort "lt" $@
|
||||
}
|
||||
|
||||
bubble_sort_rev ()
|
||||
{
|
||||
bubble_sort "gt" $@
|
||||
}
|
||||
|
||||
|
||||
if ! [ -d heartbeat ]; then
|
||||
die 'Not in heartbeat top level directory. Exiting'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# for THIS particular version of the source package
|
||||
#deb_version=$(sed -ne "/^heartbeat/ { s/.*(\([^)]*\)).*/\1/ p" -e "q}" \
|
||||
# ${PWD}/debian/changelog)
|
||||
deb_version=$(dpkg-parsechangelog | awk '/^Version: / { print $2 }')
|
||||
version=${override_version:-$deb_version}
|
||||
upstream=${version%-*}
|
||||
revision=${version#*-}
|
||||
|
||||
home="$PWD/debian/patches"
|
||||
|
||||
|
||||
if [ -f version.Debian ]; then
|
||||
current=$(cat version.Debian)
|
||||
current_rev=${current#*-}
|
||||
current_up=${current%-*}
|
||||
|
||||
if [ "$current" = "$upstream" ]; then
|
||||
current_rev=0
|
||||
fi
|
||||
else
|
||||
warn "No version.Debian file, assuming pristine heartbeat $upstream"
|
||||
current=$upstream
|
||||
current_rev=0
|
||||
fi
|
||||
|
||||
target=${1:-$version}
|
||||
|
||||
target_rev=${target#*-}
|
||||
target_up=${target%-*}
|
||||
|
||||
# Sanity checks
|
||||
if [ "$target_up" != "$upstream" ]; then
|
||||
die "Upstream $target_up doesn't match $upstream!"
|
||||
# We don't have that version out yet!
|
||||
elif [ ! -n "$target_rev" ] || ( [ "$target_rev" != "$target" ] && dpkg --compare-versions $target_rev gt $revision ); then
|
||||
year=$(($(date +%Y) + 1))
|
||||
die "Can't patch to nonexistent revision $target_rev (wait until $year)"
|
||||
fi
|
||||
|
||||
# At this point, we must handle three cases.
|
||||
# 1. $target_rev is greater than $current_rev. We must patch forward for this.
|
||||
# 2. $target_rev is less than $current_rev. We must reverse the list of series,
|
||||
# reverse each used series (tac) and unapply applied patches and vice versa.
|
||||
# 3. $target_rev is undefined, and $target is $upstream.
|
||||
|
||||
# Revert to upstream.
|
||||
if [ "$target_rev" = "$target" ]; then
|
||||
# already reverted
|
||||
if [ "$current" = "$target" ]; then
|
||||
echo "Nothing to do, exiting."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for base in $(cd $home/series/ && bubble_sort_fwd $(ls -d *-*)); do
|
||||
srev=${base#*-}
|
||||
if [ -n "$srev" ]; then
|
||||
if dpkg --compare-versions $srev le $current_rev; then
|
||||
unpatch_series $home/series/$base
|
||||
fi
|
||||
else
|
||||
die "Series doesn't have a revision!"
|
||||
fi
|
||||
done
|
||||
elif [ "$current_rev" = "$upstream" ] || dpkg --compare-versions $target_rev gt $current_rev; then
|
||||
for base in $(cd $home/series/ && bubble_sort_rev $(ls -d *-*)); do
|
||||
srev=${base#*-}
|
||||
if [ -n "$srev" ]; then
|
||||
if dpkg --compare-versions $srev gt $current_rev && dpkg --compare-versions $srev le $target_rev; then
|
||||
patch_series $home/series/$base
|
||||
fi
|
||||
else
|
||||
die "Series doesn't have a revision!"
|
||||
fi
|
||||
done
|
||||
elif [ $target_rev = $current_rev ]; then
|
||||
echo "Nothing to do, exiting."
|
||||
exit 0
|
||||
elif dpkg --compare-versions $target_rev lt $current_rev; then
|
||||
for base in $(cd $home/series/ && bubble_sort_fwd $(ls -d *-*)); do
|
||||
srev=${base#*-}
|
||||
if [ -n "$srev" ]; then
|
||||
# gt because you don't want to unapply the target series
|
||||
if dpkg --compare-versions $srev le $current_rev && dpkg --compare-versions $srev gt $target_rev; then
|
||||
unpatch_series $home/series/$base
|
||||
fi
|
||||
else
|
||||
die "Series doesn't have a revision!"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
echo $target > version.Debian
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1 @@
|
||||
4
|
||||
@ -0,0 +1,124 @@
|
||||
Source: heartbeat-2
|
||||
Section: admin
|
||||
Priority: optional
|
||||
Maintainer: Simon Horman <horms@debian.org>
|
||||
Build-Depends: debhelper (>= 5.0.37.2), libsnmp-dev, libglib2.0-dev, perl, net-tools, iputils-ping, python, psmisc, libnet1-dev, iproute, libtool, libcurl4-openssl-dev | libcurl3-openssl-dev, libxml2-dev, bison, flex, uuid-dev, lynx, libbz2-dev, zlib1g-dev, uuid-dev, libsensors4-dev, libltdl3-dev, swig, openssh-client, libgnutls-dev, python-central (>= 0.5), python-dev, libpam0g-dev, libncurses5-dev, psmisc, libopenhpi-dev
|
||||
Standards-Version: 3.7.3
|
||||
XS-Python-Version: current
|
||||
|
||||
Package: ldirectord
|
||||
Section: admin
|
||||
Priority: extra
|
||||
Architecture: all
|
||||
Depends: ${perl:Depends}, ipvsadm, libauthen-radius-perl, libcrypt-ssleay-perl, libdbi-perl, libdigest-hmac-perl, libdigest-md5-perl, libmail-pop3client-perl, libmailtools-perl, libnet-dns-perl, libnet-imap-simple-perl, libnet-imap-simple-ssl-perl, libnet-ldap-perl, libnet-perl, libwww-perl
|
||||
Recommends: rsyslog | system-log-daemon, logrotate
|
||||
Conflicts: libpils0 (<< 2.0.8-3), libstonith0 (<< 2.0.8-3), stonith (<< 2.0.8-3)
|
||||
XB-Python-Version: ${python:Versions}
|
||||
Description: Monitors virtual services provided by LVS
|
||||
ldirectord is a stand-alone daemon to monitor services of real
|
||||
for virtual services provided by The Linux Virtual Server (LVS).
|
||||
and works with Linux-HA's heartbeat package.
|
||||
|
||||
Package: heartbeat-2
|
||||
Section: admin
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${python:Depends}, iproute, adduser, iputils-ping, psmisc, gawk, mawk, libxml2-utils, libpam-runtime (>= 0.76-14)
|
||||
Recommends: rsyslog | system-log-daemon, logrotate, iptables
|
||||
Provides: libstonith0, libpils0
|
||||
Conflicts: libstonith0, libpils0, heartbeat
|
||||
Replaces: libstonith0, libpils0
|
||||
XB-Python-Version: ${python:Versions}
|
||||
Description: Subsystem for High-Availability Linux
|
||||
heartbeat is a basic heartbeat subsystem for Linux-HA which implements
|
||||
serial, UDP, and PPP/UDP heartbeats together with IP address takeover
|
||||
including a nice resource model including resource groups.
|
||||
.
|
||||
It currently supports a very sophisticated dependency model for n-node
|
||||
clusters. It is both extremely useful and quite stable at this point in
|
||||
time.
|
||||
|
||||
Package: heartbeat-2-dev
|
||||
Section: devel
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Depends: heartbeat-2 (= ${binary:Version})
|
||||
Provides: libstonith-dev, libpils-dev
|
||||
Conflicts: libstonith-dev, libpils-dev
|
||||
Replaces: libstonith-dev, libpils-dev
|
||||
XB-Python-Version: ${python:Versions}
|
||||
Description: Subsystem for High-Availability Linux - development files
|
||||
heartbeat is a basic heartbeat subsystem for Linux-HA which implements
|
||||
serial, UDP, and PPP/UDP heartbeats together with IP address takeover
|
||||
including a nice resource model including resource groups.
|
||||
.
|
||||
It currently supports a very sophisticated dependency model for n-node
|
||||
clusters. It is both extremely useful and quite stable at this point in
|
||||
time.
|
||||
.
|
||||
This package contains development files
|
||||
|
||||
Package: heartbeat-2-gui
|
||||
Section: admin
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Depends: ${python:Depends}, python-gtk2, python-glade2, uuid-runtime, python-xml
|
||||
Suggests: heartbeat-2 (= ${binary:Version})
|
||||
XB-Python-Version: ${python:Versions}
|
||||
Description: Provides a gui interface to manage heartbeat clusters
|
||||
GUI client for heartbeat clusters
|
||||
|
||||
Package: ldirectord-2
|
||||
Section: admin
|
||||
Priority: optional
|
||||
Architecture: all
|
||||
Depends: ldirectord (= ${source:Version})
|
||||
Description: Monitors virtual services provided by LVS
|
||||
This is a transitional dummy package. If nothing depends on it, this
|
||||
package can be safely removed.
|
||||
|
||||
Package: stonith
|
||||
Section: libs
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Depends: heartbeat-2 (= ${binary:Version})
|
||||
Description: Interface for remotely powering down a node in the cluster
|
||||
This is a transitional dummy package. If nothing depends on it, this
|
||||
package can be safely removed.
|
||||
|
||||
Package: libstonith0
|
||||
Section: libs
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Depends: heartbeat-2 (= ${binary:Version})
|
||||
Description: Interface for remotely powering down a node in the cluster
|
||||
This is a transitional dummy package. If nothing depends on it, this
|
||||
package can be safely removed.
|
||||
|
||||
Package: libstonith-dev
|
||||
Section: admin
|
||||
Priority: optional
|
||||
Architecture: all
|
||||
Depends: heartbeat-2-dev (>= ${source:Version})
|
||||
Description: Interface for remotely powering down a node in the cluster
|
||||
This is a transitional dummy package. If nothing depends on it, this
|
||||
package can be safely removed.
|
||||
|
||||
Package: libpils0
|
||||
Section: libs
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Depends: heartbeat-2 (= ${binary:Version})
|
||||
Description: Plugin and Interface Loading System
|
||||
This is a transitional dummy package. If nothing depends on it, this
|
||||
package can be safely removed.
|
||||
|
||||
Package: libpils-dev
|
||||
Section: admin
|
||||
Priority: optional
|
||||
Architecture: all
|
||||
Depends: heartbeat-2-dev (>= ${source:Version})
|
||||
Description: Plugin and Interface Loading System - development files
|
||||
This is a transitional dummy package. If nothing depends on it, this
|
||||
package can be safely removed.
|
||||
|
||||
@ -0,0 +1,107 @@
|
||||
This package was first debianized by Paolo Molaro <lupus@debian.org> on
|
||||
Wed, 17 Nov 1999 17:30:23 +0100.
|
||||
|
||||
The original sources can be found at:
|
||||
http://www.linux-ha.org/download/
|
||||
|
||||
Upstream Authors (from doc/AUTHORS):
|
||||
|
||||
NOTE: The work of everyone on this project is dearly appreciated. If you
|
||||
are not listed here but should be, please notify us!
|
||||
|
||||
The following people have kindly helped with heartbeat development by
|
||||
providing code, documentation or testing, or fixes:
|
||||
|
||||
Alan Robertson <alanr@unix.sh>
|
||||
Main architect.
|
||||
Things other people don't want to do.
|
||||
|
||||
Contributors, ordered by last name:
|
||||
|
||||
Eric Ayers <eric@compgen.com>
|
||||
Nightware RPC100S, and WTI RPS10 support
|
||||
Andrew Beekhof <andrew@beekhof.net>
|
||||
Cluster Resource Manager
|
||||
Darwin Cleanups
|
||||
Stéphane Billiart <stephane@reefedge.com> - unicast support
|
||||
Gregor Binder <gbinder@sysfive.com> - "meatware" STONITH support
|
||||
Juan Pedro Paredes Caballero <juampe@retemail.es> - Debian support
|
||||
Dusan Djordjevic <dj.dule@linux.org.yu> - documentation
|
||||
Kevin Dwyer <kevin@pheared.net> - ipfail, bug fixes.
|
||||
Joachim Gleissner <jg@suse.de> ssh STONITH support
|
||||
Luis Claudio R. Gonçalves <lclaudio@conectiva.com.br>
|
||||
nice_failback code, hb_standby code, fixes
|
||||
Thomas Hepper <th@ant.han.de>
|
||||
solaris and Debian support
|
||||
Masaki Hasegawa <masaki-h@pp.iij4u.or.jp> - send_arp research, fix
|
||||
Andrew Hildebrand <andrew@pdi.com> - IRIX port.
|
||||
Horms <horms@vergenet.net> <horms@verge.net.au>
|
||||
LVS support, ldirectord, many fixes
|
||||
Gregor Howey <ghowey@bremer-nachrichten.de>
|
||||
Holger Kiehl <Holger.Kiehl@dwd.de>
|
||||
Kirk Lawson <lklawson@heapy.com> - Audible alarm support
|
||||
Mike Ledoux <mwl@mclinux.com>
|
||||
APC master switch and WTI [WT]PS-xxx support
|
||||
David Lee <t.d.lee@durham.ac.uk> - autoconf and solaris support
|
||||
Xiaoxiang Liu <xiliu@ncsa.uiuc.edu>
|
||||
interprocess communication library
|
||||
Friedrich Lobenstock <fl@fl.priv.at> - SuSE compatibility fixes
|
||||
Lars Marowsky-Brée <lmb@suse.de>
|
||||
LVM, ICP and ssh STONITH support, many fixes
|
||||
SuSE package maintainer
|
||||
STABLE_1_0 / 1.0.x release maintenance
|
||||
Michael Moerz <mike@cubit.at> - automake support
|
||||
Ram Pai <linuxram@us.ibm.com> - Consensus Membership module
|
||||
Rudy Pawul <rpawul@iso-ne.com>
|
||||
Documentation, first production customer
|
||||
Andreas Piesk <a.piesk@gmx.net>
|
||||
APC Masterswitch (snmp) and APCSmart support
|
||||
Jacob Rief <jacob.rief@tis.at> - ldirectord
|
||||
Stefan Salzer <salt@cin.de>
|
||||
Mitja Sarp <mitja@lysator.liu.se>
|
||||
Initial authentication support (first big contribution)
|
||||
Guochun Shi<gshi@ncsa.uiuc.edu>
|
||||
Communication/core/membership layer support
|
||||
Matthew Soffen <sirgeek@mrsucko.org>
|
||||
FreeBSD port, Solaris fixes, and release manager
|
||||
Guenther Thomsen <thomsen@cs.tu-berlin.de>
|
||||
Debian compliance
|
||||
Mike Tilstra <conrad@sistina.com> - VACM support
|
||||
Marcelo Tosatti <marcelo@conectiva.com.br>
|
||||
API support, initial plugin support
|
||||
Iñaki Fernández Villanueva - debian support
|
||||
Todd Wheeling <wheeling@mclinux.com>
|
||||
APC master switch and WTI [WT]PS-xxx support
|
||||
Volker Wiegand <Volker.Wiegand@suse.de>
|
||||
/proc file system, initial SuSE support, documentation
|
||||
Chris Wright <chris@wirex.com>
|
||||
Multicast support, inet_pton replacement, fixes
|
||||
|
||||
|
||||
Code for the following pieces borrowed from code by:
|
||||
Tom Vogt <tom@lemuria.org> (udp code)
|
||||
yuri volobuev <volobuev@t1.chem.umn.edu> (send_arp.c)
|
||||
'Network UPS Tools' by Russell Kroll <rkroll@exploits.org>
|
||||
homepage: http://www.exploits.org/nut/
|
||||
(Andreas Piesk borrowed code for APCSmart support)
|
||||
David C. Teigland <teigland@sistina.com>
|
||||
wrote original meatware support for GFS stomith
|
||||
salz@pebbles.bbn.com - replacement scandir function
|
||||
Internet Software Consortium (bind) - replacement inet_pton()
|
||||
function
|
||||
|
||||
All binaries provided by this package are GNU GPL or GNU LGPL.
|
||||
Some source files are under the BSD licence or in the public domain,
|
||||
as annotated by those files. All source files without a specific
|
||||
licence statement are available licenced under the GNU GPL.
|
||||
|
||||
A copy of the GNU GPL licence is available on Debian systems at
|
||||
/usr/share/common-licenses/GPL
|
||||
|
||||
A copy of the GNU LGPL licence is available on Debian systems at
|
||||
/usr/share/common-licenses/LGPL
|
||||
|
||||
A copy of the BSD licence is available on Debian systems at
|
||||
/usr/share/common-licenses/BSD
|
||||
|
||||
|
||||
@ -0,0 +1,197 @@
|
||||
#!/usr/bin/perl -w
|
||||
# Copyright 2001 by Joey Hess <joeyh@debian.org>
|
||||
# License: GNU General Public License (GPL)
|
||||
|
||||
use strict;
|
||||
use Getopt::Long;
|
||||
|
||||
sub usage {
|
||||
print STDERR <<EOF;
|
||||
Usage: dpkg-checkbuild [-B] [control-file]
|
||||
-B binary-only, ignore -Indep
|
||||
control-file control file to process [Default: debian/control]
|
||||
EOF
|
||||
}
|
||||
|
||||
my ($me)=$0=~m:.*/(.+):;
|
||||
|
||||
my $binary_only=0;
|
||||
if (! GetOptions('-B' => \$binary_only)) {
|
||||
usage();
|
||||
exit(2);
|
||||
}
|
||||
my $control=shift || "debian/control";
|
||||
|
||||
open (CONTROL, $control) || die "$control: $!\n";
|
||||
my @status=parse_status();
|
||||
my (@unmet, @conflicts);
|
||||
while (<CONTROL>) {
|
||||
chomp;
|
||||
last if $_ eq ''; # end of first stanza
|
||||
|
||||
if (/^Build-Depends:\s+(.*)/i) {
|
||||
push @unmet, build_depends($1, @status);
|
||||
}
|
||||
elsif (/^Build-Conflicts:\s+(.*)/i) {
|
||||
push @conflicts, build_conflicts($1, @status);
|
||||
}
|
||||
elsif (! $binary_only && /^Build-Depends-Indep:\s+(.*)/i) {
|
||||
push @unmet, build_depends($1, @status);
|
||||
}
|
||||
elsif (! $binary_only && /^Build-Conflicts-Indep:\s+(.*)/i) {
|
||||
push @conflicts, build_conflicts($1, @status);
|
||||
}
|
||||
}
|
||||
close CONTROL;
|
||||
|
||||
if (@unmet) {
|
||||
print STDERR "$me: Unmet build dependancies: ";
|
||||
print STDERR join(", ", @unmet), "\n";
|
||||
}
|
||||
if (@conflicts) {
|
||||
print STDERR "$me: Build conflicts: ";
|
||||
print STDERR join(", ", @conflicts), "\n";
|
||||
}
|
||||
exit 1 if @unmet || @conflicts;
|
||||
|
||||
# This part could be replaced. Silly little status file parser.
|
||||
# thanks to Matt Zimmerman. Returns two hash references that
|
||||
# are exactly what the other functions need...
|
||||
sub parse_status {
|
||||
my $status=shift || "/var/lib/dpkg/status";
|
||||
|
||||
my %providers;
|
||||
my %version;
|
||||
local $/ = '';
|
||||
open(STATUS, "<$status") || die "$status: $!\n";
|
||||
while (<STATUS>) {
|
||||
next unless /^Status: .*ok installed$/m;
|
||||
|
||||
my ($package) = /^Package: (.*)$/m;
|
||||
push @{$providers{$package}}, $package;
|
||||
($version{$package}) = /^Version: (.*)$/m;
|
||||
|
||||
if (/^Provides: (.*)$/m) {
|
||||
foreach (split(/,\s+/, $1)) {
|
||||
push @{$providers{$_}}, $package;
|
||||
}
|
||||
}
|
||||
}
|
||||
close STATUS;
|
||||
|
||||
return \%version, \%providers;
|
||||
}
|
||||
|
||||
# This function checks the build dependancies passed in as the first
|
||||
# parameter. If they are satisfied, returns false. If they are unsatisfied,
|
||||
# an list of the unsatisfied depends is returned.
|
||||
#
|
||||
# Additional parameters that must be passed:
|
||||
# * A reference to a hash of all "ok installed" the packages on the system,
|
||||
# with the hash key being the package name, and the value being the
|
||||
# installed version.
|
||||
# * A reference to a hash, where the keys are package names, and the
|
||||
# value is a true value iff some package installed on the system provides
|
||||
# that package (all installed packages provide themselves)
|
||||
#
|
||||
# Optionally, the architecture the package is to be built for can be passed
|
||||
# in as the 4th parameter. If not set, dpkg will be queried for the build
|
||||
# architecture.
|
||||
sub build_depends {
|
||||
return check_line(1, @_);
|
||||
}
|
||||
|
||||
# This function is exactly like unmet_build_depends, except it
|
||||
# checks for build conflicts, and returns a list of the packages
|
||||
# that are installed and are conflicted with.
|
||||
sub build_conflicts {
|
||||
return check_line(0, @_);
|
||||
}
|
||||
|
||||
# This function does all the work. The first parameter is 1 to check build
|
||||
# deps, and 0 to check build conflicts.
|
||||
sub check_line {
|
||||
my $build_depends=shift;
|
||||
my $line=shift;
|
||||
my %version=%{shift()};
|
||||
my %providers=%{shift()};
|
||||
my $build_arch=shift || `dpkg --print-architecture`;
|
||||
chomp $build_arch;
|
||||
|
||||
my @unmet=();
|
||||
foreach my $dep (split(/,\s+/, $line)) {
|
||||
my $ok=0;
|
||||
my @possibles=();
|
||||
ALTERNATE: foreach my $alternate (split(/\s*\|\s*/, $dep)) {
|
||||
my ($package, $rest)=split(/\s+/, $alternate, 2);
|
||||
|
||||
# Check arch specifications.
|
||||
if (defined $rest && $rest=~m/\[(.*?)\]/) {
|
||||
my $arches=lc($1);
|
||||
my $seen_arch='';
|
||||
foreach my $arch (split(' ', $arches)) {
|
||||
if ($arch eq $build_arch) {
|
||||
$seen_arch=1;
|
||||
next;
|
||||
}
|
||||
elsif ($arch eq "!$build_arch") {
|
||||
next ALTERNATE;
|
||||
}
|
||||
elsif ($arch =~ /!/) {
|
||||
# This is equivilant to
|
||||
# having seen the current arch,
|
||||
# unless the current arch
|
||||
# is also listed..
|
||||
$seen_arch=1;
|
||||
}
|
||||
}
|
||||
if (! $seen_arch) {
|
||||
next;
|
||||
}
|
||||
}
|
||||
|
||||
# This is a possibile way to meet the dependancy.
|
||||
# Remove the arch stuff from $alternate.
|
||||
$alternate=~s/\s+\[.*?\]//;
|
||||
push @possibles, $alternate;
|
||||
|
||||
# Check version.
|
||||
if (defined $rest && $rest=~m/\((..)\s+(.*?)\)/) {
|
||||
my $relation=$1;
|
||||
my $version=$2;
|
||||
|
||||
if (! exists $version{$package}) {
|
||||
# Not installed at all, so fail.
|
||||
next;
|
||||
}
|
||||
else {
|
||||
# Compare installed and needed
|
||||
# version number.
|
||||
system("dpkg", "--compare-versions",
|
||||
$version{$package}, $relation,
|
||||
$version);
|
||||
if (($? >> 8) != 0) {
|
||||
next; # fail
|
||||
}
|
||||
}
|
||||
}
|
||||
elsif (! defined $providers{$package}) {
|
||||
# It's not a versioned dependancy, and
|
||||
# nothing provides it, so fail.
|
||||
next;
|
||||
}
|
||||
|
||||
# If we get to here, the dependancy was met.
|
||||
$ok=1;
|
||||
}
|
||||
|
||||
if (@possibles && (($build_depends && ! $ok) ||
|
||||
(! $build_depends && $ok))) {
|
||||
# TODO: this could return a more complex
|
||||
# data structure instead to save re-parsing.
|
||||
push @unmet, join (" | ", @possibles);
|
||||
}
|
||||
}
|
||||
|
||||
return @unmet;
|
||||
}
|
||||
@ -0,0 +1,7 @@
|
||||
usr/include/clplumbing
|
||||
usr/include/heartbeat
|
||||
usr/include/linux-ha
|
||||
usr/include/ocf
|
||||
usr/include/pils
|
||||
usr/include/saf
|
||||
usr/include/stonith
|
||||
@ -0,0 +1,138 @@
|
||||
usr/include/clplumbing/GSource.h
|
||||
usr/include/clplumbing/GSource_internal.h
|
||||
usr/include/clplumbing/Gmain_timeout.h
|
||||
usr/include/clplumbing/apphb_cs.h
|
||||
usr/include/clplumbing/base64.h
|
||||
usr/include/clplumbing/cl_log.h
|
||||
usr/include/clplumbing/cl_malloc.h
|
||||
usr/include/clplumbing/cl_misc.h
|
||||
usr/include/clplumbing/cl_pidfile.h
|
||||
usr/include/clplumbing/cl_plugin.h
|
||||
usr/include/clplumbing/cl_poll.h
|
||||
usr/include/clplumbing/cl_quorum.h
|
||||
usr/include/clplumbing/cl_quorumd.h
|
||||
usr/include/clplumbing/cl_random.h
|
||||
usr/include/clplumbing/cl_signal.h
|
||||
usr/include/clplumbing/cl_syslog.h
|
||||
usr/include/clplumbing/cl_tiebreaker.h
|
||||
usr/include/clplumbing/cl_uuid.h
|
||||
usr/include/clplumbing/coredumps.h
|
||||
usr/include/clplumbing/coredumps.h
|
||||
usr/include/clplumbing/cpulimits.h
|
||||
usr/include/clplumbing/ipc.h
|
||||
usr/include/clplumbing/loggingdaemon.h
|
||||
usr/include/clplumbing/longclock.h
|
||||
usr/include/clplumbing/lsb_exitcodes.h
|
||||
usr/include/clplumbing/md5.h
|
||||
usr/include/clplumbing/mkstemp_mode.h
|
||||
usr/include/clplumbing/netstring.h
|
||||
usr/include/clplumbing/proctrack.h
|
||||
usr/include/clplumbing/realtime.h
|
||||
usr/include/clplumbing/recoverymgr_cs.h
|
||||
usr/include/clplumbing/replytrack.h
|
||||
usr/include/clplumbing/setproctitle.h
|
||||
usr/include/clplumbing/timers.h
|
||||
usr/include/clplumbing/uids.h
|
||||
usr/include/heartbeat/HBauth.h
|
||||
usr/include/heartbeat/HBcomm.h
|
||||
usr/include/heartbeat/apphb.h
|
||||
usr/include/heartbeat/apphb_notify.h
|
||||
usr/include/heartbeat/compress.h
|
||||
usr/include/heartbeat/crm/cib.h
|
||||
usr/include/heartbeat/crm/common/ctrl.h
|
||||
usr/include/heartbeat/crm/common/ipc.h
|
||||
usr/include/heartbeat/crm/common/iso8601.h
|
||||
usr/include/heartbeat/crm/common/msg.h
|
||||
usr/include/heartbeat/crm/common/util.h
|
||||
usr/include/heartbeat/crm/common/xml.h
|
||||
usr/include/heartbeat/crm/crm.h
|
||||
usr/include/heartbeat/crm/msg_xml.h
|
||||
usr/include/heartbeat/crm/pengine/common.h
|
||||
usr/include/heartbeat/crm/pengine/complex.h
|
||||
usr/include/heartbeat/crm/pengine/rules.h
|
||||
usr/include/heartbeat/crm/pengine/status.h
|
||||
usr/include/heartbeat/crm/transition.h
|
||||
usr/include/heartbeat/fencing/stonithd_api.h
|
||||
usr/include/heartbeat/fencing/stonithd_msg.h
|
||||
usr/include/heartbeat/ha_msg.h
|
||||
usr/include/heartbeat/hb_api.h
|
||||
usr/include/heartbeat/hb_config.h
|
||||
usr/include/heartbeat/heartbeat.h
|
||||
usr/include/heartbeat/lrm/lrm_api.h
|
||||
usr/include/heartbeat/lrm/lrm_msg.h
|
||||
usr/include/heartbeat/lrm/racommon.h
|
||||
usr/include/heartbeat/lrm/raexec.h
|
||||
usr/include/heartbeat/mgmt/mgmt.h
|
||||
usr/include/heartbeat/mgmt/mgmt_client.h
|
||||
usr/include/heartbeat/mgmt/mgmt_common.h
|
||||
usr/include/heartbeat/mgmt/mgmt_tls.h
|
||||
usr/include/heartbeat/recoverymgr.h
|
||||
usr/include/heartbeat/replace_uuid.h
|
||||
usr/include/ocf/oc_event.h
|
||||
usr/include/ocf/oc_membership.h
|
||||
usr/include/pils/generic.h
|
||||
usr/include/pils/interface.h
|
||||
usr/include/pils/plugin.h
|
||||
usr/include/saf/ais.h
|
||||
usr/include/saf/ais_amf.h
|
||||
usr/include/saf/ais_base.h
|
||||
usr/include/saf/ais_checkpoint.h
|
||||
usr/include/saf/ais_event.h
|
||||
usr/include/saf/ais_lock.h
|
||||
usr/include/saf/ais_membership.h
|
||||
usr/include/saf/ais_message.h
|
||||
usr/include/stonith/expect.h
|
||||
usr/include/stonith/st_ttylock.h
|
||||
usr/include/stonith/stonith.h
|
||||
usr/include/stonith/stonith_plugin.h
|
||||
usr/lib64/libapphb.a
|
||||
usr/lib64/libapphb.la
|
||||
usr/lib64/libapphb.so
|
||||
usr/lib64/libccmclient.a
|
||||
usr/lib64/libccmclient.la
|
||||
usr/lib64/libccmclient.so
|
||||
usr/lib64/libcib.a
|
||||
usr/lib64/libcib.la
|
||||
usr/lib64/libcib.so
|
||||
usr/lib64/libclm.a
|
||||
usr/lib64/libclm.la
|
||||
usr/lib64/libclm.so
|
||||
usr/lib64/libcrmcommon.a
|
||||
usr/lib64/libcrmcommon.la
|
||||
usr/lib64/libcrmcommon.so
|
||||
usr/lib64/libhbclient.a
|
||||
usr/lib64/libhbclient.la
|
||||
usr/lib64/libhbclient.so
|
||||
usr/lib64/liblrm.a
|
||||
usr/lib64/liblrm.la
|
||||
usr/lib64/liblrm.so
|
||||
usr/lib64/libpe_rules.a
|
||||
usr/lib64/libpe_rules.la
|
||||
usr/lib64/libpe_rules.so
|
||||
usr/lib64/libpe_status.a
|
||||
usr/lib64/libpe_status.la
|
||||
usr/lib64/libpe_status.so
|
||||
usr/lib64/libpengine.a
|
||||
usr/lib64/libpengine.la
|
||||
usr/lib64/libpengine.so
|
||||
usr/lib64/libpils.a
|
||||
usr/lib64/libpils.la
|
||||
usr/lib64/libpils.so
|
||||
usr/lib64/libplumb.a
|
||||
usr/lib64/libplumb.la
|
||||
usr/lib64/libplumb.so
|
||||
usr/lib64/libplumbgpl.a
|
||||
usr/lib64/libplumbgpl.la
|
||||
usr/lib64/libplumbgpl.so
|
||||
usr/lib64/librecoverymgr.a
|
||||
usr/lib64/librecoverymgr.la
|
||||
usr/lib64/librecoverymgr.so
|
||||
usr/lib64/libstonith.a
|
||||
usr/lib64/libstonith.la
|
||||
usr/lib64/libstonith.so
|
||||
usr/lib64/libstonithd.a
|
||||
usr/lib64/libstonithd.la
|
||||
usr/lib64/libstonithd.so
|
||||
usr/lib64/libtransitioner.a
|
||||
usr/lib64/libtransitioner.la
|
||||
usr/lib64/libtransitioner.so
|
||||
@ -0,0 +1 @@
|
||||
usr/lib64/heartbeat-gui
|
||||
@ -0,0 +1,26 @@
|
||||
usr/bin/hb_gui
|
||||
usr/lib64/heartbeat-gui/_pymgmt.so
|
||||
usr/lib64/heartbeat-gui/_pymgmt.so.0
|
||||
usr/lib64/heartbeat-gui/_pymgmt.so.0.0.0
|
||||
usr/lib64/heartbeat-gui/haclient.py
|
||||
usr/lib64/heartbeat-gui/pymgmt.py
|
||||
usr/share/heartbeat-gui/active-node.png
|
||||
usr/share/heartbeat-gui/add-resource.png
|
||||
usr/share/heartbeat-gui/cleanup-resource.png
|
||||
usr/share/heartbeat-gui/default-resource.png
|
||||
usr/share/heartbeat-gui/down-resource.png
|
||||
usr/share/heartbeat-gui/exit.png
|
||||
usr/share/heartbeat-gui/ha.png
|
||||
usr/share/heartbeat-gui/haclient.glade
|
||||
usr/share/heartbeat-gui/haclient.py
|
||||
usr/share/heartbeat-gui/login.png
|
||||
usr/share/heartbeat-gui/logout.png
|
||||
usr/share/heartbeat-gui/master-resource.png
|
||||
usr/share/heartbeat-gui/mgmtcmd.py
|
||||
usr/share/heartbeat-gui/remove-resource.png
|
||||
usr/share/heartbeat-gui/slave-resource.png
|
||||
usr/share/heartbeat-gui/standby-node.png
|
||||
usr/share/heartbeat-gui/start-resource.png
|
||||
usr/share/heartbeat-gui/stop-resource.png
|
||||
usr/share/heartbeat-gui/up-resource.png
|
||||
usr/share/locale/zh_CN/LC_MESSAGES/haclient.mo
|
||||
@ -0,0 +1,33 @@
|
||||
etc/ha.d
|
||||
etc/ha.d/conf
|
||||
etc/ha.d/cts
|
||||
etc/ha.d/rc.d
|
||||
etc/ha.d/resource.d
|
||||
etc/init.d
|
||||
etc/logrotate.d/
|
||||
usr/include/pils
|
||||
usr/lib64/heartbeat
|
||||
usr/lib64/heartbeat/plugins
|
||||
usr/lib64/heartbeat/plugins/AppHBNotification
|
||||
usr/lib64/heartbeat/plugins/HBauth
|
||||
usr/lib64/heartbeat/plugins/HBcomm
|
||||
usr/lib64/heartbeat/plugins/test
|
||||
usr/lib64/pils/plugins
|
||||
usr/lib64/pils/plugins/InterfaceMgr
|
||||
usr/lib64/stonith/
|
||||
usr/lib64/stonith/plugins/
|
||||
var/lib/heartbeat
|
||||
var/lib/heartbeat/api
|
||||
var/lib/heartbeat/casual
|
||||
var/lib/heartbeat/ccm
|
||||
var/lib/heartbeat/cores
|
||||
var/lib/heartbeat/cores/root
|
||||
var/lib/heartbeat/cores/nobody
|
||||
var/lib/heartbeat/cores/hacluster
|
||||
var/lib/heartbeat/crm
|
||||
var/lib/heartbeat/ckpt
|
||||
var/lib/heartbeat/pengine
|
||||
var/lock/subsys
|
||||
var/run/heartbeat
|
||||
var/run/heartbeat/ccm
|
||||
var/run/heartbeat/crm
|
||||
@ -0,0 +1,361 @@
|
||||
/etc/ha.d/README.config
|
||||
/etc/ha.d/harc
|
||||
/etc/ha.d/rc.d/ask_resources
|
||||
/etc/ha.d/rc.d/hb_takeover
|
||||
/etc/ha.d/rc.d/ip-request
|
||||
/etc/ha.d/rc.d/ip-request-resp
|
||||
/etc/ha.d/rc.d/status
|
||||
/etc/ha.d/resource.d/AudibleAlarm
|
||||
/etc/ha.d/resource.d/Delay
|
||||
/etc/ha.d/resource.d/Filesystem
|
||||
/etc/ha.d/resource.d/ICP
|
||||
/etc/ha.d/resource.d/IPaddr
|
||||
/etc/ha.d/resource.d/IPaddr2
|
||||
/etc/ha.d/resource.d/IPsrcaddr
|
||||
/etc/ha.d/resource.d/IPv6addr
|
||||
/etc/ha.d/resource.d/LVM
|
||||
/etc/ha.d/resource.d/LVSSyncDaemonSwap
|
||||
/etc/ha.d/resource.d/LinuxSCSI
|
||||
/etc/ha.d/resource.d/MailTo
|
||||
/etc/ha.d/resource.d/OCF
|
||||
/etc/ha.d/resource.d/Raid1
|
||||
/etc/ha.d/resource.d/SendArp
|
||||
/etc/ha.d/resource.d/ServeRAID
|
||||
/etc/ha.d/resource.d/WAS
|
||||
/etc/ha.d/resource.d/WinPopup
|
||||
/etc/ha.d/resource.d/Xinetd
|
||||
/etc/ha.d/resource.d/apache
|
||||
/etc/ha.d/resource.d/db2
|
||||
/etc/ha.d/resource.d/hto-mapfuncs
|
||||
/etc/ha.d/resource.d/ids
|
||||
/etc/ha.d/resource.d/portblock
|
||||
/etc/ha.d/shellfuncs
|
||||
/etc/heartbeat
|
||||
/etc/init.d/heartbeat
|
||||
/etc/logrotate.d/heartbeat
|
||||
/etc/pam.d/hbmgmtd
|
||||
usr/bin/cl_respawn
|
||||
usr/bin/cl_status
|
||||
usr/include/clplumbing/cl_reboot.h
|
||||
usr/lib64/heartbeat/BasicSanityCheck
|
||||
usr/lib64/heartbeat/ResourceManager
|
||||
usr/lib64/heartbeat/SNMPAgentSanityCheck
|
||||
usr/lib64/heartbeat/TestHeartbeatComm
|
||||
usr/lib64/heartbeat/api_test
|
||||
usr/lib64/heartbeat/apphbd
|
||||
usr/lib64/heartbeat/apphbtest
|
||||
usr/lib64/heartbeat/atest
|
||||
usr/lib64/heartbeat/attrd
|
||||
usr/lib64/heartbeat/base64_md5_test
|
||||
usr/lib64/heartbeat/ccm
|
||||
usr/lib64/heartbeat/ccm_testclient
|
||||
usr/lib64/heartbeat/cib
|
||||
usr/lib64/heartbeat/cibmon
|
||||
usr/lib64/heartbeat/clmtest
|
||||
usr/lib64/heartbeat/crm.dtd
|
||||
usr/lib64/heartbeat/crm_commands.py
|
||||
usr/lib64/heartbeat/crm_primitive.py
|
||||
usr/lib64/heartbeat/crm_utils.py
|
||||
usr/lib64/heartbeat/crmd
|
||||
usr/lib64/heartbeat/cts
|
||||
usr/lib64/heartbeat/dopd
|
||||
usr/lib64/heartbeat/drbd-peer-outdater
|
||||
usr/lib64/heartbeat/findif
|
||||
usr/lib64/heartbeat/ha_config
|
||||
usr/lib64/heartbeat/ha_logd
|
||||
usr/lib64/heartbeat/ha_logger
|
||||
usr/lib64/heartbeat/ha_propagate
|
||||
usr/lib64/heartbeat/haresources2cib.py
|
||||
usr/lib64/heartbeat/hb_addnode
|
||||
usr/lib64/heartbeat/hb_delnode
|
||||
usr/lib64/heartbeat/hb_setsite
|
||||
usr/lib64/heartbeat/hb_setweight
|
||||
usr/lib64/heartbeat/hb_standby
|
||||
usr/lib64/heartbeat/hb_takeover
|
||||
usr/lib64/heartbeat/hbagent
|
||||
usr/lib64/heartbeat/heartbeat
|
||||
usr/lib64/heartbeat/ipctest
|
||||
usr/lib64/heartbeat/ipctransientclient
|
||||
usr/lib64/heartbeat/ipctransientserver
|
||||
usr/lib64/heartbeat/ipfail
|
||||
usr/lib64/heartbeat/logtest
|
||||
usr/lib64/heartbeat/lrmadmin
|
||||
usr/lib64/heartbeat/lrmd
|
||||
usr/lib64/heartbeat/lrmtest
|
||||
usr/lib64/heartbeat/mach_down
|
||||
usr/lib64/heartbeat/mgmtd
|
||||
usr/lib64/heartbeat/mgmtdtest
|
||||
usr/lib64/heartbeat/mlock
|
||||
usr/lib64/heartbeat/ocf-returncodes
|
||||
usr/lib64/heartbeat/ocf-shellfuncs
|
||||
usr/lib64/heartbeat/pengine
|
||||
usr/lib64/heartbeat/pingd
|
||||
usr/lib64/heartbeat/plugins/AppHBNotification/recmgr.so
|
||||
usr/lib64/heartbeat/plugins/HBauth/crc.so
|
||||
usr/lib64/heartbeat/plugins/HBauth/md5.so
|
||||
usr/lib64/heartbeat/plugins/HBauth/sha1.so
|
||||
usr/lib64/heartbeat/plugins/HBcomm/bcast.so
|
||||
usr/lib64/heartbeat/plugins/HBcomm/mcast.so
|
||||
usr/lib64/heartbeat/plugins/HBcomm/ping.so
|
||||
usr/lib64/heartbeat/plugins/HBcomm/ping_group.so
|
||||
usr/lib64/heartbeat/plugins/HBcomm/serial.so
|
||||
usr/lib64/heartbeat/plugins/HBcomm/ucast.so
|
||||
usr/lib64/heartbeat/plugins/HBcompress/bz2.so
|
||||
usr/lib64/heartbeat/plugins/HBcompress/zlib.so
|
||||
usr/lib64/heartbeat/plugins/RAExec/heartbeat.so
|
||||
usr/lib64/heartbeat/plugins/RAExec/lsb.so
|
||||
usr/lib64/heartbeat/plugins/RAExec/ocf.so
|
||||
usr/lib64/heartbeat/plugins/RAExec/stonith.so
|
||||
usr/lib64/heartbeat/plugins/quorum/majority.so
|
||||
usr/lib64/heartbeat/plugins/quorum/quorumd.so
|
||||
usr/lib64/heartbeat/plugins/quorum/twonodes.so
|
||||
usr/lib64/heartbeat/plugins/quorum/weight.so
|
||||
usr/lib64/heartbeat/plugins/quorumd/2_0_8.so
|
||||
usr/lib64/heartbeat/plugins/test/test.so
|
||||
usr/lib64/heartbeat/plugins/tiebreaker/twonodes.so
|
||||
usr/lib64/heartbeat/quorumd
|
||||
usr/lib64/heartbeat/quorumdtest
|
||||
usr/lib64/heartbeat/recoverymgrd
|
||||
usr/lib64/heartbeat/req_resource
|
||||
usr/lib64/heartbeat/send_arp
|
||||
usr/lib64/heartbeat/stonithd
|
||||
usr/lib64/heartbeat/stonithdtest/apitest
|
||||
usr/lib64/heartbeat/tengine
|
||||
usr/lib64/heartbeat/transient-test.sh
|
||||
usr/lib64/heartbeat/ttest
|
||||
usr/lib64/heartbeat/utillib.sh
|
||||
usr/lib64/libapphb.so.0
|
||||
usr/lib64/libapphb.so.0.0.0
|
||||
usr/lib64/libccmclient.so.1
|
||||
usr/lib64/libccmclient.so.1.0.0
|
||||
usr/lib64/libcib.so.1
|
||||
usr/lib64/libcib.so.1.0.1
|
||||
usr/lib64/libclm.so.1
|
||||
usr/lib64/libclm.so.1.0.0
|
||||
usr/lib64/libcrmcommon.so.1
|
||||
usr/lib64/libcrmcommon.so.1.0.1
|
||||
usr/lib64/libhbclient.so.1
|
||||
usr/lib64/libhbclient.so.1.0.0
|
||||
usr/lib64/libhbmgmt.so
|
||||
usr/lib64/libhbmgmt.so.0
|
||||
usr/lib64/libhbmgmt.so.0.0.0
|
||||
usr/lib64/libhbmgmtclient.so
|
||||
usr/lib64/libhbmgmtclient.so.0
|
||||
usr/lib64/libhbmgmtclient.so.0.0.0
|
||||
usr/lib64/libhbmgmtcommon.so
|
||||
usr/lib64/libhbmgmtcommon.so.0
|
||||
usr/lib64/libhbmgmtcommon.so.0.0.0
|
||||
usr/lib64/libhbmgmttls.so
|
||||
usr/lib64/libhbmgmttls.so.0
|
||||
usr/lib64/libhbmgmttls.so.0.0.0
|
||||
usr/lib64/liblrm.so.0
|
||||
usr/lib64/liblrm.so.0.0.0
|
||||
usr/lib64/libpe_rules.so.2
|
||||
usr/lib64/libpe_rules.so.2.0.0
|
||||
usr/lib64/libpe_status.so.2
|
||||
usr/lib64/libpe_status.so.2.0.0
|
||||
usr/lib64/libpengine.so.3
|
||||
usr/lib64/libpengine.so.3.0.0
|
||||
usr/lib64/libpils.so.1
|
||||
usr/lib64/libpils.so.1.0.0
|
||||
usr/lib64/libplumb.so.1
|
||||
usr/lib64/libplumb.so.1.0.0
|
||||
usr/lib64/libplumbgpl.so.1
|
||||
usr/lib64/libplumbgpl.so.1.0.0
|
||||
usr/lib64/librecoverymgr.so.1
|
||||
usr/lib64/librecoverymgr.so.1.0.0
|
||||
usr/lib64/libstonith.so.1
|
||||
usr/lib64/libstonith.so.1.0.0
|
||||
usr/lib64/libstonithd.so.0
|
||||
usr/lib64/libstonithd.so.0.0.0
|
||||
usr/lib64/libtransitioner.so.1
|
||||
usr/lib64/libtransitioner.so.1.0.0
|
||||
usr/lib/ocf/resource.d/heartbeat/.ocf-binaries
|
||||
usr/lib/ocf/resource.d/heartbeat/.ocf-directories
|
||||
usr/lib/ocf/resource.d/heartbeat/.ocf-returncodes
|
||||
usr/lib/ocf/resource.d/heartbeat/.ocf-shellfuncs
|
||||
usr/lib/ocf/resource.d/heartbeat/AudibleAlarm
|
||||
usr/lib/ocf/resource.d/heartbeat/ClusterMon
|
||||
usr/lib/ocf/resource.d/heartbeat/Delay
|
||||
usr/lib/ocf/resource.d/heartbeat/Dummy
|
||||
usr/lib/ocf/resource.d/heartbeat/EvmsSCC
|
||||
usr/lib/ocf/resource.d/heartbeat/Evmsd
|
||||
usr/lib/ocf/resource.d/heartbeat/Filesystem
|
||||
usr/lib/ocf/resource.d/heartbeat/ICP
|
||||
usr/lib/ocf/resource.d/heartbeat/IPaddr
|
||||
usr/lib/ocf/resource.d/heartbeat/IPaddr2
|
||||
usr/lib/ocf/resource.d/heartbeat/IPsrcaddr
|
||||
usr/lib/ocf/resource.d/heartbeat/IPv6addr
|
||||
usr/lib/ocf/resource.d/heartbeat/LVM
|
||||
usr/lib/ocf/resource.d/heartbeat/LinuxSCSI
|
||||
usr/lib/ocf/resource.d/heartbeat/MailTo
|
||||
usr/lib/ocf/resource.d/heartbeat/ManageRAID
|
||||
usr/lib/ocf/resource.d/heartbeat/ManageVE
|
||||
usr/lib/ocf/resource.d/heartbeat/Pure-FTPd
|
||||
usr/lib/ocf/resource.d/heartbeat/Raid1
|
||||
usr/lib/ocf/resource.d/heartbeat/SAPDatabase
|
||||
usr/lib/ocf/resource.d/heartbeat/SAPInstance
|
||||
usr/lib/ocf/resource.d/heartbeat/SendArp
|
||||
usr/lib/ocf/resource.d/heartbeat/ServeRAID
|
||||
usr/lib/ocf/resource.d/heartbeat/SphinxSearchDaemon
|
||||
usr/lib/ocf/resource.d/heartbeat/Stateful
|
||||
usr/lib/ocf/resource.d/heartbeat/SysInfo
|
||||
usr/lib/ocf/resource.d/heartbeat/VIPArip
|
||||
usr/lib/ocf/resource.d/heartbeat/WAS
|
||||
usr/lib/ocf/resource.d/heartbeat/WAS6
|
||||
usr/lib/ocf/resource.d/heartbeat/WinPopup
|
||||
usr/lib/ocf/resource.d/heartbeat/Xen
|
||||
usr/lib/ocf/resource.d/heartbeat/Xinetd
|
||||
usr/lib/ocf/resource.d/heartbeat/apache
|
||||
usr/lib/ocf/resource.d/heartbeat/db2
|
||||
usr/lib/ocf/resource.d/heartbeat/drbd
|
||||
usr/lib/ocf/resource.d/heartbeat/eDir88
|
||||
usr/lib/ocf/resource.d/heartbeat/ids
|
||||
usr/lib/ocf/resource.d/heartbeat/iscsi
|
||||
usr/lib/ocf/resource.d/heartbeat/mysql
|
||||
usr/lib/ocf/resource.d/heartbeat/o2cb
|
||||
usr/lib/ocf/resource.d/heartbeat/oracle
|
||||
usr/lib/ocf/resource.d/heartbeat/oralsnr
|
||||
usr/lib/ocf/resource.d/heartbeat/pgsql
|
||||
usr/lib/ocf/resource.d/heartbeat/pingd
|
||||
usr/lib/ocf/resource.d/heartbeat/portblock
|
||||
usr/lib/ocf/resource.d/heartbeat/rsyncd
|
||||
usr/lib/ocf/resource.d/heartbeat/tomcat
|
||||
usr/lib64/pils/plugins/InterfaceMgr/generic.so
|
||||
usr/lib64/stonith/plugins/external/ibmrsa
|
||||
usr/lib64/stonith/plugins/external/ibmrsa-telnet
|
||||
usr/lib64/stonith/plugins/external/ipmi
|
||||
usr/lib64/stonith/plugins/external/rackpdu
|
||||
usr/lib64/stonith/plugins/external/riloe
|
||||
usr/lib64/stonith/plugins/external/ssh
|
||||
usr/lib64/stonith/plugins/external/vmware
|
||||
usr/lib64/stonith/plugins/stonith2/apcmaster.so
|
||||
usr/lib64/stonith/plugins/stonith2/apcmastersnmp.so
|
||||
usr/lib64/stonith/plugins/stonith2/apcsmart.so
|
||||
usr/lib64/stonith/plugins/stonith2/baytech.so
|
||||
usr/lib64/stonith/plugins/stonith2/bladehpi.so
|
||||
usr/lib64/stonith/plugins/stonith2/cyclades.so
|
||||
usr/lib64/stonith/plugins/stonith2/drac3.so
|
||||
usr/lib64/stonith/plugins/stonith2/external.so
|
||||
usr/lib64/stonith/plugins/stonith2/ibmhmc.so
|
||||
usr/lib64/stonith/plugins/stonith2/meatware.so
|
||||
usr/lib64/stonith/plugins/stonith2/null.so
|
||||
usr/lib64/stonith/plugins/stonith2/nw_rpc100s.so
|
||||
usr/lib64/stonith/plugins/stonith2/rcd_serial.so
|
||||
usr/lib64/stonith/plugins/stonith2/ribcl.py
|
||||
usr/lib64/stonith/plugins/stonith2/rps10.so
|
||||
usr/lib64/stonith/plugins/stonith2/ssh.so
|
||||
usr/lib64/stonith/plugins/stonith2/suicide.so
|
||||
usr/lib64/stonith/plugins/stonith2/wti_nps.so
|
||||
usr/sbin/attrd_updater
|
||||
usr/sbin/ccm_tool
|
||||
usr/sbin/cibadmin
|
||||
usr/sbin/ciblint
|
||||
usr/sbin/crm_attribute
|
||||
usr/sbin/crm_diff
|
||||
usr/sbin/crm_failcount
|
||||
usr/sbin/crm_master
|
||||
usr/sbin/crm_mon
|
||||
usr/sbin/crm_resource
|
||||
usr/sbin/crm_sh
|
||||
usr/sbin/crm_standby
|
||||
usr/sbin/crm_uuid
|
||||
usr/sbin/crm_verify
|
||||
usr/sbin/crmadmin
|
||||
usr/sbin/ha_logger
|
||||
usr/sbin/hb_report
|
||||
usr/sbin/iso8601
|
||||
usr/sbin/meatclient
|
||||
usr/sbin/ocf-tester
|
||||
usr/sbin/ptest
|
||||
usr/sbin/stonith
|
||||
usr/share/doc/heartbeat/AUTHORS
|
||||
usr/share/doc/heartbeat/DirectoryMap.txt
|
||||
usr/share/doc/heartbeat/GettingStarted.html
|
||||
usr/share/doc/heartbeat/GettingStarted.txt
|
||||
usr/share/doc/heartbeat/HardwareGuide.html
|
||||
usr/share/doc/heartbeat/HardwareGuide.txt
|
||||
usr/share/doc/heartbeat/README
|
||||
usr/share/doc/heartbeat/README.cts
|
||||
usr/share/doc/heartbeat/Requirements.html
|
||||
usr/share/doc/heartbeat/Requirements.txt
|
||||
usr/share/doc/heartbeat/apphbd.cf
|
||||
usr/share/doc/heartbeat/authkeys
|
||||
usr/share/doc/heartbeat/faqntips.html
|
||||
usr/share/doc/heartbeat/faqntips.txt
|
||||
usr/share/doc/heartbeat/ha.cf
|
||||
usr/share/doc/heartbeat/haresources
|
||||
usr/share/doc/heartbeat/hb_report.html
|
||||
usr/share/doc/heartbeat/hb_report.txt
|
||||
usr/share/doc/heartbeat/heartbeat_api.html
|
||||
usr/share/doc/heartbeat/heartbeat_api.txt
|
||||
usr/share/doc/heartbeat/logd.cf
|
||||
usr/share/doc/heartbeat/rsync.html
|
||||
usr/share/doc/heartbeat/rsync.txt
|
||||
usr/share/doc/heartbeat/startstop
|
||||
usr/share/heartbeat/BasicSanityCheck
|
||||
usr/share/heartbeat/ResourceManager
|
||||
usr/share/heartbeat/SNMPAgentSanityCheck
|
||||
usr/share/heartbeat/TestHeartbeatComm
|
||||
usr/share/heartbeat/crm.dtd
|
||||
usr/share/heartbeat/cts/CIB.py
|
||||
usr/share/heartbeat/cts/CM_LinuxHAv2.py
|
||||
usr/share/heartbeat/cts/CM_fs.py
|
||||
usr/share/heartbeat/cts/CM_hb.py
|
||||
usr/share/heartbeat/cts/CTS.py
|
||||
usr/share/heartbeat/cts/CTSaudits.py
|
||||
usr/share/heartbeat/cts/CTSlab.py
|
||||
usr/share/heartbeat/cts/CTSproxy.py
|
||||
usr/share/heartbeat/cts/CTStests.py
|
||||
usr/share/heartbeat/cts/LSBDummy
|
||||
usr/share/heartbeat/cts/OCFIPraTest.py
|
||||
usr/share/heartbeat/cts/extracttests.py
|
||||
usr/share/heartbeat/cts/getpeinputs.sh
|
||||
usr/share/heartbeat/ha_config
|
||||
usr/share/heartbeat/ha_propagate
|
||||
usr/share/heartbeat/hb_addnode
|
||||
usr/share/heartbeat/hb_delnode
|
||||
usr/share/heartbeat/hb_setsite
|
||||
usr/share/heartbeat/hb_setweight
|
||||
usr/share/heartbeat/hb_standby
|
||||
usr/share/heartbeat/hb_takeover
|
||||
usr/share/heartbeat/lrmtest/LRMBasicSanityCheck
|
||||
usr/share/heartbeat/lrmtest/README.regression
|
||||
usr/share/heartbeat/lrmtest/defaults
|
||||
usr/share/heartbeat/lrmtest/descriptions
|
||||
usr/share/heartbeat/lrmtest/evaltest.sh
|
||||
usr/share/heartbeat/lrmtest/language
|
||||
usr/share/heartbeat/lrmtest/lrmadmin-interface
|
||||
usr/share/heartbeat/lrmtest/lrmregtest
|
||||
usr/share/heartbeat/lrmtest/lrmregtest-heartbeat
|
||||
usr/share/heartbeat/lrmtest/lrmregtest-lsb
|
||||
usr/share/heartbeat/lrmtest/regression.sh
|
||||
usr/share/heartbeat/lrmtest/testcases/BSC
|
||||
usr/share/heartbeat/lrmtest/testcases/common.filter
|
||||
usr/share/heartbeat/lrmtest/testcases/metadata
|
||||
usr/share/heartbeat/lrmtest/testcases/metadata.exp
|
||||
usr/share/heartbeat/lrmtest/testcases/ra-list.sh
|
||||
usr/share/heartbeat/lrmtest/testcases/rscexec
|
||||
usr/share/heartbeat/lrmtest/testcases/rscexec.exp
|
||||
usr/share/heartbeat/lrmtest/testcases/rscmgmt
|
||||
usr/share/heartbeat/lrmtest/testcases/rscmgmt.exp
|
||||
usr/share/heartbeat/lrmtest/testcases/rscmgmt.log_filter
|
||||
usr/share/heartbeat/lrmtest/testcases/xmllint.sh
|
||||
usr/share/heartbeat/mach_down
|
||||
usr/share/heartbeat/req_resource
|
||||
usr/share/heartbeat/stonithdtest/STONITHDBasicSanityCheck
|
||||
usr/share/heartbeat/utillib.sh
|
||||
usr/share/man/man1/cl_status.1.gz
|
||||
usr/share/man/man1/ha_logger.1.gz
|
||||
usr/share/man/man1/hb_addnode.1.gz
|
||||
usr/share/man/man1/hb_delnode.1.gz
|
||||
usr/share/man/man1/hb_standby.1.gz
|
||||
usr/share/man/man1/hb_takeover.1.gz
|
||||
usr/share/man/man8/apphbd.8.gz
|
||||
usr/share/man/man8/cibadmin.8.gz
|
||||
usr/share/man/man8/crm_resource.8.gz
|
||||
usr/share/man/man8/ha_logd.8.gz
|
||||
usr/share/man/man8/heartbeat.8.gz
|
||||
usr/share/man/man8/meatclient.8.gz
|
||||
usr/share/man/man8/stonith.8.gz
|
||||
usr/share/snmp/mibs/LINUX-HA-MIB.mib
|
||||
@ -0,0 +1,102 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# License: GNU General Public License (GPL)
|
||||
#
|
||||
# postinst script for heartbeat
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postinst> `configure' <most-recently-configured-version>
|
||||
# * <old-postinst> `abort-upgrade' <new version>
|
||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||
# <new-version>
|
||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||
# <failed-install-package> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
#
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
if ! getent group haclient > /dev/null ; then
|
||||
addgroup --system --group haclient > /dev/null
|
||||
fi
|
||||
if ! getent passwd hacluster > /dev/null ; then
|
||||
adduser --system --no-create-home \
|
||||
--ingroup haclient \
|
||||
--gecos "Heartbeat System Account" \
|
||||
--no-create-home --disabled-login \
|
||||
--home /usr/lib64/heartbeat --shell /bin/false \
|
||||
--disabled-password hacluster > /dev/null
|
||||
fi
|
||||
|
||||
#
|
||||
#fifo (0600, root, root)
|
||||
#
|
||||
rm -f /var/lib/heartbeat/fifo
|
||||
mknod -m 0600 /var/lib/heartbeat/fifo p
|
||||
|
||||
for i in /var/lib/heartbeat/ccm /var/lib/heartbeat/crm \
|
||||
/var/run/heartbeat/ccm /var/run/heartbeat/crm \
|
||||
/var/lib/heartbeat/pengine; do
|
||||
chmod 750 $i
|
||||
chown hacluster $i
|
||||
chgrp haclient $i
|
||||
done
|
||||
|
||||
|
||||
chgrp haclient /usr/bin/cl_status
|
||||
chmod 2555 /usr/bin/cl_status
|
||||
|
||||
for i in root nobody hacluster; do
|
||||
chmod 700 /var/lib/heartbeat/cores/$i
|
||||
chown $i /var/lib/heartbeat/cores/$i
|
||||
chgrp root /var/lib/heartbeat/cores/$i
|
||||
done
|
||||
|
||||
# Do we want to move the old S20 symlinks to S75 ones?
|
||||
if [ -n "$2" ] ; then
|
||||
if `dpkg --compare-versions "$2" lt 1.0.4-2`; then
|
||||
# use debconf
|
||||
. /usr/share/debconf/confmodule
|
||||
db_get heartbeat/change_init || RET="false"
|
||||
if [ "$RET" = "true" ]; then
|
||||
/usr/sbin/update-rc.d -f heartbeat remove > /dev/null
|
||||
fi
|
||||
db_stop
|
||||
fi
|
||||
fi
|
||||
update-rc.d heartbeat start 75 2 3 4 5 . stop 05 0 1 6 . >/dev/null || true
|
||||
|
||||
ldconfig
|
||||
|
||||
if which invoke-rc.d >/dev/null 2>&1; then
|
||||
invoke-rc.d heartbeat start || true
|
||||
else
|
||||
/etc/init.d/heartbeat start || true
|
||||
fi
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
# restart heartbeat
|
||||
if which invoke-rc.d >/dev/null 2>&1; then
|
||||
invoke-rc.d heartbeat start || true
|
||||
else
|
||||
/etc/init.d/heartbeat start || true
|
||||
fi
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postinst called with unknown argument \`$1'" >&2
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
||||
@ -0,0 +1,33 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# License: GNU General Public License (GPL)
|
||||
#
|
||||
# postrm script for heartbeat
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postrm> `remove'
|
||||
# * <postrm> `purge'
|
||||
# * <old-postrm> `upgrade' <new-version>
|
||||
# * <new-postrm> `failed-upgrade' <old-version>
|
||||
# * <new-postrm> `abort-install'
|
||||
# * <new-postrm> `abort-install' <old-version>
|
||||
# * <new-postrm> `abort-upgrade' <old-version>
|
||||
# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
|
||||
# for details, see /usr/doc/packaging-manual/
|
||||
|
||||
if [ "$1" = "remove" ]; then
|
||||
ldconfig
|
||||
update-rc.d -f heartbeat remove >/dev/null
|
||||
rm -f /var/lib/heartbeat/fifo
|
||||
fi
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
|
||||
@ -0,0 +1,22 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# License: GNU General Public License (GPL)
|
||||
#
|
||||
# postinst script for heartbeat
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
if [ -x /etc/init.d/heartbeat ]; then
|
||||
if which invoke-rc.d >/dev/null 2>&1; then
|
||||
invoke-rc.d heartbeat stop
|
||||
else
|
||||
/etc/init.d/heartbeat stop
|
||||
fi
|
||||
fi
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
||||
@ -0,0 +1,36 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# License: GNU General Public License (GPL)
|
||||
#
|
||||
# postrm script for heartbeat
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# It should be safe to remove these
|
||||
# As they are no longer provided by any package
|
||||
|
||||
rm -f /usr/lib64/heartbeat/cts/CIB.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CM_LinuxHAv2.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CM_fs.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CM_hb.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CTS.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CTSaudits.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CTSlab.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CTSproxy.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/CTStests.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/OCFIPraTest.pyc
|
||||
rm -f /usr/lib64/heartbeat/cts/extracttests.pyc
|
||||
rm -f /usr/lib64/heartbeat/haclient.pyc
|
||||
rm -f /usr/lib64/heartbeat/haresources2cib.pyc
|
||||
rm -f /usr/lib64/heartbeat/mgmtcmd.pyc
|
||||
rm -f /usr/lib64/heartbeat/pymgmt.pyc
|
||||
rm -f /usr/lib64/stonith/plugins/stonith2/ribcl.pyc
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
|
||||
@ -0,0 +1,8 @@
|
||||
/etc/ha.d/resource.d/ldirectord
|
||||
/etc/init.d/ldirectord
|
||||
/etc/default/ldirectord
|
||||
/etc/logrotate.d/ldirectord
|
||||
usr/lib/ocf/resource.d/heartbeat/ldirectord
|
||||
usr/sbin/ldirectord
|
||||
usr/share/doc/ldirectord/ldirectord.cf
|
||||
usr/share/man/man8/ldirectord.8.gz
|
||||
@ -0,0 +1,47 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# License: GNU General Public License (GPL)
|
||||
#
|
||||
# postinst script for ldirectord
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postinst> `configure' <most-recently-configured-version>
|
||||
# * <old-postinst> `abort-upgrade' <new version>
|
||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||
# <new-version>
|
||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||
# <failed-install-package> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see /usr/doc/packaging-manual/
|
||||
#
|
||||
# quoting from the policy:
|
||||
# Any necessary prompting should almost always be confined to the
|
||||
# post-installation script, and should be protected with a conditional
|
||||
# so that unnecessary prompting doesn't happen if a package's
|
||||
# installation fails and the `postinst' is called with `abort-upgrade',
|
||||
# `abort-remove' or `abort-deconfigure'.
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
update-rc.d ldirectord defaults >/dev/null
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postinst called with unknown argument \`$1'" >&2
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
||||
@ -0,0 +1,75 @@
|
||||
# HG changeset patch
|
||||
# User Philipp Kolmann <philipp@kolmann.at>
|
||||
# Date 1235094639 -39600
|
||||
# Node ID 6d5f0f600c0b2147490af0c5e592fc995336902a
|
||||
# Parent 4a4773bb2ea42046e24f6d6c3b6ff2eb6f105c41
|
||||
IPv6addr fails on /64 prefixes
|
||||
|
||||
Hi Simon,
|
||||
|
||||
it seems I am the one unlucky guy who uses heartbeat with IPv6....
|
||||
|
||||
I started updateing my cluster today to lenny and IPv6addr fails again:
|
||||
|
||||
scs1:/etc/heartbeat/resource.d# ./IPv6addr 2001:629:3800:33:0:0:0:122 start
|
||||
2009/02/16_20:19:50 ERROR: Generic error
|
||||
ERROR: Generic error
|
||||
|
||||
|
||||
I dug into the source of IPv6addr.c and it seems that the mask is too long
|
||||
and therefore the scan_if isn't matching.
|
||||
|
||||
I have a 2001:629:3800:33::/64 subnet but it seems from my debug output
|
||||
that IPv6addr tries to match /96 bits of the IP address which fails.
|
||||
|
||||
My C knowledge is sadly too little to fix this myself.
|
||||
|
||||
I would greatly be happy if you could help me with that.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
Hi,
|
||||
|
||||
we found some discussion about this issue here:
|
||||
|
||||
http://www.velocityreviews.com/forums/t283343-shifting-bits-shift-32-bits-on-32-bit-int.html
|
||||
|
||||
In post #4 it reads:
|
||||
The behaviour of shifts defined only if the value of the right operand
|
||||
is less than the number of bits in the left operand. So shifting a
|
||||
32-bit value by 32 or more is undefined...
|
||||
|
||||
further info in #7:
|
||||
|
||||
Better yet, read the first part of section 5.8 of the ISO/IEC 14882:2003
|
||||
standard:
|
||||
|
||||
The behavior is undefined if the right operand is negative,
|
||||
or greater than or equal to the length in bits of the
|
||||
promoted left operand.
|
||||
|
||||
So it seems that my patch is the proper fix in the end after all.
|
||||
Attached as file, since BT distroyed the formatting.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
This bug was reported as Debian bug #515662
|
||||
http://bugs.debian.org/515662
|
||||
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
diff -r 4a4773bb2ea4 -r 6d5f0f600c0b resources/OCF/IPv6addr.c
|
||||
--- a/resources/OCF/IPv6addr.c Tue Feb 17 13:34:34 2009 +0100
|
||||
+++ b/resources/OCF/IPv6addr.c Fri Feb 20 12:50:39 2009 +1100
|
||||
@@ -499,7 +499,10 @@
|
||||
n = plen / 32;
|
||||
memset(mask.s6_addr32 + n + 1, 0, (3 - n) * 4);
|
||||
s = 32 - plen % 32;
|
||||
- mask.s6_addr32[n] = 0xffffffff << s;
|
||||
+ if (s == 32)
|
||||
+ mask.s6_addr32[n] = 0x0;
|
||||
+ else
|
||||
+ mask.s6_addr32[n] = 0xffffffff << s;
|
||||
mask.s6_addr32[n] = htonl(mask.s6_addr32[n]);
|
||||
}
|
||||
|
||||
@ -0,0 +1,28 @@
|
||||
Date: Thu, 27 Dec 2007 09:40:43 +0900
|
||||
From: DAIKI MATSUDA <d.matuda@gmail.com>
|
||||
To: High-Availability Linux Development List <linux-ha-dev@lists.linux-ha.org>
|
||||
Subject: OCF-resources: SphinxSearchDaemon is not installed
|
||||
|
||||
Hi, All.
|
||||
|
||||
Congratulations to release Heartbeat 2.1.3.
|
||||
|
||||
I read Alan's release mail and made own rpm package. So, I was aware
|
||||
of difference that SphinxSearchDaemon RA is not installed. And I
|
||||
attached the simply patch file and please confirm.
|
||||
|
||||
Cc: DAIKI MATSUDA <d.matuda@gmail.com>
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
Index: heartbeat/resources/OCF/Makefile.am
|
||||
===================================================================
|
||||
--- heartbeat.orig/resources/OCF/Makefile.am 2007-11-30 16:15:19.000000000 +0900
|
||||
+++ heartbeat/resources/OCF/Makefile.am 2008-01-08 13:16:50.000000000 +0900
|
||||
@@ -76,6 +76,7 @@ ocf_SCRIPTS = ClusterMon \
|
||||
SAPInstance \
|
||||
SendArp \
|
||||
ServeRAID \
|
||||
+ SphinxSearchDaemon \
|
||||
Stateful \
|
||||
SysInfo \
|
||||
tomcat \
|
||||
@ -0,0 +1,225 @@
|
||||
--- /dev/null 2007-11-12 10:15:50.332049316 +0900
|
||||
+++ a/resources/OCF/SphinxSearchDaemon 2007-11-29 16:49:13.000000000 +0900
|
||||
@@ -0,0 +1,222 @@
|
||||
+#!/bin/sh
|
||||
+#
|
||||
+#
|
||||
+# Searchd OCF RA.
|
||||
+# Manages the Sphinx search daemon
|
||||
+#
|
||||
+# Copyright (c) 2007 Christian Rishoj (christian@rishoj.net)
|
||||
+# All Rights Reserved.
|
||||
+#
|
||||
+# This program is free software; you can redistribute it and/or modify
|
||||
+# it under the terms of version 2 of the GNU General Public License as
|
||||
+# published by the Free Software Foundation.
|
||||
+#
|
||||
+# This program is distributed in the hope that it would be useful, but
|
||||
+# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
+#
|
||||
+# Further, this software is distributed without any warranty that it is
|
||||
+# free of the rightful claim of any third person regarding infringement
|
||||
+# or the like. Any license provided herein, whether implied or
|
||||
+# otherwise, applies only to this software file. Patent licenses, if
|
||||
+# any, provided herein do not apply to combinations of this program with
|
||||
+# other software, or any other product whatsoever.
|
||||
+#
|
||||
+# You should have received a copy of the GNU General Public License
|
||||
+# along with this program; if not, write the Free Software Foundation,
|
||||
+# Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
|
||||
+#
|
||||
+
|
||||
+#######################################################################
|
||||
+# Initialization:
|
||||
+
|
||||
+. ${OCF_ROOT}/resource.d/heartbeat/.ocf-shellfuncs
|
||||
+
|
||||
+#######################################################################
|
||||
+
|
||||
+meta_data() {
|
||||
+ cat <<END
|
||||
+<?xml version="1.0"?>
|
||||
+<!DOCTYPE resource-agent SYSTEM "ra-api-1.dtd">
|
||||
+<resource-agent name="SphinxSearchDaemon" version="0.9">
|
||||
+<version>1.0</version>
|
||||
+
|
||||
+<longdesc lang="en">
|
||||
+This is a searchd Resource Agent. It manages the Sphinx Search Daemon.
|
||||
+</longdesc>
|
||||
+<shortdesc lang="en">searchd resource agent</shortdesc>
|
||||
+
|
||||
+<parameters>
|
||||
+
|
||||
+<parameter name="config" required="0" unique="1">
|
||||
+<longdesc lang="en">
|
||||
+searchd configuration file
|
||||
+</longdesc>
|
||||
+<shortdesc lang="en">Configuration file</shortdesc>
|
||||
+<content type="string" default="/etc/sphinx/sphinx.conf" />
|
||||
+</parameter>
|
||||
+
|
||||
+<parameter name="searchd" required="0" unique="0">
|
||||
+<longdesc lang="en">
|
||||
+searchd binary
|
||||
+</longdesc>
|
||||
+<shortdesc lang="en">searchd binary</shortdesc>
|
||||
+<content type="string" default="/usr/local/bin/searchd" />
|
||||
+</parameter>
|
||||
+
|
||||
+<parameter name="search" required="0" unique="0">
|
||||
+<longdesc lang="en">
|
||||
+Search binary for functional testing in the monitor action.
|
||||
+</longdesc>
|
||||
+<shortdesc lang="en">search binary</shortdesc>
|
||||
+<content type="string" default="/usr/local/bin/search" />
|
||||
+</parameter>
|
||||
+
|
||||
+<parameter name="testQuery" required="0" unique="0">
|
||||
+<longdesc lang="en">
|
||||
+Test query for functional testing in the monitor action.
|
||||
+The query does not need to match any documents in the index.
|
||||
+The purpose is merely to test whether the search daemon is
|
||||
+is able to query its indices and respond properly.
|
||||
+</longdesc>
|
||||
+<shortdesc lang="en">test query</shortdesc>
|
||||
+<content type="string" default="Heartbeat_Monitor_Query_Match_string" />
|
||||
+</parameter>
|
||||
+
|
||||
+</parameters>
|
||||
+
|
||||
+<actions>
|
||||
+<action name="start" timeout="90" />
|
||||
+<action name="stop" timeout="100" />
|
||||
+<action name="monitor" timeout="20" interval="10" depth="0" start-delay="0" />
|
||||
+<action name="meta-data" timeout="5" />
|
||||
+<action name="verify-all" timeout="30" />
|
||||
+</actions>
|
||||
+</resource-agent>
|
||||
+END
|
||||
+}
|
||||
+
|
||||
+#######################################################################
|
||||
+
|
||||
+searchd_usage() {
|
||||
+ cat <<END
|
||||
+usage: $0 {start|stop|monitor|validate-all|meta-data}
|
||||
+
|
||||
+Expects to have a fully populated OCF RA-compliant environment set.
|
||||
+END
|
||||
+}
|
||||
+
|
||||
+searchd_start() {
|
||||
+ if ! searchd_validate ; then
|
||||
+ return $OCF_ERR_GENERIC
|
||||
+ fi
|
||||
+ if ! searchd_status ; then
|
||||
+ $OCF_RESKEY_searchd --config $OCF_RESKEY_config
|
||||
+ if [ $? != 0 ]; then
|
||||
+ return $OCF_ERR_GENERIC
|
||||
+ fi
|
||||
+ fi
|
||||
+ if searchd_check ; then
|
||||
+ return $OCF_SUCCESS
|
||||
+ else
|
||||
+ return $OCF_ERR_GENERIC
|
||||
+ fi
|
||||
+}
|
||||
+
|
||||
+searchd_stop() {
|
||||
+ if ! searchd_validate ; then
|
||||
+ return $OCF_ERR_GENERIC
|
||||
+ fi
|
||||
+ if searchd_status ; then
|
||||
+ $OCF_RESKEY_searchd --config $OCF_RESKEY_config --stop
|
||||
+ if [ $? = 0 ]; then
|
||||
+ return $OCF_SUCCESS
|
||||
+ else
|
||||
+ return $OCF_ERR_GENERIC
|
||||
+ fi
|
||||
+ else
|
||||
+ return $OCF_SUCCESS
|
||||
+ fi
|
||||
+}
|
||||
+
|
||||
+isRunning()
|
||||
+{
|
||||
+ kill -0 "$1" > /dev/null && [ `ps -p "$1" | grep searchd | wc -l` -eq 1 ]
|
||||
+}
|
||||
+
|
||||
+searchd_status() {
|
||||
+ pidfile=`grep -v "^#" "$OCF_RESKEY_config" | grep -w pid_file | awk -F "[ \t]*=[ \t]*" '{ print $2 }'`
|
||||
+ if [ -f "$pidfile" ] ; then
|
||||
+ PID=`head -n 1 $pidfile`
|
||||
+ if [ ! -z "$PID" ] ; then
|
||||
+ isRunning "$PID"
|
||||
+ if [ $? = 0 ] ; then
|
||||
+ return 0
|
||||
+ fi
|
||||
+ fi
|
||||
+ fi
|
||||
+ false
|
||||
+}
|
||||
+
|
||||
+searchd_check() {
|
||||
+ $OCF_RESKEY_search --config $OCF_RESKEY_config --noinfo "$OCF_RESKEY_testQuery" > /dev/null
|
||||
+}
|
||||
+
|
||||
+searchd_monitor() {
|
||||
+ if ! searchd_validate ; then
|
||||
+ return $OCF_NOT_RUNNING
|
||||
+ fi
|
||||
+ if searchd_status ; then
|
||||
+ if searchd_check ; then
|
||||
+ return $OCF_RUNNING
|
||||
+ else
|
||||
+ return $OCF_ERR_GENERIC
|
||||
+ fi
|
||||
+ else
|
||||
+ return $OCF_NOT_RUNNING
|
||||
+ fi
|
||||
+}
|
||||
+
|
||||
+searchd_validate() {
|
||||
+ if [ ! -x "$OCF_RESKEY_search" ]; then
|
||||
+ ocf_log err "search binary '$OCF_RESKEY_search' does not exist or cannot be executed"
|
||||
+ return $OCF_ERR_ARGS
|
||||
+ fi
|
||||
+
|
||||
+ if [ ! -x "$OCF_RESKEY_searchd" ]; then
|
||||
+ ocf_log err "searchd binary '$OCF_RESKEY_searchd' does not exist or cannot be executed"
|
||||
+ return $OCF_ERR_ARGS
|
||||
+ fi
|
||||
+
|
||||
+ if [ ! -f "$OCF_RESKEY_config" ]; then
|
||||
+ ocf_log err "config file '$OCF_RESKEY_config' does not exist"
|
||||
+ return $OCF_ERR_ARGS
|
||||
+ fi
|
||||
+
|
||||
+ return $OCF_SUCCESS
|
||||
+}
|
||||
+
|
||||
+: ${OCF_RESKEY_config=/etc/sphinx/sphinx.conf}
|
||||
+: ${OCF_RESKEY_search=/usr/local/bin/search}
|
||||
+: ${OCF_RESKEY_searchd=/usr/local/bin/searchd}
|
||||
+: ${OCF_RESKEY_testQuery=Heartbeat_Monitor_Query_Match_string}
|
||||
+
|
||||
+case $__OCF_ACTION in
|
||||
+meta-data) meta_data
|
||||
+ exit $OCF_SUCCESS
|
||||
+ ;;
|
||||
+start) searchd_start;;
|
||||
+stop) searchd_stop;;
|
||||
+monitor) searchd_monitor;;
|
||||
+validate-all) searchd_validate;;
|
||||
+usage|help) searchd_usage
|
||||
+ exit $OCF_SUCCESS
|
||||
+ ;;
|
||||
+*) searchd_usage
|
||||
+ exit $OCF_ERR_UNIMPLEMENTED
|
||||
+ ;;
|
||||
+esac
|
||||
+rc=$?
|
||||
+ocf_log debug "${OCF_RESOURCE_INSTANCE} $__OCF_ACTION : $rc"
|
||||
+exit $rc
|
||||
+
|
||||
@ -0,0 +1,69 @@
|
||||
Remove bashisms in ocf-tester, hb_report and heartbeat's init script
|
||||
|
||||
Debian bug #464985
|
||||
See: http://bugs.debian.org/464985
|
||||
|
||||
In the case of the use of "echo -e" in ocf-tester, the -e flag doesn't
|
||||
exist in dash and it interpates escaape sequences by default. Bash on the
|
||||
other hand has the -e flag and may or may not interprate escape sequences
|
||||
by default. In any case, it seems that it is never called with a string
|
||||
that includes escape sequences, so it is safe just to remove -e.
|
||||
|
||||
In the case of the use of cnt=$((cnt + 1) in hb_report,
|
||||
it seems that cnt=$(($cnt + 1) is the non-bashish way to do this.
|
||||
|
||||
And in the case of the use of cmd &> /dev/null in heartbeat's init
|
||||
script, it seems that cmd >/dev/null 2>&1 is the non-bashish way
|
||||
to do this.
|
||||
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
|
||||
Index: heartbeat/heartbeat/init.d/heartbeat.in
|
||||
===================================================================
|
||||
--- heartbeat.orig/heartbeat/init.d/heartbeat.in 2008-02-15 18:24:28.000000000 +0900
|
||||
+++ heartbeat/heartbeat/init.d/heartbeat.in 2008-02-15 18:26:13.000000000 +0900
|
||||
@@ -346,7 +346,7 @@ StopHA() {
|
||||
EchoNoNl "Stopping High-Availability services: "
|
||||
|
||||
if
|
||||
- $HA_BIN/heartbeat -k &> /dev/null # Kill it
|
||||
+ $HA_BIN/heartbeat -k >/dev/null 2>&1 # Kill it
|
||||
then
|
||||
echo_success
|
||||
return 0
|
||||
Index: heartbeat/tools/hb_report.in
|
||||
===================================================================
|
||||
--- heartbeat.orig/tools/hb_report.in 2008-02-15 18:22:19.000000000 +0900
|
||||
+++ heartbeat/tools/hb_report.in 2008-02-15 18:24:11.000000000 +0900
|
||||
@@ -416,7 +416,7 @@ analyze_one() {
|
||||
for n in `getnodes`; do
|
||||
if [ "$node0" ]; then
|
||||
diffcheck $1/$node0/$2 $1/$n/$2
|
||||
- rc=$((rc+$?))
|
||||
+ rc=$(($rc+$?))
|
||||
else
|
||||
node0=$n
|
||||
fi
|
||||
@@ -557,7 +557,7 @@ if [ "$SLAVE" = "" ]; then
|
||||
[?]) usage short;;
|
||||
esac
|
||||
done
|
||||
- shift $((OPTIND-1))
|
||||
+ shift $(($OPTIND-1))
|
||||
[ $# -ne 1 ] && usage short
|
||||
DESTDIR=`echo $1 | sed 's,/*$,,'`
|
||||
chkdirname $DESTDIR
|
||||
Index: heartbeat/tools/ocf-tester.in
|
||||
===================================================================
|
||||
--- heartbeat.orig/tools/ocf-tester.in 2008-02-15 17:48:54.000000000 +0900
|
||||
+++ heartbeat/tools/ocf-tester.in 2008-02-15 18:22:01.000000000 +0900
|
||||
@@ -44,7 +44,7 @@ assert() {
|
||||
exit_code=$1; shift
|
||||
if [ $rc -ne $target ]; then
|
||||
num_errors=`expr $num_errors + 1`
|
||||
- echo -e "* rc=$rc: $msg"
|
||||
+ echo "* rc=$rc: $msg"
|
||||
if [ ! -z $exit_code ]; then
|
||||
echo "Aborting tests"
|
||||
exit $exit_code
|
||||
@ -0,0 +1,110 @@
|
||||
# HG changeset patch
|
||||
# User Rasto Levrinc <rasto@linbit.com>
|
||||
# Date 1206539836 -3600
|
||||
# Node ID 47f60bebe7b25abd88ea7b5488e66dfe187416ae
|
||||
# Parent 17c0cf487322287d0689a036c32f21b900ce5a80
|
||||
dopd: fix basic failover; fix hb message corruption by fprintf(stderr)
|
||||
|
||||
check_drbd_peer() used to return FALSE for "node name not in node list",
|
||||
so drbd-peer-outdater returned "invalid nodename".
|
||||
Then the semantic changed, and check_drbd_peer learned about "dead" peers
|
||||
and returned FALSE for them as well. Which made basic failover impossible :(
|
||||
|
||||
The return code was now changed to "peer unreachable" for a dead peer.
|
||||
And even for nodes which really are not in the host list (and thus could be
|
||||
classified as invalide), because, after all, thats what they are.
|
||||
unreachable.
|
||||
|
||||
Node name comparison needs to be case insensitive; fixed.
|
||||
|
||||
During testing with 15 concurrent drbd resources several dopd crashes have been
|
||||
observed, which after some debugging turned out to be simply a wrong assumption
|
||||
about the global availability of stderr: some fprintf(stderr, "debug message")
|
||||
had accidentally used the heartbeat communication channel file descriptor,
|
||||
which seriously confused the comm layer.
|
||||
All those fprintfs have now been changed to use cl_log.
|
||||
|
||||
diff -r 17c0cf487322 -r 47f60bebe7b2 contrib/drbd-outdate-peer/dopd.c
|
||||
--- a/contrib/drbd-outdate-peer/dopd.c Mon Mar 24 16:14:12 2008 +0100
|
||||
+++ b/contrib/drbd-outdate-peer/dopd.c Wed Mar 26 14:57:16 2008 +0100
|
||||
@@ -202,14 +202,17 @@
|
||||
}
|
||||
|
||||
/* check_drbd_peer()
|
||||
- * walk the nodes and return TRUE if peer is not this node and it exists.
|
||||
+ * walk the nodes and return
|
||||
+ * FALSE if peer is not found, not a "normal" node, or "dead"
|
||||
+ * (no point in trying to reach those nodes).
|
||||
+ * TRUE if peer is found to be alive and "normal".
|
||||
*/
|
||||
gboolean
|
||||
check_drbd_peer(const char *drbd_peer)
|
||||
{
|
||||
const char *node;
|
||||
gboolean found = FALSE;
|
||||
- if (!strcmp(drbd_peer, node_name)) {
|
||||
+ if (!strcasecmp(drbd_peer, node_name)) {
|
||||
cl_log(LOG_WARNING, "drbd peer node %s is me!\n", drbd_peer);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -306,9 +309,9 @@
|
||||
} else
|
||||
pthread_mutex_unlock(&conn_mutex);
|
||||
} else {
|
||||
- /* wrong peer was specified,
|
||||
- send return code 20 to the client */
|
||||
- send_to_client(curr_client, "20");
|
||||
+ /* peer "dead" or not in node list.
|
||||
+ * return "peer could not be reached" */
|
||||
+ send_to_client(curr_client, "5");
|
||||
}
|
||||
|
||||
ha_msg_del(msg);
|
||||
diff -r 17c0cf487322 -r 47f60bebe7b2 contrib/drbd-outdate-peer/drbd-peer-outdater.c
|
||||
--- a/contrib/drbd-outdate-peer/drbd-peer-outdater.c Mon Mar 24 16:14:12 2008 +0100
|
||||
+++ b/contrib/drbd-outdate-peer/drbd-peer-outdater.c Wed Mar 26 14:57:16 2008 +0100
|
||||
@@ -76,7 +76,7 @@
|
||||
|
||||
msg = msgfromIPC_noauth(server);
|
||||
if (!msg) {
|
||||
- fprintf(stderr, "no message from server or other "
|
||||
+ cl_log(LOG_WARNING, "no message from server or other "
|
||||
"instance is running\n");
|
||||
if (client->mainloop != NULL &&
|
||||
g_main_is_running(client->mainloop))
|
||||
@@ -92,7 +92,7 @@
|
||||
errno = 0;
|
||||
rc = strtol(rc_string, &ep, 10);
|
||||
if (errno != 0 || *ep != EOS) {
|
||||
- fprintf(stderr, "unknown message: %s from server", rc_string);
|
||||
+ cl_log(LOG_WARNING, "unknown message: %s from server", rc_string);
|
||||
client->rc = 20; /* "officially undefined", unspecified error */
|
||||
ha_msg_del(msg);
|
||||
if (client->mainloop != NULL &&
|
||||
@@ -124,7 +124,7 @@
|
||||
outdater_timeout_dispatch(gpointer user_data)
|
||||
{
|
||||
dop_client_t *client = (dop_client_t *)user_data;
|
||||
- fprintf(stderr, "error: could not connect to dopd after %i seconds"
|
||||
+ cl_log(LOG_WARNING, "error: could not connect to dopd after %i seconds"
|
||||
": timeout reached\n", client->timeout);
|
||||
if (client->mainloop != NULL && g_main_is_running(client->mainloop))
|
||||
g_main_quit(client->mainloop);
|
||||
@@ -255,7 +255,7 @@
|
||||
(gpointer)new_client, &ipc_server);
|
||||
|
||||
if (ipc_server == NULL) {
|
||||
- fprintf(stderr, "Could not connect to "T_OUTDATER" channel\n");
|
||||
+ cl_log(LOG_WARNING, "Could not connect to "T_OUTDATER" channel\n");
|
||||
dop_exit(new_client); /* unreachable */
|
||||
}
|
||||
|
||||
@@ -267,7 +267,7 @@
|
||||
ha_msg_add(update, F_OUTDATER_RES, drbd_resource);
|
||||
|
||||
if (msg2ipcchan(update, ipc_server) != HA_OK) {
|
||||
- fprintf(stderr, "Could not send message\n");
|
||||
+ cl_log(LOG_WARNING, "Could not send message\n");
|
||||
dop_exit(new_client);
|
||||
}
|
||||
|
||||
@ -0,0 +1,23 @@
|
||||
From: Simon Horman <horms@verge.net.au>
|
||||
To: Petter Reinholdtsen <pere@hungry.com>, 459497@bugs.debian.org
|
||||
Cc: linux-ha-dev@lists.linux-ha.org
|
||||
Subject: [patch] init: no need to start ntp as $time is a required-start
|
||||
|
||||
See http://wiki.debian.org/LSBInitScripts
|
||||
|
||||
Cc: Petter Reinholdtsen <pere@hungry.com>
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
Index: heartbeat/heartbeat/init.d/heartbeat.in
|
||||
===================================================================
|
||||
--- heartbeat.orig/heartbeat/init.d/heartbeat.in 2008-01-08 11:56:04.000000000 +0900
|
||||
+++ heartbeat/heartbeat/init.d/heartbeat.in 2008-01-08 11:57:15.000000000 +0900
|
||||
@@ -37,7 +37,7 @@
|
||||
# Short-Description: High-availability services.
|
||||
# Provides: heartbeat HA
|
||||
# Required-Start: $remote_fs $network $time $syslog
|
||||
-# Should-Start: ntp openhpid
|
||||
+# Should-Start: openhpid
|
||||
# Required-Stop: $remote_fs $network $time $syslog
|
||||
# Should-stop: openhpid
|
||||
# Default-Start: 2 3 4 5
|
||||
@ -0,0 +1,45 @@
|
||||
Subject: init: should-start/stop $remote_fs to init script
|
||||
From: Simon Horman <horms@verge.net.au>
|
||||
To: Petter Reinholdtsen <pere@hungry.com>, 459497@bugs.debian.org
|
||||
Cc: linux-ha-dev@lists.linux-ha.org
|
||||
Subject: [patch] init: add should-start/stop $remote_fs to init script
|
||||
In-Reply-To: <2fly7b261cx.fsf@saruman.uio.no>
|
||||
|
||||
On Sun, Jan 06, 2008 at 11:22:22PM +0100, Petter Reinholdtsen wrote:
|
||||
|
||||
[snip]
|
||||
|
||||
> I notice the package depend on openhpid. If heartbeat need openhpid
|
||||
> to start before it in the boot, it should list it in required-start or
|
||||
> should-start, depending on how hard the dependency should be. And the
|
||||
> same in required-stop or should-stop, if heartbeat need to stop before
|
||||
> openhpid during shutdown. I do not know the package enough to say.
|
||||
|
||||
Hi Petter,
|
||||
|
||||
I've looked into this breifly and I believe that the short answer is yes.
|
||||
|
||||
It seems that in Debian openhpid is a recomemdation of libopenhpi2 which
|
||||
is a dependancy of heartbeat, and thus using should-start/should-stop in
|
||||
the init script would be the most appropriate option. This should also
|
||||
nicely cover other distributions with a loose package dependancy on
|
||||
openhpid (the script in question is generic IIRC).
|
||||
|
||||
Acked-by: Petter Reinholdtsen <pere@hungry.com>
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
Index: heartbeat/heartbeat/init.d/heartbeat.in
|
||||
===================================================================
|
||||
--- heartbeat.orig/heartbeat/init.d/heartbeat.in 2008-01-07 11:53:23.000000000 +0900
|
||||
+++ heartbeat/heartbeat/init.d/heartbeat.in 2008-01-07 11:54:17.000000000 +0900
|
||||
@@ -37,8 +37,9 @@
|
||||
# Short-Description: High-availability services.
|
||||
# Provides: heartbeat HA
|
||||
# Required-Start: $remote_fs $network $time $syslog
|
||||
-# Should-Start: ntp
|
||||
+# Should-Start: ntp openhpid
|
||||
# Required-Stop: $remote_fs $network $time $syslog
|
||||
+# Should-stop: openhpid
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
### END INIT INFO
|
||||
@ -0,0 +1,108 @@
|
||||
From horms Mon Jan 7 01:27:37 2008
|
||||
Return-Path: <debbugs@rietz.debian.org>
|
||||
X-Spam-Checker-Version: SpamAssassin 3.2.1-kirsty.vergenet.net_2007012401
|
||||
(2007-05-02) on kirsty.vergenet.net
|
||||
X-Spam-Level:
|
||||
X-Spam-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00 autolearn=ham
|
||||
version=3.2.1-kirsty.vergenet.net_2007012401
|
||||
X-Original-To: horms@verge.net.au
|
||||
Delivered-To: horms@vergenet.net
|
||||
Received: from mail.au.vergenet.net [202.4.237.240]
|
||||
by tabatha.lab.ultramonkey.org with POP3 (fetchmail-6.3.8)
|
||||
for <horms@localhost> (single-drop); Mon, 07 Jan 2008 10:27:37 +0900 (JST)
|
||||
Received: from rietz.debian.org (rietz.debian.org [140.211.166.43])
|
||||
by kirsty.vergenet.net (Postfix) with ESMTP id 5E7CA24060
|
||||
for <horms@verge.net.au>; Mon, 7 Jan 2008 09:39:43 +1100 (EST)
|
||||
Received: from debbugs by rietz.debian.org with local (Exim 4.63)
|
||||
(envelope-from <debbugs@rietz.debian.org>)
|
||||
id 1JBe94-0008Vf-KQ; Sun, 06 Jan 2008 22:39:06 +0000
|
||||
X-Loop: owner@bugs.debian.org
|
||||
Subject: init: add should-start/stop $remote_fs to init script
|
||||
Reply-To: Petter Reinholdtsen <pere@hungry.com>, 459497@bugs.debian.org
|
||||
Resent-From: Petter Reinholdtsen <pere@hungry.com>
|
||||
Original-Sender: Petter Reinholdtsen <petter.reinholdtsen@usit.uio.no>
|
||||
Resent-To: debian-bugs-dist@lists.debian.org
|
||||
Resent-CC: Simon Horman <horms@debian.org>
|
||||
Resent-Date: Sun, 06 Jan 2008 22:39:04 +0000
|
||||
Resent-Message-ID: <handler.459497.B.11996581495099@bugs.debian.org>
|
||||
X-Debian-PR-Message: report 459497
|
||||
X-Debian-PR-Package: heartbeat
|
||||
X-Debian-PR-Keywords: patch
|
||||
X-Debian-PR-Source: heartbeat
|
||||
Received: via spool by submit@bugs.debian.org id=B.11996581495099
|
||||
(code B ref -1); Sun, 06 Jan 2008 22:39:04 +0000
|
||||
Received: (at submit) by bugs.debian.org; 6 Jan 2008 22:22:29 +0000
|
||||
Received: from pat.uio.no ([129.240.10.15])
|
||||
by rietz.debian.org with esmtp (Exim 4.63)
|
||||
(envelope-from <pre@saruman.uio.no>)
|
||||
id 1JBdsz-0001J6-9B
|
||||
for submit@bugs.debian.org; Sun, 06 Jan 2008 22:22:29 +0000
|
||||
Received: from mail-mx4.uio.no ([129.240.10.45])
|
||||
by pat.uio.no with esmtp (Exim 4.67)
|
||||
(envelope-from <pre@saruman.uio.no>)
|
||||
id 1JBdst-0001Uz-E5
|
||||
for submit@bugs.debian.org; Sun, 06 Jan 2008 23:22:23 +0100
|
||||
Received: from saruman.uio.no ([129.240.5.17])
|
||||
by mail-mx4.uio.no with esmtp (Exim 4.67)
|
||||
(envelope-from <pre@saruman.uio.no>)
|
||||
id 1JBdss-0006Xm-Pu; Sun, 06 Jan 2008 23:22:23 +0100
|
||||
Received: from pre by saruman.uio.no with local (Exim 4.44)
|
||||
id 1JBdss-0005XY-AZ; Sun, 06 Jan 2008 23:22:22 +0100
|
||||
To: submit@bugs.debian.org
|
||||
From: Petter Reinholdtsen <pere@hungry.com>
|
||||
Date: Sun, 06 Jan 2008 23:22:22 +0100
|
||||
Message-ID: <2fly7b261cx.fsf@saruman.uio.no>
|
||||
User-Agent: Gnus/5.1008 (Gnus v5.10.8) Emacs/21.4 (usg-unix-v)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=us-ascii
|
||||
Sender: Petter Reinholdtsen <petter.reinholdtsen@usit.uio.no>
|
||||
X-UiO-ClamAV-Virus: No
|
||||
X-UiO-Spam-info: not spam, SpamAssassin (score=-4.0, required=5.0, autolearn=disabled, AWL=0.978,UIO_MAIL_IS_INTERNAL=-5)
|
||||
X-UiO-Scanned: 970378EB478AA26CD34F4A6F0CC56B6A453886AE
|
||||
X-UiO-SPAM-Test: remote_host: 129.240.5.17 spam_score: -39 maxlevel 99990 minaction 0 bait 0 mail/h: 1 total 38077 max/h 47 blacklist 0 greylist 0 ratelimit 0
|
||||
Delivered-To: submit@bugs.debian.org
|
||||
Resent-Sender: Debian BTS <debbugs@rietz.debian.org>
|
||||
Resent-Date: Sun, 06 Jan 2008 22:39:06 +0000
|
||||
X-Loop: oathstix_finish by kirsty.vergenet.net
|
||||
X-Loop: oathstix_finish by tabatha.lab.ultramonkey.org
|
||||
Status: RO
|
||||
X-Status: A
|
||||
Content-Length: 1632
|
||||
Lines: 46
|
||||
|
||||
When testing dependency based boot sequencing, I discovered what I
|
||||
believe is a bug in the init.d/heartbeat script. It need a mounted
|
||||
/usr/, but do not depend on $remote_fs which is the dependency
|
||||
required for scripts needing /usr/. It uses the default params when
|
||||
calling update-rc.d, but do not list the equivalent runlevels in the
|
||||
LSB header.
|
||||
|
||||
Debian Bug #459497. See: http://bugs.debian.org/459497
|
||||
|
||||
Cc: Petter Reinholdtsen <pere@hungry.com>
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
diff -ur heartbeat-2.1.3.orig/heartbeat/init.d/heartbeat.in heartbeat-2.1.3/heartbeat/init.d/heartbeat.in
|
||||
--- heartbeat-2.1.3.orig/heartbeat/init.d/heartbeat.in 2008-01-06 23:07:28.000000000 +0100
|
||||
+++ heartbeat-2.1.3/heartbeat/init.d/heartbeat.in 2008-01-06 23:12:48.000000000 +0100
|
||||
@@ -36,11 +36,11 @@
|
||||
#
|
||||
# Short-Description: High-availability services.
|
||||
# Provides: heartbeat HA
|
||||
-# Required-Start: $network $time $syslog
|
||||
+# Required-Start: $remote_fs $network $time $syslog
|
||||
# Should-Start: ntp
|
||||
-# Required-Stop: $network $time $syslog
|
||||
-# Default-Start: 3 5
|
||||
-# Default-Stop: 0 6
|
||||
+# Required-Stop: $remote_fs $network $time $syslog
|
||||
+# Default-Start: 2 3 4 5
|
||||
+# Default-Stop: 0 1 6
|
||||
### END INIT INFO
|
||||
|
||||
|
||||
Happy hacking,
|
||||
--
|
||||
Petter Reinholdtsen
|
||||
|
||||
|
||||
@ -0,0 +1,39 @@
|
||||
Subject: IPv6addr: Check for netinet/icmp6.h instead of linux/icmpv6.h
|
||||
Date: Tue, 25 Dec 2007 13:51:34 +0900
|
||||
To: linux-ha-dev@lists.linux-ha.org
|
||||
Cc: Tuomo Soini <tis@foobar.fi>
|
||||
From: Simon Horman <horms@verge.net.au>
|
||||
|
||||
Configure currently checks for asm/types.h+netinet/icmp6.h,
|
||||
however this check fails on debian ia64. Changing the check
|
||||
to sys/types.h+netinet/icmp6.h resolves the problem for Debian,
|
||||
but breaks RHEL 4.
|
||||
|
||||
http://developerbugs.linux-foundation.org/show_bug.cgi?id=1660
|
||||
|
||||
This revised check looks for sys/types.h+netinet/icmp6.h which
|
||||
is more or less what resources/OCF/IPv6addr.c actually uses,
|
||||
so hopefully this check keeps all the relevant parties happy.
|
||||
|
||||
Tuomo, could you check this patch and see if it causes you pain?
|
||||
|
||||
Cc: Tuomo Soini <tis@foobar.fi>
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
Index: heartbeat/configure.in
|
||||
===================================================================
|
||||
--- heartbeat.orig/configure.in 2007-12-25 13:24:20.000000000 +0900
|
||||
+++ heartbeat/configure.in 2007-12-25 13:44:26.000000000 +0900
|
||||
@@ -1099,9 +1099,9 @@ fi
|
||||
CPPFLAGS="$CPPFLAGS $XML2HEAD"
|
||||
|
||||
dnl ************************************************************************
|
||||
-dnl * Check for linux/icmpv6.h to make enable the IPv6addr resource agent
|
||||
-AC_CHECK_HEADERS(linux/icmpv6.h,[],[],[#include <asm/types.h>])
|
||||
-AM_CONDITIONAL(USE_IPV6ADDR, test "$ac_cv_header_linux_icmpv6_h" = yes -a $new_libnet = yes )
|
||||
+dnl * Check for netinet/icmp6.h to enable the IPv6addr resource agent
|
||||
+AC_CHECK_HEADERS(netinet/icmp6.h,[],[],[#include <sys/types.h>])
|
||||
+AM_CONDITIONAL(USE_IPV6ADDR, test "$ac_cv_header_netinet_icmp6_h" = yes -a $new_libnet = yes )
|
||||
AC_CHECK_HEADERS(libxml/xpath.h)
|
||||
|
||||
dnl
|
||||
@ -0,0 +1,60 @@
|
||||
# HG changeset patch
|
||||
# User "mandrake (Geoff Harrison)" <mandrake@mandrake.net>
|
||||
# Date 1200639790 -32400
|
||||
# Node ID c01c9790d2b83f493a4aa5f86e1a5b1233d7daa2
|
||||
# Parent eaa43842608caf75552e9f755c91e35b7a2ff6d1
|
||||
[ldirectord]: clear config in memory on reload
|
||||
when re-reading a config file you're not actually killing the old config
|
||||
information. easy way to spot the symptom - move a node from one virtual
|
||||
web pool to another.
|
||||
|
||||
root@lbtest-001:~# ipvsadm -L
|
||||
IP Virtual Server version 1.2.1 (size=262144)
|
||||
Prot LocalAddress:Port Scheduler Flags
|
||||
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
|
||||
TCP 172.18.100.120:www rr
|
||||
-> 192.168.0.201:www Masq 1 0 0
|
||||
-> 192.168.0.202:www Masq 1 0 0
|
||||
TCP 172.18.100.121:www rr
|
||||
-> 192.168.0.200:www Masq 1 0 0
|
||||
TCP 172.18.100.120:mysql wrr
|
||||
-> 192.168.0.202:mysql Masq 1 0 0
|
||||
-> 192.168.0.201:mysql Masq 1 0 0
|
||||
-> 192.168.0.200:mysql Masq 1 0 0
|
||||
root@lbtest-001:~# /usr/sbin/ldirectord -d reload
|
||||
DEBUG2: Running exec(/usr/sbin/ldirectord -d reload)
|
||||
Running exec(/usr/sbin/ldirectord -d reload)
|
||||
DEBUG2: Invoking ldirectord invoked as: /usr/sbin/ldirectord reload
|
||||
Invoking ldirectord invoked as: /usr/sbin/ldirectord reload
|
||||
DEBUG2: Exiting with exit_status 0: Exiting from ldirectord reload
|
||||
Exiting with exit_status 0: Exiting from ldirectord reload
|
||||
root@lbtest-001:~# ipvsadm -L
|
||||
IP Virtual Server version 1.2.1 (size=262144)
|
||||
Prot LocalAddress:Port Scheduler Flags
|
||||
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
|
||||
TCP 172.18.100.120:www rr
|
||||
-> 192.168.0.201:www Masq 1 0 0
|
||||
TCP 172.18.100.121:www rr
|
||||
-> 192.168.0.202:www Masq 1 0 0
|
||||
-> 192.168.0.200:www Masq 1 0 0
|
||||
TCP 172.18.100.120:mysql wrr
|
||||
-> 192.168.0.202:mysql Masq 1 0 0
|
||||
-> 192.168.0.201:mysql Masq 1 0 0
|
||||
-> 192.168.0.200:mysql Masq 1 0 0
|
||||
|
||||
this did not work previously.
|
||||
|
||||
CC: "mandrake (Geoff Harrison)" <mandrake@mandrake.net>
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
diff -r eaa43842608c -r c01c9790d2b8 ldirectord/ldirectord.in
|
||||
--- a/ldirectord/ldirectord.in Fri Jan 18 16:03:10 2008 +0900
|
||||
+++ b/ldirectord/ldirectord.in Fri Jan 18 16:03:10 2008 +0900
|
||||
@@ -965,6 +965,7 @@ sub reread_config
|
||||
sub reread_config
|
||||
{
|
||||
@OLDVIRTUAL = @VIRTUAL;
|
||||
+ @VIRTUAL = ();
|
||||
my %OLD_INSTANCE = %LD_INSTANCE;
|
||||
my %RELOAD;
|
||||
my %STOP;
|
||||
@ -0,0 +1,102 @@
|
||||
# HG changeset patch
|
||||
# User "mandrake (Geoff Harrison)" <mandrake@mandrake.net>
|
||||
# Date 1200639790 -32400
|
||||
# Node ID eaa43842608caf75552e9f755c91e35b7a2ff6d1
|
||||
# Parent 7e7ff0d31af1d66e4dfd7f32905bfedfa215485c
|
||||
[ldirectord] fix sql select queries - at the expense of non-select
|
||||
unfortunately, the stuff to make the queries work with non-select doesn't
|
||||
actually work with anything doing a select out of the db, at least if you
|
||||
do something like select *
|
||||
|
||||
however, it is completely asinine to assume someone's going to regularly
|
||||
insert data from the director into dbs he's loadbalancing across, so you
|
||||
can rule that out pretty much.
|
||||
|
||||
I _CAN_ make this work if you want to do an insert / update in addition to
|
||||
the select, but it doesn't necessarily make sense to me.
|
||||
|
||||
Cc: "mandrake (Geoff Harrison)" <mandrake@mandrake.net>
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
diff -r 7e7ff0d31af1 -r eaa43842608c ldirectord/ldirectord.in
|
||||
--- a/ldirectord/ldirectord.in Thu Jan 17 22:32:50 2008 +0100
|
||||
+++ b/ldirectord/ldirectord.in Fri Jan 18 16:03:10 2008 +0900
|
||||
@@ -426,7 +426,7 @@ For a DNS check this should the name of
|
||||
For a DNS check this should the name of an A record, or the address
|
||||
of a PTR record to look up.
|
||||
|
||||
-For a MySQL, Oracle or PostgeSQL check, this should be an SQL query.
|
||||
+For a MySQL, Oracle or PostgeSQL check, this should be an SQL SELECT query.
|
||||
The data returned is not checked, only that the
|
||||
answer is one or more rows. This is a required setting.
|
||||
|
||||
@@ -2803,44 +2803,33 @@ sub check_sql
|
||||
goto err_finish;
|
||||
}
|
||||
|
||||
- # After calling "execute" $sth->{NUM_OF_FIELDS} will be greater
|
||||
- # than zero for SELECT statements, and 0 for all other statements.
|
||||
+ # On error "execute" will return undef.
|
||||
#
|
||||
- # For non-SELECT statements a non-undef value returned by
|
||||
- # "execcute" inticates the number of rows returned. "0E0" (Some
|
||||
- # garbage to make 0 true) or > 1. But testing for this isn't
|
||||
- # particularly interesting as its quite valid for operations to
|
||||
- # affect 0 rows. So for non-SELECT statements, if "execute"
|
||||
- # doesn't return undef, consider the test a success.
|
||||
- unless ($sth->{NUM_OF_FIELDS}) {
|
||||
+ # Assuming you're using 'SELECT' you will get the number of rows
|
||||
+ # returned from the db when running execute: the 'rows' method is
|
||||
+ # only used when doing something that is NOT a select. I cannot
|
||||
+ # imagine that you would ever want to insert or update from a
|
||||
+ # regular polling on this system, so we will assume you are using
|
||||
+ # SELECT here.
|
||||
+ #
|
||||
+ # Ideally you will do something like this: 'select * from
|
||||
+ # director_slave where enabled=1' This way you can have, say, a
|
||||
+ # MEMORY table in MySQL where you insert a value into a row
|
||||
+ # (enabled) that says whether or not you want to actually use this
|
||||
+ # in the pool from ldirector / ipvs, and disable them without
|
||||
+ # actually turning off your sql server.
|
||||
+
|
||||
+ unless ($rows = $sth->execute) {
|
||||
+ check_sql_log_errstr("Error executing statement:",
|
||||
+ $dbh->errstr, $dbh->err);
|
||||
+ goto err_finish;
|
||||
+ }
|
||||
+
|
||||
+ # Actually look to see if there was data returned in this statement,
|
||||
+ # else disable node
|
||||
+ if($rows > 0) {
|
||||
goto out;
|
||||
- }
|
||||
-
|
||||
- # For SELECT staements "execute" will always return a true
|
||||
- # value unless an error occurs. A "fetch" operation is performed
|
||||
- # to obtain the row returned by the SELECT statement. Again 0
|
||||
- # rows is valid.
|
||||
- #
|
||||
- # I suspect that for at leaast some DB engines "execute" will
|
||||
- # always succeed unless there is some bizzare internal error.
|
||||
- # So it seems that in order to have a reasonable test "fetch"
|
||||
- # needs to be called.
|
||||
- #
|
||||
- # I also wonder if having a table missing
|
||||
- # will result in an error or just 0 rows returned. If the
|
||||
- # latter is true then I guess we need to consider 0 rows an
|
||||
- # error state. But I'll have the code consider 0 rows a success
|
||||
- # for now leave this to be changed if testing proves it neccessary.
|
||||
-
|
||||
- # As it is important that the SELECT succeeded, rather than
|
||||
- # how may rows it returns, just call "fetchrow_arrayref" once.
|
||||
- #
|
||||
- # I guess that in a pathalogical case the query may fail
|
||||
- # at a particular row. But I'm not going to worry about that for
|
||||
- # now.
|
||||
- $row = $sth->fetchrow_arrayref;
|
||||
- unless ($row && !$sth->err) {
|
||||
- check_sql_log_errstr("Error fetching row:", $dbh->errstr);
|
||||
+ } else {
|
||||
goto err_finish;
|
||||
}
|
||||
|
||||
@ -0,0 +1,145 @@
|
||||
From horms Fri Mar 7 01:10:23 2008
|
||||
Return-Path: <debbugs@rietz.debian.org>
|
||||
X-Spam-Checker-Version: SpamAssassin 3.2.1-kirsty.vergenet.net_2007012401
|
||||
(2007-05-02) on kirsty.vergenet.net
|
||||
X-Spam-Level:
|
||||
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham
|
||||
version=3.2.1-kirsty.vergenet.net_2007012401
|
||||
X-Original-To: horms@verge.net.au
|
||||
Delivered-To: horms@vergenet.net
|
||||
Received: from mail.au.vergenet.net [202.4.237.240]
|
||||
by tabatha.lab.ultramonkey.org with POP3 (fetchmail-6.3.8)
|
||||
for <horms@localhost> (single-drop); Fri, 07 Mar 2008 10:10:23 +0900 (JST)
|
||||
Received: from rietz.debian.org (rietz.debian.org [140.211.166.43])
|
||||
by kirsty.vergenet.net (Postfix) with ESMTP id B7D182408E
|
||||
for <horms@verge.net.au>; Fri, 7 Mar 2008 09:42:16 +1100 (EST)
|
||||
Received: from debbugs by rietz.debian.org with local (Exim 4.63)
|
||||
(envelope-from <debbugs@rietz.debian.org>)
|
||||
id 1JXOjw-00088q-Ps; Thu, 06 Mar 2008 22:39:04 +0000
|
||||
X-Loop: owner@bugs.debian.org
|
||||
Subject: Bug#469764: ldirectord: Please add LSB formatted dependency info in init.d script
|
||||
Reply-To: Morten Werner Forsbring <werner@debian.org>, 469764@bugs.debian.org
|
||||
Resent-From: Morten Werner Forsbring <werner@debian.org>
|
||||
Resent-To: debian-bugs-dist@lists.debian.org
|
||||
Resent-CC: Simon Horman <horms@debian.org>
|
||||
Resent-Date: Thu, 06 Mar 2008 22:39:02 +0000
|
||||
Resent-Message-ID: <handler.469764.B.120484301829524@bugs.debian.org>
|
||||
X-Debian-PR-Message: report 469764
|
||||
X-Debian-PR-Package: ldirectord
|
||||
X-Debian-PR-Keywords: patch
|
||||
X-Debian-PR-Source: heartbeat
|
||||
Received: via spool by submit@bugs.debian.org id=B.120484301829524
|
||||
(code B ref -1); Thu, 06 Mar 2008 22:39:02 +0000
|
||||
Received: (at submit) by bugs.debian.org; 6 Mar 2008 22:36:58 +0000
|
||||
Received: from mail-forward.uio.no ([129.240.10.42])
|
||||
by rietz.debian.org with esmtp (Exim 4.63)
|
||||
(envelope-from <werner@forsbring.no>)
|
||||
id 1JXOht-0007fX-KL
|
||||
for submit@bugs.debian.org; Thu, 06 Mar 2008 22:36:58 +0000
|
||||
Received: from mail-mx3.uio.no ([129.240.10.44])
|
||||
by pat.uio.no with esmtp (Exim 4.67)
|
||||
(envelope-from <werner@forsbring.no>)
|
||||
id 1JXOhn-0000kO-Pq
|
||||
for submit@bugs.debian.org; Thu, 06 Mar 2008 23:36:51 +0100
|
||||
Received: from sid.forsbring.no ([158.36.191.200])
|
||||
by mail-mx3.uio.no with esmtps (TLSv1:AES256-SHA:256)
|
||||
(Exim 4.67)
|
||||
(envelope-from <werner@forsbring.no>)
|
||||
id 1JXOhn-0001g2-Bn
|
||||
for submit@bugs.debian.org; Thu, 06 Mar 2008 23:36:51 +0100
|
||||
Received: from localhost
|
||||
([127.0.0.1] helo=sid.forsbring.no ident=werner)
|
||||
by sid.forsbring.no with esmtp (Exim 4.63)
|
||||
(envelope-from <werner@forsbring.no>)
|
||||
id 1JXPW1-0005VV-Vo
|
||||
for submit@bugs.debian.org; Fri, 07 Mar 2008 00:28:46 +0100
|
||||
From: Morten Werner Forsbring <werner@debian.org>
|
||||
To: submit@bugs.debian.org
|
||||
Date: Fri, 07 Mar 2008 00:28:45 +0100
|
||||
Message-ID: <87skz35t5e.fsf@sid.forsbring.no>
|
||||
User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/23.0.60 (gnu/linux)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=us-ascii
|
||||
X-UiO-Spam-info: not spam, SpamAssassin (score=0.0, required=5.0, autolearn=disabled, none)
|
||||
X-UiO-Scanned: 0B0CA6F9839D49CEBA45966491A982F45BE308F3
|
||||
X-UiO-SR-test: EE6083E1527812C73ED972CFAF5726B00DA42D2A
|
||||
X-UiO-SPAM-Test: remote_host: 158.36.191.200 spam_score: 0 maxlevel 200 minaction 2 bait 0 mail/h: 4 total 287 max/h 16 blacklist 0 greylist 0 ratelimit 0
|
||||
Delivered-To: submit@bugs.debian.org
|
||||
Resent-Sender: Debian BTS <debbugs@rietz.debian.org>
|
||||
Resent-Date: Thu, 06 Mar 2008 22:39:04 +0000
|
||||
X-Loop: oathstix_finish by kirsty.vergenet.net
|
||||
X-Loop: oathstix_finish by tabatha.lab.ultramonkey.org
|
||||
Status: RO
|
||||
Content-Length: 2365
|
||||
Lines: 70
|
||||
|
||||
Package: ldirectord
|
||||
Version: 2.1.3-3
|
||||
Tags: patch
|
||||
User: initscripts-ng-devel@lists.alioth.debian.org
|
||||
Usertags: missing-dependency
|
||||
|
||||
To be able to check boot script order, and also to be able to start
|
||||
boot scripts in parallel, it is important to know the dependencies of
|
||||
the various boot scripts. The Linux Software Base specifies a init.d
|
||||
header file format useful for this purpose, and adding such header to
|
||||
the ldirectord init.d script would make it possible for us to use this
|
||||
information to check the current sequence and to speed up the Debian
|
||||
boot.
|
||||
|
||||
I am helping out with a system to update the boot sequence based on
|
||||
these dependencies, and would like see this as the default in Lenny.
|
||||
Because of this, it is nice if the dependencies was updated quickly.
|
||||
|
||||
<URL:http://refspecs.freestandards.org/LSB_2.1.0/LSB-generic/LSB-generic/initscrcomconv.html>
|
||||
documents the LSB header format. Some Debian notes are available from
|
||||
<URL:http://wiki.debian.org/LSBInitScripts>.
|
||||
|
||||
Here is a patch to document the dependencies. I hope this is correct.
|
||||
|
||||
Thanks in advance.
|
||||
|
||||
|
||||
- Werner
|
||||
|
||||
diff -ruN heartbeat-2.1.3.orig/ldirectord/init.d/ldirectord.debian
|
||||
heartbeat-2.1.3/ldirectord/init.d/ldirectord.debian
|
||||
--- heartbeat-2.1.3.orig/ldirectord/init.d/ldirectord.debian
|
||||
2007-12-21 21:45:48.000000000 +0100
|
||||
+++ heartbeat-2.1.3/ldirectord/init.d/ldirectord.debian 2008-03-06
|
||||
23:33:32.864014191 +0100
|
||||
@@ -1,4 +1,13 @@
|
||||
#!/bin/sh
|
||||
+#
|
||||
+### BEGIN INIT INFO
|
||||
+# Provides: ldirectord
|
||||
+# Required-Start: $remote_fs $syslog
|
||||
+# Required-Stop: $remote_fs $syslog
|
||||
+# Default-Start: 2 3 4 5
|
||||
+# Default-Stop: 0 1 6
|
||||
+### END INIT INFO
|
||||
+#
|
||||
# Author: Horms <horms@verge.net.au>
|
||||
#
|
||||
# Debian init script for ldirectord
|
||||
diff -ruN heartbeat-2.1.3.orig/ldirectord/init.d/ldirectord.debian.in
|
||||
heartbeat-2.1.3/ldirectord/init.d/ldirectord.debian.in
|
||||
--- heartbeat-2.1.3.orig/ldirectord/init.d/ldirectord.debian.in
|
||||
2007-12-21 16:32:27.000000000 +0100
|
||||
+++ heartbeat-2.1.3/ldirectord/init.d/ldirectord.debian.in
|
||||
2008-03-06 23:33:50.815012186 +0100
|
||||
@@ -1,4 +1,13 @@
|
||||
#!/bin/sh
|
||||
+#
|
||||
+### BEGIN INIT INFO
|
||||
+# Provides: ldirectord
|
||||
+# Required-Start: $remote_fs $syslog
|
||||
+# Required-Stop: $remote_fs $syslog
|
||||
+# Default-Start: 2 3 4 5
|
||||
+# Default-Stop: 0 1 6
|
||||
+### END INIT INFO
|
||||
+#
|
||||
# Author: Horms <horms@verge.net.au>
|
||||
#
|
||||
# Debian init script for ldirectord
|
||||
|
||||
@ -0,0 +1,76 @@
|
||||
From horms Wed Mar 26 02:37:01 2008
|
||||
Return-Path: <juliusrv@googlemail.com>
|
||||
X-Spam-Checker-Version: SpamAssassin 3.2.1-kirsty.vergenet.net_2007012401
|
||||
(2007-05-02) on kirsty.vergenet.net
|
||||
X-Spam-Level:
|
||||
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,SPF_PASS
|
||||
autolearn=ham version=3.2.1-kirsty.vergenet.net_2007012401
|
||||
X-Original-To: horms@verge.net.au
|
||||
Delivered-To: horms@vergenet.net
|
||||
Received: from mail.au.vergenet.net [202.4.237.240]
|
||||
by tabatha.lab.ultramonkey.org with POP3 (fetchmail-6.3.8)
|
||||
for <horms@localhost> (single-drop); Wed, 26 Mar 2008 11:37:01 +0900 (JST)
|
||||
Received: from wx-out-0506.google.com (wx-out-0506.google.com [66.249.82.239])
|
||||
by kirsty.vergenet.net (Postfix) with ESMTP id C4C592408E
|
||||
for <horms@verge.net.au>; Tue, 18 Mar 2008 20:31:45 +1100 (EST)
|
||||
Received: by wx-out-0506.google.com with SMTP id t14so8741969wxc.29
|
||||
for <horms@verge.net.au>; Tue, 18 Mar 2008 02:31:43 -0700 (PDT)
|
||||
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
|
||||
d=googlemail.com; s=gamma;
|
||||
h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition;
|
||||
bh=zKZkkf28M+cKoOwbFJhaOnvPkymMl1G+QAOBnXdcHIc=;
|
||||
b=s1iSzxAdgUQbKzvI1Hjq7aZP2m8MRTVTjfh7tlURoJUqS5Y1iJnKhT8p7iye0j6/ccbjZvBJbkAoRSuvo7UEYoR5e2SJdiHf8QjJ1vJ1K0fGqn6JNBc4qzD8Jo4xG5ELJJ+CMdG8oYr3MU/jND4RTrkxuWvxbNDcikKwywags4k=
|
||||
DomainKey-Signature: a=rsa-sha1; c=nofws;
|
||||
d=googlemail.com; s=gamma;
|
||||
h=message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition;
|
||||
b=P4auvvQ91MMHfUp5uHajwryiKpvRdrWP+dGkuG8mXm6veK5/FNRQJ1pkuramyD0gMj8aSWv0C+UVRg4cKHa6liN+BZHBLVv1nwu+AKmpSLm96IjL3uQdFIFLcZwhaAPgwocmPA0/veKa0Hx7qfxSsHZUIP5cLuItDIl/bvFpVm0=
|
||||
Received: by 10.114.80.4 with SMTP id d4mr1166627wab.44.1205832703086;
|
||||
Tue, 18 Mar 2008 02:31:43 -0700 (PDT)
|
||||
Received: by 10.115.73.18 with HTTP; Tue, 18 Mar 2008 02:31:43 -0700 (PDT)
|
||||
Message-ID: <441703990803180231x1fc8db5buaf836ee141fe3d53@mail.gmail.com>
|
||||
Date: Tue, 18 Mar 2008 10:31:43 +0100
|
||||
From: "Julius Volz" <juliusrv@googlemail.com>
|
||||
To: horms@verge.net.au
|
||||
Subject: [PATCH] ldirectord: Correctly declare $rows variable in check_sql()
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=ISO-8859-1
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Content-Disposition: inline
|
||||
X-Loop: oathstix_finish by tabatha.lab.ultramonkey.org
|
||||
|
||||
Hi Horms,
|
||||
|
||||
Are you the right person to submit patches for ldirectord now? Or
|
||||
would I better just send them to the linux-ha-dev list (I already sent
|
||||
this patch there, but it's been hanging in the moderator filter,
|
||||
although I'm a list member...).
|
||||
|
||||
Anyways, here it goes again, in case you are the right person to talk to:
|
||||
|
||||
In check_sql() in ldirectord, the "$rows" variable is currently
|
||||
declared incorrectly as "$row" in strict mode, leading to a Perl abort
|
||||
during startup:
|
||||
|
||||
=========================================================
|
||||
Global symbol "$rows" requires explicit package name at ldirectord line 2823.
|
||||
Global symbol "$rows" requires explicit package name at ldirectord line 2831.
|
||||
BEGIN not safe after errors--compilation aborted at ldirectord line 2924.
|
||||
|
||||
Signed-off-by: Simon Horman <horms@verge.net.au>
|
||||
|
||||
---
|
||||
Fixes Debian Bug #472663
|
||||
See: http://bugs.debian.org
|
||||
|
||||
diff -r d887e016452c ldirectord/ldirectord.in
|
||||
--- a/ldirectord/ldirectord.in Mon Mar 17 12:42:23 2008
|
||||
+++ b/ldirectord/ldirectord.in Mon Mar 17 16:48:50 2008
|
||||
@@ -2766,7 +2766,7 @@
|
||||
require DBI;
|
||||
my ($v, $r, $dbd, $dbname) = @_;
|
||||
my $port = ld_checkport($v, $r);
|
||||
- my ($dbh, $sth, $query, $row, $result);
|
||||
+ my ($dbh, $sth, $query, $rows, $result);
|
||||
$result = $SERVICE_DOWN;
|
||||
$query = $$r{request};
|
||||
$query =~ s#^/##;
|
||||
@ -0,0 +1,21 @@
|
||||
Call to rsc->get_cur_state() incorrectly lists completed operations as failed (op_status=4)
|
||||
|
||||
LF Bug #1833
|
||||
http://developerbugs.linux-foundation.org/show_bug.cgi?id=1833
|
||||
|
||||
Needs to go upstream
|
||||
|
||||
diff -r 98aeb5f25c95 lib/lrm/clientlib.c
|
||||
--- a/lib/lrm/clientlib.c Fri Feb 15 17:53:27 2008 +0100
|
||||
+++ b/lib/lrm/clientlib.c Fri Feb 15 17:53:56 2008 +0100
|
||||
@@ -1190,10 +1190,6 @@ msg_to_op(struct ha_msg* msg)
|
||||
else {
|
||||
op->output = NULL;
|
||||
}
|
||||
- /* check the rc to revise the op_status */
|
||||
- if (0 != op->rc) {
|
||||
- op->op_status = LRM_OP_ERROR;
|
||||
- }
|
||||
} else if(op->op_status == LRM_OP_PENDING) {
|
||||
op->rc = EXECRA_STATUS_UNKNOWN;
|
||||
|
||||
@ -0,0 +1,144 @@
|
||||
From horms Sun Mar 29 21:28:35 2009
|
||||
Return-Path: <bounces+20090327-horms=debian.org@packages.qa.debian.org>
|
||||
X-Spam-Checker-Version: SpamAssassin 3.2.5-kirsty.vergenet.net_2007012401
|
||||
(2008-06-10) on kirsty.vergenet.net
|
||||
X-Spam-Level:
|
||||
X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW
|
||||
autolearn=ham version=3.2.5-kirsty.vergenet.net_2007012401
|
||||
X-Original-To: horms@verge.net.au
|
||||
Delivered-To: horms@vergenet.net
|
||||
Received: from mail.au.vergenet.net [202.4.237.240]
|
||||
by yukiko.kent.sydney.vergenet.net with POP3 (fetchmail-6.3.9-rc2)
|
||||
for <horms@localhost> (single-drop); Mon, 30 Mar 2009 08:28:35 +1100 (EST)
|
||||
Received: from master.debian.org (master.debian.org [70.103.162.29])
|
||||
by kirsty.vergenet.net (Postfix) with ESMTP id A38DD24060
|
||||
for <horms@verge.net.au>; Fri, 27 Mar 2009 21:06:11 +1100 (EST)
|
||||
Received: from qa by master.debian.org with local (Exim 4.69)
|
||||
(envelope-from <bounces+20090327-horms=debian.org@packages.qa.debian.org>)
|
||||
id 1Ln8x0-0000TZ-48; Fri, 27 Mar 2009 10:06:10 +0000
|
||||
Received: from rietz.debian.org ([140.211.166.43]) by master.debian.org
|
||||
with esmtp (Exim 4.69) (envelope-from <debbugs@rietz.debian.org>) id
|
||||
1Ln8wz-0000TK-N2 for heartbeat@packages.qa.debian.org; Fri, 27 Mar 2009
|
||||
10:06:09 +0000
|
||||
Received: from debbugs by rietz.debian.org with local (Exim 4.63)
|
||||
(envelope-from <debbugs@rietz.debian.org>) id 1Ln8r6-0004Ok-JC; Fri,
|
||||
27 Mar 2009 10:00:04 +0000
|
||||
X-Loop: owner@bugs.debian.org
|
||||
Subject: Bug#521394: heartbeat: ocf resources script o2cb doesn't work
|
||||
Reply-To: Michel Rode <rmichel@devnu11.net>, 521394@bugs.debian.org
|
||||
Resent-From: Michel Rode <rmichel@devnu11.net>
|
||||
Resent-To: debian-bugs-dist@lists.debian.org
|
||||
Resent-CC: Simon Horman <horms@debian.org>
|
||||
Resent-Date: Fri, 27 Mar 2009 10:00:02 +0000
|
||||
Resent-Message-ID: <handler.521394.B.123814779814011@bugs.debian.org>
|
||||
X-Debian-PR-Message: report 521394
|
||||
X-Debian-PR-Package: heartbeat
|
||||
X-Debian-PR-Keywords: patch
|
||||
X-Debian-PR-Source: heartbeat
|
||||
Received: via spool by submit@bugs.debian.org id=B.123814779814011 (code B
|
||||
ref -1); Fri, 27 Mar 2009 10:00:02 +0000
|
||||
Received: (at submit) by bugs.debian.org; 27 Mar 2009 09:56:38 +0000
|
||||
Received: from gryps51.uni-greifswald.de ([141.53.8.24]) by
|
||||
rietz.debian.org with esmtp (Exim 4.63) (envelope-from
|
||||
<rmichel@devnu11.net>) id 1Ln8nl-0003d5-OV for submit@bugs.debian.org; Fri,
|
||||
27 Mar 2009 09:56:37 +0000
|
||||
Received: from xen1.azubi.uni-greifswald.de (unverified) by
|
||||
gryps51.uni-greifswald.de (Clearswift SMTPRS 5.2.9) with ESMTP id
|
||||
<T8d53fb523f8d3508181580@gryps51.uni-greifswald.de>; Fri, 27 Mar 2009
|
||||
10:56:08 +0100
|
||||
Content-Type: text/plain; charset="us-ascii"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
From: Michel Rode <rmichel@devnu11.net>
|
||||
To: Debian Bug Tracking System <submit@bugs.debian.org>
|
||||
Message-ID: <20090327095630.3482.63165.reportbug@xen1.azubi.uni-greifswald.de>
|
||||
X-Mailer: reportbug 3.48
|
||||
Date: Fri, 27 Mar 2009 10:56:30 +0100
|
||||
Delivered-To: submit@bugs.debian.org
|
||||
Resent-Date: Fri, 27 Mar 2009 10:00:04 +0000
|
||||
Delivered-To: heartbeat@packages.qa.debian.org
|
||||
Precedence: list
|
||||
X-Loop: heartbeat@packages.qa.debian.org
|
||||
X-Debian: PTS
|
||||
X-Debian-Package: heartbeat
|
||||
X-PTS-Package: heartbeat
|
||||
X-PTS-Keyword: bts
|
||||
List-Unsubscribe: <mailto:pts@qa.debian.org?body=unsubscribe+heartbeat>
|
||||
Resent-Sender: Debian QA <qa@master.debian.org>
|
||||
X-Loop: oathstix_finish by kirsty.vergenet.net
|
||||
X-Loop: oathstix_finish by yukiko.kent.sydney.vergenet.net
|
||||
Status: RO
|
||||
X-Status: A
|
||||
Content-Length: 3160
|
||||
Lines: 70
|
||||
|
||||
Package: heartbeat
|
||||
Version: 2.1.3-6lenny0
|
||||
Severity: critical
|
||||
Tags: patch
|
||||
Justification: breaks the whole system
|
||||
|
||||
|
||||
ocf resources script doe't start because there is a missing $ in line 314.
|
||||
|
||||
-- System Information:
|
||||
Debian Release: 5.0
|
||||
APT prefers stable
|
||||
APT policy: (500, 'stable')
|
||||
Architecture: i386 (i686)
|
||||
|
||||
Kernel: Linux 2.6.26-1-xen-686 (SMP w/1 CPU core)
|
||||
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
|
||||
Shell: /bin/sh linked to /bin/bash
|
||||
|
||||
Versions of packages heartbeat depends on:
|
||||
ii adduser 3.110 add and remove users and groups
|
||||
ii gawk 1:3.1.5.dfsg-4.1 GNU awk, a pattern scanning and pr
|
||||
ii iproute 20080725-2 networking and traffic control too
|
||||
ii iputils-ping 3:20071127-1 Tools to test the reachability of
|
||||
ii libbz2-1.0 1.0.5-1 high-quality block-sorting file co
|
||||
ii libc6 2.7-18 GNU C Library: Shared libraries
|
||||
ii libcurl3 7.18.2-8lenny2 Multi-protocol file transfer libra
|
||||
ii libglib2.0-0 2.16.6-1+lenny1 The GLib library of C routines
|
||||
ii libgnutls26 2.4.2-6 the GNU TLS library - runtime libr
|
||||
ii libltdl3 1.5.26-4 A system independent dlopen wrappe
|
||||
ii libncurses5 5.7+20081213-1 shared libraries for terminal hand
|
||||
ii libnet1 1.1.2.1-2 library for the construction and h
|
||||
ii libopenhpi2 2.12.0-1 OpenHPI libraries (runtime and sup
|
||||
ii libpam-runtime 1.0.1-5 Runtime support for the PAM librar
|
||||
ii libpam0g 1.0.1-5 Pluggable Authentication Modules l
|
||||
ii libsnmp15 5.4.1~dfsg-12 SNMP (Simple Network Management Pr
|
||||
ii libssl0.9.8 0.9.8g-15 SSL shared libraries
|
||||
ii libuuid1 1.41.3-1 universally unique id library
|
||||
ii libwrap0 7.6.q-16 Wietse Venema's TCP wrappers libra
|
||||
ii libxml2 2.6.32.dfsg-5 GNOME XML library
|
||||
ii libxml2-utils 2.6.32.dfsg-5 XML utilities
|
||||
ii mawk 1.3.3-11.1 a pattern scanning and text proces
|
||||
ii psmisc 22.6-1 Utilities that use the proc filesy
|
||||
ii python 2.5.2-3 An interactive high-level object-o
|
||||
ii python-central 0.6.8 register and build utility for Pyt
|
||||
ii zlib1g 1:1.2.3.3.dfsg-12 compression library - runtime
|
||||
|
||||
Versions of packages heartbeat recommends:
|
||||
ii iptables 1.4.2-6 administration tools for packet fi
|
||||
ii logrotate 3.7.1-5 Log rotation utility
|
||||
ii rsyslog [system-log-daemon] 3.18.6-4 enhanced multi-threaded syslogd
|
||||
|
||||
heartbeat suggests no packages.
|
||||
|
||||
-- no debconf information
|
||||
|
||||
*** /tmp/test/ocf_o2cd.patch
|
||||
--- a/resources/OCF/o2cb 2009-01-22 06:58:49.000000000 +0100
|
||||
+++ a/resources/OCF/o2cb 2009-03-24 15:56:28.000000000 +0100
|
||||
@@ -311,7 +311,7 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
-RCO2CB=INITDIR/o2cb
|
||||
+RCO2CB=$INITDIR/o2cb
|
||||
# RCO2CB=/etc/init.d/o2cb
|
||||
|
||||
if [ ! -x $RCO2CB ]; then
|
||||
|
||||
|
||||
@ -0,0 +1 @@
|
||||
+ ipv6-check.patch
|
||||
@ -0,0 +1,5 @@
|
||||
+ init-remote_fs.patch
|
||||
+ init-openhpid.patch
|
||||
+ init-ntp.patch
|
||||
+ SphinxSearchDaemon.patch
|
||||
+ SphinxSearchDaemon.install.patch
|
||||
@ -0,0 +1,4 @@
|
||||
+ bashisms.patch
|
||||
+ ldirectord-fix-sql-select-queries.patch
|
||||
+ ldirectord-clear-config-in-memory-on-reload.patch
|
||||
+ lrm-dont-revise-op_status.patch
|
||||
@ -0,0 +1 @@
|
||||
+ ldirectord-init-lsb.patch
|
||||
@ -0,0 +1 @@
|
||||
+ ldirectord-rows.patch
|
||||
@ -0,0 +1 @@
|
||||
+ dopd-fix-basic-failover-fix-hb-message-corruption-by-fprintf_stderr_.patch
|
||||
@ -0,0 +1 @@
|
||||
+ IPv6addr-64.patch
|
||||
@ -0,0 +1 @@
|
||||
+ o2cb-INITDIR.patch
|
||||
@ -0,0 +1,184 @@
|
||||
#!/usr/bin/make -f
|
||||
# Sample debian/rules that uses debhelper.
|
||||
# Copyright 1997 to 1999 by Joey Hess.
|
||||
# License: GNU General Public License (GPL)
|
||||
|
||||
#Thanks to Paolo Molaro <lupus@debian.org> and heartbeat_0.4.6-2.diff
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
#export DH_VERBOSE=1
|
||||
|
||||
#
|
||||
# Path to SSH and SCP
|
||||
# Usually this is guessed if ssh is installed.
|
||||
# However, there is a long standing bug with installing ssh
|
||||
# on arm in debian and this is preventing heartbeat from
|
||||
# moving into sarge. By adding this we can remove the build
|
||||
# dependancy on ssh and get an updated heartbeat into sarge...
|
||||
# I hope. Horms 26th July 2004
|
||||
#
|
||||
# If this is removed then the build depandancy on ssh should be
|
||||
# restored
|
||||
#
|
||||
|
||||
cfg:=--prefix=/usr --sysconfdir=/etc --localstatedir=/var \
|
||||
--mandir=/usr/share/man \
|
||||
--with-group-name=haclient --with-ccmuser-name=hacluster \
|
||||
--enable-snmp-subagent --with-mibsdir=/usr/share/snmp/mibs \
|
||||
--disable-fatal-warnings --enable-mgmt --enable-glib-malloc
|
||||
|
||||
# These are used for cross-compiling and for saving the configure script
|
||||
# from having to guess our platform (since we know it already)
|
||||
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
||||
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
||||
|
||||
CFLAGS = -Wall -g
|
||||
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
|
||||
CFLAGS += -O0
|
||||
else
|
||||
CFLAGS += -O2
|
||||
endif
|
||||
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
|
||||
INSTALL_PROGRAM += -s
|
||||
endif
|
||||
|
||||
DTMP:=`pwd`/debian/tmp
|
||||
RELEASE := $(shell dpkg-parsechangelog | awk '/^Version: / { print $$2 }')
|
||||
UPSTREAM := $(shell echo "$(RELEASE)" | sed 's/:\?\([0-9\.]\+\)-[0-9].*/\1/')
|
||||
|
||||
patch:
|
||||
override_version=$(RELEASE) sh debian/apply
|
||||
|
||||
unpatch:
|
||||
override_version=$(RELEASE) sh debian/apply $(UPSTREAM)
|
||||
|
||||
configure: checkbuild
|
||||
dh_testdir
|
||||
# Allow debian packages to also be built directly from Hg archives
|
||||
# Official debian packages are built from dist tarballs
|
||||
test ! -e ./configure || ./configure $(cfg)
|
||||
test -e ./configure || ./bootstrap $(cfg)
|
||||
|
||||
build: checkbuild configure build-stamp
|
||||
build-stamp:
|
||||
$(MAKE)
|
||||
touch build-stamp
|
||||
|
||||
clean: configure
|
||||
dh_testroot
|
||||
# Add here commands to clean up after the build process.
|
||||
-$(MAKE) clean MAKE=make
|
||||
-$(MAKE) distclean MAKE=make
|
||||
rm -f tools/ccdv
|
||||
-find . -name '*.py[co]' | xargs rm -f
|
||||
dh_clean build-stamp install-stamp
|
||||
rm -f debian/init debian/*.debhelper debian/*.substvars config.log
|
||||
rm -r -f debian/heartbeat debian/heartbeat-dev debian/ldirectord \
|
||||
debian/heartbeat-2 debian/heartbeat-2-dev debian/ldirectord-2 \
|
||||
debian/libstonith0 debian/libstonith-dev debian/stonith \
|
||||
debian/libpils0 debian/libpils-dev \
|
||||
debian/tmp
|
||||
|
||||
# Zero autoconf foo
|
||||
rm -f config.status libltdl/config.log libltdl/config.status
|
||||
|
||||
|
||||
install: build install-stamp
|
||||
install-stamp:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_clean -k
|
||||
dh_installdirs
|
||||
$(MAKE) install DESTDIR=$(DTMP) \
|
||||
MAKE=make \
|
||||
docdir=/usr/share/doc/heartbeat
|
||||
|
||||
mv $(DTMP)/usr/share/heartbeat/cts/README \
|
||||
$(DTMP)/usr/share/doc/heartbeat/README.cts
|
||||
find $(DTMP)/usr/share/man -type f | xargs gzip -v --best
|
||||
install -c -m 755 heartbeat/init.d/heartbeat \
|
||||
$(DTMP)/etc/init.d/heartbeat
|
||||
-mkdir -p $(DTMP)/usr/share/doc/ldirectord/
|
||||
install -c -m 644 ldirectord/ldirectord.cf \
|
||||
$(DTMP)/usr/share/doc/ldirectord/
|
||||
-mkdir -p $(DTMP)/etc/init.d
|
||||
install -c -m 755 ldirectord/init.d/ldirectord.debian \
|
||||
$(DTMP)/etc/init.d/ldirectord
|
||||
-mkdir -p $(DTMP)/etc/default/
|
||||
install -c -m 755 ldirectord/init.d/ldirectord.debian.default \
|
||||
$(DTMP)/etc/default/ldirectord
|
||||
cd $(DTMP)/etc/ && ln -s ha.d heartbeat
|
||||
# debug:
|
||||
find $(DTMP)
|
||||
dh_movefiles --source=debian/tmp
|
||||
|
||||
binary-indep: build install
|
||||
dh_testdir -i
|
||||
dh_testroot -i
|
||||
dh_installdebconf -i
|
||||
dh_installdocs -i
|
||||
dh_installexamples -i
|
||||
# dh_installmenu -i
|
||||
# dh_installemacsen -i
|
||||
# dh_installpam -i
|
||||
dh_installinit -i -n -u 'defaults 20 32'
|
||||
# dh_installcron -i
|
||||
dh_installman -i
|
||||
# dh_installinfo -i
|
||||
# dh_undocumented -i
|
||||
dh_installchangelogs -i
|
||||
dh_link -i
|
||||
dh_strip -i
|
||||
dh_compress -i
|
||||
dh_fixperms -i
|
||||
# dh_suidregister -i
|
||||
dh_makeshlibs -i -V
|
||||
dh_installdeb -i
|
||||
dh_perl -i
|
||||
dh_pycentral -i
|
||||
dh_python -i `pwd`/usr/lib64/heartbeat/cts `pwd`/usr/lib64/heartbeat
|
||||
dh_shlibdeps -i
|
||||
dh_gencontrol -i
|
||||
dh_md5sums -i
|
||||
dh_builddeb -i
|
||||
|
||||
binary-arch: build install
|
||||
dh_testdir -a
|
||||
dh_testroot -a
|
||||
dh_installdebconf -a
|
||||
dh_installdocs -a
|
||||
dh_installexamples -a
|
||||
# dh_installmenu -a
|
||||
# dh_installemacsen -a
|
||||
# dh_installpam -a
|
||||
dh_installinit -a -n -u 'defaults 20 32'
|
||||
# dh_installcron -a
|
||||
dh_installman -a
|
||||
# dh_installinfo -a
|
||||
# dh_undocumented -a
|
||||
dh_installchangelogs -a `pwd`/doc/ChangeLog
|
||||
dh_link -a
|
||||
dh_strip -a
|
||||
dh_compress -a
|
||||
dh_fixperms -a --exclude usr/bin/cl_status
|
||||
# dh_suidregister -a
|
||||
dh_makeshlibs -a -V
|
||||
dh_installdeb -a
|
||||
dh_perl -a
|
||||
dh_pycentral -a
|
||||
dh_python -a `pwd`/usr/lib64/heartbeat/cts `pwd`/usr/lib64/heartbeat
|
||||
dh_shlibdeps -a
|
||||
dh_gencontrol -a
|
||||
dh_md5sums -a
|
||||
dh_builddeb -a
|
||||
|
||||
binary: binary-indep binary-arch
|
||||
@echo "Any unpackaged files follow (.a and .la files omitted):"
|
||||
@cd $(DTMP) && find ./ \! -type d | egrep -v \\\.l?a
|
||||
|
||||
checkbuild:
|
||||
chmod u+x ./debian/dpkg-checkbuild
|
||||
./debian/dpkg-checkbuild debian/control
|
||||
|
||||
.PHONY: build clean binary binary-indep binary-arch install checkbuild \
|
||||
patch unpatch
|
||||
Loading…
Reference in new issue