rpms/ucarp/FC-4 ucarp-1.3-pre.patch, NONE, 1.1 .cvsignore, 1.3, 1.4 carp.init, 1.1, 1.2 sources, 1.3, 1.4 ucarp.spec, 1.4, 1.5 vip-001.conf.example, 1.1, 1.2

Matthias Saou (thias) fedora-extras-commits at redhat.com
Tue Aug 22 13:12:40 UTC 2006


Author: thias

Update of /cvs/extras/rpms/ucarp/FC-4
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv31087/FC-4

Modified Files:
	.cvsignore carp.init sources ucarp.spec vip-001.conf.example 
Added Files:
	ucarp-1.3-pre.patch 
Log Message:
Backport fixes from devel to FC-5 and FC-4 branches.


ucarp-1.3-pre.patch:

--- NEW FILE ucarp-1.3-pre.patch ---
diff -Naupr ucarp-1.2/ChangeLog ucarp-1.3/ChangeLog
--- ucarp-1.2/ChangeLog	2006-02-25 17:32:53.000000000 +0100
+++ ucarp-1.3/ChangeLog	2006-07-05 00:59:22.000000000 +0200
@@ -1,3 +1,14 @@
+* Version 1.3:
+  -n option wasn't properly parsed while --neutral was. Reported by Stefan
+Behte.
+  gratuitous ARP packets should now be properly sent. Thanks to Marcus
+Rueckert for indirectly pointing out that the code was wrong.
+  New -m option, and the virtual IP address is now passed to up/down scripts
+as well. By Fabrice Dulaunoy and Dirk Jagdmann who provided different
+implementations of the same idea.
+  A bogus return statement has been removed, thanks to Alessio Cervellin.
+  All interfaces should now be discovered on Solaris.
+
 * Version 1.2:
   fakesnprintf/bsd-getopt_long updates from pure-ftpd 1.0.21.
   Avoid processing our own multicasts. Thanks to Gregory McGarry.
diff -Naupr ucarp-1.2/config.guess ucarp-1.3/config.guess
--- ucarp-1.2/config.guess	2006-02-01 20:59:57.000000000 +0100
+++ ucarp-1.3/config.guess	2006-05-27 23:12:33.000000000 +0200
@@ -1,9 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2005-07-08'
+timestamp='2006-05-13'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -106,7 +107,7 @@ set_cc_for_build='
 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
 : ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
  { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
  { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
  { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
@@ -206,6 +207,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
     *:ekkoBSD:*:*)
 	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
 	exit ;;
+    *:SolidBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+	exit ;;
     macppc:MirBSD:*:*)
 	echo powerppc-unknown-mirbsd${UNAME_RELEASE}
 	exit ;;
@@ -764,7 +768,14 @@ EOF
 	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
 	exit ;;
     *:FreeBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	case ${UNAME_MACHINE} in
+	    pc98)
+		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    amd64)
+		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    *)
+		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	esac
 	exit ;;
     i*:CYGWIN*:*)
 	echo ${UNAME_MACHINE}-pc-cygwin
@@ -779,8 +790,11 @@ EOF
     i*:PW*:*)
 	echo ${UNAME_MACHINE}-pc-pw32
 	exit ;;
-    x86:Interix*:[34]*)
-	echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+    x86:Interix*:[345]*)
+	echo i586-pc-interix${UNAME_RELEASE}
+	exit ;;
+    EM64T:Interix*:[345]*)
+	echo x86_64-unknown-interix${UNAME_RELEASE}
 	exit ;;
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
 	echo i${UNAME_MACHINE}-pc-mks
@@ -794,7 +808,7 @@ EOF
     i*:UWIN*:*)
 	echo ${UNAME_MACHINE}-pc-uwin
 	exit ;;
-    amd64:CYGWIN*:*:*)
+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
 	echo x86_64-unknown-cygwin
 	exit ;;
     p*:CYGWIN*:*)
@@ -851,7 +865,11 @@ EOF
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
 	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
 	;;
     mips64:Linux:*:*)
@@ -870,9 +888,16 @@ EOF
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
 	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
 	;;
+    or32:Linux:*:*)
+	echo or32-unknown-linux-gnu
+	exit ;;
     ppc:Linux:*:*)
 	echo powerpc-unknown-linux-gnu
 	exit ;;
@@ -916,6 +941,9 @@ EOF
     sparc:Linux:*:* | sparc64:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
+    vax:Linux:*:*)
+	echo ${UNAME_MACHINE}-dec-linux-gnu
+	exit ;;
     x86_64:Linux:*:*)
 	echo x86_64-unknown-linux-gnu
 	exit ;;
@@ -961,7 +989,7 @@ EOF
 	LIBC=gnulibc1
 	# endif
 	#else
-	#ifdef __INTEL_COMPILER
+	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
 	LIBC=gnu
 	#else
 	LIBC=gnuaout
@@ -971,7 +999,11 @@ EOF
 	LIBC=dietlibc
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^LIBC/{
+		s: ::g
+		p
+	    }'`"
 	test x"${LIBC}" != x && {
 		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
 		exit
@@ -1182,7 +1214,6 @@ EOF
     *:Darwin:*:*)
 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
 	case $UNAME_PROCESSOR in
-	    *86) UNAME_PROCESSOR=i686 ;;
 	    unknown) UNAME_PROCESSOR=powerpc ;;
 	esac
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
@@ -1261,6 +1292,9 @@ EOF
     i*86:skyos:*:*)
 	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
 	exit ;;
+    i*86:rdos:*:*)
+	echo ${UNAME_MACHINE}-pc-rdos
+	exit ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
diff -Naupr ucarp-1.2/config.sub ucarp-1.3/config.sub
--- ucarp-1.2/config.sub	2006-02-01 20:59:57.000000000 +0100
+++ ucarp-1.3/config.sub	2006-05-27 23:12:38.000000000 +0200
@@ -1,9 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2005-07-08'
+timestamp='2006-05-13'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -119,8 +120,9 @@ esac
 # Here we must recognize all the valid KERNEL-OS combinations.
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
-  kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+  storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
@@ -171,6 +173,10 @@ case $os in
 	-hiux*)
 		os=-hiuxwe2
 		;;
+	-sco6)
+		os=-sco5v6
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
 	-sco5)
 		os=-sco3.2v5
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -187,6 +193,10 @@ case $os in
 		# Don't forget version if it is 3.2v4 or newer.
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
 		;;
+	-sco5v6*)
+		# Don't forget version if it is 3.2v4 or newer.
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
 	-sco*)
 		os=-sco3.2v2
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -239,7 +249,8 @@ case $basic_machine in
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
-	| m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
+	| m32c | m32r | m32rle | m68000 | m68k | m88k \
+	| maxq | mb | microblaze | mcore \
 	| mips | mipsbe | mipseb | mipsel | mipsle \
 	| mips16 \
 	| mips64 | mips64el \
@@ -257,18 +268,19 @@ case $basic_machine in
 	| mipsisa64sr71k | mipsisa64sr71kel \
 	| mipstx39 | mipstx39el \
 	| mn10200 | mn10300 \
-	| ms1 \
+	| mt \
 	| msp430 \
+	| nios | nios2 \
 	| ns16k | ns32k \
 	| or32 \
 	| pdp10 | pdp11 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
 	| pyramid \
-	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
 	| sh64 | sh64le \
-	| sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
-	| sparcv8 | sparcv9 | sparcv9b \
-	| strongarm \
+	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+	| spu | strongarm \
 	| tahoe | thumb | tic4x | tic80 | tron \
 	| v850 | v850e \
 	| we32k \
@@ -276,9 +288,6 @@ case $basic_machine in
 	| z8k)
 		basic_machine=$basic_machine-unknown
 		;;
-	m32c)
-		basic_machine=$basic_machine-unknown
-		;;
 	m6811 | m68hc11 | m6812 | m68hc12)
 		# Motorola 68HC11/12.
 		basic_machine=$basic_machine-unknown
@@ -286,6 +295,9 @@ case $basic_machine in
 		;;
 	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
 		;;
+	ms1)
+		basic_machine=mt-unknown
+		;;
 
 	# We use `pc' rather than `unknown'
 	# because (1) that's what they normally are, and
