From 4d19940fef438342f1df674da633bf37bd8d8e8f Mon Sep 17 00:00:00 2001 From: Alexandre Cassen Date: Tue, 1 Mar 2005 01:28:30 +0100 Subject: [PATCH] keepalived-1.1.11 * keepalived-1.1.11 released. * Asier Llano Palacios, extended autoconf script to support cross-compilation. * Kevin Lindsay, and I fixed a missing bitwise negation while removing signal from global signal mask. Set this operation before handler is called. This assume that bitwise negation is an atomic code generated from compiler. Since gcc 3.3 this is true. * VRRP : extended ipaddress and iproutes code to return if vip or vroutes is referencing an unknown interface. --- ChangeLog | 13 + VERSION | 2 +- configure | 106 +++- configure.in | 7 +- debian/changelog | 172 ------ debian/compat | 1 - debian/control | 24 - debian/copyright | 38 -- debian/dirs | 4 - debian/docs | 6 - debian/include/net/ip_vs.h | 999 ----------------------------------- debian/init.d | 49 -- debian/manpages | 1 - debian/rules | 13 - genhash/Makefile.in | 3 +- keepalived/Makefile.in | 3 +- keepalived/check/check_api.c | 2 +- keepalived/check/check_daemon.c | 2 +- keepalived/check/check_data.c | 2 +- keepalived/check/check_http.c | 2 +- keepalived/check/check_misc.c | 2 +- keepalived/check/check_parser.c | 2 +- keepalived/check/check_smtp.c | 2 +- keepalived/check/check_ssl.c | 2 +- keepalived/check/check_tcp.c | 2 +- keepalived/check/ipfwwrapper.c | 2 +- keepalived/check/ipvswrapper.c | 2 +- keepalived/check/ipwrapper.c | 2 +- keepalived/core/daemon.c | 2 +- keepalived/core/global_data.c | 2 +- keepalived/core/global_parser.c | 2 +- keepalived/core/layer4.c | 2 +- keepalived/core/main.c | 2 +- keepalived/core/pidfile.c | 2 +- keepalived/core/smtp.c | 2 +- keepalived/include/check_api.h | 2 +- keepalived/include/check_daemon.h | 2 +- keepalived/include/check_data.h | 2 +- keepalived/include/check_http.h | 2 +- keepalived/include/check_misc.h | 2 +- keepalived/include/check_parser.h | 2 +- keepalived/include/check_smtp.h | 2 +- keepalived/include/check_ssl.h | 2 +- keepalived/include/check_tcp.h | 2 +- keepalived/include/config.h.in | 2 +- keepalived/include/daemon.h | 2 +- keepalived/include/global_data.h | 2 +- keepalived/include/global_parser.h | 2 +- keepalived/include/ipfwwrapper.h | 2 +- keepalived/include/ipvswrapper.h | 2 +- keepalived/include/ipwrapper.h | 2 +- keepalived/include/layer4.h | 2 +- keepalived/include/main.h | 2 +- keepalived/include/pidfile.h | 2 +- keepalived/include/smtp.h | 2 +- keepalived/include/vrrp.h | 2 +- keepalived/include/vrrp_arp.h | 2 +- keepalived/include/vrrp_daemon.h | 2 +- keepalived/include/vrrp_data.h | 2 +- keepalived/include/vrrp_if.h | 2 +- keepalived/include/vrrp_index.h | 2 +- keepalived/include/vrrp_ipaddress.h | 2 +- keepalived/include/vrrp_iproute.h | 2 +- keepalived/include/vrrp_ipsecah.h | 2 +- keepalived/include/vrrp_netlink.h | 2 +- keepalived/include/vrrp_notify.h | 2 +- keepalived/include/vrrp_parser.h | 2 +- keepalived/include/vrrp_scheduler.h | 2 +- keepalived/include/vrrp_sync.h | 2 +- keepalived/include/vrrp_track.h | 2 +- keepalived/vrrp/vrrp.c | 2 +- keepalived/vrrp/vrrp_arp.c | 2 +- keepalived/vrrp/vrrp_daemon.c | 2 +- keepalived/vrrp/vrrp_data.c | 2 +- keepalived/vrrp/vrrp_if.c | 2 +- keepalived/vrrp/vrrp_index.c | 2 +- keepalived/vrrp/vrrp_ipaddress.c | 9 +- keepalived/vrrp/vrrp_iproute.c | 13 +- keepalived/vrrp/vrrp_ipsecah.c | 2 +- keepalived/vrrp/vrrp_netlink.c | 2 +- keepalived/vrrp/vrrp_notify.c | 2 +- keepalived/vrrp/vrrp_parser.c | 2 +- keepalived/vrrp/vrrp_scheduler.c | 2 +- keepalived/vrrp/vrrp_sync.c | 2 +- keepalived/vrrp/vrrp_track.c | 2 +- lib/html.c | 2 +- lib/html.h | 2 +- lib/list.c | 2 +- lib/list.h | 2 +- lib/memory.c | 2 +- lib/memory.h | 2 +- lib/notify.c | 2 +- lib/notify.h | 2 +- lib/parser.c | 2 +- lib/parser.h | 2 +- lib/scheduler.c | 2 +- lib/scheduler.h | 2 +- lib/signals.c | 10 +- lib/signals.h | 2 +- lib/timer.c | 2 +- lib/timer.h | 2 +- lib/utils.c | 2 +- lib/utils.h | 2 +- lib/vector.c | 2 +- lib/vector.h | 2 +- 105 files changed, 226 insertions(+), 1419 deletions(-) delete mode 100644 debian/changelog delete mode 100644 debian/compat delete mode 100644 debian/control delete mode 100644 debian/copyright delete mode 100644 debian/dirs delete mode 100644 debian/docs delete mode 100644 debian/include/net/ip_vs.h delete mode 100644 debian/init.d delete mode 100644 debian/manpages delete mode 100644 debian/rules diff --git a/ChangeLog b/ChangeLog index 418eadb..dc4c509 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2005-03-01 Alexandre Cassen + * keepalived-1.1.11 released. + * Asier Llano Palacios, extended + autoconf script to support cross-compilation. + * Kevin Lindsay, and I fixed a + missing bitwise negation while removing signal from + global signal mask. Set this operation before handler + is called. This assume that bitwise negation is an + atomic code generated from compiler. Since gcc 3.3 + this is true. + * VRRP : extended ipaddress and iproutes code to return + if vip or vroutes is referencing an unknown interface. + 2005-02-15 Alexandre Cassen * keepalived-1.1.10 released. * VRRP : While restoring interface, release iproutes diff --git a/VERSION b/VERSION index 5ed5faa..9ee1f78 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.1.10 +1.1.11 diff --git a/configure b/configure index 5ce09b9..4556b31 100755 --- a/configure +++ b/configure @@ -309,7 +309,7 @@ ac_includes_default="\ # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CPP EGREP LINKWATCH_SUPPORT KERN IPVS_SYNCD DFLAGS VERSION VERSION_DATE IPVS_SUPPORT VRRP_SUPPORT LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA STRIP ac_ct_STRIP CPP EGREP LINKWATCH_SUPPORT KERN IPVS_SYNCD DFLAGS VERSION VERSION_DATE IPVS_SUPPORT VRRP_SUPPORT LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -2336,6 +2336,85 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_STRIP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + echo "$as_me:$LINENO: result: $STRIP" >&5 +echo "${ECHO_T}$STRIP" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 +echo "${ECHO_T}$ac_ct_STRIP" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + STRIP=$ac_ct_STRIP +else + STRIP="$ac_cv_prog_STRIP" +fi + # Check whether --enable-lvs-syncd or --disable-lvs-syncd was given. if test "${enable_lvs_syncd+set}" = set; then @@ -2356,9 +2435,9 @@ fi; # Check whether --with-kernel-dir or --without-kernel-dir was given. if test "${with_kernel_dir+set}" = set; then withval="$with_kernel_dir" - kernelinc="$withval/include" + kernelinc="$withval/include" kernelpath="$withval" else - kernelinc="/usr/src/linux/include" + kernelinc="/usr/src/linux/include" kernelpath="/usr/src/linux" fi; # Check whether --enable-debug or --disable-debug was given. if test "${enable_debug+set}" = set; then @@ -3555,24 +3634,25 @@ echo "${ECHO_T}$LINUX_MAJOR.$LINUX_MINOR.$LINUX_PATCH" >&6 echo "$as_me: WARNING: Cannot determine Linux Kernel version." >&2;} fi -echo "$as_me:$LINENO: checking for /usr/src/linux/net/core/link_watch.c" >&5 -echo $ECHO_N "checking for /usr/src/linux/net/core/link_watch.c... $ECHO_C" >&6 -if test "${ac_cv_file__usr_src_linux_net_core_link_watch_c+set}" = set; then +as_ac_File=`echo "ac_cv_file_$kernelpath/net/core/link_watch.c" | $as_tr_sh` +echo "$as_me:$LINENO: checking for $kernelpath/net/core/link_watch.c" >&5 +echo $ECHO_N "checking for $kernelpath/net/core/link_watch.c... $ECHO_C" >&6 +if eval "test \"\${$as_ac_File+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else test "$cross_compiling" = yes && { { echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5 echo "$as_me: error: cannot check for file existence when cross compiling" >&2;} { (exit 1); exit 1; }; } -if test -r "/usr/src/linux/net/core/link_watch.c"; then - ac_cv_file__usr_src_linux_net_core_link_watch_c=yes +if test -r "$kernelpath/net/core/link_watch.c"; then + eval "$as_ac_File=yes" else - ac_cv_file__usr_src_linux_net_core_link_watch_c=no + eval "$as_ac_File=no" fi fi -echo "$as_me:$LINENO: result: $ac_cv_file__usr_src_linux_net_core_link_watch_c" >&5 -echo "${ECHO_T}$ac_cv_file__usr_src_linux_net_core_link_watch_c" >&6 -if test $ac_cv_file__usr_src_linux_net_core_link_watch_c = yes; then +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_File'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_File'}'`" >&6 +if test `eval echo '${'$as_ac_File'}'` = yes; then LINKWATCH_SUPPORT="_WITH_LINKWATCH_" @@ -5125,6 +5205,8 @@ s,@OBJEXT@,$OBJEXT,;t t s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t s,@INSTALL_DATA@,$INSTALL_DATA,;t t +s,@STRIP@,$STRIP,;t t +s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t s,@CPP@,$CPP,;t t s,@EGREP@,$EGREP,;t t s,@LINKWATCH_SUPPORT@,$LINKWATCH_SUPPORT,;t t diff --git a/configure.in b/configure.in index 14e4219..bc93edf 100644 --- a/configure.in +++ b/configure.in @@ -15,6 +15,7 @@ OUTPUT_TARGET="Makefile genhash/Makefile keepalived/core/Makefile keepalived/inc dnl ----[ Checks for programs ]---- AC_PROG_CC AC_PROG_INSTALL +AC_CHECK_TOOL(STRIP,strip) dnl ----[ Keepalived specific configure options ]---- AC_ARG_ENABLE(lvs-syncd, @@ -25,8 +26,8 @@ AC_ARG_ENABLE(vrrp, [ --disable-vrrp do not use the VRRP framework]) AC_ARG_WITH(kernel-dir, [ --with-kernel-dir=DIR path to linux kernel source directory], - [kernelinc="$withval/include"], - [kernelinc="/usr/src/linux/include"]) + [kernelinc="$withval/include" kernelpath="$withval"], + [kernelinc="/usr/src/linux/include" kernelpath="/usr/src/linux"]) AC_ARG_ENABLE(debug, [ --enable-debug compile with debugging flags]) AC_ARG_ENABLE(profile, @@ -86,7 +87,7 @@ AC_TRY_RUN([ AC_MSG_WARN([Cannot determine Linux Kernel version.]) fi -AC_CHECK_FILE(/usr/src/linux/net/core/link_watch.c, [ +AC_CHECK_FILE($kernelpath/net/core/link_watch.c, [ LINKWATCH_SUPPORT="_WITH_LINKWATCH_" ], [ LINKWATCH_SUPPORT="_WITHOUT_LINKWATCH_" diff --git a/debian/changelog b/debian/changelog deleted file mode 100644 index 1df23cd..0000000 --- a/debian/changelog +++ /dev/null @@ -1,172 +0,0 @@ -keepalived (1.1.10) unstable; urgency=low - - * Cf ChangeLog - - -- Alexandre Cassen Tue, 14 Feb 2005 22:15:23 +0200 - -keepalived (1.1.9) unstable; urgency=low - - * Cf ChangeLog - - -- Alexandre Cassen Tue, 07 Feb 2005 03:17:15 +0200 - -keepalived (1.1.8) unstable; urgency=low - - * Cf ChangeLog - - -- Alexandre Cassen Tue, 25 Jan 2005 21:15:22 +0200 - -keepalived (1.1.7-2) unstable; urgency=low - - * New Maintainer: Alexander Wirt - No Bugs, no problems with this package. Thanks for the good - work Andres, I'm happy to take this package - - -- Alexander Wirt Wed, 19 May 2004 20:32:03 +0200 - -keepalived (1.1.7-1) unstable; urgency=low - - * New upstream release. - * 003-genhash_8.patch: drop genhash manpage, as it's been merged upstream. - * 001-genhash_1.patch: add new manpage location fix; should be genhash(1). - - -- Andres Salomon Sun, 02 May 2004 23:44:39 -0400 - -keepalived (1.1.6-1) unstable; urgency=low - - * New upstream release. - * Drop 001-really_distclean.patch and 002-use_destdir.patch; merged - upstream. - * 003-genhash_8.patch: add genhash manpage. - * Update ip_vs.h to version from 2.6.4-1. Keepalived now compiles - using 2.6 headers. Update description accordingly. - * Update copyright file. - * Make init script not check if kernel has IPVS support (closes: #237141). - - -- Andres Salomon Tue, 30 Mar 2004 22:05:24 -0500 - -keepalived (1.1.5-2) unstable; urgency=low - - * Can't use kernel-headers package, not all arch have it. Revert - back to storing headers in debian/ subdir. - - -- Andres Salomon Tue, 10 Feb 2004 02:38:14 -0500 - -keepalived (1.1.5-1) unstable; urgency=low - - * New upstream release. (Closes: #231418) - * Now that ipvs is in 2.4, use kernel-headers package instead of storing - kernel headers in debian/ subdir. Add appropriate build-dep. - * Convert buildsys to cdbs and update standards-version. - * 001-really_distclean.patch: clean binaries out of ./bin. - * 002-use_destdir.patch: add DESTDIR to makefiles. - * Upstream now has manpages for keepalived and keepalived.conf. - - -- Andres Salomon Fri, 30 Jan 2004 02:51:47 -0500 - -keepalived (1.0.3-1) unstable; urgency=low - - * New upstream release; I'm going to wait for this release to enter - testing before allowing the 1.1.x series into unstable. (Closes: #199437) - * Update maintainer email address. - * Update standards-version. - * Update kernel headers and scripts. - - -- Andres Salomon Sat, 26 Jul 2003 01:03:19 -0400 - -keepalived (1.0.2-1) unstable; urgency=low - - * New upstream release. - * Fixed previous changelog entry's year (2002 -> 2003), so it doesn's appear - that I time travel. At the very least, I wouldn't want people discovering - my secret, and risk my time machine falling into the wrong hands. - * Upstream docs changed location; updated. - * Dropped dh_undocumented usage. - * Added reload support to the init script. - - -- Andres Salomon Thu, 17 Apr 2003 00:38:48 -0500 - -keepalived (1.0.0-1) unstable; urgency=low - - * New upstream release. - * Update standards-version to 3.5.8.0. - * Update kernel headers for ipvs-1.0.7. - - -- Andres Salomon Fri, 17 Jan 2003 15:26:38 -0400 - -keepalived (0.7.6-1) unstable; urgency=low - - * New upstream release. - * Several minor description/copyright changes to make new lintian happy. - * Add removal of config.log to clean target in debian/rules. - - -- Andres Salomon Sun, 8 Dec 2002 23:59:17 -0400 - -keepalived (0.7.1-1) unstable; urgency=low - - * New upstream release. - * Update kernel headers for ipvs-1.0.6. - * Remove dependance upon gcc-3.0; upstream says 2.95 works fine now, - and we should be transitioning to gcc-3.2 soon, anyways (hopefully). - - -- Andres Salomon Sat, 21 Sep 2002 16:05:52 -0400 - -keepalived (0.6.10-2) unstable; urgency=low - - * Add OpenSSL exception clause to the copyright file. - - -- Andres Salomon Thu, 22 Aug 2002 11:48:16 -0400 - -keepalived (0.6.10-1) unstable; urgency=low - - * New upstream release. - * Update kernel headers to 2.4.19 and ipvs-1.0.4. - - -- Andres Salomon Wed, 14 Aug 2002 23:42:48 -0400 - -keepalived (0.6.8-1) unstable; urgency=low - - * New upstream release. - * Updated description to mention VRRPv2. - * Depend upon gcc-3.0, since gcc-2.95 and keepalived have, uh, issues. - * Updated various paths to reflect changed build system/layout. - - -- Andres Salomon Thu, 18 Jul 2002 01:47:42 -0500 - -keepalived (0.6.2-1) unstable; urgency=low - - * New upstream release, upload to archive. (Closes: #144100) - * Autoconf sanity upstream, remove configure.in/Makefile.in patches. - * Fix typo in top level Makefile.in. - * Updated URL for keepalived (keepalived.sf.net -> www.keepalived.org). - * For easier maintenance of kernel header files, grab scripts from my - devmapper package. - - -- Andres Salomon Sun, 16 Jun 2002 15:47:39 -0500 - -keepalived (0.5.8-1) unstable; urgency=low - - * New upstream release. - * Note the OpenSSL exception clause in the README. - - -- Andres Salomon Tue, 21 May 2002 15:18:02 -0500 - -keepalived (0.5.7-1) unstable; urgency=low - - * New upstream release (w/ SSL_GET fixes!). - * Moved sample configs to doc directory. - - -- Andres Salomon Thu, 2 May 2002 20:14:38 -0500 - -keepalived (0.5.6-1) unstable; urgency=low - - * New upstream release. - - -- Andres Salomon Thu, 11 Apr 2002 01:38:19 -0500 - -keepalived (0.5.5-1) unstable; urgency=low - - * Initial Release. - - -- Andres Salomon Thu, 11 Apr 2002 01:38:19 -0500 - diff --git a/debian/compat b/debian/compat deleted file mode 100644 index b8626c4..0000000 --- a/debian/compat +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/debian/control b/debian/control deleted file mode 100644 index 28075a4..0000000 --- a/debian/control +++ /dev/null @@ -1,24 +0,0 @@ -Source: keepalived -Section: admin -Priority: optional -Maintainer: Alexander Wirt -Build-Depends: debhelper (>> 4.1.0), libssl-dev, libpopt-dev, textutils, cdbs -Standards-Version: 3.6.1 - -Package: keepalived -Section: admin -Architecture: any -Depends: ${shlibs:Depends}, ipvsadm -Description: Failover and monitoring daemon for LVS clusters - keepalived is used for monitoring real servers within a Linux - Virtual Server (LVS) cluster. keepalived can be configured to - remove real servers from the cluster pool if it stops responding, - as well as send a notification email to make the admin aware of - the service failure. - . - In addition, keepalived implements an independent Virtual Router - Redundancy Protocol (VRRPv2; see rfc2338 for additional info) - framework for director failover. - . - Note that keepalived is compiled with the expectations of being - used on a Linux 2.4.x or 2.6.x system. diff --git a/debian/copyright b/debian/copyright deleted file mode 100644 index 3cb3972..0000000 --- a/debian/copyright +++ /dev/null @@ -1,38 +0,0 @@ -This package was debianized by Andres Salomon on -Thu, 11 Apr 2002 01:38:19 -0400. - -And is now maintained from Alexander Wirt on -Do Mai 20 00:51:09 CEST 2004 - -It was downloaded from http://www.keepalived.org/ - -Upstream Author: Alexandre Cassen - -Copyright (C) 2001-2004 Alexandre Cassen - -keepalived 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. - -keepalived 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 - -On Debian systems, the full text of the GPL can be found in -/usr/share/common-licenses/GPL - -Additionally, the following clause applies: - -In addition, as the copyright holder of Keepalived, -I, Alexandre Cassen, , -grant the following special exception: - - I, Alexandre Cassen, , explicitly allow - the compilation and distribution of the Keepalived software with - the OpenSSL Toolkit. diff --git a/debian/dirs b/debian/dirs deleted file mode 100644 index 4cdca10..0000000 --- a/debian/dirs +++ /dev/null @@ -1,4 +0,0 @@ -usr/bin -usr/sbin -etc/keepalived -usr/share/doc/keepalived/samples diff --git a/debian/docs b/debian/docs deleted file mode 100644 index 602f9cc..0000000 --- a/debian/docs +++ /dev/null @@ -1,6 +0,0 @@ -AUTHOR -CONTRIBUTORS -TODO -README -doc/keepalived.conf* -doc/samples diff --git a/debian/include/net/ip_vs.h b/debian/include/net/ip_vs.h deleted file mode 100644 index 9ba2479..0000000 --- a/debian/include/net/ip_vs.h +++ /dev/null @@ -1,999 +0,0 @@ -/* - * IP Virtual Server - * data structure and functionality definitions - */ - -#ifndef _IP_VS_H -#define _IP_VS_H - -#include /* For __uXX types */ - -#define IP_VS_VERSION_CODE 0x010200 -#define NVERSION(version) \ - (version >> 16) & 0xFF, \ - (version >> 8) & 0xFF, \ - version & 0xFF - -/* - * Virtual Service Flags - */ -#define IP_VS_SVC_F_PERSISTENT 0x0001 /* persistent port */ -#define IP_VS_SVC_F_HASHED 0x0002 /* hashed entry */ - -/* - * Destination Server Flags - */ -#define IP_VS_DEST_F_AVAILABLE 0x0001 /* server is available */ -#define IP_VS_DEST_F_OVERLOAD 0x0002 /* server is overloaded */ - -/* - * IPVS sync daemon states - */ -#define IP_VS_STATE_NONE 0x0000 /* daemon is stopped */ -#define IP_VS_STATE_MASTER 0x0001 /* started as master */ -#define IP_VS_STATE_BACKUP 0x0002 /* started as backup */ - -/* - * IPVS socket options - */ -#define IP_VS_BASE_CTL (64+1024+64) /* base */ - -#define IP_VS_SO_SET_NONE IP_VS_BASE_CTL /* just peek */ -#define IP_VS_SO_SET_INSERT (IP_VS_BASE_CTL+1) -#define IP_VS_SO_SET_ADD (IP_VS_BASE_CTL+2) -#define IP_VS_SO_SET_EDIT (IP_VS_BASE_CTL+3) -#define IP_VS_SO_SET_DEL (IP_VS_BASE_CTL+4) -#define IP_VS_SO_SET_FLUSH (IP_VS_BASE_CTL+5) -#define IP_VS_SO_SET_LIST (IP_VS_BASE_CTL+6) -#define IP_VS_SO_SET_ADDDEST (IP_VS_BASE_CTL+7) -#define IP_VS_SO_SET_DELDEST (IP_VS_BASE_CTL+8) -#define IP_VS_SO_SET_EDITDEST (IP_VS_BASE_CTL+9) -#define IP_VS_SO_SET_TIMEOUT (IP_VS_BASE_CTL+10) -#define IP_VS_SO_SET_STARTDAEMON (IP_VS_BASE_CTL+11) -#define IP_VS_SO_SET_STOPDAEMON (IP_VS_BASE_CTL+12) -#define IP_VS_SO_SET_RESTORE (IP_VS_BASE_CTL+13) -#define IP_VS_SO_SET_SAVE (IP_VS_BASE_CTL+14) -#define IP_VS_SO_SET_ZERO (IP_VS_BASE_CTL+15) -#define IP_VS_SO_SET_MAX IP_VS_SO_SET_ZERO - -#define IP_VS_SO_GET_VERSION IP_VS_BASE_CTL -#define IP_VS_SO_GET_INFO (IP_VS_BASE_CTL+1) -#define IP_VS_SO_GET_SERVICES (IP_VS_BASE_CTL+2) -#define IP_VS_SO_GET_SERVICE (IP_VS_BASE_CTL+3) -#define IP_VS_SO_GET_DESTS (IP_VS_BASE_CTL+4) -#define IP_VS_SO_GET_DEST (IP_VS_BASE_CTL+5) /* not used now */ -#define IP_VS_SO_GET_TIMEOUT (IP_VS_BASE_CTL+6) -#define IP_VS_SO_GET_DAEMON (IP_VS_BASE_CTL+7) -#define IP_VS_SO_GET_MAX IP_VS_SO_GET_DAEMON - - -/* - * IPVS Connection Flags - */ -#define IP_VS_CONN_F_FWD_MASK 0x0007 /* mask for the fwd methods */ -#define IP_VS_CONN_F_MASQ 0x0000 /* masquerading/NAT */ -#define IP_VS_CONN_F_LOCALNODE 0x0001 /* local node */ -#define IP_VS_CONN_F_TUNNEL 0x0002 /* tunneling */ -#define IP_VS_CONN_F_DROUTE 0x0003 /* direct routing */ -#define IP_VS_CONN_F_BYPASS 0x0004 /* cache bypass */ -#define IP_VS_CONN_F_SYNC 0x0020 /* entry created by sync */ -#define IP_VS_CONN_F_HASHED 0x0040 /* hashed entry */ -#define IP_VS_CONN_F_NOOUTPUT 0x0080 /* no output packets */ -#define IP_VS_CONN_F_INACTIVE 0x0100 /* not established */ -#define IP_VS_CONN_F_OUT_SEQ 0x0200 /* must do output seq adjust */ -#define IP_VS_CONN_F_IN_SEQ 0x0400 /* must do input seq adjust */ -#define IP_VS_CONN_F_SEQ_MASK 0x0600 /* in/out sequence mask */ -#define IP_VS_CONN_F_NO_CPORT 0x0800 /* no client port set yet */ - -/* Move it to better place one day, for now keep it unique */ -#define NFC_IPVS_PROPERTY 0x10000 - -#define IP_VS_SCHEDNAME_MAXLEN 16 -#define IP_VS_IFNAME_MAXLEN 16 - - -/* - * The struct ip_vs_service_user and struct ip_vs_dest_user are - * used to set IPVS rules through setsockopt. - */ -struct ip_vs_service_user { - /* virtual service addresses */ - u_int16_t protocol; - u_int32_t addr; /* virtual ip address */ - u_int16_t port; - u_int32_t fwmark; /* firwall mark of service */ - - /* virtual service options */ - char sched_name[IP_VS_SCHEDNAME_MAXLEN]; - unsigned flags; /* virtual service flags */ - unsigned timeout; /* persistent timeout in sec */ - u_int32_t netmask; /* persistent netmask */ -}; - - -struct ip_vs_dest_user { - /* destination server address */ - u_int32_t addr; - u_int16_t port; - - /* real server options */ - unsigned conn_flags; /* connection flags */ - int weight; /* destination weight */ - - /* thresholds for active connections */ - u_int32_t u_threshold; /* upper threshold */ - u_int32_t l_threshold; /* lower threshold */ -}; - - -/* - * IPVS statistics object (for user space) - */ -struct ip_vs_stats_user -{ - __u32 conns; /* connections scheduled */ - __u32 inpkts; /* incoming packets */ - __u32 outpkts; /* outgoing packets */ - __u64 inbytes; /* incoming bytes */ - __u64 outbytes; /* outgoing bytes */ - - __u32 cps; /* current connection rate */ - __u32 inpps; /* current in packet rate */ - __u32 outpps; /* current out packet rate */ - __u32 inbps; /* current in byte rate */ - __u32 outbps; /* current out byte rate */ -}; - - -/* The argument to IP_VS_SO_GET_INFO */ -struct ip_vs_getinfo { - /* version number */ - unsigned int version; - - /* size of connection hash table */ - unsigned int size; - - /* number of virtual services */ - unsigned int num_services; -}; - - -/* The argument to IP_VS_SO_GET_SERVICE */ -struct ip_vs_service_entry { - /* which service: user fills in these */ - u_int16_t protocol; - u_int32_t addr; /* virtual address */ - u_int16_t port; - u_int32_t fwmark; /* firwall mark of service */ - - /* service options */ - char sched_name[IP_VS_SCHEDNAME_MAXLEN]; - unsigned flags; /* virtual service flags */ - unsigned timeout; /* persistent timeout */ - u_int32_t netmask; /* persistent netmask */ - - /* number of real servers */ - unsigned int num_dests; - - /* statistics */ - struct ip_vs_stats_user stats; -}; - - -struct ip_vs_dest_entry { - u_int32_t addr; /* destination address */ - u_int16_t port; - unsigned conn_flags; /* connection flags */ - int weight; /* destination weight */ - - u_int32_t u_threshold; /* upper threshold */ - u_int32_t l_threshold; /* lower threshold */ - - u_int32_t activeconns; /* active connections */ - u_int32_t inactconns; /* inactive connections */ - u_int32_t persistconns; /* persistent connections */ - - /* statistics */ - struct ip_vs_stats_user stats; -}; - - -/* The argument to IP_VS_SO_GET_DESTS */ -struct ip_vs_get_dests { - /* which service: user fills in these */ - u_int16_t protocol; - u_int32_t addr; /* virtual address */ - u_int16_t port; - u_int32_t fwmark; /* firwall mark of service */ - - /* number of real servers */ - unsigned int num_dests; - - /* the real servers */ - struct ip_vs_dest_entry entrytable[0]; -}; - - -/* The argument to IP_VS_SO_GET_SERVICES */ -struct ip_vs_get_services { - /* number of virtual services */ - unsigned int num_services; - - /* service table */ - struct ip_vs_service_entry entrytable[0]; -}; - - -/* The argument to IP_VS_SO_GET_TIMEOUT */ -struct ip_vs_timeout_user { - int tcp_timeout; - int tcp_fin_timeout; - int udp_timeout; -}; - - -/* The argument to IP_VS_SO_GET_DAEMON */ -struct ip_vs_daemon_user { - /* sync daemon state (master/backup) */ - int state; - - /* multicast interface name */ - char mcast_ifn[IP_VS_IFNAME_MAXLEN]; - - /* SyncID we belong to */ - int syncid; -}; - - -#ifdef __KERNEL__ - -#include -#include /* for struct list_head */ -#include /* for struct rwlock_t */ -#include /* for struct sk_buff */ -#include /* for struct iphdr */ -#include /* for struct atomic_t */ -#include /* for struct neighbour */ -#include /* for struct dst_entry */ -#include -#include -#include - - -#ifdef CONFIG_IP_VS_DEBUG -extern int ip_vs_get_debug_level(void); -#define IP_VS_DBG(level, msg...) \ - do { \ - if (level <= ip_vs_get_debug_level()) \ - printk(KERN_DEBUG "IPVS: " msg); \ - } while (0) -#define IP_VS_DBG_RL(msg...) \ - do { \ - if (net_ratelimit()) \ - printk(KERN_DEBUG "IPVS: " msg); \ - } while (0) -#define IP_VS_DBG_PKT(level, pp, skb, ofs, msg) \ - do { \ - if (level <= ip_vs_get_debug_level()) \ - pp->debug_packet(pp, skb, ofs, msg); \ - } while (0) -#define IP_VS_DBG_RL_PKT(level, pp, skb, ofs, msg) \ - do { \ - if (level <= ip_vs_get_debug_level() && \ - net_ratelimit()) \ - pp->debug_packet(pp, skb, ofs, msg); \ - } while (0) -#else /* NO DEBUGGING at ALL */ -#define IP_VS_DBG(level, msg...) do {} while (0) -#define IP_VS_DBG_RL(msg...) do {} while (0) -#define IP_VS_DBG_PKT(level, pp, skb, ofs, msg) do {} while (0) -#define IP_VS_DBG_RL_PKT(level, pp, skb, ofs, msg) do {} while (0) -#endif - -#define IP_VS_BUG() BUG() -#define IP_VS_ERR(msg...) printk(KERN_ERR "IPVS: " msg) -#define IP_VS_INFO(msg...) printk(KERN_INFO "IPVS: " msg) -#define IP_VS_WARNING(msg...) \ - printk(KERN_WARNING "IPVS: " msg) -#define IP_VS_ERR_RL(msg...) \ - do { \ - if (net_ratelimit()) \ - printk(KERN_ERR "IPVS: " msg); \ - } while (0) - -#ifdef CONFIG_IP_VS_DEBUG -#define EnterFunction(level) \ - do { \ - if (level <= ip_vs_get_debug_level()) \ - printk(KERN_DEBUG "Enter: %s, %s line %i\n", \ - __FUNCTION__, __FILE__, __LINE__); \ - } while (0) -#define LeaveFunction(level) \ - do { \ - if (level <= ip_vs_get_debug_level()) \ - printk(KERN_DEBUG "Leave: %s, %s line %i\n", \ - __FUNCTION__, __FILE__, __LINE__); \ - } while (0) -#else -#define EnterFunction(level) do {} while (0) -#define LeaveFunction(level) do {} while (0) -#endif - -#define IP_VS_WAIT_WHILE(expr) while (expr) { cpu_relax(); } - - -/* - * The port number of FTP service (in network order). - */ -#define FTPPORT __constant_htons(21) -#define FTPDATA __constant_htons(20) - -/* - * IPVS sysctl variables under the /proc/sys/net/ipv4/vs/ - */ -#define NET_IPV4_VS 21 - -enum { - NET_IPV4_VS_DEBUG_LEVEL=1, - NET_IPV4_VS_AMEMTHRESH=2, - NET_IPV4_VS_AMDROPRATE=3, - NET_IPV4_VS_DROP_ENTRY=4, - NET_IPV4_VS_DROP_PACKET=5, - NET_IPV4_VS_SECURE_TCP=6, - NET_IPV4_VS_TO_ES=7, - NET_IPV4_VS_TO_SS=8, - NET_IPV4_VS_TO_SR=9, - NET_IPV4_VS_TO_FW=10, - NET_IPV4_VS_TO_TW=11, - NET_IPV4_VS_TO_CL=12, - NET_IPV4_VS_TO_CW=13, - NET_IPV4_VS_TO_LA=14, - NET_IPV4_VS_TO_LI=15, - NET_IPV4_VS_TO_SA=16, - NET_IPV4_VS_TO_UDP=17, - NET_IPV4_VS_TO_ICMP=18, - NET_IPV4_VS_LBLC_EXPIRE=19, - NET_IPV4_VS_LBLCR_EXPIRE=20, - NET_IPV4_VS_CACHE_BYPASS=22, - NET_IPV4_VS_EXPIRE_NODEST_CONN=23, - NET_IPV4_VS_SYNC_THRESHOLD=24, - NET_IPV4_VS_NAT_ICMP_SEND=25, - NET_IPV4_VS_LAST -}; - -/* - * TCP State Values - */ -enum { - IP_VS_TCP_S_NONE = 0, - IP_VS_TCP_S_ESTABLISHED, - IP_VS_TCP_S_SYN_SENT, - IP_VS_TCP_S_SYN_RECV, - IP_VS_TCP_S_FIN_WAIT, - IP_VS_TCP_S_TIME_WAIT, - IP_VS_TCP_S_CLOSE, - IP_VS_TCP_S_CLOSE_WAIT, - IP_VS_TCP_S_LAST_ACK, - IP_VS_TCP_S_LISTEN, - IP_VS_TCP_S_SYNACK, - IP_VS_TCP_S_LAST -}; - -/* - * UDP State Values - */ -enum { - IP_VS_UDP_S_NORMAL, - IP_VS_UDP_S_LAST, -}; - -/* - * ICMP State Values - */ -enum { - IP_VS_ICMP_S_NORMAL, - IP_VS_ICMP_S_LAST, -}; - -/* - * Delta sequence info structure - * Each ip_vs_conn has 2 (output AND input seq. changes). - * Only used in the VS/NAT. - */ -struct ip_vs_seq { - __u32 init_seq; /* Add delta from this seq */ - __u32 delta; /* Delta in sequence numbers */ - __u32 previous_delta; /* Delta in sequence numbers - before last resized pkt */ -}; - - -/* - * IPVS statistics object - */ -struct ip_vs_stats -{ - __u32 conns; /* connections scheduled */ - __u32 inpkts; /* incoming packets */ - __u32 outpkts; /* outgoing packets */ - __u64 inbytes; /* incoming bytes */ - __u64 outbytes; /* outgoing bytes */ - - __u32 cps; /* current connection rate */ - __u32 inpps; /* current in packet rate */ - __u32 outpps; /* current out packet rate */ - __u32 inbps; /* current in byte rate */ - __u32 outbps; /* current out byte rate */ - - spinlock_t lock; /* spin lock */ -}; - -struct ip_vs_conn; -struct ip_vs_app; - -struct ip_vs_protocol { - struct ip_vs_protocol *next; - char *name; - __u16 protocol; - int dont_defrag; - atomic_t appcnt; /* counter of proto app incs */ - int *timeout_table; /* protocol timeout table */ - - void (*init)(struct ip_vs_protocol *pp); - - void (*exit)(struct ip_vs_protocol *pp); - - int (*conn_schedule)(struct sk_buff *skb, - struct ip_vs_protocol *pp, - int *verdict, struct ip_vs_conn **cpp); - - struct ip_vs_conn * - (*conn_in_get)(const struct sk_buff *skb, - struct ip_vs_protocol *pp, - const struct iphdr *iph, - unsigned int proto_off, - int inverse); - - struct ip_vs_conn * - (*conn_out_get)(const struct sk_buff *skb, - struct ip_vs_protocol *pp, - const struct iphdr *iph, - unsigned int proto_off, - int inverse); - - int (*snat_handler)(struct sk_buff **pskb, - struct ip_vs_protocol *pp, struct ip_vs_conn *cp); - - int (*dnat_handler)(struct sk_buff **pskb, - struct ip_vs_protocol *pp, struct ip_vs_conn *cp); - - int (*csum_check)(struct sk_buff *skb, struct ip_vs_protocol *pp); - - const char *(*state_name)(int state); - - int (*state_transition)(struct ip_vs_conn *cp, int direction, - const struct sk_buff *skb, - struct ip_vs_protocol *pp); - - int (*register_app)(struct ip_vs_app *inc); - - void (*unregister_app)(struct ip_vs_app *inc); - - int (*app_conn_bind)(struct ip_vs_conn *cp); - - void (*debug_packet)(struct ip_vs_protocol *pp, - const struct sk_buff *skb, - int offset, - const char *msg); - - void (*timeout_change)(struct ip_vs_protocol *pp, int flags); - - int (*set_state_timeout)(struct ip_vs_protocol *pp, char *sname, int to); -}; - -extern struct ip_vs_protocol * ip_vs_proto_get(unsigned short proto); - -/* - * IP_VS structure allocated for each dynamically scheduled connection - */ -struct ip_vs_conn { - struct list_head c_list; /* hashed list heads */ - - /* Protocol, addresses and port numbers */ - __u32 caddr; /* client address */ - __u32 vaddr; /* virtual address */ - __u32 daddr; /* destination address */ - __u16 cport; - __u16 vport; - __u16 dport; - __u16 protocol; /* Which protocol (TCP/UDP) */ - - /* counter and timer */ - atomic_t refcnt; /* reference count */ - struct timer_list timer; /* Expiration timer */ - volatile unsigned long timeout; /* timeout */ - - /* Flags and state transition */ - spinlock_t lock; /* lock for state transition */ - volatile __u16 flags; /* status flags */ - volatile __u16 state; /* state info */ - - /* Control members */ - struct ip_vs_conn *control; /* Master control connection */ - atomic_t n_control; /* Number of controlled ones */ - struct ip_vs_dest *dest; /* real server */ - atomic_t in_pkts; /* incoming packet counter */ - - /* packet transmitter for different forwarding methods. If it - mangles the packet, it must return NF_DROP or better NF_STOLEN, - otherwise this must be changed to a sk_buff **. - */ - int (*packet_xmit)(struct sk_buff *skb, struct ip_vs_conn *cp, - struct ip_vs_protocol *pp); - - /* Note: we can group the following members into a structure, - in order to save more space, and the following members are - only used in VS/NAT anyway */ - struct ip_vs_app *app; /* bound ip_vs_app object */ - void *app_data; /* Application private data */ - struct ip_vs_seq in_seq; /* incoming seq. struct */ - struct ip_vs_seq out_seq; /* outgoing seq. struct */ -}; - - -/* - * The information about the virtual service offered to the net - * and the forwarding entries - */ -struct ip_vs_service { - struct list_head s_list; /* for normal service table */ - struct list_head f_list; /* for fwmark-based service table */ - atomic_t refcnt; /* reference counter */ - atomic_t usecnt; /* use counter */ - - __u16 protocol; /* which protocol (TCP/UDP) */ - __u32 addr; /* IP address for virtual service */ - __u16 port; /* port number for the service */ - __u32 fwmark; /* firewall mark of the service */ - unsigned flags; /* service status flags */ - unsigned timeout; /* persistent timeout in ticks */ - __u32 netmask; /* grouping granularity */ - - struct list_head destinations; /* real server d-linked list */ - __u32 num_dests; /* number of servers */ - struct ip_vs_stats stats; /* statistics for the service */ - struct ip_vs_app *inc; /* bind conns to this app inc */ - - /* for scheduling */ - struct ip_vs_scheduler *scheduler; /* bound scheduler object */ - rwlock_t sched_lock; /* lock sched_data */ - void *sched_data; /* scheduler application data */ -}; - - -/* - * The real server destination forwarding entry - * with ip address, port number, and so on. - */ -struct ip_vs_dest { - struct list_head n_list; /* for the dests in the service */ - struct list_head d_list; /* for table with all the dests */ - - __u32 addr; /* IP address of the server */ - __u16 port; /* port number of the server */ - volatile unsigned flags; /* dest status flags */ - atomic_t conn_flags; /* flags to copy to conn */ - atomic_t weight; /* server weight */ - - atomic_t refcnt; /* reference counter */ - struct ip_vs_stats stats; /* statistics */ - - /* connection counters and thresholds */ - atomic_t activeconns; /* active connections */ - atomic_t inactconns; /* inactive connections */ - atomic_t persistconns; /* persistent connections */ - __u32 u_threshold; /* upper threshold */ - __u32 l_threshold; /* lower threshold */ - - /* for destination cache */ - spinlock_t dst_lock; /* lock of dst_cache */ - struct dst_entry *dst_cache; /* destination cache entry */ - u32 dst_rtos; /* RT_TOS(tos) for dst */ - - /* for virtual service */ - struct ip_vs_service *svc; /* service it belongs to */ - __u16 protocol; /* which protocol (TCP/UDP) */ - __u32 vaddr; /* virtual IP address */ - __u16 vport; /* virtual port number */ - __u32 vfwmark; /* firewall mark of service */ -}; - - -/* - * The scheduler object - */ -struct ip_vs_scheduler { - struct list_head n_list; /* d-linked list head */ - char *name; /* scheduler name */ - atomic_t refcnt; /* reference counter */ - struct module *module; /* THIS_MODULE/NULL */ - - /* scheduler initializing service */ - int (*init_service)(struct ip_vs_service *svc); - /* scheduling service finish */ - int (*done_service)(struct ip_vs_service *svc); - /* scheduler updating service */ - int (*update_service)(struct ip_vs_service *svc); - - /* selecting a server from the given service */ - struct ip_vs_dest* (*schedule)(struct ip_vs_service *svc, - const struct sk_buff *skb); -}; - - -/* - * The application module object (a.k.a. app incarnation) - */ -struct ip_vs_app -{ - struct list_head a_list; /* member in app list */ - int type; /* IP_VS_APP_TYPE_xxx */ - char *name; /* application module name */ - __u16 protocol; - struct module *module; /* THIS_MODULE/NULL */ - struct list_head incs_list; /* list of incarnations */ - - /* members for application incarnations */ - struct list_head p_list; /* member in proto app list */ - struct ip_vs_app *app; /* its real application */ - __u16 port; /* port number in net order */ - atomic_t usecnt; /* usage counter */ - - /* output hook: return false if can't linearize. diff set for TCP. */ - int (*pkt_out)(struct ip_vs_app *, struct ip_vs_conn *, - struct sk_buff **, int *diff); - - /* input hook: return false if can't linearize. diff set for TCP. */ - int (*pkt_in)(struct ip_vs_app *, struct ip_vs_conn *, - struct sk_buff **, int *diff); - - /* ip_vs_app initializer */ - int (*init_conn)(struct ip_vs_app *, struct ip_vs_conn *); - - /* ip_vs_app finish */ - int (*done_conn)(struct ip_vs_app *, struct ip_vs_conn *); - - - /* not used now */ - int (*bind_conn)(struct ip_vs_app *, struct ip_vs_conn *, - struct ip_vs_protocol *); - - void (*unbind_conn)(struct ip_vs_app *, struct ip_vs_conn *); - - int * timeout_table; - int * timeouts; - int timeouts_size; - - int (*conn_schedule)(struct sk_buff *skb, struct ip_vs_app *app, - int *verdict, struct ip_vs_conn **cpp); - - struct ip_vs_conn * - (*conn_in_get)(const struct sk_buff *skb, struct ip_vs_app *app, - const struct iphdr *iph, unsigned int proto_off, - int inverse); - - struct ip_vs_conn * - (*conn_out_get)(const struct sk_buff *skb, struct ip_vs_app *app, - const struct iphdr *iph, unsigned int proto_off, - int inverse); - - int (*state_transition)(struct ip_vs_conn *cp, int direction, - const struct sk_buff *skb, - struct ip_vs_app *app); - - void (*timeout_change)(struct ip_vs_app *app, int flags); -}; - - -/* - * IPVS core functions - * (from ip_vs_core.c) - */ -extern const char *ip_vs_proto_name(unsigned proto); -extern unsigned int check_for_ip_vs_out(struct sk_buff **skb_p, - int (*okfn)(struct sk_buff *)); -extern void ip_vs_init_hash_table(struct list_head *table, int rows); -#define IP_VS_INIT_HASH_TABLE(t) ip_vs_init_hash_table(t, sizeof(t)/sizeof(t[0])) - -#define IP_VS_APP_TYPE_UNSPEC 0 -#define IP_VS_APP_TYPE_FTP 1 - -/* - * ip_vs_conn handling functions - * (from ip_vs_conn.c) - */ - -/* - * IPVS connection entry hash table - */ -#ifndef CONFIG_IP_VS_TAB_BITS -#define CONFIG_IP_VS_TAB_BITS 12 -#endif -/* make sure that IP_VS_CONN_TAB_BITS is located in [8, 20] */ -#if CONFIG_IP_VS_TAB_BITS < 8 -#define IP_VS_CONN_TAB_BITS 8 -#endif -#if CONFIG_IP_VS_TAB_BITS > 20 -#define IP_VS_CONN_TAB_BITS 20 -#endif -#if 8 <= CONFIG_IP_VS_TAB_BITS && CONFIG_IP_VS_TAB_BITS <= 20 -#define IP_VS_CONN_TAB_BITS CONFIG_IP_VS_TAB_BITS -#endif -#define IP_VS_CONN_TAB_SIZE (1 << IP_VS_CONN_TAB_BITS) -#define IP_VS_CONN_TAB_MASK (IP_VS_CONN_TAB_SIZE - 1) - -enum { - IP_VS_DIR_INPUT = 0, - IP_VS_DIR_OUTPUT, - IP_VS_DIR_INPUT_ONLY, - IP_VS_DIR_LAST, -}; - -extern struct ip_vs_conn *ip_vs_conn_in_get -(int protocol, __u32 s_addr, __u16 s_port, __u32 d_addr, __u16 d_port); -extern struct ip_vs_conn *ip_vs_conn_out_get -(int protocol, __u32 s_addr, __u16 s_port, __u32 d_addr, __u16 d_port); - -/* put back the conn without restarting its timer */ -static inline void __ip_vs_conn_put(struct ip_vs_conn *cp) -{ - atomic_dec(&cp->refcnt); -} -extern void ip_vs_conn_put(struct ip_vs_conn *cp); -extern void ip_vs_conn_fill_cport(struct ip_vs_conn *cp, __u16 cport); - -extern struct ip_vs_conn * -ip_vs_conn_new(int proto, __u32 caddr, __u16 cport, __u32 vaddr, __u16 vport, - __u32 daddr, __u16 dport, unsigned flags, - struct ip_vs_dest *dest); -extern void ip_vs_conn_expire_now(struct ip_vs_conn *cp); - -extern const char * ip_vs_state_name(__u16 proto, int state); - -extern void ip_vs_tcp_conn_listen(struct ip_vs_conn *cp); -extern int ip_vs_check_template(struct ip_vs_conn *ct); -extern void ip_vs_secure_tcp_set(int on); -extern void ip_vs_random_dropentry(void); -extern int ip_vs_conn_init(void); -extern void ip_vs_conn_cleanup(void); - -static inline void ip_vs_control_del(struct ip_vs_conn *cp) -{ - struct ip_vs_conn *ctl_cp = cp->control; - if (!ctl_cp) { - IP_VS_ERR("request control DEL for uncontrolled: " - "%d.%d.%d.%d:%d to %d.%d.%d.%d:%d\n", - NIPQUAD(cp->caddr),ntohs(cp->cport), - NIPQUAD(cp->vaddr),ntohs(cp->vport)); - return; - } - - IP_VS_DBG(7, "DELeting control for: " - "cp.dst=%d.%d.%d.%d:%d ctl_cp.dst=%d.%d.%d.%d:%d\n", - NIPQUAD(cp->caddr),ntohs(cp->cport), - NIPQUAD(ctl_cp->caddr),ntohs(ctl_cp->cport)); - - cp->control = NULL; - if (atomic_read(&ctl_cp->n_control) == 0) { - IP_VS_ERR("BUG control DEL with n=0 : " - "%d.%d.%d.%d:%d to %d.%d.%d.%d:%d\n", - NIPQUAD(cp->caddr),ntohs(cp->cport), - NIPQUAD(cp->vaddr),ntohs(cp->vport)); - return; - } - atomic_dec(&ctl_cp->n_control); -} - -static inline void -ip_vs_control_add(struct ip_vs_conn *cp, struct ip_vs_conn *ctl_cp) -{ - if (cp->control) { - IP_VS_ERR("request control ADD for already controlled: " - "%d.%d.%d.%d:%d to %d.%d.%d.%d:%d\n", - NIPQUAD(cp->caddr),ntohs(cp->cport), - NIPQUAD(cp->vaddr),ntohs(cp->vport)); - ip_vs_control_del(cp); - } - - IP_VS_DBG(7, "ADDing control for: " - "cp.dst=%d.%d.%d.%d:%d ctl_cp.dst=%d.%d.%d.%d:%d\n", - NIPQUAD(cp->caddr),ntohs(cp->cport), - NIPQUAD(ctl_cp->caddr),ntohs(ctl_cp->cport)); - - cp->control = ctl_cp; - atomic_inc(&ctl_cp->n_control); -} - - -/* - * IPVS application functions - * (from ip_vs_app.c) - */ -#define IP_VS_APP_MAX_PORTS 8 -extern int register_ip_vs_app(struct ip_vs_app *app); -extern void unregister_ip_vs_app(struct ip_vs_app *app); -extern int ip_vs_bind_app(struct ip_vs_conn *cp, struct ip_vs_protocol *pp); -extern void ip_vs_unbind_app(struct ip_vs_conn *cp); -extern int -register_ip_vs_app_inc(struct ip_vs_app *app, __u16 proto, __u16 port); -extern int ip_vs_app_inc_get(struct ip_vs_app *inc); -extern void ip_vs_app_inc_put(struct ip_vs_app *inc); - -extern int ip_vs_app_pkt_out(struct ip_vs_conn *, struct sk_buff **pskb); -extern int ip_vs_app_pkt_in(struct ip_vs_conn *, struct sk_buff **pskb); -extern int ip_vs_skb_replace(struct sk_buff *skb, int pri, - char *o_buf, int o_len, char *n_buf, int n_len); -extern int ip_vs_app_init(void); -extern void ip_vs_app_cleanup(void); - - -/* - * IPVS protocol functions (from ip_vs_proto.c) - */ -extern int ip_vs_protocol_init(void); -extern void ip_vs_protocol_cleanup(void); -extern void ip_vs_protocol_timeout_change(int flags); -extern int *ip_vs_create_timeout_table(int *table, int size); -extern int -ip_vs_set_state_timeout(int *table, int num, char **names, char *name, int to); -extern void -ip_vs_tcpudp_debug_packet(struct ip_vs_protocol *pp, const struct sk_buff *skb, - int offset, const char *msg); - -extern struct ip_vs_protocol ip_vs_protocol_tcp; -extern struct ip_vs_protocol ip_vs_protocol_udp; -extern struct ip_vs_protocol ip_vs_protocol_icmp; -extern struct ip_vs_protocol ip_vs_protocol_esp; -extern struct ip_vs_protocol ip_vs_protocol_ah; - - -/* - * Registering/unregistering scheduler functions - * (from ip_vs_sched.c) - */ -extern int register_ip_vs_scheduler(struct ip_vs_scheduler *scheduler); -extern int unregister_ip_vs_scheduler(struct ip_vs_scheduler *scheduler); -extern int ip_vs_bind_scheduler(struct ip_vs_service *svc, - struct ip_vs_scheduler *scheduler); -extern int ip_vs_unbind_scheduler(struct ip_vs_service *svc); -extern struct ip_vs_scheduler *ip_vs_scheduler_get(const char *sched_name); -extern void ip_vs_scheduler_put(struct ip_vs_scheduler *scheduler); -extern struct ip_vs_conn * -ip_vs_schedule(struct ip_vs_service *svc, const struct sk_buff *skb); -extern int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb, - struct ip_vs_protocol *pp); - - -/* - * IPVS control data and functions (from ip_vs_ctl.c) - */ -extern int sysctl_ip_vs_cache_bypass; -extern int sysctl_ip_vs_expire_nodest_conn; -extern int sysctl_ip_vs_sync_threshold[2]; -extern int sysctl_ip_vs_nat_icmp_send; -extern struct ip_vs_stats ip_vs_stats; - -extern struct ip_vs_service * -ip_vs_service_get(__u32 fwmark, __u16 protocol, __u32 vaddr, __u16 vport); - -static inline void ip_vs_service_put(struct ip_vs_service *svc) -{ - atomic_dec(&svc->usecnt); -} - -extern struct ip_vs_dest * -ip_vs_lookup_real_service(__u16 protocol, __u32 daddr, __u16 dport); -extern int ip_vs_use_count_inc(void); -extern void ip_vs_use_count_dec(void); -extern int ip_vs_control_init(void); -extern void ip_vs_control_cleanup(void); - - -/* - * IPVS sync daemon data and function prototypes - * (from ip_vs_sync.c) - */ -extern volatile int ip_vs_sync_state; -extern volatile int ip_vs_master_syncid; -extern volatile int ip_vs_backup_syncid; -extern char ip_vs_master_mcast_ifn[IP_VS_IFNAME_MAXLEN]; -extern char ip_vs_backup_mcast_ifn[IP_VS_IFNAME_MAXLEN]; -extern int start_sync_thread(int state, char *mcast_ifn, __u8 syncid); -extern int stop_sync_thread(int state); -extern void ip_vs_sync_conn(struct ip_vs_conn *cp); - - -/* - * IPVS rate estimator prototypes (from ip_vs_est.c) - */ -extern int ip_vs_new_estimator(struct ip_vs_stats *stats); -extern void ip_vs_kill_estimator(struct ip_vs_stats *stats); -extern void ip_vs_zero_estimator(struct ip_vs_stats *stats); - -/* - * Various IPVS packet transmitters (from ip_vs_xmit.c) - */ -extern int ip_vs_null_xmit -(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp); -extern int ip_vs_bypass_xmit -(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp); -extern int ip_vs_nat_xmit -(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp); -extern int ip_vs_tunnel_xmit -(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp); -extern int ip_vs_dr_xmit -(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp); -extern int ip_vs_icmp_xmit -(struct sk_buff *skb, struct ip_vs_conn *cp, struct ip_vs_protocol *pp, int offset); -extern void ip_vs_dst_reset(struct ip_vs_dest *dest); - - -/* - * This is a simple mechanism to ignore packets when - * we are loaded. Just set ip_vs_drop_rate to 'n' and - * we start to drop 1/rate of the packets - */ -extern int ip_vs_drop_rate; -extern int ip_vs_drop_counter; - -static __inline__ int ip_vs_todrop(void) -{ - if (!ip_vs_drop_rate) return 0; - if (--ip_vs_drop_counter > 0) return 0; - ip_vs_drop_counter = ip_vs_drop_rate; - return 1; -} - -/* - * ip_vs_fwd_tag returns the forwarding tag of the connection - */ -#define IP_VS_FWD_METHOD(cp) (cp->flags & IP_VS_CONN_F_FWD_MASK) - -extern __inline__ char ip_vs_fwd_tag(struct ip_vs_conn *cp) -{ - char fwd; - - switch (IP_VS_FWD_METHOD(cp)) { - case IP_VS_CONN_F_MASQ: - fwd = 'M'; break; - case IP_VS_CONN_F_LOCALNODE: - fwd = 'L'; break; - case IP_VS_CONN_F_TUNNEL: - fwd = 'T'; break; - case IP_VS_CONN_F_DROUTE: - fwd = 'R'; break; - case IP_VS_CONN_F_BYPASS: - fwd = 'B'; break; - default: - fwd = '?'; break; - } - return fwd; -} - -extern int ip_vs_make_skb_writable(struct sk_buff **pskb, int len); -extern void ip_vs_nat_icmp(struct sk_buff *skb, struct ip_vs_protocol *pp, - struct ip_vs_conn *cp, int dir); - -extern u16 ip_vs_checksum_complete(struct sk_buff *skb, int offset); - -static inline u16 ip_vs_check_diff(u32 old, u32 new, u16 oldsum) -{ - u32 diff[2] = { old, new }; - - return csum_fold(csum_partial((char *) diff, sizeof(diff), - oldsum ^ 0xFFFF)); -} - -#endif /* __KERNEL__ */ - -#endif /* _IP_VS_H */ diff --git a/debian/init.d b/debian/init.d deleted file mode 100644 index fbb5a8c..0000000 --- a/debian/init.d +++ /dev/null @@ -1,49 +0,0 @@ -#! /bin/sh -# -# keepalived LVS cluster monitor daemon. -# -# Written by Andres Salomon -# - -PATH=/sbin:/bin:/usr/sbin:/usr/bin -DAEMON=/usr/sbin/keepalived -NAME=keepalived -DESC=keepalived - -set -e -test -f $DAEMON || exit 0 - -case "$1" in - start) - echo -n "Starting $DESC: " - start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ - --exec $DAEMON - echo "$NAME." - ;; - stop) - echo -n "Stopping $DESC: " - start-stop-daemon --oknodo --stop --quiet --pidfile /var/run/$NAME.pid \ - --exec $DAEMON - echo "$NAME." - ;; - reload|force-reload) - echo "Reloading $DESC configuration file." - start-stop-daemon --stop --quiet --signal 1 --pidfile \ - /var/run/$NAME.pid --exec $DAEMON - ;; - restart) - echo -n "Restarting $DESC: " - start-stop-daemon --stop --quiet --pidfile \ - /var/run/$NAME.pid --exec $DAEMON - sleep 1 - start-stop-daemon --start --quiet --pidfile \ - /var/run/$NAME.pid --exec $DAEMON - echo "$NAME." - ;; - *) - echo "Usage: /etc/init.d/$NAME {start|stop|restart|reload|force-reload}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/debian/manpages b/debian/manpages deleted file mode 100644 index 3327c3c..0000000 --- a/debian/manpages +++ /dev/null @@ -1 +0,0 @@ -doc/man/man*/* diff --git a/debian/rules b/debian/rules deleted file mode 100644 index b6ee605..0000000 --- a/debian/rules +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/make -f - -include /usr/share/cdbs/1/rules/debhelper.mk -include /usr/share/cdbs/1/rules/simple-patchsys.mk -include /usr/share/cdbs/1/class/autotools.mk - -DEB_CONFIGURE_EXTRA_FLAGS := --with-kernel-dir=$(CURDIR)/debian - -binary-install/keepalived:: - rm -rf $(DEB_DESTDIR)/etc/keepalived/samples - rm -rf $(DEB_DESTDIR)/etc/init.d/keepalived.init - rm -rf $(DEB_DESTDIR)/usr/man - diff --git a/genhash/Makefile.in b/genhash/Makefile.in index 2cb6aee..19de7dc 100644 --- a/genhash/Makefile.in +++ b/genhash/Makefile.in @@ -10,6 +10,7 @@ exec_prefix = @exec_prefix@ bindir = @bindir@ CC = @CC@ +STRIP = @STRIP@ INCLUDES = -I../lib CFLAGS = @CFLAGS@ @CPPFLAGS@ $(INCLUDES) \ -Wall -Wunused -Wstrict-prototypes @@ -21,7 +22,7 @@ LIB_OBJS = ../lib/timer.o ../lib/scheduler.o \ ../lib/html.o ../lib/signals.o all: $(BIN)/$(EXEC) - strip $(BIN)/$(EXEC) + $(STRIP) $(BIN)/$(EXEC) @echo "" @echo "Make complete" diff --git a/keepalived/Makefile.in b/keepalived/Makefile.in index 9f60c2f..1443efb 100644 --- a/keepalived/Makefile.in +++ b/keepalived/Makefile.in @@ -18,6 +18,7 @@ init_script = etc/init.d/keepalived.init conf_file = etc/keepalived/keepalived.conf CC = @CC@ +STRIP = @STRIP@ LDFLAGS = @LIBS@ @LDFLAGS@ -ldl SUBDIRS = core @@ -47,7 +48,7 @@ all: $(MAKE) -C $$i || exit 1; done && \ echo "Building $(BIN)/$(EXEC)" && \ $(CC) -o $(BIN)/$(EXEC) `find $(SUBDIRS) ../lib -name '*.[oa]'` $(LDFLAGS) - strip $(BIN)/$(EXEC) + $(STRIP) $(BIN)/$(EXEC) @echo "" @echo "Make complete" diff --git a/keepalived/check/check_api.c b/keepalived/check/check_api.c index 1225450..89c5bf5 100644 --- a/keepalived/check/check_api.c +++ b/keepalived/check/check_api.c @@ -5,7 +5,7 @@ * * Part: Checkers registration. * - * Version: $Id: check_api.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_api.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/check/check_daemon.c b/keepalived/check/check_daemon.c index e26a761..832e0d0 100644 --- a/keepalived/check/check_daemon.c +++ b/keepalived/check/check_daemon.c @@ -5,7 +5,7 @@ * * Part: Healthcheckrs child process handling. * - * Version: $Id: check_daemon.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_daemon.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/check/check_data.c b/keepalived/check/check_data.c index 771d46d..4ae5b8f 100644 --- a/keepalived/check/check_data.c +++ b/keepalived/check/check_data.c @@ -5,7 +5,7 @@ * * Part: Healthcheckers dynamic data structure definition. * - * Version: $Id: check_data.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_data.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/check/check_http.c b/keepalived/check/check_http.c index b4a83bf..7edd18e 100644 --- a/keepalived/check/check_http.c +++ b/keepalived/check/check_http.c @@ -5,7 +5,7 @@ * * Part: WEB CHECK. Common HTTP/SSL checker primitives. * - * Version: $Id: check_http.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_http.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * Jan Holmberg, diff --git a/keepalived/check/check_misc.c b/keepalived/check/check_misc.c index 80fd88d..398e65c 100644 --- a/keepalived/check/check_misc.c +++ b/keepalived/check/check_misc.c @@ -6,7 +6,7 @@ * Part: MISC CHECK. Perform a system call to run an extra * system prog or script. * - * Version: $Id: check_misc.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_misc.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * Eric Jarman, diff --git a/keepalived/check/check_parser.c b/keepalived/check/check_parser.c index b4d2493..4e8608f 100644 --- a/keepalived/check/check_parser.c +++ b/keepalived/check/check_parser.c @@ -7,7 +7,7 @@ * data structure representation the conf file representing * the loadbalanced server pool. * - * Version: $Id: check_parser.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_parser.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/check/check_smtp.c b/keepalived/check/check_smtp.c index b811aff..ad6e998 100644 --- a/keepalived/check/check_smtp.c +++ b/keepalived/check/check_smtp.c @@ -5,7 +5,7 @@ * * Part: SMTP CHECK. Check an SMTP-server. * - * Version: $Id: check_smtp.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_smtp.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Jeremy Rumpf, * Alexandre Cassen, diff --git a/keepalived/check/check_ssl.c b/keepalived/check/check_ssl.c index f69c7a7..bb6bf47 100644 --- a/keepalived/check/check_ssl.c +++ b/keepalived/check/check_ssl.c @@ -7,7 +7,7 @@ * url, compute a MD5 over this result and match it to the * expected value. * - * Version: $Id: check_ssl.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_ssl.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * Jan Holmberg, diff --git a/keepalived/check/check_tcp.c b/keepalived/check/check_tcp.c index c3c0c2b..91a80a3 100644 --- a/keepalived/check/check_tcp.c +++ b/keepalived/check/check_tcp.c @@ -5,7 +5,7 @@ * * Part: TCP checker. * - * Version: $Id: check_tcp.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_tcp.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/check/ipfwwrapper.c b/keepalived/check/ipfwwrapper.c index 99c22ca..6d27d68 100644 --- a/keepalived/check/ipfwwrapper.c +++ b/keepalived/check/ipfwwrapper.c @@ -7,7 +7,7 @@ * library to add/remove server MASQ rules to the kernel * firewall framework. * - * Version: $Id: ipfwwrapper.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: ipfwwrapper.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/check/ipvswrapper.c b/keepalived/check/ipvswrapper.c index 77f16f2..c457e5e 100644 --- a/keepalived/check/ipvswrapper.c +++ b/keepalived/check/ipvswrapper.c @@ -6,7 +6,7 @@ * Part: IPVS Kernel wrapper. Use setsockopt call to add/remove * server to/from the loadbalanced server pool. * - * Version: $Id: ipvswrapper.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: ipvswrapper.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/check/ipwrapper.c b/keepalived/check/ipwrapper.c index a9202ac..3b4fa0b 100644 --- a/keepalived/check/ipwrapper.c +++ b/keepalived/check/ipwrapper.c @@ -5,7 +5,7 @@ * * Part: Manipulation functions for IPVS & IPFW wrappers. * - * Version: $Id: ipwrapper.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: ipwrapper.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/core/daemon.c b/keepalived/core/daemon.c index 27ec1ef..ba67361 100644 --- a/keepalived/core/daemon.c +++ b/keepalived/core/daemon.c @@ -5,7 +5,7 @@ * * Part: Main program structure. * - * Version: $Id: main.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: main.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/core/global_data.c b/keepalived/core/global_data.c index 10f9628..751d7cc 100644 --- a/keepalived/core/global_data.c +++ b/keepalived/core/global_data.c @@ -5,7 +5,7 @@ * * Part: Dynamic data structure definition. * - * Version: $Id: global_data.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: global_data.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/core/global_parser.c b/keepalived/core/global_parser.c index 8668ea4..5c2fb11 100644 --- a/keepalived/core/global_parser.c +++ b/keepalived/core/global_parser.c @@ -7,7 +7,7 @@ * data structure representation the conf file representing * the loadbalanced server pool. * - * Version: $Id: global_parser.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: global_parser.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/core/layer4.c b/keepalived/core/layer4.c index cdda646..1eeb028 100644 --- a/keepalived/core/layer4.c +++ b/keepalived/core/layer4.c @@ -6,7 +6,7 @@ * Part: Layer4 checkers handling. Register worker threads & * upper layer checkers. * - * Version: $Id: layer4.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: layer4.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/core/main.c b/keepalived/core/main.c index e1ae2bc..2c2f8a9 100644 --- a/keepalived/core/main.c +++ b/keepalived/core/main.c @@ -5,7 +5,7 @@ * * Part: Main program structure. * - * Version: $Id: main.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: main.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/core/pidfile.c b/keepalived/core/pidfile.c index 99d5b15..4740490 100644 --- a/keepalived/core/pidfile.c +++ b/keepalived/core/pidfile.c @@ -5,7 +5,7 @@ * * Part: pidfile utility. * - * Version: $Id: pidfile.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: pidfile.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/core/smtp.c b/keepalived/core/smtp.c index 3bb99fc..93093a5 100644 --- a/keepalived/core/smtp.c +++ b/keepalived/core/smtp.c @@ -7,7 +7,7 @@ * using the smtp protocol according to the RFC 821. A non blocking * timeouted connection is used to handle smtp protocol. * - * Version: $Id: smtp.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: smtp.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/check_api.h b/keepalived/include/check_api.h index 788ae78..e58af26 100644 --- a/keepalived/include/check_api.h +++ b/keepalived/include/check_api.h @@ -5,7 +5,7 @@ * * Part: Checkers arguments structures definitions. * - * Version: $Id: check_api.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_api.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/check_daemon.h b/keepalived/include/check_daemon.h index b88c3f3..c25253e 100644 --- a/keepalived/include/check_daemon.h +++ b/keepalived/include/check_daemon.h @@ -5,7 +5,7 @@ * * Part: check_daemon.c include file. * - * Version: $Id: check_daemon.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_daemon.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/check_data.h b/keepalived/include/check_data.h index cf35943..b5430c2 100644 --- a/keepalived/include/check_data.h +++ b/keepalived/include/check_data.h @@ -5,7 +5,7 @@ * * Part: Healthcheckers dynamic data structure definition. * - * Version: $Id: check_data.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_data.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/check_http.h b/keepalived/include/check_http.h index a9b10af..6a0231a 100644 --- a/keepalived/include/check_http.h +++ b/keepalived/include/check_http.h @@ -5,7 +5,7 @@ * * Part: check_http.c include file. * - * Version: $Id: check_http.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_http.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * Jan Holmberg, diff --git a/keepalived/include/check_misc.h b/keepalived/include/check_misc.h index 6f77142..80808de 100644 --- a/keepalived/include/check_misc.h +++ b/keepalived/include/check_misc.h @@ -5,7 +5,7 @@ * * Part: check_misc.c include file. * - * Version: $Id: check_misc.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_misc.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * Eric Jarman, diff --git a/keepalived/include/check_parser.h b/keepalived/include/check_parser.h index d541b3a..2731b23 100644 --- a/keepalived/include/check_parser.h +++ b/keepalived/include/check_parser.h @@ -5,7 +5,7 @@ * * Part: check_parser.c include file. * - * Version: $Id: check_parser.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_parser.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/check_smtp.h b/keepalived/include/check_smtp.h index cfdc794..25d6991 100644 --- a/keepalived/include/check_smtp.h +++ b/keepalived/include/check_smtp.h @@ -5,7 +5,7 @@ * * Part: check_smtp.c include file. * - * Version: $Id: check_smtp.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_smtp.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * Jeremy Rumpf, diff --git a/keepalived/include/check_ssl.h b/keepalived/include/check_ssl.h index 73dc52b..c9d88f6 100644 --- a/keepalived/include/check_ssl.h +++ b/keepalived/include/check_ssl.h @@ -5,7 +5,7 @@ * * Part: check_http.c include file. * - * Version: $Id: check_http.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_http.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * Jan Holmberg, diff --git a/keepalived/include/check_tcp.h b/keepalived/include/check_tcp.h index 8b1e53d..f5e7cdd 100644 --- a/keepalived/include/check_tcp.h +++ b/keepalived/include/check_tcp.h @@ -5,7 +5,7 @@ * * Part: check_tcp.c include file. * - * Version: $Id: check_tcp.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: check_tcp.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/config.h.in b/keepalived/include/config.h.in index 19de79b..937e294 100644 --- a/keepalived/include/config.h.in +++ b/keepalived/include/config.h.in @@ -5,7 +5,7 @@ * * Part: Configuration include file. * - * Version: $Id: config.h.in,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: config.h.in,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Jacob Rief, * diff --git a/keepalived/include/daemon.h b/keepalived/include/daemon.h index da1eede..5a5db74 100644 --- a/keepalived/include/daemon.h +++ b/keepalived/include/daemon.h @@ -5,7 +5,7 @@ * * Part: Daemon process handling. * - * Version: $Id: daemon.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: daemon.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/global_data.h b/keepalived/include/global_data.h index 3497f3d..9cc702a 100644 --- a/keepalived/include/global_data.h +++ b/keepalived/include/global_data.h @@ -5,7 +5,7 @@ * * Part: Dynamic data structure definition. * - * Version: $Id: global_data.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: global_data.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/global_parser.h b/keepalived/include/global_parser.h index 0c8f986..abceb87 100644 --- a/keepalived/include/global_parser.h +++ b/keepalived/include/global_parser.h @@ -5,7 +5,7 @@ * * Part: vrrp_parser.c include file. * - * Version: $Id: global_parser.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: global_parser.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/ipfwwrapper.h b/keepalived/include/ipfwwrapper.h index 1c5848e..3f4ce8b 100644 --- a/keepalived/include/ipfwwrapper.h +++ b/keepalived/include/ipfwwrapper.h @@ -5,7 +5,7 @@ * * Part: ipfwwrapper.c include file. * - * Version: $Id: ipfwwrapper.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: ipfwwrapper.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/ipvswrapper.h b/keepalived/include/ipvswrapper.h index b8ac3dd..744de22 100644 --- a/keepalived/include/ipvswrapper.h +++ b/keepalived/include/ipvswrapper.h @@ -5,7 +5,7 @@ * * Part: ipvswrapper.c include file. * - * Version: $Id: ipvswrapper.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: ipvswrapper.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/ipwrapper.h b/keepalived/include/ipwrapper.h index 962a494..569533e 100644 --- a/keepalived/include/ipwrapper.h +++ b/keepalived/include/ipwrapper.h @@ -5,7 +5,7 @@ * * Part: ipwrapper.c include file. * - * Version: $Id: ipwrapper.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: ipwrapper.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/layer4.h b/keepalived/include/layer4.h index 38e9e83..4b38a2b 100644 --- a/keepalived/include/layer4.h +++ b/keepalived/include/layer4.h @@ -5,7 +5,7 @@ * * Part: layer4.c include file. * - * Version: $Id: layer4.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: layer4.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/main.h b/keepalived/include/main.h index f89de07..e33c3d8 100644 --- a/keepalived/include/main.h +++ b/keepalived/include/main.h @@ -5,7 +5,7 @@ * * Part: Main program include file. * - * Version: $Id: main.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: main.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/pidfile.h b/keepalived/include/pidfile.h index 298c318..9f0912f 100644 --- a/keepalived/include/pidfile.h +++ b/keepalived/include/pidfile.h @@ -5,7 +5,7 @@ * * Part: pidfile.c include file. * - * Version: $Id: pidfile.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: pidfile.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/smtp.h b/keepalived/include/smtp.h index a41f847..40c4ea7 100644 --- a/keepalived/include/smtp.h +++ b/keepalived/include/smtp.h @@ -5,7 +5,7 @@ * * Part: smtp.c include file. * - * Version: $Id: smtp.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: smtp.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp.h b/keepalived/include/vrrp.h index 475f13d..36b3cb8 100644 --- a/keepalived/include/vrrp.h +++ b/keepalived/include/vrrp.h @@ -6,7 +6,7 @@ * * Part: vrrp.c program include file. * - * Version: $Id: vrrp.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_arp.h b/keepalived/include/vrrp_arp.h index 3a064e4..a2b9498 100644 --- a/keepalived/include/vrrp_arp.h +++ b/keepalived/include/vrrp_arp.h @@ -5,7 +5,7 @@ * * Part: vrrp_arp.c include file. * - * Version: $Id: vrrp_arp.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_arp.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_daemon.h b/keepalived/include/vrrp_daemon.h index bd209bb..8f5ade0 100644 --- a/keepalived/include/vrrp_daemon.h +++ b/keepalived/include/vrrp_daemon.h @@ -5,7 +5,7 @@ * * Part: vrrp_daemon.c include file. * - * Version: $Id: vrrp_daemon.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_daemon.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_data.h b/keepalived/include/vrrp_data.h index d558ee0..3e7d5ae 100644 --- a/keepalived/include/vrrp_data.h +++ b/keepalived/include/vrrp_data.h @@ -5,7 +5,7 @@ * * Part: Dynamic data structure definition. * - * Version: $Id: vrrp_data.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_data.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_if.h b/keepalived/include/vrrp_if.h index ea908d9..5d8a95e 100644 --- a/keepalived/include/vrrp_if.h +++ b/keepalived/include/vrrp_if.h @@ -5,7 +5,7 @@ * * Part: vrrp_if.c include file. * - * Version: $Id: vrrp_if.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_if.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_index.h b/keepalived/include/vrrp_index.h index 04c9a13..7d6faf3 100644 --- a/keepalived/include/vrrp_index.h +++ b/keepalived/include/vrrp_index.h @@ -5,7 +5,7 @@ * * Part: vrrp_index.c include file. * - * Version: $Id: vrrp_index.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_index.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_ipaddress.h b/keepalived/include/vrrp_ipaddress.h index 0330003..80a4630 100644 --- a/keepalived/include/vrrp_ipaddress.h +++ b/keepalived/include/vrrp_ipaddress.h @@ -5,7 +5,7 @@ * * Part: vrrp_ipaddress.c include file. * - * Version: $Id: vrrp_ipaddress.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_ipaddress.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_iproute.h b/keepalived/include/vrrp_iproute.h index 093e8ce..48af45f 100644 --- a/keepalived/include/vrrp_iproute.h +++ b/keepalived/include/vrrp_iproute.h @@ -5,7 +5,7 @@ * * Part: vrrp_iproute.c include file. * - * Version: $Id: vrrp_iproute.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_iproute.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_ipsecah.h b/keepalived/include/vrrp_ipsecah.h index 029f4a7..1e2d750 100644 --- a/keepalived/include/vrrp_ipsecah.h +++ b/keepalived/include/vrrp_ipsecah.h @@ -5,7 +5,7 @@ * * Part: vrrp_ipsecah.c include file. * - * Version: $Id: vrrp_ipsecah.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_ipsecah.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_netlink.h b/keepalived/include/vrrp_netlink.h index ba83e41..9bb7df6 100644 --- a/keepalived/include/vrrp_netlink.h +++ b/keepalived/include/vrrp_netlink.h @@ -5,7 +5,7 @@ * * Part: vrrp_netlink.c include file. * - * Version: $Id: vrrp_netlink.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_netlink.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_notify.h b/keepalived/include/vrrp_notify.h index 864c875..7598ba1 100644 --- a/keepalived/include/vrrp_notify.h +++ b/keepalived/include/vrrp_notify.h @@ -6,7 +6,7 @@ * * Part: vrrp_notify.c include file. * - * Version: $Id: vrrp_notify.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_notify.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_parser.h b/keepalived/include/vrrp_parser.h index 0aaddac..2729109 100644 --- a/keepalived/include/vrrp_parser.h +++ b/keepalived/include/vrrp_parser.h @@ -5,7 +5,7 @@ * * Part: vrrp_parser.c include file. * - * Version: $Id: vrrp_parser.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_parser.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_scheduler.h b/keepalived/include/vrrp_scheduler.h index 139430d..a0e89c7 100644 --- a/keepalived/include/vrrp_scheduler.h +++ b/keepalived/include/vrrp_scheduler.h @@ -5,7 +5,7 @@ * * Part: vrrp_scheduler.c include file. * - * Version: $Id: vrrp_scheduler.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_scheduler.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_sync.h b/keepalived/include/vrrp_sync.h index 3b56e42..737bd7e 100644 --- a/keepalived/include/vrrp_sync.h +++ b/keepalived/include/vrrp_sync.h @@ -5,7 +5,7 @@ * * Part: vrrp_sync.c include file. * - * Version: $Id: vrrp_sync.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_sync.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/include/vrrp_track.h b/keepalived/include/vrrp_track.h index 5afb907..2f3b0f8 100644 --- a/keepalived/include/vrrp_track.h +++ b/keepalived/include/vrrp_track.h @@ -5,7 +5,7 @@ * * Part: vrrp_track.c include file. * - * Version: $Id: vrrp_track.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_track.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp.c b/keepalived/vrrp/vrrp.c index ad4230a..645a41b 100644 --- a/keepalived/vrrp/vrrp.c +++ b/keepalived/vrrp/vrrp.c @@ -8,7 +8,7 @@ * master fails, a backup server takes over. * The original implementation has been made by jerome etienne. * - * Version: $Id: vrrp.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_arp.c b/keepalived/vrrp/vrrp_arp.c index cb37374..dabb0fc 100644 --- a/keepalived/vrrp/vrrp_arp.c +++ b/keepalived/vrrp/vrrp_arp.c @@ -5,7 +5,7 @@ * * Part: ARP primitives. * - * Version: $Id: vrrp_arp.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_arp.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_daemon.c b/keepalived/vrrp/vrrp_daemon.c index faeccc7..c5e586b 100644 --- a/keepalived/vrrp/vrrp_daemon.c +++ b/keepalived/vrrp/vrrp_daemon.c @@ -5,7 +5,7 @@ * * Part: VRRP child process handling. * - * Version: $Id: vrrp_daemon.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_daemon.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_data.c b/keepalived/vrrp/vrrp_data.c index a0a422e..8518d39 100644 --- a/keepalived/vrrp/vrrp_data.c +++ b/keepalived/vrrp/vrrp_data.c @@ -5,7 +5,7 @@ * * Part: Dynamic data structure definition. * - * Version: $Id: vrrp_data.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_data.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_if.c b/keepalived/vrrp/vrrp_if.c index 77c7152..2af10fd 100644 --- a/keepalived/vrrp/vrrp_if.c +++ b/keepalived/vrrp/vrrp_if.c @@ -5,7 +5,7 @@ * * Part: Interfaces manipulation. * - * Version: $Id: vrrp_if.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_if.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_index.c b/keepalived/vrrp/vrrp_index.c index 80194ea..3037173 100644 --- a/keepalived/vrrp/vrrp_index.c +++ b/keepalived/vrrp/vrrp_index.c @@ -5,7 +5,7 @@ * * Part: VRRP instance index table. * - * Version: $Id: vrrp_index.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_index.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_ipaddress.c b/keepalived/vrrp/vrrp_ipaddress.c index 9d888a3..2bc6417 100644 --- a/keepalived/vrrp/vrrp_ipaddress.c +++ b/keepalived/vrrp/vrrp_ipaddress.c @@ -5,7 +5,7 @@ * * Part: NETLINK IPv4 address manipulation. * - * Version: $Id: vrrp_ipaddress.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_ipaddress.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * @@ -127,6 +127,13 @@ alloc_ipaddress(list ip_list, vector strvec, interface *ifp) /* cmd parsing */ if (!strcmp(str, "dev")) { new->ifp = if_get_by_ifname(VECTOR_SLOT(strvec, ++i)); + if (!new->ifp) { + syslog(LOG_INFO, "VRRP is trying to assign VIP to unknown %s" + " interface !!! go out and fixe your conf !!!", + (char *)VECTOR_SLOT(strvec, i)); + FREE(new); + return; + } new->ifindex = IF_INDEX(new->ifp); } else if (!strcmp(str, "scope")) { new->scope = netlink_scope_a2n(VECTOR_SLOT(strvec, ++i)); diff --git a/keepalived/vrrp/vrrp_iproute.c b/keepalived/vrrp/vrrp_iproute.c index 915b8b1..d800b7e 100644 --- a/keepalived/vrrp/vrrp_iproute.c +++ b/keepalived/vrrp/vrrp_iproute.c @@ -5,7 +5,7 @@ * * Part: NETLINK IPv4 routes manipulation. * - * Version: $Id: vrrp_iproute.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_iproute.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * @@ -143,6 +143,7 @@ alloc_route(list rt_list, vector strvec) { ip_route *new; uint32_t ipaddr = 0; + interface *ifp; char *str; int i = 0; @@ -158,7 +159,15 @@ alloc_route(list rt_list, vector strvec) } else if (!strcmp(str, "src")) { inet_ston(VECTOR_SLOT(strvec, ++i), &new->src); } else if (!strcmp(str, "dev") || !strcmp(str, "oif")) { - new->index = IF_INDEX(if_get_by_ifname(VECTOR_SLOT(strvec, ++i))); + ifp = if_get_by_ifname(VECTOR_SLOT(strvec, ++i)); + if (!ifp) { + syslog(LOG_INFO, "VRRP is trying to assign VROUTE to unknown " + "%s interface !!! go out and fixe your conf !!!", + (char *)VECTOR_SLOT(strvec, i)); + FREE(new); + return; + } + new->index = IF_INDEX(ifp); } else if (!strcmp(str, "table")) { new->table = atoi(VECTOR_SLOT(strvec, ++i)); } else if (!strcmp(str, "scope")) { diff --git a/keepalived/vrrp/vrrp_ipsecah.c b/keepalived/vrrp/vrrp_ipsecah.c index 2183017..a829011 100644 --- a/keepalived/vrrp/vrrp_ipsecah.c +++ b/keepalived/vrrp/vrrp_ipsecah.c @@ -7,7 +7,7 @@ * authentication data encryption using HMAC MD5 according to * RFCs 2085 & 2104. * - * Version: $Id: vrrp_ipsecah.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_ipsecah.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_netlink.c b/keepalived/vrrp/vrrp_netlink.c index f92a559..830c195 100644 --- a/keepalived/vrrp/vrrp_netlink.c +++ b/keepalived/vrrp/vrrp_netlink.c @@ -5,7 +5,7 @@ * * Part: NETLINK kernel command channel. * - * Version: $Id: vrrp_netlink.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_netlink.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_notify.c b/keepalived/vrrp/vrrp_notify.c index e02500e..1123dd3 100644 --- a/keepalived/vrrp/vrrp_notify.c +++ b/keepalived/vrrp/vrrp_notify.c @@ -5,7 +5,7 @@ * * Part: VRRP state transition notification scripts handling. * - * Version: $Id: vrrp_notify.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_notify.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_parser.c b/keepalived/vrrp/vrrp_parser.c index 3d3ab76..e6e8c70 100644 --- a/keepalived/vrrp/vrrp_parser.c +++ b/keepalived/vrrp/vrrp_parser.c @@ -7,7 +7,7 @@ * data structure representation the conf file representing * the loadbalanced server pool. * - * Version: $Id: vrrp_parser.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_parser.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_scheduler.c b/keepalived/vrrp/vrrp_scheduler.c index 67cd336..c21cd38 100644 --- a/keepalived/vrrp/vrrp_scheduler.c +++ b/keepalived/vrrp/vrrp_scheduler.c @@ -5,7 +5,7 @@ * * Part: Sheduling framework for vrrp code. * - * Version: $Id: vrrp_scheduler.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_scheduler.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_sync.c b/keepalived/vrrp/vrrp_sync.c index 0295ece..1641e08 100644 --- a/keepalived/vrrp/vrrp_sync.c +++ b/keepalived/vrrp/vrrp_sync.c @@ -5,7 +5,7 @@ * * Part: VRRP synchronization framework. * - * Version: $Id: vrrp_sync.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_sync.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/keepalived/vrrp/vrrp_track.c b/keepalived/vrrp/vrrp_track.c index 7b8e716..1bd1f75 100644 --- a/keepalived/vrrp/vrrp_track.c +++ b/keepalived/vrrp/vrrp_track.c @@ -5,7 +5,7 @@ * * Part: Interface tracking framework. * - * Version: $Id: vrrp_track.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vrrp_track.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/html.c b/lib/html.c index 2560aea..038a5b3 100644 --- a/lib/html.c +++ b/lib/html.c @@ -5,7 +5,7 @@ * * Part: HTML stream parser utility functions. * - * Version: $Id: html.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: html.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * diff --git a/lib/html.h b/lib/html.h index 2bc552e..1d2c8dd 100644 --- a/lib/html.h +++ b/lib/html.h @@ -5,7 +5,7 @@ * * Part: parser.c include file. * - * Version: $Id: html.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: html.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * diff --git a/lib/list.c b/lib/list.c index 634ea85..b88027e 100644 --- a/lib/list.c +++ b/lib/list.c @@ -5,7 +5,7 @@ * * Part: List structure manipulation. * - * Version: $Id: list.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: list.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/list.h b/lib/list.h index ddd5fcd..3a6c1b6 100644 --- a/lib/list.h +++ b/lib/list.h @@ -5,7 +5,7 @@ * * Part: list.c include file. * - * Version: $Id: list.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: list.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/memory.c b/lib/memory.c index 9bc75ca..083fa2f 100644 --- a/lib/memory.c +++ b/lib/memory.c @@ -6,7 +6,7 @@ * Part: Memory management framework. This framework is used to * find any memory leak. * - * Version: $Id: memory.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: memory.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * Jan Holmberg, diff --git a/lib/memory.h b/lib/memory.h index 3e1c6c4..09c6243 100644 --- a/lib/memory.h +++ b/lib/memory.h @@ -5,7 +5,7 @@ * * Part: memory.c include file. * - * Version: $Id: memory.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: memory.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Authors: Alexandre Cassen, * Jan Holmberg, diff --git a/lib/notify.c b/lib/notify.c index b557f25..f1782be 100644 --- a/lib/notify.c +++ b/lib/notify.c @@ -5,7 +5,7 @@ * * Part: Forked system call to launch an extra script. * - * Version: $Id: notify.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: notify.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/notify.h b/lib/notify.h index 6b02e62..4966841 100644 --- a/lib/notify.h +++ b/lib/notify.h @@ -5,7 +5,7 @@ * * Part: notify.c include file. * - * Version: $Id: notify.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: notify.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/parser.c b/lib/parser.c index a37b75c..6ccbd36 100644 --- a/lib/parser.c +++ b/lib/parser.c @@ -7,7 +7,7 @@ * data structure representation the conf file representing * the loadbalanced server pool. * - * Version: $Id: parser.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: parser.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/parser.h b/lib/parser.h index 6322a08..5081430 100644 --- a/lib/parser.h +++ b/lib/parser.h @@ -5,7 +5,7 @@ * * Part: cfreader.c include file. * - * Version: $Id: parser.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: parser.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/scheduler.c b/lib/scheduler.c index 3b96d38..2056832 100644 --- a/lib/scheduler.c +++ b/lib/scheduler.c @@ -7,7 +7,7 @@ * the thread management routine (thread.c) present in the * very nice zebra project (http://www.zebra.org). * - * Version: $Id: scheduler.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: scheduler.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/scheduler.h b/lib/scheduler.h index fec83ea..51e8e50 100644 --- a/lib/scheduler.h +++ b/lib/scheduler.h @@ -5,7 +5,7 @@ * * Part: scheduler.c include file. * - * Version: $Id: scheduler.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: scheduler.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/signals.c b/lib/signals.c index e0d2a03..d87e821 100644 --- a/lib/signals.c +++ b/lib/signals.c @@ -5,7 +5,7 @@ * * Part: Signals framework. * - * Version: $Id: signals.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: signals.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Kevin Lindsay, * Alexandre Cassen, @@ -156,26 +156,26 @@ void signal_run_callback(void) { if (SIGNAL_SIGHUP & signal_mask) { + signal_mask &= ~SIGNAL_SIGHUP; if (signal_SIGHUP_handler) signal_SIGHUP_handler(SIGHUP); - signal_mask &= SIGNAL_SIGHUP; } if (SIGNAL_SIGINT & signal_mask) { + signal_mask &= ~SIGNAL_SIGINT; if (signal_SIGINT_handler) signal_SIGINT_handler(SIGINT); - signal_mask &= SIGNAL_SIGINT; } if (SIGNAL_SIGTERM & signal_mask) { + signal_mask &= ~SIGNAL_SIGTERM; if (signal_SIGTERM_handler) signal_SIGTERM_handler(SIGTERM); - signal_mask &= SIGNAL_SIGTERM; } if (SIGNAL_SIGCHLD & signal_mask) { + signal_mask &= ~SIGNAL_SIGCHLD; if (signal_SIGCHLD_handler) signal_SIGCHLD_handler(SIGCHLD); - signal_mask &= SIGNAL_SIGCHLD; } } diff --git a/lib/signals.h b/lib/signals.h index c47a166..dd0e398 100644 --- a/lib/signals.h +++ b/lib/signals.h @@ -5,7 +5,7 @@ * * Part: signals.c include file. * - * Version: $Id: signals.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: signals.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Kevin Lindsay, * Alexandre Cassen, diff --git a/lib/timer.c b/lib/timer.c index b96c0ab..aa67c06 100644 --- a/lib/timer.c +++ b/lib/timer.c @@ -5,7 +5,7 @@ * * Part: Timer manipulations. * - * Version: $Id: timer.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: timer.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/timer.h b/lib/timer.h index 8889fa9..26f947f 100644 --- a/lib/timer.h +++ b/lib/timer.h @@ -5,7 +5,7 @@ * * Part: timer.c include file. * - * Version: $Id: timer.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: timer.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/utils.c b/lib/utils.c index 2f7ab2c..ac6221e 100644 --- a/lib/utils.c +++ b/lib/utils.c @@ -5,7 +5,7 @@ * * Part: General program utils. * - * Version: $Id: utils.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: utils.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/utils.h b/lib/utils.h index 52119ee..e14e253 100644 --- a/lib/utils.h +++ b/lib/utils.h @@ -5,7 +5,7 @@ * * Part: utils.h include file. * - * Version: $Id: utils.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: utils.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/vector.c b/lib/vector.c index 75f2012..b65f401 100644 --- a/lib/vector.c +++ b/lib/vector.c @@ -5,7 +5,7 @@ * * Part: Vector structure manipulation. * - * Version: $Id: vector.c,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vector.c,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * diff --git a/lib/vector.h b/lib/vector.h index 9c9a162..f0097ec 100644 --- a/lib/vector.h +++ b/lib/vector.h @@ -5,7 +5,7 @@ * * Part: vector.c include file. * - * Version: $Id: vector.h,v 1.1.10 2005/02/15 01:15:22 acassen Exp $ + * Version: $Id: vector.h,v 1.1.11 2005/03/01 01:22:13 acassen Exp $ * * Author: Alexandre Cassen, * -- 1.7.10.4