--- ucarp-1.5.2.orig/debian/NEWS +++ ucarp-1.5.2/debian/NEWS @@ -0,0 +1,54 @@ +ucarp (1.5.1-1) unstable; urgency=low + + This version introduces support for sending and receiving broadcast + advertisements, instead of multicast, through the use of the new + -M/--nomcast command argument. + + It is also now possible to configure deadratio, xparam, and nomcast + from /etc/network/interfaces. See /usr/share/doc/ucarp/README.Debian + for a full list of configuration directives. + + -- Eric Evans Sat, 25 Jul 2009 11:49:21 +0000 + +ucarp (1.5-2) unstable; urgency=low + + This version introduces support for ignoring interface state + through the use of the -S/--ignoreifstate option. This is useful + when nodes are connected by a crossover cable where powering down + one node will drop the link of the other, causing an unwanted + transition to backup on the remaining node. + + -- Eric Evans Tue, 26 Aug 2008 16:43:06 -0500 + +ucarp (1.5~snap080222-1) unstable; urgency=low + + Ucarp supports two new arguments. + + The --passfile argument can be used to specify a file containing + the password, (previously set by using --pass/-o). This provides + additional security by not exposing the password through the + process list. The specified file should contain the password as + the only line in the file. + + The --xparam argument makes it possible to specify an additional + parameter to supply to the up/down scripts. + + -- Eric Evans Wed, 02 Apr 2008 21:36:04 -0500 + +ucarp (1.2-2) unstable; urgency=low + + It is now possible to configure ucarp from /etc/network/interfaces, + see /usr/share/doc/ucarp/README.Debian to learn how. + + -- Eric Evans Thu, 19 Apr 2007 16:45:36 -0500 + +ucarp (1.2-1) unstable; urgency=low + + Ucarp's default behavior is to execute the command specified by + the --downscript option on every transition to the "backup" state. + This version introduces the --neutral option that suppresses this + on start up if "backup" is the initial state. It is always good + practice to use an idempotent downscript, but if that is not + possible then the --neutral may be of help. + + -- Eric Evans Sun, 09 Apr 2006 16:37:41 -0500 --- ucarp-1.5.2.orig/debian/README.Debian +++ ucarp-1.5.2/debian/README.Debian @@ -0,0 +1,49 @@ +ucarp for Debian +---------------- + +The recommended method for configuring ucarp is via +/etc/network/interfaces. For example: + +iface eth0 inet static + address 10.0.0.2 + netmask 255.255.255.0 + ucarp-vid 3 + ucarp-vip 10.0.0.1 + ucarp-password 16charsatmost + ucarp-advskew 0 + ucarp-advbase 1 + ucarp-master yes +iface eth0:ucarp inet static + address 10.0.0.1 + netmask 255.255.255.255 + +In the above example, ucarp will be started when eth0 is brought up, using +a vid of 3 and a password of 16charsatmost with a virtual IP of 10.0.0.1. +When ucarp determines that this host is the master eth0:ucarp will be +brought up - you can use the normal pre-up/up stanzas in +/etc/network/interfaces if you have extra things to do when the virtual +IP comes up. + +You can also override the default up/down scripts (defaults to +/usr/share/ucarp/vip-{down,up}) by using the ucarp-upscript and +ucarp-downscript options. Note that you must ensure your scripts take +care of bringing the virtual IP up and down if you do this. + +The full list of configurable values follows, see ucarp(8) for a +complete description of the corresponding command arguments. + +config directive | ucarp command argument | required +------------------+-------------------------+--------- +ucarp-vid | -v/--vhid | yes +ucarp-vip | -a/--addr | yes +ucarp-password | -p/--pass | yes +ucarp-downscript | -d/--downscript | no +ucarp-upscript | -u/--upscript | no +ucarp-advskew | -k/--advskew | no +ucarp-advbase | -b/--advbase | no +ucarp-master | -P/--preempt | no +ucarp-deadratio | -r/--deadratio | no +ucarp-nomcast | -M/--nomcast | no +ucarp-xparam | -x/--xparam | no + + -- Eric Evans Sat, 25 Jul 2009 16:56:39 +0000 --- ucarp-1.5.2.orig/debian/changelog +++ ucarp-1.5.2/debian/changelog @@ -0,0 +1,106 @@ +ucarp (1.5.2-2) unstable; urgency=medium + + * Actually update config.{sub,guess}, (Closes: #727515, #744534). + + -- Eric Evans Wed, 16 Apr 2014 19:18:32 -0500 + +ucarp (1.5.2-1+nmu1) unstable; urgency=medium + + * Non-maintainer upload. + * Depend on newer ifupdown (closes: #704854). + + -- Michael Gilbert Fri, 12 Apr 2013 00:50:11 +0000 + +ucarp (1.5.2-1) unstable; urgency=low + + * New Upstream Version + * Document signals usage in man page (Closes: #546472). + + -- Eric Evans Tue, 26 Jul 2011 20:53:37 +0200 + +ucarp (1.5.1-1) unstable; urgency=low + + * New Upstream Version + + -- Eric Evans Fri, 24 Jul 2009 14:08:33 +0000 + +ucarp (1.5-2) unstable; urgency=low + + * Documented new -S/--ignoreifstate option. + + -- Eric Evans Wed, 27 Aug 2008 11:55:36 -0500 + +ucarp (1.5-1) unstable; urgency=low + + * New upstream release. + + -- Eric Evans Mon, 25 Aug 2008 15:41:13 -0500 + +ucarp (1.5~snap080222-1) unstable; urgency=low + + * New upstream version, (Closes: #473662). This version introduces + support for reading the password from a file, (Closes: #394327). + + -- Eric Evans Sat, 03 May 2008 20:15:49 +0000 + +ucarp (1.2-2) unstable; urgency=low + + * Added support for configuring ucarp via /etc/network/interfaces. + (Closes: #264007). Many thanks to Jonathan McDowell for the + excellent idea and patch. + + -- Eric Evans Thu, 19 Apr 2007 15:28:50 -0500 + +ucarp (1.2-1) unstable; urgency=low + + * New upstream release, (Closes: #359755), complete with --neutral + options and several bug fixes courtesy of Russell Mosemann, + (Closes: #348012). + + -- Eric Evans Sat, 08 Apr 2006 18:40:57 -0500 + +ucarp (1.1-2) unstable; urgency=low + + * Patched to correct a bug that caused upscript to also be applied + when state changed to BACKUP, if --dowscript was passed before + --upscript, (Closes: #284891). Thanks Michail Bachmann + + + -- Eric Evans Fri, 24 Dec 2004 12:39:30 -0600 + +ucarp (1.1-1) unstable; urgency=low + + * New upstream release + * Updated manpage to document new --facility argument + + -- Eric Evans Tue, 7 Sep 2004 13:48:45 -0500 + +ucarp (1.0-1) unstable; urgency=low + + * New upstream release + * Dropped custom upscript/downscript examples in favor of those + included upstream. + * Updated manpage to document new --daemonize argument + + -- Eric Evans Mon, 28 Jun 2004 20:55:25 -0500 + +ucarp (0.8-1) unstable; urgency=low + + * New upstream release + + -- Eric Evans Mon, 24 May 2004 14:47:28 -0500 + +ucarp (0.8-1) unstable; urgency=low + + * New upstream release. + * Several spelling corrections to the man page. Documented new + argument for --shutdown. + + -- Eric Evans Thu, 29 Apr 2004 21:11:01 -0500 + +ucarp (0.6-1) unstable; urgency=low + + * Initial Release, (Closes: #242564). + * Wrote and included some simple upscript/downscript examples + + -- Eric Evans Thu, 29 Apr 2004 21:11:01 -0500 --- ucarp-1.5.2.orig/debian/compat +++ ucarp-1.5.2/debian/compat @@ -0,0 +1 @@ +5 --- ucarp-1.5.2.orig/debian/control +++ ucarp-1.5.2/debian/control @@ -0,0 +1,27 @@ +Source: ucarp +Section: net +Priority: optional +Maintainer: Eric Evans +Build-Depends: debhelper (>= 5.0.0), + libpcap-dev (>= 0.7.2), + docbook-to-man (>= 1:2.0.0), + autotools-dev +Homepage: http://ucarp.org +Vcs-Git: git://git.debian.org/git/users/eevans/ucarp.git +Vcs-Browser: http://git.debian.org/?p=users/eevans/ucarp.git +Standards-Version: 3.9.5 + +Package: ucarp +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, ifupdown (>= 0.7.1) +Recommends: iproute +Description: user-space replacement to VRRP -- automatic IP fail-over + UCARP allows a pair of hosts to share common virtual IP addresses in + order to provide automatic fail-over. It is a portable user-land + implementation of the secure and patent-free Common Address Redundancy + Protocol (CARP, OpenBSD's alternative to the VRRP). + . + Strong points of the CARP protocol are: very low overhead, + cryptographically signed messages, interoperability between different + operating systems and no need for any dedicated extra network link + between redundant hosts. --- ucarp-1.5.2.orig/debian/copyright +++ ucarp-1.5.2/debian/copyright @@ -0,0 +1,29 @@ +This package was debianized by Eric Evans on +Thu, 29 Apr 2004 21:11:01 -0500. + +It was downloaded from http://download.pureftpd.org/pub/ucarp/ + +Upstream Author: Frank Denis + +Copyright (c) 2004 Frank Denis with the help of all +contributors + +Permission to use, copy, modify, and distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +Some code has been imported from the Pure-FTPd project. + +The bsd-getopt_long.c and bsd-getopt_long.h source code is based upon +the OpenBSD and NetBSD projects and it is covered by the BSD license. +The carp.c and ip_carp.h files are derived from OpenBSD source code. The +original license is enclosed at the beginning of the related files. + --- ucarp-1.5.2.orig/debian/if-up +++ ucarp-1.5.2/debian/if-up @@ -0,0 +1,53 @@ +#!/bin/sh + +UCARP=/usr/sbin/ucarp +EXTRA_PARAMS="" + +if [ ! -x $UCARP ]; then + exit 0 +fi + +if [ -z "$IF_UCARP_UPSCRIPT" ]; then + IF_UCARP_UPSCRIPT=/usr/share/ucarp/vip-up +fi + +if [ -z "$IF_UCARP_DOWNSCRIPT" ]; then + IF_UCARP_DOWNSCRIPT=/usr/share/ucarp/vip-down +fi + +if [ -n "$IF_UCARP_MASTER" ]; then + if ! expr "$IF_UCARP_MASTER" : "no\|off\|false\|0" > /dev/null; then + EXTRA_PARAMS="-P" + fi +fi + +if [ -n "$IF_UCARP_ADVSKEW" ]; then + EXTRA_PARAMS="$EXTRA_PARAMS -k $IF_UCARP_ADVSKEW" +fi + +if [ -n "$IF_UCARP_ADVBASE" ]; then + EXTRA_PARAMS="$EXTRA_PARAMS -b $IF_UCARP_ADVBASE" +fi + +if [ -n "$IF_UCARP_DEADRATIO" ]; then + EXTRA_PARAMS="$EXTRA_PARAMS -r $IF_UCARP_DEADRATIO" +fi + +if [ -n "$IF_UCARP_NOMCAST" ]; then + if ! expr "$IF_UCARP_NOMCAST" : "no\|off\|false\|0" > /dev/null; then + EXTRA_PARAMS="$EXTRA_PARAMS -M" + fi +fi + +if [ -n "$IF_UCARP_XPARAM" ]; then + EXTRA_PARAMS="$EXTRA_PARAMS -x $IF_UCARP_XPARAM" +fi + +if [ -n "$IF_UCARP_VID" -a -n "$IF_UCARP_VIP" -a \ + -n "$IF_UCARP_PASSWORD" ]; then + $UCARP -i $IFACE -s $IF_ADDRESS -B -z -v $IF_UCARP_VID \ + -p $IF_UCARP_PASSWORD -a $IF_UCARP_VIP -u $IF_UCARP_UPSCRIPT \ + -d $IF_UCARP_DOWNSCRIPT $EXTRA_PARAMS +fi + +# vi:ai sw=4 ts=4 tw=0 et --- ucarp-1.5.2.orig/debian/rules +++ ucarp-1.5.2/debian/rules @@ -0,0 +1,93 @@ +#!/usr/bin/make -f + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/buildflags.mk + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +config.status: configure + dh_testdir + dh_autotools-dev_updateconfig + + ./configure \ + --host=$(DEB_HOST_GNU_TYPE) \ + --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=/usr \ + --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info + + +build: build-arch build-indep +build-arch: build-stamp +build-indep: build-stamp +build-stamp: config.status + dh_testdir + + $(MAKE) + /usr/bin/docbook-to-man debian/ucarp.8.sgml > ucarp.8 + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + rm -f ucarp.8 + [ ! -f Makefile ] || $(MAKE) distclean + dh_autotools-dev_restoreconfig + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean + dh_installdirs + + $(MAKE) install DESTDIR=$(CURDIR)/debian/ucarp + install -d $(CURDIR)/debian/ucarp/etc/network/if-up.d + install -d $(CURDIR)/debian/ucarp/usr/share/ucarp + install -m 755 $(CURDIR)/debian/if-up \ + $(CURDIR)/debian/ucarp/etc/network/if-up.d/ucarp + install -m 755 $(CURDIR)/debian/vip-up \ + $(CURDIR)/debian/ucarp/usr/share/ucarp/vip-up + install -m 755 $(CURDIR)/debian/vip-down \ + $(CURDIR)/debian/ucarp/usr/share/ucarp/vip-down + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installinit + dh_installdocs README AUTHORS NEWS + dh_installexamples examples/linux/vip-down.sh examples/linux/vip-up.sh + dh_installman ucarp.8 + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- ucarp-1.5.2.orig/debian/source/format +++ ucarp-1.5.2/debian/source/format @@ -0,0 +1 @@ +1.0 --- ucarp-1.5.2.orig/debian/ucarp.8.sgml +++ ucarp-1.5.2/debian/ucarp.8.sgml @@ -0,0 +1,319 @@ + manpage.1'. You may view + the manual page with: `docbook-to-man manpage.sgml | nroff -man | + less'. A typical entry in a Makefile or Makefile.am is: + +manpage.1: manpage.sgml + docbook-to-man $< > $@ + + + The docbook-to-man binary is found in the docbook-to-man package. + Please remember that if you create the nroff version in one of the + debian/rules file targets (such as build), you will need to include + docbook-to-man in your Build-Depends control field. + + --> + + Eric"> + Evans"> + + July 26, 2011"> + 8"> + eevans@debian.org"> + + UCARP"> + + + Debian"> + GNU"> + GPL"> +]> + + + +
+ &dhemail; +
+ + &dhfirstname; + &dhsurname; + + + 2003 + &dhusername; + + &dhdate; +
+ + &dhucpackage; + + &dhsection; + + + + &dhpackage; + Automatic IP failover + + + + + &dhpackage; + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DESCRIPTION + + &dhpackage; allows a pair of hosts to share common IP addresses in + order to provide automatic failover of an address from one machine to + another. It is a portable userland implementation of the secure and + patent-free Common Address Redundancy Protocol, (CARP), OpenBSD's + alternative to VRRP. + + + + OPTIONS + + &dhpackage; supports the following command line options: + + + + + The network interface to bind to. + + + + + The persistent source address, (real IP), associated with this + interface. + + + + + + The id of the virtual server [1-255]. + + + + + + The shared password, (this gets encrypted and is not sent in the + clear). + + + + + + File to read the shared password from. The file specified + should contain the password on the first line of the file. + + + + + + Turn on preemptive failover. This causes an instance of + &dhpackage; to assume master status right immediately. + + + + + + Do not run the downscript on startup when the + initial state is backup. + + + + + + The IP address of the virtual server. + + + + + + Display a brief summary of the command line options. + + + + + + Interval in seconds that advertisements will occur, (defaults + to 1 second). + + + + + + Advertisement skew [1-255], (defaults to 0). + + + + + + Specifies the command to run after &dhpackage; has successfully + become master, the interface name gets passed as an argument. + Typically a script used to bring up the virtual address, log the + result, add routes, clear arp cache entries, etc. + + + + + + Specifies the command that is run after &dhpackage; has + transitioned to the backup state, the interface name is passed + as an argument. This is typically a script used to bring down + the virtual interface, log the action, remove routes, etc. + + + + + + Ratio used by the backup to determine how long to wait for an + unresponsive master before considering it dead. + + + + + + Use of this command causes the command specified by the -d + argument to be invoked when ucarp shuts down. + + + + + + Causes &dhpackage; to detach from the terminal and run in the + background as a daemon. + + + + + + Set the syslog facility, defaults to daemon. + + + + + + Specify an extra parameter to be supplied to the up/down + scripts. + + + + + + Ignore unplugged network cables. This option is useful when + &dhpackage; nodes are connected with a crossover cable. Without + this option the master will transition to backup when the other + node is powered down, as it no longer has a link (NO-CARRIER). + + + + + + + Use broadcast instead of multicast advertisements. + + + + + + + EXAMPLES + A host with a real IP of 10.1.1.10 configured to be the master + in a preemptive configuration with a virtual IP of 10.1.1.252. + &dhpackage; -i eth0 -s 10.1.1.10 -v 10 -p secret -a 10.1.1.252 \\ + --upscript=/etc/vip-up.sh --downscript=/etc/vip-down.sh -P + + The backup might be configured something like this. + &dhpackage; -i eth0 -s 10.1.1.11 -v 10 -p secret -a 10.1.1.252 \\ + --upscript=/etc/vip-up.sh --downscript=/etc/vip-down.sh + + A machine with a real IP of 192.168.1.19 is the preferred master for + a virtual IP of 10.1.12.7, broadcasts are sent every 5 seconds. + &dhpackage; -b 5 -s 192.168.1.19 -v 27 -p badpass -a 10.1.12.7 \\ + -u /etc/vip-up.sh -d /etc/vip-down.sh -z + + The hot standby with an IP of 192.168.1.20 uses the following + command, (note the advskew of 50 putting it at a disadvantage and making + the first machine preferred). + &dhpackage; -b 5 -k 50 -s 192.168.1.20 -v 27 -p badpass -a 10.1.12.7 \\ + -u /etc/vip-up.sh -d /etc/vip-down.sh -z + + + + SIGNALS + Sending the ucarp process a SIGUSR1 will have it log a status + line to syslog, eg "Sep 13 12:59:56 localhost ucarp[2654]: [INFO] + MASTER on eth0 id 1" or "Sep 13 13:00:25 localhost ucarp[2644]: [INFO] + BACKUP on eth0 id 1" + Sending the ucarp process a SIGUSR2 will cause it to demote itself + from master to backup, pause 3 seconds, then proceed as usual to listen + for other masters, and promote itself if necessary. This could be useful + if you wish another node to take over master. + + + + + + AUTHOR + &dhpackage; was written by Frank Denis, <j@ucarp.org>. + + This manual page was written by &dhusername; <&dhemail;> + for the &debian; system (but may be used by others). Permission is + granted to copy, distribute and/or modify this document under + the terms of the &gnu; General Public License, Version 2 or any + later version published by the Free Software Foundation. + + On Debian systems, the complete text of the GNU General Public + License can be found in /usr/share/common-licenses/GPL. + + +
+ + + + --- ucarp-1.5.2.orig/debian/vip-down +++ ucarp-1.5.2/debian/vip-down @@ -0,0 +1,3 @@ +#!/bin/sh + +/sbin/ifdown $1:ucarp --- ucarp-1.5.2.orig/debian/vip-up +++ ucarp-1.5.2/debian/vip-up @@ -0,0 +1,3 @@ +#!/bin/sh + +/sbin/ifup $1:ucarp --- ucarp-1.5.2.orig/debian/watch +++ ucarp-1.5.2/debian/watch @@ -0,0 +1,3 @@ +version=2 + +ftp://ftp.ucarp.org/pure-ftpd/misc/ucarp/ucarp-(.*)\.tar\.gz