summaryrefslogtreecommitdiff
path: root/templates/interfaces
diff options
context:
space:
mode:
Diffstat (limited to 'templates/interfaces')
-rw-r--r--templates/interfaces/ethernet/node.tag/vif/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def11
-rw-r--r--templates/interfaces/ethernet/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def11
2 files changed, 22 insertions, 0 deletions
diff --git a/templates/interfaces/ethernet/node.tag/vif/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def b/templates/interfaces/ethernet/node.tag/vif/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def
index 363240cd..176287aa 100644
--- a/templates/interfaces/ethernet/node.tag/vif/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def
+++ b/templates/interfaces/ethernet/node.tag/vif/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def
@@ -6,6 +6,17 @@ syntax:expression: exec "/opt/vyatta/sbin/vyatta-keepalived.pl \
--vrrp-action='check-vip' --vip='$VAR(@)' "\
; "Invalid virtual-address [$VAR(@)] for vrrp-group $VAR(../@)"
+syntax:expression: exec "
+ if echo '$VAR(@)' | grep -q '/' ; then
+ if /opt/vyatta/sbin/vyatta-interfaces.pl \
+ --valid-addr $VAR(@) --dev $VAR(../../../@) ; then
+ exit 0
+ else
+ echo Invalid vrrp virtual-address [$VAR(@)] for vrrp-group $VAR(../@)
+ exit 1
+ fi
+ fi"
+
comp_help: possible completions:
<x.x.x.x> Virtual IP address (up to 20 per group)
<x.x.x.x/x> Virtual IP address with prefix (up to 20 per group)
diff --git a/templates/interfaces/ethernet/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def b/templates/interfaces/ethernet/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def
index 363240cd..176287aa 100644
--- a/templates/interfaces/ethernet/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def
+++ b/templates/interfaces/ethernet/node.tag/vrrp/vrrp-group/node.tag/virtual-address/node.def
@@ -6,6 +6,17 @@ syntax:expression: exec "/opt/vyatta/sbin/vyatta-keepalived.pl \
--vrrp-action='check-vip' --vip='$VAR(@)' "\
; "Invalid virtual-address [$VAR(@)] for vrrp-group $VAR(../@)"
+syntax:expression: exec "
+ if echo '$VAR(@)' | grep -q '/' ; then
+ if /opt/vyatta/sbin/vyatta-interfaces.pl \
+ --valid-addr $VAR(@) --dev $VAR(../../../@) ; then
+ exit 0
+ else
+ echo Invalid vrrp virtual-address [$VAR(@)] for vrrp-group $VAR(../@)
+ exit 1
+ fi
+ fi"
+
comp_help: possible completions:
<x.x.x.x> Virtual IP address (up to 20 per group)
<x.x.x.x/x> Virtual IP address with prefix (up to 20 per group)