summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorStig Thormodsrud <stig@vyatta.com>2008-04-03 12:49:37 -0700
committerStig Thormodsrud <stig@vyatta.com>2008-04-03 12:49:37 -0700
commit64266c79c91583ed6a9704066e920a0270efdd81 (patch)
treee55b8a033148a838dd179cfc80d9721ed9a08420 /scripts
parent94d79ea2e51b31874b70f808beb8124c3537c974 (diff)
downloadvyatta-cfg-quagga-64266c79c91583ed6a9704066e920a0270efdd81.tar.gz
vyatta-cfg-quagga-64266c79c91583ed6a9704066e920a0270efdd81.zip
Fix 3086: VRRP only allows up to 20 virtual IPs
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/keepalived/vyatta-keepalived.pl7
1 files changed, 6 insertions, 1 deletions
diff --git a/scripts/keepalived/vyatta-keepalived.pl b/scripts/keepalived/vyatta-keepalived.pl
index 1deeafe8..fff1acf1 100755
--- a/scripts/keepalived/vyatta-keepalived.pl
+++ b/scripts/keepalived/vyatta-keepalived.pl
@@ -47,10 +47,15 @@ sub keepalived_get_values {
my $vrrp_instance = "vyatta-$intf-$group";
$config->setLevel("$path vrrp vrrp-group $group");
my @vips = $config->returnValues("virtual-address");
- if (scalar(@vips) == 0) {
+ my $num_vips = scalar(@vips);
+ if ($num_vips == 0) {
print "must define a virtual-address for vrrp-group $group\n";
exit 1;
}
+ if ($num_vips > 20) {
+ print "can not set more than 20 VIPs per group\n";
+ exit 1;
+ }
my $priority = $config->returnValue("priority");
if (!defined $priority) {
$priority = 1;