Permalink
Browse files

keepalived-1.1.14

* keepalived-1.1.14 released.
* Shinji Tanaka, <stanaka at hatena.ne.jp> extended parsing
  framework to support "include" directives. For more
  informations and documentation please refer to Shinji
  website :
    http://misccs.dyndns.org/index.php?keepalived%20include%20patch
* Tobias Klausmann, <klausman at schwarzvogel.de> add error loggin
  while parsing configuration file.
* Merged patches from rpmforge.net on Makefile and redhat specfile.
* Create a goodies directory to store nice scripts received from
  users. Add Steve Milton (milton AT isomedia.com) arpreset script
  to delete a single ARP entry from a CISCO router.
* VRRP : David Woodhouse, <dwmw2 at redhat.com> fixed vrrp_arp
  includes.
* VRRP : Pierre-Yves Ritschard, <pyr at spootnik.org> fixed negative
  weights in script.
* VRRP : Michael Smith, <msmith at cbnco.com> extended
  virtual_ipaddress setting to support Old-style Linux interface
  aliases like eth0:1.
* VRRP : Ward Wouts, <ward.wouts at gmail.com> add support to
  vrrp_script logging.
  • Loading branch information...
1 parent 835e57d commit d2150d381906920b92c110f50bf8d8665a65c03f Alexandre Cassen committed Sep 13, 2007
Showing with 678 additions and 310 deletions.
  1. +23 −0 ChangeLog
  2. +1 −1 VERSION
  3. +6 −2 doc/keepalived.conf.SYNOPSIS
  4. +2 −2 doc/man/man5/keepalived.conf.5
  5. +4 −0 doc/samples/keepalived.conf.vrrp
  6. +1 −1 genhash/AUTHOR
  7. +8 −8 genhash/Makefile.in
  8. +1 −1 genhash/http.c
  9. +1 −1 genhash/http.h
  10. +1 −1 genhash/layer4.c
  11. +1 −1 genhash/layer4.h
  12. +1 −1 genhash/main.c
  13. +1 −1 genhash/main.h
  14. +1 −1 genhash/sock.c
  15. +1 −1 genhash/sock.h
  16. +1 −1 genhash/ssl.c
  17. +1 −1 genhash/ssl.h
  18. +97 −0 goodies/arpreset.pl
  19. +138 −35 keepalived.spec.in
  20. +17 −12 keepalived/Makefile.in
  21. +1 −1 keepalived/check/Makefile.in
  22. +2 −2 keepalived/check/check_api.c
  23. +2 −2 keepalived/check/check_daemon.c
  24. +2 −2 keepalived/check/check_data.c
  25. +2 −2 keepalived/check/check_http.c
  26. +2 −2 keepalived/check/check_misc.c
  27. +2 −2 keepalived/check/check_parser.c
  28. +2 −2 keepalived/check/check_smtp.c
  29. +2 −2 keepalived/check/check_ssl.c
  30. +2 −2 keepalived/check/check_tcp.c
  31. +2 −2 keepalived/check/ipfwwrapper.c
  32. +2 −2 keepalived/check/ipvswrapper.c
  33. +2 −2 keepalived/check/ipwrapper.c
  34. +1 −1 keepalived/core/Makefile.in
  35. +1 −1 keepalived/core/daemon.c
  36. +1 −1 keepalived/core/global_data.c
  37. +1 −1 keepalived/core/global_parser.c
  38. +1 −1 keepalived/core/layer4.c
  39. +1 −1 keepalived/core/main.c
  40. +1 −1 keepalived/core/pidfile.c
  41. +1 −1 keepalived/core/smtp.c
  42. +59 −34 keepalived/etc/init.d/keepalived.init
  43. +15 −0 keepalived/etc/init.d/keepalived.sysconfig
  44. +2 −2 keepalived/include/check_api.h
  45. +2 −2 keepalived/include/check_daemon.h
  46. +2 −2 keepalived/include/check_data.h
  47. +2 −2 keepalived/include/check_http.h
  48. +2 −2 keepalived/include/check_misc.h
  49. +2 −2 keepalived/include/check_parser.h
  50. +2 −2 keepalived/include/check_smtp.h
  51. +2 −2 keepalived/include/check_ssl.h
  52. +2 −2 keepalived/include/check_tcp.h
  53. +2 −2 keepalived/include/config.h.in
  54. +2 −2 keepalived/include/daemon.h
  55. +2 −2 keepalived/include/global_data.h
  56. +2 −2 keepalived/include/global_parser.h
  57. +2 −2 keepalived/include/ipfwwrapper.h
  58. +2 −2 keepalived/include/ipvswrapper.h
  59. +2 −2 keepalived/include/ipwrapper.h
  60. +2 −2 keepalived/include/layer4.h
  61. +2 −2 keepalived/include/main.h
  62. +2 −2 keepalived/include/pidfile.h
  63. +2 −2 keepalived/include/smtp.h
  64. +2 −2 keepalived/include/vrrp.h
  65. +2 −2 keepalived/include/vrrp_arp.h
  66. +2 −2 keepalived/include/vrrp_daemon.h
  67. +2 −2 keepalived/include/vrrp_data.h
  68. +2 −2 keepalived/include/vrrp_if.h
  69. +2 −2 keepalived/include/vrrp_index.h
  70. +3 −2 keepalived/include/vrrp_ipaddress.h
  71. +2 −2 keepalived/include/vrrp_iproute.h
  72. +2 −2 keepalived/include/vrrp_ipsecah.h
  73. +2 −2 keepalived/include/vrrp_netlink.h
  74. +2 −2 keepalived/include/vrrp_notify.h
  75. +2 −2 keepalived/include/vrrp_parser.h
  76. +2 −2 keepalived/include/vrrp_scheduler.h
  77. +2 −2 keepalived/include/vrrp_sync.h
  78. +2 −2 keepalived/include/vrrp_track.h
  79. +1 −1 keepalived/vrrp/Makefile.in
  80. +2 −2 keepalived/vrrp/vrrp.c
  81. +5 −5 keepalived/vrrp/vrrp_arp.c
  82. +2 −2 keepalived/vrrp/vrrp_daemon.c
  83. +2 −2 keepalived/vrrp/vrrp_data.c
  84. +2 −2 keepalived/vrrp/vrrp_if.c
  85. +2 −2 keepalived/vrrp/vrrp_index.c
  86. +17 −5 keepalived/vrrp/vrrp_ipaddress.c
  87. +2 −2 keepalived/vrrp/vrrp_iproute.c
  88. +2 −2 keepalived/vrrp/vrrp_ipsecah.c
  89. +2 −2 keepalived/vrrp/vrrp_netlink.c
  90. +2 −2 keepalived/vrrp/vrrp_notify.c
  91. +2 −2 keepalived/vrrp/vrrp_parser.c
  92. +8 −2 keepalived/vrrp/vrrp_scheduler.c
  93. +2 −2 keepalived/vrrp/vrrp_sync.c
  94. +3 −3 keepalived/vrrp/vrrp_track.c
  95. +1 −1 lib/Makefile.in
  96. +2 −2 lib/html.c
  97. +2 −2 lib/html.h
  98. +2 −2 lib/list.c
  99. +2 −2 lib/list.h
  100. +2 −2 lib/memory.c
  101. +2 −2 lib/memory.h
  102. +2 −2 lib/notify.c
  103. +2 −2 lib/notify.h
  104. +97 −24 lib/parser.c
  105. +3 −3 lib/parser.h
  106. +2 −2 lib/scheduler.c
  107. +2 −2 lib/scheduler.h
  108. +2 −2 lib/signals.c
  109. +2 −2 lib/signals.h
  110. +2 −2 lib/timer.c
  111. +2 −2 lib/timer.h
  112. +2 −2 lib/utils.c
  113. +2 −2 lib/utils.h
  114. +2 −2 lib/vector.c
  115. +2 −2 lib/vector.h