@@ -316,7 +328,7 @@ case $basic_machine in
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
 	| i*86-* | i860-* | i960-* | ia64-* \
 	| ip2k-* | iq2000-* \
-	| m32r-* | m32rle-* \
+	| m32c-* | m32r-* | m32rle-* \
 	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
 	| m88110-* | m88k-* | maxq-* | mcore-* \
 	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
@@ -336,19 +348,20 @@ case $basic_machine in
 	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
 	| mipstx39-* | mipstx39el-* \
 	| mmix-* \
-	| ms1-* \
+	| mt-* \
 	| msp430-* \
+	| nios-* | nios2-* \
 	| none-* | np1-* | ns16k-* | ns32k-* \
 	| orion-* \
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
 	| pyramid-* \
 	| romp-* | rs6000-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-	| sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
+	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
 	| sparclite-* \
-	| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
 	| tahoe-* | thumb-* \
 	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
 	| tron-* \
@@ -359,8 +372,6 @@ case $basic_machine in
 	| ymp-* \
 	| z8k-*)
 		;;
-	m32c-*)
-		;;
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
 	386bsd)
@@ -696,6 +707,9 @@ case $basic_machine in
 		basic_machine=i386-pc
 		os=-msdos
 		;;
+	ms1-*)
+		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+		;;
 	mvs)
 		basic_machine=i370-ibm
 		os=-mvs
@@ -803,6 +817,12 @@ case $basic_machine in
 	pc532 | pc532-*)
 		basic_machine=ns32k-pc532
 		;;
+	pc98)
+		basic_machine=i386-pc
+		;;
+	pc98-*)
+		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
 	pentium | p5 | k5 | k6 | nexgen | viac3)
 		basic_machine=i586-pc
 		;;
@@ -859,6 +879,10 @@ case $basic_machine in
 		basic_machine=i586-unknown
 		os=-pw32
 		;;
+	rdos)
+		basic_machine=i386-pc
+		os=-rdos
+		;;
 	rom68k)
 		basic_machine=m68k-rom68k
 		os=-coff
@@ -1101,7 +1125,7 @@ case $basic_machine in
 	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
 		basic_machine=sh-unknown
 		;;
-	sparc | sparcv8 | sparcv9 | sparcv9b)
+	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
 		basic_machine=sparc-sun
 		;;
 	cydra)
@@ -1174,21 +1198,23 @@ case $os in
 	      | -aos* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+	      | -openbsd* | -solidbsd* \
 	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
 	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
 	      | -chorusos* | -chorusrdb* \
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
+	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+	      | -uxpv* | -beos* | -mpeix* | -udk* \
 	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
 	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku*)
+	      | -skyos* | -haiku* | -rdos*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1340,6 +1366,9 @@ else
 # system, and we'll never get to this point.
 
 case $basic_machine in
+        spu-*)
+		os=-elf
+		;;
 	*-acorn)
 		os=-riscix1.2
 		;;
@@ -1349,9 +1378,9 @@ case $basic_machine in
 	arm*-semi)
 		os=-aout
 		;;
-    c4x-* | tic4x-*)
-        os=-coff
-        ;;
+        c4x-* | tic4x-*)
+        	os=-coff
+		;;
 	# This must come before the *-dec entry.
 	pdp10-*)
 		os=-tops20
diff -Naupr ucarp-1.2/configure ucarp-1.3/configure
--- ucarp-1.2/configure	2006-02-25 17:32:42.000000000 +0100
+++ ucarp-1.3/configure	2006-05-27 23:14:51.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for ucarp 1.2.
+# Generated by GNU Autoconf 2.59 for ucarp 1.3.
 #
 # Report bugs to <bugs at ucarp.org>.
 #
@@ -269,8 +269,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
 # Identity of this package.
 PACKAGE_NAME='ucarp'
 PACKAGE_TARNAME='ucarp'
-PACKAGE_VERSION='1.2'
-PACKAGE_STRING='ucarp 1.2'
+PACKAGE_VERSION='1.3'
+PACKAGE_STRING='ucarp 1.3'
 PACKAGE_BUGREPORT='bugs at ucarp.org'
 
 ac_config_libobj_dir=src
@@ -780,7 +780,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures ucarp 1.2 to adapt to many kinds of systems.
+\`configure' configures ucarp 1.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -846,7 +846,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of ucarp 1.2:";;
+     short | recursive ) echo "Configuration of ucarp 1.3:";;
    esac
   cat <<\_ACEOF
 
@@ -976,7 +976,7 @@ fi
 test -n "$ac_init_help" && exit 0
 if $ac_init_version; then
   cat <<\_ACEOF
-ucarp configure 1.2
+ucarp configure 1.3
 generated by GNU Autoconf 2.59
 
 Copyright (C) 2003 Free Software Foundation, Inc.
@@ -990,7 +990,7 @@ cat >&5 <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by ucarp $as_me 1.2, which was
+It was created by ucarp $as_me 1.3, which was
 generated by GNU Autoconf 2.59.  Invocation command line was
 
   $ $0 $@
@@ -1635,7 +1635,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='ucarp'
- VERSION='1.2'
+ VERSION='1.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -12000,7 +12000,7 @@ sysconfdir="$CONFDIR"
 CPPFLAGS="$CPPFLAGS -DCONFDIR=\\\"$sysconfdir\\\""
 
 
-                                                                      ac_config_files="$ac_config_files Makefile src/Makefile examples/Makefile po/Makefile.in examples/linux/Makefile examples/bsd/Makefile m4/Makefile"
+                                                                      ac_config_files="$ac_config_files Makefile src/Makefile examples/Makefile examples/linux/Makefile examples/bsd/Makefile po/Makefile.in m4/Makefile"
 
 
 cat >confcache <<\_ACEOF
@@ -12379,7 +12379,7 @@ _ASBOX
 } >&5
 cat >&5 <<_CSEOF
 
-This file was extended by ucarp $as_me 1.2, which was
+This file was extended by ucarp $as_me 1.3, which was
 generated by GNU Autoconf 2.59.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -12442,7 +12442,7 @@ _ACEOF
 
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-ucarp config.status 1.2
+ucarp config.status 1.3
 configured by $0, generated by GNU Autoconf 2.59,
   with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
 
@@ -12562,9 +12562,9 @@ do
   "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
   "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
   "examples/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
-  "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
   "examples/linux/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/linux/Makefile" ;;
   "examples/bsd/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/bsd/Makefile" ;;
+  "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
   "m4/Makefile" ) CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;;
   "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
   "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
diff -Naupr ucarp-1.2/configure.ac ucarp-1.3/configure.ac
--- ucarp-1.2/configure.ac	2006-02-25 17:25:46.000000000 +0100
+++ ucarp-1.3/configure.ac	2006-05-27 23:04:41.000000000 +0200
@@ -1,6 +1,6 @@
 AC_PREREQ(2.59)
 
-AC_INIT([ucarp],[1.2],[bugs at ucarp.org])
+AC_INIT([ucarp],[1.3],[bugs at ucarp.org])
 AC_CONFIG_HEADERS([config.h])
 AM_INIT_AUTOMAKE([1.9 dist-bzip2])
 AC_CONFIG_LIBOBJ_DIR(src)
@@ -259,9 +259,9 @@ CPPFLAGS="$CPPFLAGS -DCONFDIR=\\\"$sysco
 
 dnl Output
 
-AC_CONFIG_FILES(Makefile src/Makefile examples/Makefile po/Makefile.in
+AC_CONFIG_FILES(Makefile src/Makefile examples/Makefile
                 examples/linux/Makefile examples/bsd/Makefile
-                m4/Makefile )
+                po/Makefile.in m4/Makefile )
 
 AC_OUTPUT
 
diff -Naupr ucarp-1.2/examples/bsd/vip-down.sh ucarp-1.3/examples/bsd/vip-down.sh
--- ucarp-1.2/examples/bsd/vip-down.sh	2004-08-28 12:16:55.000000000 +0200
+++ ucarp-1.3/examples/bsd/vip-down.sh	2006-05-27 22:38:40.000000000 +0200
@@ -1,4 +1,4 @@
 #! /bin/sh
 exec 2> /dev/null
 
-/sbin/ifconfig "$1" -alias 10.1.1.252
+/sbin/ifconfig "$1" -alias "$2"
diff -Naupr ucarp-1.2/examples/bsd/vip-up.sh ucarp-1.3/examples/bsd/vip-up.sh
--- ucarp-1.2/examples/bsd/vip-up.sh	2004-08-28 12:16:52.000000000 +0200
+++ ucarp-1.3/examples/bsd/vip-up.sh	2006-05-27 22:38:34.000000000 +0200
@@ -1,4 +1,4 @@
 #! /bin/sh
 exec 2> /dev/null
 
-/sbin/ifconfig "$1" alias 10.1.1.252 netmask 255.255.255.255
+/sbin/ifconfig "$1" alias "$2" netmask 255.255.255.255
diff -Naupr ucarp-1.2/examples/linux/vip-down.sh ucarp-1.3/examples/linux/vip-down.sh
--- ucarp-1.2/examples/linux/vip-down.sh	2004-08-28 12:16:49.000000000 +0200
+++ ucarp-1.3/examples/linux/vip-down.sh	2006-05-27 22:41:37.000000000 +0200
@@ -1,4 +1,7 @@
 #! /bin/sh
 exec 2> /dev/null
 
-/sbin/ip addr del 10.1.1.252/24 dev "$1"
+/sbin/ip addr del "$2"/24 dev "$1"
+
+# or alternatively:
+# /sbin/ifconfig "$1":254 down
diff -Naupr ucarp-1.2/examples/linux/vip-up.sh ucarp-1.3/examples/linux/vip-up.sh
--- ucarp-1.2/examples/linux/vip-up.sh	2004-08-28 12:16:47.000000000 +0200
+++ ucarp-1.3/examples/linux/vip-up.sh	2006-05-27 22:40:22.000000000 +0200
@@ -1,4 +1,7 @@
 #! /bin/sh
 exec 2> /dev/null
 
-/sbin/ip addr add 10.1.1.252/24 dev "$1"
+/sbin/ip addr add "$2"/24 dev "$1"
+
+# or alternatively:
+# /sbin/ifconfig "$1":254 "$2" netmask 255.255.255.0 
diff -Naupr ucarp-1.2/Makefile.am ucarp-1.3/Makefile.am
--- ucarp-1.2/Makefile.am	2006-02-25 17:22:01.000000000 +0100
+++ ucarp-1.3/Makefile.am	2006-05-27 23:09:30.000000000 +0200
@@ -7,4 +7,4 @@ SUBDIRS = \
 ACLOCAL_AMFLAGS = -I m4
 
 
-EXTRA_DIST = config.rpath mkinstalldirs
+EXTRA_DIST = config.rpath mkinstalldirs  config.rpath mkinstalldirs
diff -Naupr ucarp-1.2/Makefile.in ucarp-1.3/Makefile.in
--- ucarp-1.2/Makefile.in	2006-02-25 17:32:11.000000000 +0100
+++ ucarp-1.3/Makefile.in	2006-05-27 23:14:12.000000000 +0200
@@ -178,7 +178,7 @@ SUBDIRS = \
 	examples
 
 ACLOCAL_AMFLAGS = -I m4
-EXTRA_DIST = config.rpath mkinstalldirs
+EXTRA_DIST = config.rpath mkinstalldirs  config.rpath mkinstalldirs
 all: config.h
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
 
diff -Naupr ucarp-1.2/NEWS ucarp-1.3/NEWS
--- ucarp-1.2/NEWS	2006-02-19 00:15:43.000000000 +0100
+++ ucarp-1.3/NEWS	2006-04-06 11:50:19.000000000 +0200
@@ -1,3 +1,5 @@
+* Version 1.3:
+
 * Version 1.2:
  - Neutral mode (--neutral).
  - NetBSD compatibility.
diff -Naupr ucarp-1.2/po/en at boldquot.gmo ucarp-1.3/po/en at boldquot.gmo
--- ucarp-1.2/po/en at boldquot.gmo	2006-02-25 17:50:06.000000000 +0100
+++ ucarp-1.3/po/en at boldquot.gmo	2006-07-05 00:54:58.000000000 +0200
@@ -1,13 +1,8 @@
-Þ•
-
-
-
-
-
-
-
-
-
+Þ•
+
+
+
+
 --srcip=<ip> (-s <ip>): source (real) IP address of that host
 --vhid=<id> (-v <id>): virtual IP identifier (1-255)
 --pass=<pass> (-p <pass>): password
@@ -23,6 +18,7 @@
 --shutdown (-z): call shutdown script at exit
 --daemonize (-B): run in background
 --facility=<facility> (-f): set syslog facility (default=daemon)
+--xparam=<value> (-x): extra parameter to send to up/down scripts
 
 Sample usage:
 
@@ -37,10 +33,10 @@ ucarp --interface=eth0 --srcip=10.1.1.1 
       --upscript=/etc/vip-up.sh --downscript=/etc/vip-down.sh
 
 
-Please report bugs to 
+Please report bugs to 
 Report-Msgid-Bugs-To: bugs at ucarp.org
-POT-Creation-Date: 2006-02-25 17:49+0100
-PO-Revision-Date: 2006-02-25 17:49+0100
+POT-Creation-Date: 2006-07-05 00:54+0200
+PO-Revision-Date: 2006-07-05 00:54+0200
 Last-Translator: Automatically generated
 Language-Team: none
 MIME-Version: 1.0
@@ -63,6 +59,7 @@ Plural-Forms: nplurals=2; plural=(n != 1
 --shutdown (-z): call shutdown script at exit
 --daemonize (-B): run in background
 --facility=<facility> (-f): set syslog facility (default=daemon)
+--xparam=<value> (-x): extra parameter to send to up/down scripts
 
 Sample usage:
 
@@ -77,4 +74,4 @@ ucarp --interface=eth0 --srcip=10.1.1.1 
       --upscript=/etc/vip-up.sh --downscript=/etc/vip-down.sh
 
 
-Please report bugs to 
\ No newline at end of file
+Please report bugs to 
\ No newline at end of file
diff -Naupr ucarp-1.2/po/en at boldquot.po ucarp-1.3/po/en at boldquot.po
--- ucarp-1.2/po/en at boldquot.po	2006-02-25 17:50:06.000000000 +0100
+++ ucarp-1.3/po/en at boldquot.po	2006-07-05 00:54:56.000000000 +0200
@@ -30,10 +30,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: ucarp 1.2\n"
+"Project-Id-Version: ucarp 1.3\n"
 "Report-Msgid-Bugs-To: bugs at ucarp.org\n"
-"POT-Creation-Date: 2006-02-25 17:49+0100\n"
-"PO-Revision-Date: 2006-02-25 17:49+0100\n"
+"POT-Creation-Date: 2006-07-05 00:54+0200\n"
+"PO-Revision-Date: 2006-07-05 00:54+0200\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
 "MIME-Version: 1.0\n"
@@ -119,30 +119,53 @@ msgstr "Putting MASTER down - preemption
 msgid "Putting MASTER DOWN (going to time out)"
 msgstr "Putting MASTER DOWN (going to time out)"
 
-#: src/carp.c:655
+#: src/carp.c:657
 msgid "Password too long"
 msgstr "Password too long"
 
-#: src/carp.c:668
+#: src/carp.c:670
 #, c-format
 msgid "Unable to find MAC address of [%s]"
 msgstr "Unable to find MAC address of [%s]"
 
-#: src/carp.c:672
+#: src/carp.c:674
 #, c-format
 msgid "Local advertised ethernet address is [%02x:%02x:%02x:%02x:%02x:%02x]"
 msgstr "Local advertised ethernet address is [%02x:%02x:%02x:%02x:%02x:%02x]"
 
-#: src/carp.c:679
+#: src/carp.c:681
 #, c-format
 msgid "Unable to open interface [%s]: %s"
 msgstr "Unable to open interface [%s]: %s"
 
-#: src/carp.c:685
+#: src/carp.c:687
 #, c-format
 msgid "Unable to compile pcap rule: %s [%s]"
 msgstr "Unable to compile pcap rule: %s [%s]"
 
+#: src/carp.c:703
+#, c-format
+msgid "initializing now to gettimeofday() failed: %s"
+msgstr "initializing now to gettimeofday() failed: %s"
+
+#: src/carp.c:709
+#, c-format
+msgid "Error opening socket for interface [%s]: %s"
+msgstr "Error opening socket for interface [%s]: %s"
+
+#: src/carp.c:715 src/fillmac.c:51
+msgid "Interface name too long"
+msgstr "Interface name too long"
+
+#: src/carp.c:739
+msgid "poll() error"
+msgstr "poll() error"
+
+#: src/carp.c:744
+#, c-format
+msgid "gettimeofday() failed: %s"
+msgstr "gettimeofday() failed: %s"
+
 #: src/daemonize.c:53
 #, c-format
 msgid "Unable to get in background: [fork: %s]"
@@ -162,10 +185,6 @@ msgstr "Unable to detach: /dev/null can'
 msgid "Unable to open raw device: [%s]"
 msgstr "Unable to open raw device: [%s]"
 
-#: src/fillmac.c:51
-msgid "Interface name too long"
-msgstr "Interface name too long"
-
 #: src/fillmac.c:57
 #, c-format
 msgid "Unable to get hardware info about an interface: %s"
@@ -198,17 +217,17 @@ msgstr "No interface found"
 msgid "ioctl SIOCGLIFCONF error"
 msgstr "ioctl SIOCGLIFCONF error"
 
-#: src/fillmac.c:140
+#: src/fillmac.c:135
 #, c-format
 msgid "Interface [%s] not found"
 msgstr "Interface [%s] not found"
 
-#: src/fillmac.c:147
+#: src/fillmac.c:148
 #, c-format
 msgid "Unable to get hardware info about [%s]"
 msgstr "Unable to get hardware info about [%s]"
 
-#: src/garp.c:36
+#: src/garp.c:39
 msgid "out of memory to send gratuitous ARP"
 msgstr "out of memory to send gratuitous ARP"
 
@@ -240,6 +259,7 @@ msgid ""
 "--shutdown (-z): call shutdown script at exit\n"
 "--daemonize (-B): run in background\n"
 "--facility=<facility> (-f): set syslog facility (default=daemon)\n"
+"--xparam=<value> (-x): extra parameter to send to up/down scripts\n"
 "\n"
 "Sample usage:\n"
 "\n"
@@ -272,6 +292,7 @@ msgstr ""
 "--shutdown (-z): call shutdown script at exit\n"
 "--daemonize (-B): run in background\n"
 "--facility=<facility> (-f): set syslog facility (default=daemon)\n"
+"--xparam=<value> (-x): extra parameter to send to up/down scripts\n"
 "\n"
 "Sample usage:\n"
 "\n"
@@ -288,57 +309,57 @@ msgstr ""
 "\n"
 "Please report bugs to "
 
-#: src/ucarp.c:77
+#: src/ucarp.c:78
 msgid "Out of memory"
 msgstr "Out of memory"
 
-#: src/ucarp.c:111 src/ucarp.c:137
+#: src/ucarp.c:112 src/ucarp.c:139
 #, c-format
 msgid "Invalid address: [%s]"
 msgstr "Invalid address: [%s]"
 
-#: src/ucarp.c:190
+#: src/ucarp.c:193
 #, c-format
 msgid "Unknown syslog facility: [%s]"
 msgstr "Unknown syslog facility: [%s]"
 
-#: src/ucarp.c:207
+#: src/ucarp.c:217
 msgid "You must supply a network interface"
 msgstr "You must supply a network interface"
 
-#: src/ucarp.c:210
+#: src/ucarp.c:220
 #, c-format
 msgid "Using [%s] as a network interface"
 msgstr "Using [%s] as a network interface"
 
-#: src/ucarp.c:213
+#: src/ucarp.c:223
 msgid "You must supply a valid virtual host id"
 msgstr "You must supply a valid virtual host id"
 
-#: src/ucarp.c:217
+#: src/ucarp.c:227
 msgid "You must supply a password"
 msgstr "You must supply a password"
 
-#: src/ucarp.c:221
+#: src/ucarp.c:231
 msgid "You must supply an advertisement time base"
 msgstr "You must supply an advertisement time base"
 
-#: src/ucarp.c:225
+#: src/ucarp.c:235
 msgid "You must supply a persistent source address"
 msgstr "You must supply a persistent source address"
 
-#: src/ucarp.c:229
+#: src/ucarp.c:239
 msgid "You must supply a virtual host address"
 msgstr "You must supply a virtual host address"
 
-#: src/ucarp.c:233
+#: src/ucarp.c:243
 msgid "Warning: no script called when going up"
 msgstr "Warning: no script called when going up"
 
-#: src/ucarp.c:236
+#: src/ucarp.c:246
 msgid "Warning: no script called when going down"
 msgstr "Warning: no script called when going down"
 
-#: src/ucarp.c:239
+#: src/ucarp.c:249
 msgid "Dead ratio can't be zero"
 msgstr "Dead ratio can't be zero"
diff -Naupr ucarp-1.2/po/en at quot.gmo ucarp-1.3/po/en at quot.gmo
--- ucarp-1.2/po/en at quot.gmo	2006-02-25 17:50:06.000000000 +0100
+++ ucarp-1.3/po/en at quot.gmo	2006-07-05 00:54:58.000000000 +0200
@@ -1,13 +1,8 @@
-Þ•
-
-
-
-
-
-
-
-
-
+Þ•
+
+
+
+
 --srcip=<ip> (-s <ip>): source (real) IP address of that host
 --vhid=<id> (-v <id>): virtual IP identifier (1-255)
 --pass=<pass> (-p <pass>): password
@@ -23,6 +18,7 @@
 --shutdown (-z): call shutdown script at exit
 --daemonize (-B): run in background
 --facility=<facility> (-f): set syslog facility (default=daemon)
+--xparam=<value> (-x): extra parameter to send to up/down scripts
 
 Sample usage:
 
@@ -37,10 +33,10 @@ ucarp --interface=eth0 --srcip=10.1.1.1 
       --upscript=/etc/vip-up.sh --downscript=/etc/vip-down.sh
 
 
-Please report bugs to 
+Please report bugs to 
 Report-Msgid-Bugs-To: bugs at ucarp.org
-POT-Creation-Date: 2006-02-25 17:49+0100
-PO-Revision-Date: 2006-02-25 17:49+0100
+POT-Creation-Date: 2006-07-05 00:54+0200
+PO-Revision-Date: 2006-07-05 00:54+0200
 Last-Translator: Automatically generated
 Language-Team: none
 MIME-Version: 1.0
@@ -63,6 +59,7 @@ Plural-Forms: nplurals=2; plural=(n != 1
 --shutdown (-z): call shutdown script at exit
 --daemonize (-B): run in background
 --facility=<facility> (-f): set syslog facility (default=daemon)
+--xparam=<value> (-x): extra parameter to send to up/down scripts
 
 Sample usage:
 
@@ -77,4 +74,4 @@ ucarp --interface=eth0 --srcip=10.1.1.1 
       --upscript=/etc/vip-up.sh --downscript=/etc/vip-down.sh
 
 
-Please report bugs to 
\ No newline at end of file
+Please report bugs to 
\ No newline at end of file
diff -Naupr ucarp-1.2/po/en at quot.po ucarp-1.3/po/en at quot.po
--- ucarp-1.2/po/en at quot.po	2006-02-25 17:50:01.000000000 +0100
+++ ucarp-1.3/po/en at quot.po	2006-07-05 00:54:51.000000000 +0200
@@ -27,10 +27,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: ucarp 1.2\n"
+"Project-Id-Version: ucarp 1.3\n"
 "Report-Msgid-Bugs-To: bugs at ucarp.org\n"
-"POT-Creation-Date: 2006-02-25 17:49+0100\n"
-"PO-Revision-Date: 2006-02-25 17:49+0100\n"
+"POT-Creation-Date: 2006-07-05 00:54+0200\n"
+"PO-Revision-Date: 2006-07-05 00:54+0200\n"
 "Last-Translator: Automatically generated\n"
 "Language-Team: none\n"
 "MIME-Version: 1.0\n"
@@ -116,30 +116,53 @@ msgstr "Putting MASTER down - preemption
 msgid "Putting MASTER DOWN (going to time out)"
 msgstr "Putting MASTER DOWN (going to time out)"
 
-#: src/carp.c:655
+#: src/carp.c:657
 msgid "Password too long"
 msgstr "Password too long"
 
-#: src/carp.c:668
+#: src/carp.c:670
 #, c-format
 msgid "Unable to find MAC address of [%s]"
 msgstr "Unable to find MAC address of [%s]"
 
-#: src/carp.c:672
+#: src/carp.c:674
 #, c-format
 msgid "Local advertised ethernet address is [%02x:%02x:%02x:%02x:%02x:%02x]"
 msgstr "Local advertised ethernet address is [%02x:%02x:%02x:%02x:%02x:%02x]"
 
-#: src/carp.c:679
+#: src/carp.c:681
 #, c-format
 msgid "Unable to open interface [%s]: %s"
 msgstr "Unable to open interface [%s]: %s"
 
-#: src/carp.c:685
+#: src/carp.c:687
 #, c-format
 msgid "Unable to compile pcap rule: %s [%s]"
 msgstr "Unable to compile pcap rule: %s [%s]"
 
+#: src/carp.c:703
+#, c-format
+msgid "initializing now to gettimeofday() failed: %s"
+msgstr "initializing now to gettimeofday() failed: %s"
+
+#: src/carp.c:709
+#, c-format
+msgid "Error opening socket for interface [%s]: %s"
+msgstr "Error opening socket for interface [%s]: %s"
+
+#: src/carp.c:715 src/fillmac.c:51
+msgid "Interface name too long"
+msgstr "Interface name too long"
+
+#: src/carp.c:739
+msgid "poll() error"
+msgstr "poll() error"
+
+#: src/carp.c:744
+#, c-format
+msgid "gettimeofday() failed: %s"
+msgstr "gettimeofday() failed: %s"
+
 #: src/daemonize.c:53
 #, c-format
 msgid "Unable to get in background: [fork: %s]"
@@ -159,10 +182,6 @@ msgstr "Unable to detach: /dev/null can'
 msgid "Unable to open raw device: [%s]"
 msgstr "Unable to open raw device: [%s]"
 
-#: src/fillmac.c:51
-msgid "Interface name too long"
-msgstr "Interface name too long"
-
 #: src/fillmac.c:57
 #, c-format
 msgid "Unable to get hardware info about an interface: %s"
@@ -195,17 +214,17 @@ msgstr "No interface found"
 msgid "ioctl SIOCGLIFCONF error"
 msgstr "ioctl SIOCGLIFCONF error"
 
-#: src/fillmac.c:140
+#: src/fillmac.c:135
 #, c-format
 msgid "Interface [%s] not found"
 msgstr "Interface [%s] not found"
 
-#: src/fillmac.c:147
+#: src/fillmac.c:148
 #, c-format
 msgid "Unable to get hardware info about [%s]"
 msgstr "Unable to get hardware info about [%s]"
 
-#: src/garp.c:36
+#: src/garp.c:39
 msgid "out of memory to send gratuitous ARP"
 msgstr "out of memory to send gratuitous ARP"
 
@@ -237,6 +256,7 @@ msgid ""
 "--shutdown (-z): call shutdown script at exit\n"
 "--daemonize (-B): run in background\n"
 "--facility=<facility> (-f): set syslog facility (default=daemon)\n"
+"--xparam=<value> (-x): extra parameter to send to up/down scripts\n"
 "\n"
 "Sample usage:\n"
 "\n"
@@ -269,6 +289,7 @@ msgstr ""
 "--shutdown (-z): call shutdown script at exit\n"
 "--daemonize (-B): run in background\n"
 "--facility=<facility> (-f): set syslog facility (default=daemon)\n"
+"--xparam=<value> (-x): extra parameter to send to up/down scripts\n"
 "\n"
 "Sample usage:\n"
 "\n"
@@ -285,57 +306,57 @@ msgstr ""
 "\n"
 "Please report bugs to "
 
-#: src/ucarp.c:77
+#: src/ucarp.c:78
 msgid "Out of memory"
 msgstr "Out of memory"
 
-#: src/ucarp.c:111 src/ucarp.c:137
+#: src/ucarp.c:112 src/ucarp.c:139
 #, c-format
 msgid "Invalid address: [%s]"
 msgstr "Invalid address: [%s]"
 
-#: src/ucarp.c:190
+#: src/ucarp.c:193
 #, c-format
 msgid "Unknown syslog facility: [%s]"
 msgstr "Unknown syslog facility: [%s]"
 
-#: src/ucarp.c:207
+#: src/ucarp.c:217
 msgid "You must supply a network interface"
 msgstr "You must supply a network interface"
 
-#: src/ucarp.c:210
+#: src/ucarp.c:220
 #, c-format
 msgid "Using [%s] as a network interface"
 msgstr "Using [%s] as a network interface"
 
-#: src/ucarp.c:213
+#: src/ucarp.c:223
 msgid "You must supply a valid virtual host id"
 msgstr "You must supply a valid virtual host id"
 
-#: src/ucarp.c:217
+#: src/ucarp.c:227
 msgid "You must supply a password"
 msgstr "You must supply a password"
 
-#: src/ucarp.c:221
+#: src/ucarp.c:231
 msgid "You must supply an advertisement time base"
 msgstr "You must supply an advertisement time base"
 
-#: src/ucarp.c:225
+#: src/ucarp.c:235
 msgid "You must supply a persistent source address"
 msgstr "You must supply a persistent source address"
 
-#: src/ucarp.c:229
+#: src/ucarp.c:239
 msgid "You must supply a virtual host address"
 msgstr "You must supply a virtual host address"
 
-#: src/ucarp.c:233
+#: src/ucarp.c:243
 msgid "Warning: no script called when going up"
 msgstr "Warning: no script called when going up"
 
-#: src/ucarp.c:236
+#: src/ucarp.c:246
 msgid "Warning: no script called when going down"
 msgstr "Warning: no script called when going down"
 
-#: src/ucarp.c:239
+#: src/ucarp.c:249
 msgid "Dead ratio can't be zero"
 msgstr "Dead ratio can't be zero"
diff -Naupr ucarp-1.2/po/ucarp.pot ucarp-1.3/po/ucarp.pot
--- ucarp-1.2/po/ucarp.pot	2006-02-25 17:49:38.000000000 +0100
+++ ucarp-1.3/po/ucarp.pot	2006-07-05 00:54:46.000000000 +0200
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: bugs at ucarp.org\n"
-"POT-Creation-Date: 2006-02-25 17:49+0100\n"
+"POT-Creation-Date: 2006-07-05 00:54+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
@@ -92,30 +92,53 @@ msgstr ""
 msgid "Putting MASTER DOWN (going to time out)"
 msgstr ""
 
-#: src/carp.c:655
+#: src/carp.c:657
 msgid "Password too long"
 msgstr ""
 
-#: src/carp.c:668
+#: src/carp.c:670
 #, c-format
 msgid "Unable to find MAC address of [%s]"
 msgstr ""
 
-#: src/carp.c:672
+#: src/carp.c:674
 #, c-format
 msgid "Local advertised ethernet address is [%02x:%02x:%02x:%02x:%02x:%02x]"
 msgstr ""
 
-#: src/carp.c:679
+#: src/carp.c:681
 #, c-format
 msgid "Unable to open interface [%s]: %s"
 msgstr ""
 
-#: src/carp.c:685
+#: src/carp.c:687
 #, c-format
 msgid "Unable to compile pcap rule: %s [%s]"
 msgstr ""
 
+#: src/carp.c:703
+#, c-format
+msgid "initializing now to gettimeofday() failed: %s"
+msgstr ""
+
+#: src/carp.c:709
+#, c-format
+msgid "Error opening socket for interface [%s]: %s"
+msgstr ""
+
+#: src/carp.c:715 src/fillmac.c:51
+msgid "Interface name too long"
+msgstr ""
+
+#: src/carp.c:739
+msgid "poll() error"
+msgstr ""
+
+#: src/carp.c:744
+#, c-format
+msgid "gettimeofday() failed: %s"
+msgstr ""
+
 #: src/daemonize.c:53
 #, c-format
 msgid "Unable to get in background: [fork: %s]"
@@ -135,10 +158,6 @@ msgstr ""
 msgid "Unable to open raw device: [%s]"
 msgstr ""
 
-#: src/fillmac.c:51
-msgid "Interface name too long"
-msgstr ""
-
 #: src/fillmac.c:57
 #, c-format
 msgid "Unable to get hardware info about an interface: %s"
@@ -171,17 +190,17 @@ msgstr ""
 msgid "ioctl SIOCGLIFCONF error"
 msgstr ""
 
-#: src/fillmac.c:140
+#: src/fillmac.c:135
 #, c-format
 msgid "Interface [%s] not found"
 msgstr ""
 
-#: src/fillmac.c:147
+#: src/fillmac.c:148
 #, c-format
 msgid "Unable to get hardware info about [%s]"
 msgstr ""
 
-#: src/garp.c:36
+#: src/garp.c:39
 msgid "out of memory to send gratuitous ARP"
 msgstr ""
 
@@ -213,6 +232,7 @@ msgid ""
 "--shutdown (-z): call shutdown script at exit\n"
 "--daemonize (-B): run in background\n"
 "--facility=<facility> (-f): set syslog facility (default=daemon)\n"
+"--xparam=<value> (-x): extra parameter to send to up/down scripts\n"
 "\n"
 "Sample usage:\n"
 "\n"
@@ -230,57 +250,57 @@ msgid ""
 "Please report bugs to "
 msgstr ""
 
-#: src/ucarp.c:77
+#: src/ucarp.c:78
 msgid "Out of memory"
 msgstr ""
 
-#: src/ucarp.c:111 src/ucarp.c:137
+#: src/ucarp.c:112 src/ucarp.c:139
 #, c-format
 msgid "Invalid address: [%s]"
 msgstr ""
 
-#: src/ucarp.c:190
+#: src/ucarp.c:193
 #, c-format
 msgid "Unknown syslog facility: [%s]"
 msgstr ""
 
-#: src/ucarp.c:207
+#: src/ucarp.c:217
 msgid "You must supply a network interface"
 msgstr ""
 
-#: src/ucarp.c:210
+#: src/ucarp.c:220
 #, c-format
 msgid "Using [%s] as a network interface"
 msgstr ""
 
-#: src/ucarp.c:213
+#: src/ucarp.c:223
 msgid "You must supply a valid virtual host id"
 msgstr ""
 
-#: src/ucarp.c:217
+#: src/ucarp.c:227
 msgid "You must supply a password"
 msgstr ""
 
-#: src/ucarp.c:221
+#: src/ucarp.c:231
 msgid "You must supply an advertisement time base"
 msgstr ""
 
-#: src/ucarp.c:225
+#: src/ucarp.c:235
 msgid "You must supply a persistent source address"
 msgstr ""
 
-#: src/ucarp.c:229
+#: src/ucarp.c:239
 msgid "You must supply a virtual host address"
 msgstr ""
 
-#: src/ucarp.c:233
+#: src/ucarp.c:243
 msgid "Warning: no script called when going up"
 msgstr ""
 
-#: src/ucarp.c:236
+#: src/ucarp.c:246
 msgid "Warning: no script called when going down"
 msgstr ""
 
-#: src/ucarp.c:239
+#: src/ucarp.c:249
 msgid "Dead ratio can't be zero"
 msgstr ""
diff -Naupr ucarp-1.2/README ucarp-1.3/README
--- ucarp-1.2/README	2006-02-18 23:31:10.000000000 +0100
+++ ucarp-1.3/README	2006-05-27 22:37:38.000000000 +0200
@@ -1,6 +1,6 @@
 
                                  .:. UCARP .:.
-                         Documentation for version 1.2
+                         Documentation for version 1.3
 
 
            ------------------------ BLURB ------------------------
@@ -97,8 +97,15 @@ routes, to add something to log files or
 least, you can use a script that will connect to your switches and flush their
 ARP cache. Some users reported that transitions were way faster when also
 switching MAC addresses.
-The interface name is passed as an argument to the called scripts, so feel
-free to replace "eth0" with "$1" in the previous examples.
+
+The called scripts are passed arguments, in this order:
+
+<interface name> <virtual address> <optional extra parameter>
+
+For instance, as the is passed as the first argument to the called scripts,
+feel free to replace "eth0" with "$1" and 10.1.1.252 by "$2" in the previous
+examples.
+
 
 Don't forget to make those files executable :
 
diff -Naupr ucarp-1.2/src/carp.c ucarp-1.3/src/carp.c
--- ucarp-1.2/src/carp.c	2006-02-19 00:06:17.000000000 +0100
+++ ucarp-1.3/src/carp.c	2006-06-27 01:00:35.000000000 +0200
@@ -303,7 +303,7 @@ static void carp_send_ad(struct carp_sof
 }
 
 static void carp_send_ad_all(struct carp_softc *sc) {
-    return carp_send_ad(sc);
+    carp_send_ad(sc);
 }
 
 static void carp_setrun(struct carp_softc *sc, sa_family_t af)
@@ -635,10 +635,12 @@ char *build_bpf_rule(void)
 
 int docarp(void)
 {
+    char errbuf[PCAP_ERRBUF_SIZE];
     struct bpf_program bpfp;
     struct pollfd pfds[1];
+    struct ifreq iface;
+    int fd;
     int nfds;
-    char errbuf[PCAP_ERRBUF_SIZE];
 
     sc.sc_vhid = vhid;
     sc.sc_advbase = advbase;
@@ -666,7 +668,7 @@ int docarp(void)
 
     if (fill_mac_address() != 0) {
         logfile(LOG_ERR, _("Unable to find MAC address of [%s]"),
-                interface);
+                interface == NULL ? "-" : interface);
         return -1;
     }
     logfile(LOG_INFO, _("Local advertised ethernet address is "
@@ -677,13 +679,13 @@ int docarp(void)
     if ((dev_desc = pcap_open_live(interface, ETHERNET_MTU, 0,
                                    CAPTURE_TIMEOUT, errbuf)) == NULL) {
         logfile(LOG_ERR, _("Unable to open interface [%s]: %s"),
-                interface, errbuf);
+                interface == NULL ? "-" : interface, errbuf);
         return -1;
     }    
     if (pcap_compile(dev_desc, &bpfp, build_bpf_rule(),
                      1, (bpf_u_int32) 0) != 0) {
         logfile(LOG_ERR, _("Unable to compile pcap rule: %s [%s]"),
-                errbuf, interface);
+                errbuf, interface == NULL ? "-" : interface);
         return -1;
     }
     pcap_setfilter(dev_desc, &bpfp);
@@ -698,22 +700,48 @@ int docarp(void)
     }
 
     if (gettimeofday(&now, NULL) != 0) {
-	logfile(LOG_WARNING, "initializing now to gettimeofday() failed: %s",
+	logfile(LOG_WARNING, _("initializing now to gettimeofday() failed: %s"),
 		strerror(errno));
     }
     carp_setrun(&sc, 0); 
     
+    if ((fd = socket(PF_INET, SOCK_DGRAM, 0)) == -1) {
+        logfile(LOG_ERR, _("Error opening socket for interface [%s]: %s"),
+		interface == NULL ? "-" : interface, strerror(errno));
+        return -1;
+    }
+#ifdef SIOCGIFFLAGS    
+    if (strlen(interface) >= sizeof iface.ifr_name) {
+	logfile(LOG_ERR, _("Interface name too long"));
+	return -1;
+    }
+    strncpy(iface.ifr_name, interface, sizeof iface.ifr_name);
+#endif    
     for (;;) {
+#ifdef SIOCGIFFLAGS
+        if (ioctl(fd, SIOCGIFFLAGS, &iface) != 0) {
+	    break;
+	}
+	if ((iface.ifr_flags & IFF_RUNNING) == 0) {
+            carp_set_state(&sc, BACKUP);
+	    sc.sc_ad_tmo.tv_sec = 0;
+	    sc.sc_ad_tmo.tv_usec = 0;
+	    sc.sc_md_tmo.tv_sec = 0;
+	    sc.sc_md6_tmo.tv_usec = 0;
+	    sleep(SECONDS_TO_WAIT_AFTER_INTERFACE_IS_DOWN);
+	    continue;
+	}
+#endif
         nfds = poll(pfds, (nfds_t) 1, sc.sc_advbase * 1000);
         if (nfds == -1 || 
             (pfds[0].revents & (POLLERR | POLLHUP | POLLNVAL)) != 0) {
 #ifdef DEBUG
-            logfile(LOG_NOTICE, "poll() error");
+            logfile(LOG_NOTICE, _("poll() error"));
 #endif
             break;
         }
         if (gettimeofday(&now, NULL) != 0) {
-            logfile(LOG_WARNING, "gettimeofday() failed: %s",
+            logfile(LOG_WARNING, _("gettimeofday() failed: %s"),
                     strerror(errno));
             continue;
         }        
diff -Naupr ucarp-1.2/src/fillmac.c ucarp-1.3/src/fillmac.c
--- ucarp-1.2/src/fillmac.c	2004-08-28 17:15:36.000000000 +0200
+++ ucarp-1.3/src/fillmac.c	2006-07-05 00:53:16.000000000 +0200
@@ -51,7 +51,7 @@ int fill_mac_address(void)
             logfile(LOG_ERR, _("Interface name too long"));
             return -1;
         }
-        strcpy(ifr.ifr_name, interface);                
+        strncpy(ifr.ifr_name, interface, sizeof ifr.ifr_name);
         if (ioctl(s, SIOCGIFHWADDR, &ifr) != 0) {
             logfile(LOG_ERR,
                     _("Unable to get hardware info about an interface: %s"),
@@ -130,17 +130,18 @@ int fill_mac_address(void)
             return -1;
         }        
         lifr = lifc.lifc_req;
-        while (--lifn.lifn_count > 0) {
+	for(;;) {
+	    if (lifn.lifn_count <= 0) {
+		logfile(LOG_ERR, _("Interface [%s] not found"), interface);
+		ALLOCA_FREE(lifrspace);
+		return -1;            		
+	    }
+	    lifn.lifn_count--;
             if (strcmp(lifr->lifr_name, interface) == 0) {
                 break;
             }	   
             lifr++;
         }
-        if (lifn.lifn_count <= 0) {
-            logfile(LOG_ERR, _("Interface [%s] not found"), interface);
-            ALLOCA_FREE(lifrspace);
-            return -1;            
-        }
         memcpy(&arpreq.arp_pa, &lifr->lifr_addr, sizeof arpreq.arp_pa);
         ALLOCA_FREE(lifrspace);
         if (ioctl(s, SIOCGARP, &arpreq) != 0) {
diff -Naupr ucarp-1.2/src/garp.c ucarp-1.3/src/garp.c
--- ucarp-1.2/src/garp.c	2004-08-28 17:15:30.000000000 +0200
+++ ucarp-1.3/src/garp.c	2006-05-27 22:14:21.000000000 +0200
@@ -10,27 +10,30 @@
 int gratuitous_arp(const int dev_desc_fd, const int enable_virtual)
 {
     static unsigned char arp[28] = {
-            0x00, 0x01,
-            0x08, 0x00,
-            0x06, 0x04,
-            0x00, 0x02,
-            0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-            0x00, 0x00, 0x00, 0x00,
-            0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-            0xff, 0xff, 0xff, 0xff
+            0x00, 0x01,   /* MAC address type */
+            0x08, 0x00,   /* Protocol address type */
+            0x06, 0x04,   /* MAC address size, protocol address size */
+            0x00, 0x02,   /* OP (1=request, 2=reply) */
+            0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   /* Sender MAC */
+            0x00, 0x00, 0x00, 0x00,   /* Sender IP */
+            0xff, 0xff, 0xff, 0xff, 0xff, 0xff,   /* Target MAC */
+            0xff, 0xff, 0xff, 0xff   /* Target IP */
     };    
     unsigned char *pkt;
     struct ether_header *eh_ptr;
 
-    memcpy(&arp[8], hwaddr, sizeof hwaddr);    
-    if (enable_virtual == 0) {
-        arp[7] = 0x01;
-        memcpy(&arp[24], &vaddr.s_addr, (size_t) 4U);
-        memset(&arp[14], 0xff, ETHER_ADDR_LEN);
-    } else {
+    if (ETHER_ADDR_LEN > 6) {
+	abort();
+    }
+    memcpy(&arp[8], hwaddr, sizeof hwaddr);
+    if (enable_virtual != 0) {
         arp[7] = 0x02;
         memcpy(&arp[14], &vaddr.s_addr, (size_t) 4U);
-        memset(&arp[24], 0xff, ETHER_ADDR_LEN);        
+    } else {
+        arp[7] = 0x01;
+        memcpy(&arp[14], &vaddr.s_addr, (size_t) 4U);
+        memset(&arp[18], 0xff, ETHER_ADDR_LEN);
+        memcpy(&arp[24], &vaddr.s_addr, (size_t) 4U);
     }
     if ((pkt = ALLOCA(sizeof *eh_ptr + sizeof arp)) == NULL) {
         logfile(LOG_ERR, _("out of memory to send gratuitous ARP"));
diff -Naupr ucarp-1.2/src/gettext.h ucarp-1.3/src/gettext.h
--- ucarp-1.2/src/gettext.h	2004-06-20 14:48:32.000000000 +0200
+++ ucarp-1.3/src/gettext.h	2006-04-08 12:10:54.000000000 +0200
@@ -1,5 +1,5 @@
 /* Convenience header for conditional use of GNU <libintl.h>.
-   Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc.
+   Copyright (C) 1995-1998, 2000-2002, 2004 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify it
    under the terms of the GNU Library General Public License as published
@@ -13,7 +13,7 @@
 
    You should have received a copy of the GNU Library 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,
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
    USA.  */
 
 #ifndef _LIBGETTEXT_H
@@ -37,6 +37,16 @@
 # include <locale.h>
 #endif
 
+/* Many header files from the libstdc++ coming with g++ 3.3 or newer include
+   <libintl.h>, which chokes if dcgettext is defined as a macro.  So include
+   it now, to make later inclusions of <libintl.h> a NOP.  */
+#if defined(__cplusplus) && defined(__GNUG__) && (__GNUC__ >= 3)
+# include <cstdlib>
+# if (__GLIBC__ >= 2) || _GLIBCXX_HAVE_LIBINTL_H
+#  include <libintl.h>
+# endif
+#endif
+
 /* Disabled NLS.
    The casts to 'const char *' serve the purpose of producing warnings
    for invalid uses of the value returned from these functions.
diff -Naupr ucarp-1.2/src/globals.h ucarp-1.3/src/globals.h
--- ucarp-1.2/src/globals.h	2006-02-18 23:36:15.000000000 +0100
+++ ucarp-1.3/src/globals.h	2006-05-27 22:26:35.000000000 +0200
@@ -27,4 +27,6 @@ GLOBAL0(signed char no_syslog);
 GLOBAL0(signed char daemonize);
 GLOBAL(int syslog_facility, DEFAULT_FACILITY);
 
+GLOBAL0(char *vaddr_arg);
+GLOBAL0(char *xparam);
 #endif
diff -Naupr ucarp-1.2/src/spawn.c ucarp-1.3/src/spawn.c
--- ucarp-1.2/src/spawn.c	2004-08-28 17:15:26.000000000 +0200
+++ ucarp-1.3/src/spawn.c	2006-05-27 22:27:05.000000000 +0200
@@ -20,7 +20,7 @@ int spawn_handler(const int dev_desc_fd,
     pid = fork();
     if (pid == (pid_t) 0) {
         (void) close(dev_desc_fd);
-        execl(script, script, interface, (char *) NULL);
+        execl(script, script, interface, vaddr_arg, xparam, (char *) NULL);
         _exit(EXIT_FAILURE);
     } else if (pid != (pid_t) -1) {
         logfile(LOG_WARNING, _("Spawning [%s %s]"), script, interface);
diff -Naupr ucarp-1.2/src/ucarp.c ucarp-1.3/src/ucarp.c
--- ucarp-1.2/src/ucarp.c	2006-02-21 00:06:08.000000000 +0100
+++ ucarp-1.3/src/ucarp.c	2006-05-27 22:29:54.000000000 +0200
@@ -39,6 +39,7 @@ static void usage(void)
 	    "--shutdown (-z): call shutdown script at exit\n"
 	    "--daemonize (-B): run in background\n"
 	    "--facility=<facility> (-f): set syslog facility (default=daemon)\n"
+	    "--xparam=<value> (-x): extra parameter to send to up/down scripts\n"	    
 	    "\n"
 	    "Sample usage:\n"
 	    "\n"
@@ -133,11 +134,13 @@ int main(int argc, char *argv[])
 	    break;
 	}
         case 'a': {
+	    free(vaddr_arg);
             if (inet_pton(AF_INET, optarg, &vaddr) == 0) {
                 logfile(LOG_ERR, _("Invalid address: [%s]"), optarg);
                 return 1;
-            }            
-            break;            
+            }
+	    vaddr_arg = strdup(optarg);
+            break;
         }
         case 'b': {
             advbase = (unsigned char) strtoul(optarg, NULL, 0);
@@ -190,7 +193,14 @@ int main(int argc, char *argv[])
                 logfile(LOG_ERR, _("Unknown syslog facility: [%s]"), optarg);
             }
             break;
-        }            
+        }
+	case 'm': {
+	    free(xparam);
+	    if ((xparam = strdup(optarg)) == NULL) {
+                die_mem();
+            }
+            break;
+        }
         default: {
             usage();
         }
diff -Naupr ucarp-1.2/src/ucarp.h ucarp-1.3/src/ucarp.h
--- ucarp-1.2/src/ucarp.h	2004-08-28 18:10:28.000000000 +0200
+++ ucarp-1.3/src/ucarp.h	2006-06-04 15:49:09.000000000 +0200
@@ -210,6 +210,7 @@ struct carp_softc {
 #define CARP_AUTHLEN 7
 #define DEFAULT_ADVBASE 1U
 #define DEFAULT_DEAD_RATIO 3U
+#define SECONDS_TO_WAIT_AFTER_INTERFACE_IS_DOWN 10U
 
 #define DEFAULT_FACILITY LOG_DAEMON
 
diff -Naupr ucarp-1.2/src/ucarp_p.h ucarp-1.3/src/ucarp_p.h
--- ucarp-1.2/src/ucarp_p.h	2006-02-18 23:36:33.000000000 +0100
+++ ucarp-1.3/src/ucarp_p.h	2006-05-27 22:30:32.000000000 +0200
@@ -1,7 +1,7 @@
 #ifndef __CARP_P_H__
 #define __CARP_P_H__ 1
 
-static const char *GETOPT_OPTIONS = "i:s:v:p:Pa:hb:k:u:d:r:zf:B";
+static const char *GETOPT_OPTIONS = "i:s:v:p:Pa:hb:k:m:nu:d:r:zf:B";
 
 static struct option long_options[] = {
     { "interface", 1, NULL, 'i' },
@@ -20,6 +20,7 @@ static struct option long_options[] = {
     { "shutdown", 0, NULL, 'z' },
     { "facility", 1, NULL, 'f' },
     { "daemonize", 0, NULL, 'B' },
+    { "xparam", 1, NULL, 'm' },
     { NULL, 0, NULL, 0 }
 };
 


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/ucarp/FC-4/.cvsignore,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- .cvsignore	13 Jan 2005 18:13:20 -0000	1.3
+++ .cvsignore	22 Aug 2006 13:12:40 -0000	1.4
@@ -1 +1 @@
-ucarp-1.1.tar.bz2
+ucarp-1.2.tar.bz2


Index: carp.init
===================================================================
RCS file: /cvs/extras/rpms/ucarp/FC-4/carp.init,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- carp.init	9 Nov 2004 02:50:47 -0000	1.1
+++ carp.init	22 Aug 2006 13:12:40 -0000	1.2
@@ -15,7 +15,7 @@
 [ ${NETWORKING} = "no" ] && exit 0
 
 get_files() {
-    FILES=`find /etc/sysconfig/carp -type f -name 'vip-*.conf' -maxdepth 1 \
+    FILES=`find /etc/sysconfig/carp -maxdepth 1 -type f -name 'vip-*.conf' \
            -printf "%f\n" | LC_COLLATE="C" sort`
 }
 


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/ucarp/FC-4/sources,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- sources	13 Jan 2005 18:13:20 -0000	1.3
+++ sources	22 Aug 2006 13:12:40 -0000	1.4
@@ -1 +1 @@
-f907752bd1654a6e8aa42e717aee9774  ucarp-1.1.tar.bz2
+bed7ae84520f2e0faf3e68e9cfe4e1aa  ucarp-1.2.tar.bz2