View
@@ -1,3 +1,26 @@
+2007-09-13 Alexandre Cassen <acassen@linux-vs.org>
+ * keepalived-1.1.14 released.
+ * Shinji Tanaka, <stanaka at hatena.ne.jp> extended parsing
+ framework to support "include" directives. For more
+ informations and documentation please refer to Shinji
+ website :
+ http://misccs.dyndns.org/index.php?keepalived%20include%20patch
+ * Tobias Klausmann, <klausman at schwarzvogel.de> add error loggin
+ while parsing configuration file.
+ * Merged patches from rpmforge.net on Makefile and redhat specfile.
+ * Create a goodies directory to store nice scripts received from
+ users. Add Steve Milton (milton AT isomedia.com) arpreset script
+ to delete a single ARP entry from a CISCO router.
+ * VRRP : David Woodhouse, <dwmw2 at redhat.com> fixed vrrp_arp
+ includes.
+ * VRRP : Pierre-Yves Ritschard, <pyr at spootnik.org> fixed negative
+ weights in script.
+ * VRRP : Michael Smith, <msmith at cbnco.com> extended
+ virtual_ipaddress setting to support Old-style Linux interface
+ aliases like eth0:1.
+ * VRRP : Ward Wouts, <ward.wouts at gmail.com> add support to
+ vrrp_script logging.
+
2006-10-11 Alexandre Cassen <acassen@linux-vs.org>
* keepalived-1.1.13 released.
* VRRP : Added a new notify script to be launch during vrrp
View
@@ -1 +1 @@
-1.1.13
+1.1.14
@@ -165,8 +165,8 @@ vrrp_instance <STRING> { # VRRP instance declaration
auth_pass <STRING> # Password string
}
virtual_ipaddress { # VRRP IP addres block
- <IP ADDRESS>/<MASK> brd <IP ADDRESS> dev <STRING> scope <SCOPE>
- <IP ADDRESS>/<MASK> brd <IP ADDRESS> dev <STRING> scope <SCOPE>
+ <IP ADDRESS>/<MASK> brd <IP ADDRESS> dev <STRING> scope <SCOPE> label <LABEL>
+ <IP ADDRESS>/<MASK> brd <IP ADDRESS> dev <STRING> scope <SCOPE> label <LABEL>
...
}
virtual_ipaddress_excluded { # VRRP IP excluded from VRRP
@@ -198,6 +198,10 @@ SCOPE can take the following values :
* nowhere
* global
+LABEL is optional and creates a name for the alias. For compatibility with
+"ifconfig", it should be of the form <realdev>:<anytext>, for example
+eth0:1 for an alias on eth0.
+
When a weight is specified in track_interface, instead of setting the vrrp
instance to the FAULT state in case of failure, its priority will be
increased by the weight when the interface is up (for positive weights),
@@ -199,9 +199,9 @@ which will transition together on any state change.
#With the same entries on other machines,
#the opposite transition will be occuring.
virtual_ipaddress {
- <IPADDR>/<MASK> brd <IPADDR> dev <STRING> scope <SCOPE>
+ <IPADDR>/<MASK> brd <IPADDR> dev <STRING> scope <SCOPE> label <LABEL>
192.168.200.17/24 dev eth1
- 192.168.200.18/24 dev eth2
+ 192.168.200.18/24 dev eth2 label eth2:1
}
#VRRP IP excluded from VRRP
@@ -27,6 +27,10 @@ vrrp_instance VI_1 {
192.168.200.16
192.168.200.17
192.168.200.18
+
+ # optional label. should be of the form "realdev:sometext" for
+ # compatibility with ifconfig.
+ 192.168.200.18 label eth0:1
}
}
View
@@ -1 +1 @@
-Alexandre Cassen, <Alexandre.Cassen@wanadoo.fr>
+Alexandre Cassen, <acassen@freebox.fr>
View
@@ -1,13 +1,14 @@
# Makefile.in
#
-# Copyright (C) 2001-2006 Alexandre Cassen, <acassen@linux-vs.org>
+# Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
EXEC = genhash
BIN = ../bin
prefix = @prefix@
exec_prefix = @exec_prefix@
-bindir = @bindir@
+bindir = @bindir@
+mandir = @mandir@
CC = @CC@
STRIP = @STRIP@
@@ -17,9 +18,8 @@ CFLAGS = @CFLAGS@ @CPPFLAGS@ $(INCLUDES) \
LDFLAGS = @LIBS@ @LDFLAGS@
OBJS = main.o sock.o layer4.o http.o ssl.o
-LIB_OBJS = ../lib/timer.o ../lib/scheduler.o \
- ../lib/memory.o ../lib/list.o ../lib/utils.o \
- ../lib/html.o ../lib/signals.o
+LIB_OBJS = ../lib/timer.o ../lib/scheduler.o ../lib/memory.o ../lib/list.o \
+ ../lib/utils.o ../lib/html.o ../lib/signals.o
all: $(BIN)/$(EXEC)
$(STRIP) $(BIN)/$(EXEC)
@@ -39,13 +39,13 @@ distclean: clean
uninstall:
rm -f $(DESTDIR)$(bindir)/$(EXEC)
- rm -f $(DESTDIR)@mandir@/man/man1/genhash.1
+ rm -f $(DESTDIR)$(mandir)/man/man1/genhash.1
install:
install -d $(DESTDIR)$(bindir)
install -m 755 $(BIN)/$(EXEC) $(DESTDIR)$(bindir)/
- install -d $(DESTDIR)@mandir@/man/man1
- install -m 644 ../doc/man/man1/genhash.1 $(DESTDIR)@mandir@/man/man1
+ install -d $(DESTDIR)$(mandir)/man/man1
+ install -m 644 ../doc/man/man1/genhash.1 $(DESTDIR)$(mandir)/man/man1
mrproper: clean distclean
rm -f config.*
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#include <errno.h>
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#ifndef _HTTP_H
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#include "layer4.h"
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#ifndef _LAYER4_H
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#include <signal.h>
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#ifndef _MAIN_H
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#include <string.h>
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#ifndef _SOCK_H
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#include <openssl/err.h>
View
@@ -19,7 +19,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Copyright (C) 2001-2005 Alexandre Cassen, <acassen@linux-vs.org>
+ * Copyright (C) 2001-2007 Alexandre Cassen, <acassen@freebox.fr>
*/
#ifndef _SSL_H
View
@@ -0,0 +1,97 @@
+#!/usr/bin/perl -w
+
+###################################################################
+# arpreset 0.2
+# Copyright (C) 2005 Steve Milton (milton AT isomedia.com)
+#
+# Utility for deleting a single ARP entry from a cisco router.
+# Script adapted from description on Cisco tech article.
+# http://www.cisco.com/warp/public/477/SNMP/clear_arp.shtml
+#
+# The Cisco router needs to have a read/write community setup
+# for the utility to work. I recommend using the following
+# IOS commands to setup a restricted community that can only
+# work with the MAC table. You will need ENABLE level access
+# to the router to execute these commands.
+#
+# access-list 50 permit 123.123.123.123
+# access-list 50 permit 123.123.123.124
+# access-list 50 deny any
+# snmp-server view arpchange ipNetToMediaEntry.4 included
+# snmp-server community blahblah view arpchange RW 50
+#
+# Set the access-list permit to the IP addresses of the systems
+# you want to be able to make changes to the MAC table. Set
+# the community name (above blahblah) to something random and
+# password-like.
+###################################################################
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+###################################################################
+
+use strict;
+use Getopt::Long;
+&Getopt::Long::config('auto_abbrev');
+
+my ($router,$community,$address,$help,$check);
+$router=$community=$address=$help=$check="";
+
+my $status = GetOptions("router:s" => \$router,
+ "community:s" => \$community,
+ "address:s" => \$address,
+ "help" => \$help,
+ "check" => \$check);
+
+if (($status == 0) or $help) {
+ &PrintUsage;
+ exit 1;
+}
+
+if (!$router or !$community or !$address) {
+ &PrintUsage;
+ exit 1;
+}
+
+# OID for the ARP table entries
+my $ciscoOID = ".1.3.6.1.2.1.4.22.1.4";
+my $target = "";
+
+# Walk the SNMP ARP table on the router to locate the target address
+open(GET, "/usr/bin/snmpwalk -v1 -c $community $router $ciscoOID |");
+while(<GET>) {
+ if (/^(.*?\.$address)\s/) {
+ $target = $1;
+ print $_;
+ }
+}
+close(GET);
+if ($target and !$check) {
+ print "-- changed to --\n";
+ # set the target address to "invalid"
+ system("/usr/bin/snmpset -v1 -c $community $router $target i 2");
+} elsif (!$check) {
+ print "No target OID located.";
+ exit 1;
+}
+exit;
+
+sub PrintUsage {
+ print "arpreset 0.2\nCopyright (c) 2005 by Steve Milton\narpreset comes with ABSOLUTELY NO WARRANTY\n\n";
+ print "Usage: arpreset --router=routeraddress --community=rwcommunity --address=ipaddress\n";
+ print " arpreset --help\n";
+ print "\nWhere ipaddress is the IP address in the Cisco router that you want to invalidate\nfrom the MAC address cache.\n";
+ print "\nYou can add --check to the command to make it NOT update the router, but check for\nthe entry only.\n";
+ exit;
+}
Oops, something went wrong.

0 comments on commit d2150d3

Please sign in to comment.