Index: ucarp.spec
===================================================================
RCS file: /cvs/extras/rpms/ucarp/FC-4/ucarp.spec,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ucarp.spec	1 Apr 2005 16:36:00 -0000	1.4
+++ ucarp.spec	22 Aug 2006 13:12:40 -0000	1.5
@@ -1,18 +1,27 @@
 Summary: Common Address Redundancy Protocol (CARP) for Unix
 Name: ucarp
-Version: 1.1
-Release: 2
+Version: 1.2
+Release: 3%{?dist}
 License: BSD
 Group: System Environment/Daemons
 URL: http://www.ucarp.org/
-Source0: ftp://ftp.ucarp.org/pub/ucarp/ucarp-%{version}.tar.bz2
+Source0: http://download.pureftpd.org/pub/ucarp/ucarp-%{version}.tar.bz2
 Source1: carp.init
 Source2: vip-001.conf.example
+Patch0: ucarp-1.3-pre.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
 Requires(post): /sbin/chkconfig
 Requires(preun): /sbin/chkconfig, /sbin/service
 Requires(postun): /sbin/service
-BuildRequires: libpcap, gettext
+BuildRequires: gettext
+BuildRequires: autoconf, automake, libtool
+# Use libpcap up to FC5, and libpcap-devel for FC6+ and non-Fedora
+%if %{!?fedora:6}%{?fedora} >= 6
+BuildRequires: libpcap-devel
+%else
+BuildRequires: libpcap
+%endif
+
 
 %description
 UCARP allows a couple of hosts to share common virtual IP addresses in order
@@ -26,6 +35,7 @@
 
 %prep
 %setup
+%patch -p1
 
 
 %build
@@ -96,6 +106,31 @@
 
 
 %changelog
+* Tue Aug 22 2006 Matthias Saou <http://freshrpms.net/> 1.2-3
+- Update to 1.3 snapshot, which includes the ARP fix, as well as fixes for the
+  segfaults reported in #200400 and #201596.
+- Add autoconf, automake and libtool build reqs for the 1.3 patch.
+
+* Thu Jul 27 2006 Matthias Saou <http://freshrpms.net/> 1.2-3
+- Fix init script for recent find versions (#200395).
+
+* Thu Jun 22 2006 Matthias Saou <http://freshrpms.net/> 1.2-2
+- Include ARP patch backported from 1.3 snapshot (#196095).
+- Make libpcap build requirement conditional to be able to share spec file.
+
+* Wed Jun 21 2006 Matthias Saou <http://freshrpms.net/> 1.2-1
+- Update to 1.2.
+- BuildRequire libpcap-devel instead of libpcap now that it has been split.
+
+* Mon Mar  6 2006 Matthias Saou <http://freshrpms.net/> 1.1-5
+- FC5 rebuild.
+
+* Thu Feb  9 2006 Matthias Saou <http://freshrpms.net/> 1.1-4
+- Rebuild for new gcc/glibc.
+
+* Thu Nov 17 2005 Matthias Saou <http://freshrpms.net/> 1.1-3
+- Rebuild against new libpcap library.
+
 * Fri Apr  1 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.1-2
 - Add %%dir entry for /etc/sysconfig/carp directory.
 






More information about the scm-commits mailing list