summaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
authorRobert Bays <robert@vyatta.com>2010-07-21 17:40:48 -0700
committerRobert Bays <robert@vyatta.com>2010-07-21 17:40:48 -0700
commitd538bb7b58ebf74d6174992d69e57e829601d7ee (patch)
treecbf397fbec3414149850bdefd3e060712b54071f /templates
parent93004ab85218f1877f85b037b2c9dde05cafb505 (diff)
downloadvyatta-cfg-quagga-d538bb7b58ebf74d6174992d69e57e829601d7ee.tar.gz
vyatta-cfg-quagga-d538bb7b58ebf74d6174992d69e57e829601d7ee.zip
remove explicit paths from commit error messages since that is handled by CLI now
Diffstat (limited to 'templates')
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/destination/any/node.def12
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/destination/host/node.def8
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/destination/inverse-mask/node.def9
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/destination/network/node.def9
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/source/any/node.def4
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/source/host/node.def4
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/source/inverse-mask/node.def7
-rw-r--r--templates/policy/access-list/node.tag/rule/node.tag/source/network/node.def6
-rw-r--r--templates/policy/access-list6/node.tag/rule/node.tag/source/any/node.def6
-rw-r--r--templates/policy/access-list6/node.tag/rule/node.tag/source/exact-match/node.def3
-rw-r--r--templates/policy/access-list6/node.tag/rule/node.tag/source/network/node.def6
-rw-r--r--templates/policy/as-path-list/node.tag/rule/node.tag/regex/node.def2
-rw-r--r--templates/policy/community-list/node.tag/rule/node.tag/regex/node.def4
-rw-r--r--templates/policy/prefix-list/node.tag/rule/node.def8
-rw-r--r--templates/policy/prefix-list6/node.tag/rule/node.def8
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/action/node.def4
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/call/node.def4
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/continue/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/as-path/node.def4
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/community/community-list/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/interface/node.def4
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/access-list/node.def6
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/prefix-list/node.def6
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/access-list/node.def6
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/prefix-list/node.def6
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/access-list/node.def6
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/prefix-list/node.def8
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/access-list/node.def8
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/prefix-list/node.def8
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/access-list/node.def8
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/prefix-list/node.def8
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/metric/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/origin/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/peer/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/match/tag/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/on-match/goto/node.def5
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/on-match/next/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/aggregator/node.def4
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/as-path-prepend/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/atomic-aggregate/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/comm-list/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/community/node.def4
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/ip-next-hop/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/local-preference/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/metric-type/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/metric/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/origin/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/originator-id/node.def2
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/tag/node.def3
-rw-r--r--templates/policy/route-map/node.tag/rule/node.tag/set/weight/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/path-limit/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/route-map/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/connected/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/kernel/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ospfv3/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ripng/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/static/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/attribute-unchanged/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/receive/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/send/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/extended/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/standard/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/remove-private-as/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-server-client/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/attribute-unchanged/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/route-map/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/extended/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/standard/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/import/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/ebgp-multihop/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/local-as/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/nexthop-self/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/override-capability/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/import/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/remove-private-as/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/route-reflector-client/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/route-server-client/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/soft-reconfiguration/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/strict-capability-match/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/timers/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/ttl-security/hops/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/neighbor/node.tag/unsuppress-map/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/network/node.def3
-rw-r--r--templates/protocols/bgp/node.tag/network/node.tag/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/parameters/dampening/max-suppress-time/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/parameters/dampening/re-use/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/parameters/dampening/start-suppress-time/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/parameters/distance/global/node.def6
-rw-r--r--templates/protocols/bgp/node.tag/parameters/distance/prefix/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/disable-send-community/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-reflector-client/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/default-originate/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/disable-send-community/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/import/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/ebgp-multihop/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/local-as/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/override-capability/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/export/node.def5
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/import/node.def6
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/export/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/import/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/route-reflector-client/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/soft-reconfiguration/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/timers/node.def4
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/ttl-security/hops/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/peer-group/node.tag/unsuppress-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/redistribute/connected/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/redistribute/kernel/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/redistribute/ospf/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/redistribute/rip/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/redistribute/static/route-map/node.def2
-rw-r--r--templates/protocols/bgp/node.tag/timers/node.def4
149 files changed, 234 insertions, 290 deletions
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/destination/any/node.def b/templates/policy/access-list/node.tag/rule/node.tag/destination/any/node.def
index 16f9d58b..74e9acf8 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/destination/any/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/destination/any/node.def
@@ -1,10 +1,4 @@
help: Any IP address to match
-
-commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "\
-policy access-list $VAR(../../../@) rule $VAR(../../@) destination: access-list number must be <100-199> or <2000-2699> to set destination matches"
-
-commit:expression: ($VAR(../host/) == "") && ($VAR(../network/) == ""); "\
-policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you may only define one filter type. (host|network|any)"
-
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you must specify an action"
-
+commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "access-list number must be <100-199> or <2000-2699> to set destination matches"
+commit:expression: ($VAR(../host/) == "") && ($VAR(../network/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/destination/host/node.def b/templates/policy/access-list/node.tag/rule/node.tag/destination/host/node.def
index ec8410b8..10523b87 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/destination/host/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/destination/host/node.def
@@ -1,8 +1,6 @@
type: ipv4
help: Single host IP address to match
val_help: Host address to match
-commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "\
-policy access-list $VAR(../../../@) rule $VAR(../../@) destination: access-list number must be <100-199> or <2000-2699> to set destination matches"
-commit:expression: ($VAR(../any/) == "") && ($VAR(../network/) == ""); "\
-policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you may only define one filter type. (host|network|any)"
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you must specify an action"
+commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "access-list number must be <100-199> or <2000-2699> to set destination matches"
+commit:expression: ($VAR(../any/) == "") && ($VAR(../network/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/destination/inverse-mask/node.def b/templates/policy/access-list/node.tag/rule/node.tag/destination/inverse-mask/node.def
index 2f35bde4..6f3172ca 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/destination/inverse-mask/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/destination/inverse-mask/node.def
@@ -1,8 +1,7 @@
type: ipv4
help: Network/netmask to match (requires network be defined)
val_help: Inverse-mask to match
-commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "\
-policy access-list $VAR(../../../@) rule $VAR(../../@) destination: access-list number must be <100-199> or <2000-2699> to set destination matches"
-commit:expression: ($VAR(../any/) == "") && ($VAR(../host/) == ""); "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you may only define one filter type. (host|network|any)"
-commit:expression: $VAR(../network/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you must specify a network if you configure an inverse mask."
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you must specify an action"
+commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "access-list number must be <100-199> or <2000-2699> to set destination matches"
+commit:expression: ($VAR(../any/) == "") && ($VAR(../host/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../network/) != ""; "you must specify a network if you configure an inverse mask."
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/destination/network/node.def b/templates/policy/access-list/node.tag/rule/node.tag/destination/network/node.def
index 85b71ad8..2be0b768 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/destination/network/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/destination/network/node.def
@@ -1,8 +1,7 @@
type: ipv4
help: Network/netmask to match (requires inverse-mask be defined)
val_help: Network to match
-commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "\
-policy access-list $VAR(../../../@) rule $VAR(../../@) destination: access-list number must be <100-199> or <2000-2699> to set destination matches"
-commit:expression: ($VAR(../host/) == "") && ($VAR(../any/) == ""); "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you may only define one filter type. (host|network|any)"
-commit:expression: $VAR(../inverse-mask/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you must specify an inverse-mask if you configure a network"
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) destination: you must specify an action"
+commit:expression: ($VAR(../../../@) >= 100 && $VAR(../../../@) <= 199) || ($VAR(../../../@) >= 2000 && $VAR(../../../@) <= 2699); "access-list number must be <100-199> or <2000-2699> to set destination matches"
+commit:expression: ($VAR(../host/) == "") && ($VAR(../any/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../inverse-mask/) != ""; "you must specify an inverse-mask if you configure a network"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/source/any/node.def b/templates/policy/access-list/node.tag/rule/node.tag/source/any/node.def
index 777ac99a..2e432a5a 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/source/any/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/source/any/node.def
@@ -1,3 +1,3 @@
help: Any IP address to match
-commit:expression: ($VAR(../host/) == "") && ($VAR(../network/) == ""); "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you may only define one filter type. (host|network|any)"
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you must specify an action"
+commit:expression: ($VAR(../host/) == "") && ($VAR(../network/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/source/host/node.def b/templates/policy/access-list/node.tag/rule/node.tag/source/host/node.def
index aeaa5521..e6700aa6 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/source/host/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/source/host/node.def
@@ -1,5 +1,5 @@
type: ipv4
help: Single host IP address to match
val_help: Host address to match
-commit:expression: ($VAR(../any/) == "") && ($VAR(../network/) == ""); "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you may only define one filter type. (host|network|any)"
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you must specify an action"
+commit:expression: ($VAR(../any/) == "") && ($VAR(../network/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/source/inverse-mask/node.def b/templates/policy/access-list/node.tag/rule/node.tag/source/inverse-mask/node.def
index 60b8143e..e0702837 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/source/inverse-mask/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/source/inverse-mask/node.def
@@ -1,7 +1,6 @@
type: ipv4
help: Network/netmask to match (requires network be defined)
val_help: Inverse-mast to match
-
-commit:expression: ($VAR(../any/) == "") && ($VAR(../host/) == ""); "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you may only define one filter type. (host|network|any)"
-commit:expression: $VAR(../network/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you must specify a network if you configure an inverse-mask"
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you must specify an action"
+commit:expression: ($VAR(../any/) == "") && ($VAR(../host/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../network/) != ""; "you must specify a network if you configure an inverse-mask"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list/node.tag/rule/node.tag/source/network/node.def b/templates/policy/access-list/node.tag/rule/node.tag/source/network/node.def
index 24e191b3..c6199485 100644
--- a/templates/policy/access-list/node.tag/rule/node.tag/source/network/node.def
+++ b/templates/policy/access-list/node.tag/rule/node.tag/source/network/node.def
@@ -2,6 +2,6 @@ type: ipv4
help: Network/netmask to match (requires inverse-mask be defined)
val_help: Network to match
-commit:expression: ($VAR(../host/) == "") && ($VAR(../any/) == ""); "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you may only define one filter type. (host|network|any)"
-commit:expression: $VAR(../inverse-mask/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you must specify an inverse-mask if you configure a network"
-commit:expression: $VAR(../../action/) != ""; "policy access-list $VAR(../../../@) rule $VAR(../../@) source: you must specify an action"
+commit:expression: ($VAR(../host/) == "") && ($VAR(../any/) == ""); "you may only define one filter type. (host|network|any)"
+commit:expression: $VAR(../inverse-mask/) != ""; "you must specify an inverse-mask if you configure a network"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list6/node.tag/rule/node.tag/source/any/node.def b/templates/policy/access-list6/node.tag/rule/node.tag/source/any/node.def
index f08dd0dd..16b87410 100644
--- a/templates/policy/access-list6/node.tag/rule/node.tag/source/any/node.def
+++ b/templates/policy/access-list6/node.tag/rule/node.tag/source/any/node.def
@@ -1,5 +1,3 @@
help: Any IPv6 address to match
-
-commit:expression: ($VAR(../network/) == ""); "policy access-list6 $VAR(../../../@) rule $VAR(../../@) source: you may only define one filter type. (network|any)"
-
-commit:expression: $VAR(../../action/) != ""; "policy access-list6 $VAR(../../../@) rule $VAR(../../@) source: you must specify an action"
+commit:expression: ($VAR(../network/) == ""); "you may only define one filter type. (network|any)"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/access-list6/node.tag/rule/node.tag/source/exact-match/node.def b/templates/policy/access-list6/node.tag/rule/node.tag/source/exact-match/node.def
index 170efc33..01565bea 100644
--- a/templates/policy/access-list6/node.tag/rule/node.tag/source/exact-match/node.def
+++ b/templates/policy/access-list6/node.tag/rule/node.tag/source/exact-match/node.def
@@ -1,3 +1,2 @@
help: Exact match of the network prefixes
-
-commit:expression: ($VAR(../any/) == ""); "policy access-list6 $VAR(../../../@) rule $VAR(../../@) source: exact-match can only be used with a network filter "
+commit:expression: ($VAR(../any/) == ""); "exact-match can only be used with a network filter "
diff --git a/templates/policy/access-list6/node.tag/rule/node.tag/source/network/node.def b/templates/policy/access-list6/node.tag/rule/node.tag/source/network/node.def
index ad10ba4d..eb97e759 100644
--- a/templates/policy/access-list6/node.tag/rule/node.tag/source/network/node.def
+++ b/templates/policy/access-list6/node.tag/rule/node.tag/source/network/node.def
@@ -1,7 +1,5 @@
type: ipv6net
help: Network/netmask to match (requires inverse-mask be defined)
val_help: IPv6 address and prefix length
-
-commit:expression: ($VAR(../any/) == ""); "policy access-list6 $VAR(../../../@) rule $VAR(../../@) source: you may only define one filter type. (network|any)"
-
-commit:expression: $VAR(../../action/) != ""; "policy access-list6 $VAR(../../../@) rule $VAR(../../@) source: you must specify an action"
+commit:expression: ($VAR(../any/) == ""); "you may only define one filter type. (network|any)"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
diff --git a/templates/policy/as-path-list/node.tag/rule/node.tag/regex/node.def b/templates/policy/as-path-list/node.tag/rule/node.tag/regex/node.def
index e42d30d8..6b721273 100644
--- a/templates/policy/as-path-list/node.tag/rule/node.tag/regex/node.def
+++ b/templates/policy/as-path-list/node.tag/rule/node.tag/regex/node.def
@@ -4,4 +4,4 @@ val_help: <aa:nn>; AS path regular expression (ex: "50:1 6553:1201")
# TODO: check regex syntax; \
# "invalid chars in regex syntax"
-commit:expression: $VAR(../action/@) != ""; "policy as-path-list $VAR(../../@) rule $VAR(../@): You must specify an action"
+commit:expression: $VAR(../action/@) != ""; "You must specify an action"
diff --git a/templates/policy/community-list/node.tag/rule/node.tag/regex/node.def b/templates/policy/community-list/node.tag/rule/node.tag/regex/node.def
index 49825567..8d903b33 100644
--- a/templates/policy/community-list/node.tag/rule/node.tag/regex/node.def
+++ b/templates/policy/community-list/node.tag/rule/node.tag/regex/node.def
@@ -5,9 +5,9 @@ val_help: Community list regular expression
syntax:expression: exec " \
if [ $VAR(../../@) -ge 1 ] && [ $VAR(../../@) -le 99 ]; then \
if [ -n \"`echo $VAR(@) | sed 's/[0-9]*:[0-9]*//g' | sed -e 's/internet//g' -e 's/local-AS//g' -e 's/no-advertise//g' -e 's/no-export//g'`\" ]; then \
- echo policy community-list $VAR(../../@) rule $VAR(../@): regex $VAR(@) is invalid for a standard community list; \
+ echo regex $VAR(@) is invalid for a standard community list; \
exit 1 ; \
fi ; \
fi ; "
-commit:expression: $VAR(../action/@) != ""; "policy community-list $VAR(../../@) rule $VAR(../@): You must specify an action"
+commit:expression: $VAR(../action/@) != ""; "You must specify an action"
diff --git a/templates/policy/prefix-list/node.tag/rule/node.def b/templates/policy/prefix-list/node.tag/rule/node.def
index 8245f766..e779122a 100644
--- a/templates/policy/prefix-list/node.tag/rule/node.def
+++ b/templates/policy/prefix-list/node.tag/rule/node.def
@@ -5,8 +5,8 @@ val_help: u32:1-65535; Prefix-list rule number
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "rule number must be between 1 and 65535"
-commit:expression: $VAR(./prefix/) != ""; "policy prefix-list $VAR(../@) rule $VAR(@): You must specify a prefix"
-commit:expression: $VAR(./action/) != ""; "policy prefix-list $VAR(../@) rule $VAR(@): You must specify an action"
+commit:expression: $VAR(./prefix/) != ""; "You must specify a prefix"
+commit:expression: $VAR(./action/) != ""; "You must specify an action"
delete: touch /tmp/protocols-$VAR(../@)-$VAR(@).$PPID ;
len=`echo $VAR(@) | awk -F/ '{ print $2 }'` ;
@@ -22,14 +22,14 @@ delete: touch /tmp/protocols-$VAR(../@)-$VAR(@).$PPID ;
end: len=`echo $VAR(./prefix/@) | awk -F/ '{ print $2 }'` ;
if [ -n "$VAR(./ge/@)" ]; then
if [ $len -ge $VAR(./ge/@) ]; then
- echo "policy prefix-list $VAR(../@) rule $VAR(@): ge must be greater than prefix length";
+ echo "ge must be greater than prefix length";
exit 1 ;
fi ;
cond="ge $VAR(./ge/@) ";
fi;
if [ -n "$VAR(./le/@)" ]; then
if [ $VAR(./le/@) -ne 32 ] && [ -n "$VAR(./ge/@)" ] && [ $VAR(./le/@) -le $VAR(./ge/@) ]; then
- echo "policy prefix-list $VAR(../@) rule $VAR(@): le must be greater than or equal to ge";
+ echo "le must be greater than or equal to ge";
exit 1 ;
fi ;
cond="$cond le $VAR(./le/@) ";
diff --git a/templates/policy/prefix-list6/node.tag/rule/node.def b/templates/policy/prefix-list6/node.tag/rule/node.def
index 2af0eb88..5e466f47 100644
--- a/templates/policy/prefix-list6/node.tag/rule/node.def
+++ b/templates/policy/prefix-list6/node.tag/rule/node.def
@@ -5,9 +5,9 @@ val_help: u32:1-65535; Prefix list rule number
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "rule number must be between 1 and 65535"
-commit:expression: $VAR(./prefix/) != ""; "policy prefix-list6 $VAR(../@) rule $VAR(@): You must specify a prefix"
+commit:expression: $VAR(./prefix/) != ""; "You must specify a prefix"
-commit:expression: $VAR(./action/) != ""; "policy prefix-list6 $VAR(../@) rule $VAR(@): You must specify an action"
+commit:expression: $VAR(./action/) != ""; "You must specify an action"
delete: len=`echo $VAR(@) | awk -F/ '{ print $2 }'` ;
if [ -n "$VAR(./ge/@)" ]; then
@@ -22,14 +22,14 @@ delete: len=`echo $VAR(@) | awk -F/ '{ print $2 }'` ;
end: len=`echo $VAR(./prefix/@) | awk -F/ '{ print $2 }'` ;
if [ -n "$VAR(./ge/@)" ]; then
if [ $len -ge $VAR(./ge/@) ]; then
- echo "policy prefix-list $VAR(../@) rule $VAR(@): ge must be greater than prefix length";
+ echo "ge must be greater than prefix length";
exit 1 ;
fi ;
cond="ge $VAR(./ge/@) ";
fi;
if [ -n "$VAR(./le/@)" ]; then
if [ $VAR(./le/@) -ne 128 ] && [ -n "$VAR(./ge/@)" ] && [ $VAR(./le/@) -le $VAR(./ge/@) ]; then
- echo "policy prefix-list $VAR(../@) rule $VAR(@): le must be greater than or equal to ge";
+ echo "le must be greater than or equal to ge";
exit 1 ;
fi ;
cond="$cond le $VAR(./le/@) ";
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/action/node.def b/templates/policy/route-map/node.tag/rule/node.tag/action/node.def
index a2d7c96f..a679f937 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/action/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/action/node.def
@@ -9,7 +9,7 @@ update: /opt/vyatta/sbin/vyatta-policy.pl --check-routemap-action "policy route-
if [ $? -eq 0 ]; then
vtysh -c "configure terminal" -c "route-map $VAR(../../@) $VAR(@) $VAR(../@)";
else
- echo "policy route-map $VAR(../../@) rule $VAR(../@): You can not change the action.";
+ echo "You can not change the action.";
echo " To change the action you must first delete the rule ";
echo -e " \"delete route-map $VAR(../../@) rule $VAR(../@)\" and commit it. \\n";
exit 1;
@@ -19,7 +19,7 @@ delete: /opt/vyatta/sbin/vyatta-policy.pl --check-delete-routemap-action "policy
if [ $? -eq 0 ]; then
touch /tmp/route-map-$VAR(../../@)-rule-$VAR(../@)-action.$PPID ;
else
- echo "policy route-map $VAR(../../@) rule $VAR(../@): Action is a required parameter. ";
+ echo "Action is a required parameter. ";
echo -e " To delete that node you must delete \"route-map $VAR(../../@) rule $VAR(../@)\". \\n";
exit 1;
fi;
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/call/node.def b/templates/policy/route-map/node.tag/rule/node.tag/call/node.def
index bbd278e3..0527e2e7 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/call/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/call/node.def
@@ -2,8 +2,8 @@ type: txt
help: Call another route-map on match
val_help: Route map name
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" "; "policy route-map $VAR(../../@) rule $VAR(../@) call: called route-map $VAR(@) doesn't exist"
-commit:expression: $VAR(../action/) != ""; "policy route-map $VAR(../../@) rule $VAR(../@): you must define an action"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" "; "called route-map $VAR(@) doesn't exist"
+commit:expression: $VAR(../action/) != ""; "you must define an action"
update: vtysh -c "configure terminal" -c "route-map $VAR(../../@) $VAR(../action/@) $VAR(../@)" \
-c "call $VAR(@)"
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/continue/node.def b/templates/policy/route-map/node.tag/rule/node.tag/continue/node.def
index 9982c50a..cda7d38d 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/continue/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/continue/node.def
@@ -5,7 +5,7 @@ val_help: u32:1-65535; Rule number
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "continue must be between 1 and 65535"
commit:expression: $VAR(@) > $VAR(../@); "you may only continue forward in the route-map"
-commit:expression: $VAR(../action/) != ""; "policy route-map $VAR(../../@) rule $VAR(../@): you must define an action"
+commit:expression: $VAR(../action/) != ""; "you must define an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../@) $VAR(../action/@) $VAR(../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/as-path/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/as-path/node.def
index 73a013ba..edf514f4 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/as-path/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/as-path/node.def
@@ -2,8 +2,8 @@ type: txt
help: BGP as-path-list to match
val_help: AS path list name
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): You must specify an action"
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" "; "policy route-map $VAR(../../../@) rule $VAR(../../@) match as-path: AS path list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../action/) != ""; "You must specify an action"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" "; "match as-path: AS path list $VAR(@) doesn't exist"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/community/community-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/community/community-list/node.def
index 5566808b..17037274 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/community/community-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/community/community-list/node.def
@@ -3,4 +3,4 @@ help: BGP community-list to match
val_help: u32:1-99; BGP community list (standard)
val_help: u32:100-500; BGP community list (expanded)
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy community-list $VAR(@)\" "; "policy route-map $VAR(../../../../@) rule $VAR(../../../@) match community: community-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy community-list $VAR(@)\" "; "community-list $VAR(@) doesn't exist"
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/interface/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/interface/node.def
index 5c1034c3..f590c32f 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/interface/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/interface/node.def
@@ -2,10 +2,10 @@ type: txt
help: First hop interface of a route to match
val_help: Interface name
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): You must specify an action"
+commit:expression: $VAR(../../action/) != ""; "You must specify an action"
commit:expression: exec " \
if [ -z \"`ip addr | grep $VAR(@) `\" ]; then \
- echo policy route-map $VAR(../../../@) rule $VAR(../../@) match interface: interface $VAR(@) doesn\\'t exist on this system ; \
+ echo interface $VAR(@) doesn\\'t exist on this system ; \
exit 1 ; \
fi ; "
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/access-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/access-list/node.def
index 1a8b8eb2..1ba1af4f 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/access-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/access-list/node.def
@@ -9,11 +9,11 @@ allowed: local -a params
params=( /opt/vyatta/config/active/policy/access-list/* )
echo -n ${params[@]##*/}
-commit:expression: $VAR(../prefix-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip address access-list: you may only specify a prefix-list or access-list"
+commit:expression: $VAR(../prefix-list/) == ""; "you may only specify a prefix-list or access-list"
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip address access-list: access-list $VAR(@) does not exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "access-list $VAR(@) does not exist"
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/prefix-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/prefix-list/node.def
index 66dafac6..c0da0baf 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/prefix-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/address/prefix-list/node.def
@@ -6,11 +6,11 @@ allowed: local -a params
params=( /opt/vyatta/config/active/policy/prefix-list/* )
echo -n ${params[@]##*/}
-commit:expression: $VAR(../access-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip address prefix-list: you may only specify a prefix-list or access-list"
+commit:expression: $VAR(../access-list/) == ""; "you may only specify a prefix-list or access-list"
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip address prefix-list: prefix-list $VAR(@) does not exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) does not exist"
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/access-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/access-list/node.def
index 90e2fc30..53aac4da 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/access-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/access-list/node.def
@@ -5,9 +5,9 @@ val_help: u32:100-199; IP extended access list number
val_help: u32:1300-1999; IP standard access list number (expanded range)
val_help: u32:2000-2699; IP extended access list number (expanded range)
-commit:expression: $VAR(../prefix-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip nexthop access-list: you may only specify a prefix-list or access-list"
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip nexthop access-list: access-list $VAR(@) does not exist"
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../prefix-list/) == ""; "you may only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "access-list $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/prefix-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/prefix-list/node.def
index bb59ecfe..1771454e 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/prefix-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/nexthop/prefix-list/node.def
@@ -2,9 +2,9 @@ type: txt
help: IP prefix-list to match
val_help: Prefix list name
-commit:expression: $VAR(../access-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip nexthop prefix-list: you can only specify a prefix-list or access-list"
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip nexthop prefix-list: prefix-list $VAR(@) does not exist"
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../access-list/) == ""; "you can only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/access-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/access-list/node.def
index 4182eafb..516b8027 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/access-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/access-list/node.def
@@ -5,9 +5,9 @@ val_help: u32:100-199; IP extended access list number
val_help: u32:1300-1999; IP standard access list number (expanded range)
val_help: u32:2000-2699; IP extended access list number (expanded range)
-commit:expression: $VAR(../prefix-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip route-source access-list: you may only specify a prefix-list or access-list"
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip route-source access-list: access-list $VAR(@) does not exist"
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../prefix-list/) == ""; "you may only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "access-list $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/prefix-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/prefix-list/node.def
index 8c58d92a..f4ca6241 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/prefix-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ip/route-source/prefix-list/node.def
@@ -2,11 +2,9 @@ type: txt
help: IP prefix-list to match
val_help: Prefix list name
-commit:expression: $VAR(../access-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip route-source prefix-list: you can only specify a prefix-list or access-list"
-
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip route-source prefix-list: prefix-list $VAR(@) does not exist"
-
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip route-source prefix-list: you must specify an action"
+commit:expression: $VAR(../access-list/) == ""; "you can only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/access-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/access-list/node.def
index 5d99ddaa..27bf95ce 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/access-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/access-list/node.def
@@ -6,11 +6,9 @@ allowed: local -a params
params=( /opt/vyatta/config/active/policy/access-list6/* )
echo -n ${params[@]##*/}
-commit:expression: $VAR(../prefix-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ip address access-list: you may only specify a prefix-list or access-list"
-
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ipv6 address access-list: access-list6 $VAR(@) does not exist"
-
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../prefix-list/) == ""; "you may only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "access-list6 $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/prefix-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/prefix-list/node.def
index c2f75c45..ef841e89 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/prefix-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/address/prefix-list/node.def
@@ -6,11 +6,9 @@ allowed: local -a params
params=( /opt/vyatta/config/active/policy/prefix-list6/* )
echo -n ${params[@]##*/}
-commit:expression: $VAR(../access-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ipv6 address prefix-list: you may only specify a prefix-list or access-list"
-
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ipv6 address prefix-list: prefix-list6 $VAR(@) does not exist"
-
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../access-list/) == ""; "you may only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; "prefix-list6 $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/access-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/access-list/node.def
index eb75c329..18b6a1ce 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/access-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/access-list/node.def
@@ -2,11 +2,9 @@ type: txt
help: IPv6 access-list6 to match
val_help: IPv6 access list
-commit:expression: $VAR(../prefix-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ipv6 nexthop access-list: you may only specify a prefix-list or access-list"
-
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ipv6 nexthop access-list: access-list6 $VAR(@) does not exist"
-
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../prefix-list/) == ""; "you may only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "access-list6 $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/prefix-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/prefix-list/node.def
index 8acefeb0..ec9a4d2f 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/prefix-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/ipv6/nexthop/prefix-list/node.def
@@ -2,11 +2,9 @@ type: txt
help: IPv6 prefix-list to match
val_help: IPv6 prefix list name
-commit:expression: $VAR(../access-list/) == ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ipv6 nexthop prefix-list: you can only specify a prefix-list or access-list"
-
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@) match ipv6 nexthop prefix-list: prefix-list $VAR(@) does not exist"
-
-commit:expression: $VAR(../../../../action/) != ""; "policy route-map $VAR(../../../../../@) rule $VAR(../../../../@): you must specify an action"
+commit:expression: $VAR(../access-list/) == ""; "you can only specify a prefix-list or access-list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) does not exist"
+commit:expression: $VAR(../../../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../../../@) $VAR(../../../../action/@) $VAR(../../../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/metric/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/metric/node.def
index 26190202..7f99c2c7 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/metric/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/metric/node.def
@@ -3,8 +3,7 @@ help: Metric of route to match
val_help: u32:1-65535; Rrute metric
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "metric must be between 1 and 65535"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/origin/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/origin/node.def
index 591fa8ca..aac5cd0a 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/origin/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/origin/node.def
@@ -5,8 +5,7 @@ val_help: igp; Interior gateway protocol origin
val_help: incomplete; Incomplete origin
syntax:expression: $VAR(@) in "egp", "igp", "incomplete"; "origin must be egp, igp, or incomplete"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/peer/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/peer/node.def
index e0f7ffc0..ea8fcddc 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/peer/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/peer/node.def
@@ -4,8 +4,7 @@ val_help: ipv4; Peer IP address
val_help: local: Static or redistributed routes
syntax:expression: exec "/opt/vyatta/sbin/vyatta-policy.pl --check-peer-syntax $VAR(@)"; "peer must be either an IP or local"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/match/tag/node.def b/templates/policy/route-map/node.tag/rule/node.tag/match/tag/node.def
index 2ee87f7b..46e1b165 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/match/tag/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/match/tag/node.def
@@ -3,8 +3,7 @@ help: Route tag to match
val_help: u32:1-65535; Route tag
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "tag must be between 1 and 65535"
-
-commit:expression: $VAR(../../action) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/on-match/goto/node.def b/templates/policy/route-map/node.tag/rule/node.tag/on-match/goto/node.def
index 212a8e69..7980d35c 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/on-match/goto/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/on-match/goto/node.def
@@ -4,9 +4,8 @@ val_help: u32:1-65535; Rule number
syntax:expression: $VAR(../next/) == ""; "you may set only goto or next"
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "goto must be a rule number between 1 and 65535"
-
-commit:expression: $VAR(@) > $VAR(../../@); "policy route-map $VAR(../../../@) rule $VAR(../../@): you may only go forward in the route-map"
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(@) > $VAR(../../@); "you may only go forward in the route-map"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/on-match/next/node.def b/templates/policy/route-map/node.tag/rule/node.tag/on-match/next/node.def
index 647a8c0e..31fc8efb 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/on-match/next/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/on-match/next/node.def
@@ -1,6 +1,6 @@
help: Next sequence number to goto on match
syntax:expression: $VAR(../goto/) == ""; "you may set only goto or next"
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
-c "on-match next "
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/aggregator/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/aggregator/node.def
index 15cfe854..632a0032 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/aggregator/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/aggregator/node.def
@@ -1,6 +1,6 @@
help: Border Gateway Protocol (BGP) aggregator attribute
-commit:expression: $VAR(./as/) != "" && $VAR(./ip/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@) set aggregator: you must configure both as and ip"
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must configure an action"
+commit:expression: $VAR(./as/) != "" && $VAR(./ip/) != ""; "you must configure both as and ip"
+commit:expression: $VAR(../../action/) != ""; "you must configure an action"
delete: echo $VAR(./as/@) $VAR(./ip/@) > /tmp/policy-route-map-$VAR(../../../@)-$VAR(../../action/@)-$VAR(../../@)-set-aggregator.$PPID
end: if [ -f "/tmp/policy-route-map-$VAR(../../../@)-$VAR(../../action/@)-$VAR(../../@)-set-aggregator.$PPID" ]; then
as=$(cat /tmp/policy-route-map-$VAR(../../../@)-$VAR(../../action/@)-$VAR(../../@)-set-aggregator.$PPID);
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/as-path-prepend/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/as-path-prepend/node.def
index 1bc6709c..1a7f6376 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/as-path-prepend/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/as-path-prepend/node.def
@@ -3,8 +3,7 @@ help: Prepend string for a Border Gateway Protocol (BGP) AS-path attribute
val_help: BGP AS path prepend string (ex: "456 64500 45001")
syntax:expression: exec "/opt/vyatta/sbin/vyatta-check-as-prepend.pl \"$VAR(@)\" "; "invalid AS path string"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/atomic-aggregate/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/atomic-aggregate/node.def
index f844c1ef..aac00e3e 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/atomic-aggregate/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/atomic-aggregate/node.def
@@ -1,5 +1,5 @@
help: Border Gateway Protocol (BGP) atomic aggregate attribute
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
-c "set atomic-aggregate"
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/comm-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/comm-list/node.def
index 31a321bd..474528d6 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/comm-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/comm-list/node.def
@@ -3,4 +3,4 @@ help: BGP communities with a community-list
val_help: u32:1-99; BGP community list (standard)
val_help: u32:100-500; BGP community list (expanded)
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy community-list $VAR(@)\""; "policy route-map $VAR(../../../@) rule $VAR(../../@) set comm-list: community list $VAR(@) does not exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy community-list $VAR(@)\""; "community list $VAR(@) does not exist"
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/node.def
index 518023ca..9ae67bc2 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/comm-list/node.def
@@ -1,7 +1,7 @@
help: Border Gateway Protocol (BGP) communities matching a community-list
delete: touch /tmp/policy-route-map-$VAR(../../../@)-$VAR(../../action/@)-$VAR(../../@)-set-comm-list.$PPID
end: if [ -z "$VAR(./comm-list/)" ]; then
- echo policy route-map $VAR(../../../@) rule $VAR(../../@) set comm-list: You must configure a comm-list ;
+ echo You must configure a comm-list ;
exit 1 ;
fi ;
vtysh --noerror -c "configure terminal" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/community/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/community/node.def
index cd3c8ed5..41029366 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/community/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/community/node.def
@@ -9,9 +9,7 @@ val_help: internet; Symbolic Internet community 0
allowed:echo "none local-AS no-advertise no-export internet"
syntax:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --check-community $VAR(@)"
-
-commit:expression: $VAR(../../action/) != "" \
- ; "policy route-map $VAR(../../../@) rule $VAR(../../@): You must specify an action"
+commit:expression: $VAR(../../action/) != "" ; "You must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/ip-next-hop/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/ip-next-hop/node.def
index 2faf7c6c..256f4eeb 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/ip-next-hop/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/ip-next-hop/node.def
@@ -3,7 +3,7 @@ help: Nexthop IP address
val_help: IP address
# TODO: can also set to peer for BGP
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/local-preference/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/local-preference/node.def
index 7dfda530..125e9e69 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/local-preference/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/local-preference/node.def
@@ -2,7 +2,7 @@ type: u32
help: Border Gateway Protocol (BGP) local preference attribute
val_help: Local preference value
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/metric-type/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/metric-type/node.def
index 92c776d0..0d17ef0d 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/metric-type/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/metric-type/node.def
@@ -4,8 +4,7 @@ val_help: type-1; OSPF external type 1 metric
val_help: type-2; OSPF external type 2 metric
syntax:expression: $VAR(@) in "type-1", "type-2"; "Must be (type-1, type-2)"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/metric/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/metric/node.def
index 6f71fd12..7bba75bf 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/metric/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/metric/node.def
@@ -4,8 +4,7 @@ val_help: <+/-metric>; Add or subtract metric
val_help: u32:0-4294967295; Metric value
syntax:expression: exec "if [ -n \"$(echo $VAR(@) | sed 's/^[+-]*[0123456789]*//')\" ]; then exit 1; fi; "; "metric must be an integer with an optional +/- prepend"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/origin/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/origin/node.def
index 887b1ef9..4b03a4f8 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/origin/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/origin/node.def
@@ -6,8 +6,7 @@ val_help: incomplete; Incomplete origin
allowed: echo "igp egp incomplete"
syntax:expression: $VAR(@) in "igp", "egp", "incomplete"; "origin must be one of igp, egp, or incomplete"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/originator-id/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/originator-id/node.def
index db2d90d2..a3d03579 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/originator-id/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/originator-id/node.def
@@ -2,7 +2,7 @@ type: ipv4
help: Border Gateway Protocol (BGP) originator ID attribute
val_help: Orignator IP address
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/tag/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/tag/node.def
index 94497a37..24ddb4bb 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/tag/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/tag/node.def
@@ -3,8 +3,7 @@ help: Tag value for routing protocol
val_help: u32:1-65535; Tag value
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "tag must be between 1 and 65535"
-
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/policy/route-map/node.tag/rule/node.tag/set/weight/node.def b/templates/policy/route-map/node.tag/rule/node.tag/set/weight/node.def
index ee11e704..9a222b35 100644
--- a/templates/policy/route-map/node.tag/rule/node.tag/set/weight/node.def
+++ b/templates/policy/route-map/node.tag/rule/node.tag/set/weight/node.def
@@ -2,7 +2,7 @@ type: u32
help: Border Gateway Protocol (BGP) weight attribute
val_help: BGP weight
-commit:expression: $VAR(../../action/) != ""; "policy route-map $VAR(../../../@) rule $VAR(../../@): you must specify an action"
+commit:expression: $VAR(../../action/) != ""; "you must specify an action"
update: vtysh -c "configure terminal" \
-c "route-map $VAR(../../../@) $VAR(../../action/@) $VAR(../../@)" \
diff --git a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/path-limit/node.def b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/path-limit/node.def
index 71a74e21..74779030 100644
--- a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/path-limit/node.def
+++ b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/path-limit/node.def
@@ -2,5 +2,5 @@ type: u32
help: AS-path hopcount limit
val_help: u32:0-255; AS path hop count limit
-commit:expression: $VAR(@) >= 0 && $VAR(@) <= 255; "protocols bgp $VAR(../../../../@) address-family ipv6-unicast network $VAR(../@) path-limit: path-limit must be between 0-255."
-commit:expression: $VAR(../route-map/) == ""; "protocols bgp $VAR(../../../../@) address-family ipv6-unicast network $VAR(../@) path-limit: you can't set path-limit and route-map for network"
+commit:expression: $VAR(@) >= 0 && $VAR(@) <= 255; "path-limit must be between 0-255."
+commit:expression: $VAR(../route-map/) == ""; "you can't set path-limit and route-map for network"
diff --git a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/route-map/node.def b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/route-map/node.def
index 5a40830e..292a88af 100644
--- a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/network/node.tag/route-map/node.def
@@ -6,5 +6,5 @@ allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../@) address-family ipv6-unicast network $VAR(../@) route-map: route-map $VAR(@) doesn't exist"
-commit:expression: $VAR(../path-limit/) == ""; "protocols bgp $VAR(../../../../@) address-family ipv6-unicast network $VAR(../@) route-map: you can't set route-map and path-limit for network"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
+commit:expression: $VAR(../path-limit/) == ""; "you can't set route-map and path-limit for network"
diff --git a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/connected/route-map/node.def b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/connected/route-map/node.def
index d059ca5e..b6b83263 100644
--- a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/connected/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/connected/route-map/node.def
@@ -6,4 +6,4 @@ allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) ipv6 redistribute connected: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/kernel/route-map/node.def b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/kernel/route-map/node.def
index 6aa45eef..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/kernel/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/kernel/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) ipv6 redistribute kernel: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ospfv3/route-map/node.def b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ospfv3/route-map/node.def
index 59076002..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ospfv3/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ospfv3/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) ipv6 redistribute ospfv3: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ripng/route-map/node.def b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ripng/route-map/node.def
index a61dd54a..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ripng/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/ripng/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) ipv6 redistribute ripng: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/static/route-map/node.def b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/static/route-map/node.def
index 4901077c..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/static/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/address-family/ipv6-unicast/redistribute/static/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) ipv6 redistribute static: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/attribute-unchanged/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/attribute-unchanged/node.def
index 8df7fae8..fa360913 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/attribute-unchanged/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/attribute-unchanged/node.def
@@ -1,2 +1,2 @@
help: Send BGP attributes unchanged
-commit:expression: $VAR(../../../../peer-group/) == ""; "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you can't set attribute-unchanged for a neighbor in a peer-group"
+commit:expression: $VAR(../../../../peer-group/) == ""; "you can't set attribute-unchanged for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/receive/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/receive/node.def
index 5682b6f7..2f915a13 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/receive/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/receive/node.def
@@ -1,3 +1,3 @@
help: Capability to receive the ORF
-commit:expression: $VAR(../../../../../../peer-group/) == ""; "protocols bgp $VAR(../../../../../../../@) neighbor $VAR(../../../../../../@): you can't set capability orf prefix-list send for a neighbor in a peer-group"
+commit:expression: $VAR(../../../../../../peer-group/) == ""; "you can't set capability orf prefix-list send for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/send/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/send/node.def
index 0ee17795..c7ea0087 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/send/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/capability/orf/prefix-list/send/node.def
@@ -1,2 +1,2 @@
help: Capability to send the ORF
-commit:expression: $VAR(../../../../../../peer-group/) == ""; "protocols bgp $VAR(../../../../../../../@) neighbor $VAR(../../../../../../@): you can't set capability orf prefix-list send for a neighbor in a peer-group"
+commit:expression: $VAR(../../../../../../peer-group/) == ""; "you can't set capability orf prefix-list send for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/node.def
index 6bbaf6c9..7ac52f08 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/node.def
@@ -1,2 +1,2 @@
help: Send default route to this neighbor
-commit:expression: $VAR(../../../peer-group/) == ""; "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you can't set default-originate for a neighbor in a peer-group"
+commit:expression: $VAR(../../../peer-group/) == ""; "you can't set default-originate for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def
index 0a8d7cf7..b5b78d01 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def
@@ -3,5 +3,5 @@ help: Route-map to specify criteria of the default
allowed: local -a params
params=$(/opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map)
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) default-originate: route-map $VAR(@) doesn't exist"
-commit:expression: $VAR(../../../../peer-group/) == ""; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@): you can't set default-originate route-map for a neighbor in a peer-group"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "route-map $VAR(@) doesn't exist"
+commit:expression: $VAR(../../../../peer-group/) == ""; "you can't set default-originate route-map for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/extended/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/extended/node.def
index 976b9745..80c11b35 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/extended/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/extended/node.def
@@ -1,2 +1,2 @@
help: Disable sending extended community attributes to this neighbor
-commit:expression: $VAR(../../../../peer-group/) == ""; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@): you can't set disable-send-community extended for a neighbor in a peer-group"
+commit:expression: $VAR(../../../../peer-group/) == ""; "you can't set disable-send-community extended for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/node.def
index 5ea63fe7..2fd803db 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/node.def
@@ -1,2 +1,2 @@
help: Disable sending community attributes to this neighbor
-commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you must specify the type of community"
+commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "you must specify the type of community"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/standard/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/standard/node.def
index ab52d4e3..9a58b5d3 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/standard/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/disable-send-community/standard/node.def
@@ -1,2 +1,2 @@
help: Disable sending standard community attributes to this neighbor
-commit:expression: $VAR(../../../../peer-group/) == ""; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@): you can't set disable-send-community standard for a neighbor in a peer-group"
+commit:expression: $VAR(../../../../peer-group/) == ""; "you can't set disable-send-community standard for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def
index d5691878..135bd0ce 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def
@@ -3,6 +3,5 @@ help: Access-list to filter outgoing route updates to this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; \
-"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) export: access-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/export/) == ""; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) distribute-list export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "access-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def
index 074f4af8..473c15be 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def
@@ -3,6 +3,5 @@ help: Access-list to filter incoming route updates from this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" ";\
-"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) import: access-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/import/) == ""; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) distribute-list import: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "access-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/export/node.def
index 1c7c4ced..30c0335e 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/export/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter outgoing route updates to this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) filter-list export: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/import/node.def
index fa3a4b5d..26d8f791 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/filter-list/import/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter incoming route updates from this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) filter-list import: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" " ; "as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/node.def
index c62481d2..2316ea2c 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/nexthop-self/node.def
@@ -1,2 +1,2 @@
help: Nexthop for routes sent to this neighbor to be the local router
-commit:expression: $VAR(../../../peer-group/) == ""; "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you can't set nexthop-self for a neighbor in a peer-group"
+commit:expression: $VAR(../../../peer-group/) == ""; "you can't set nexthop-self for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def
index 863d708b..fb44bcf7 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def
@@ -5,6 +5,5 @@ allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; \
-"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) address-family ipv6-unicast prefix-list export: prefix-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/export/) == ""; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) prefix-list6 export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; "prefix-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def
index 1f1fac02..aeef5566 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def
@@ -5,7 +5,6 @@ allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; \
-"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) address-family ipv6-unicast prefix-list import: prefix-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/import/) == ""; "protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) address-family ipv6-unicast prefix-list6 import: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; "prefix-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/remove-private-as/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/remove-private-as/node.def
index ad6aaf59..5ddf91e7 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/remove-private-as/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/remove-private-as/node.def
@@ -1,4 +1,4 @@
help: Remove private AS numbers from AS path in outbound route updates
-commit:expression: $VAR(../../../peer-group/) == ""; "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you can't set remove-private-as for a neighbor in a peer-group"
-commit:expression: $VAR(../../../remote-as/@) != $VAR(../../../../@); "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you can't set remove-private-as for an iBGP peer"
+commit:expression: $VAR(../../../peer-group/) == ""; "you can't set remove-private-as for a neighbor in a peer-group"
+commit:expression: $VAR(../../../remote-as/@) != $VAR(../../../../@); "you can't set remove-private-as for an iBGP peer"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/export/node.def
index 24ffde44..03cb0fe3 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/export/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter outgoing route updates to this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) export: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/import/node.def
index 65d5e775..7924a4c4 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-map/import/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter incoming route updates from this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) neighbor $VAR(../../../../@) import: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-server-client/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-server-client/node.def
index 7c7e9a9c..17b9d691 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-server-client/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/route-server-client/node.def
@@ -1,2 +1,2 @@
help: Neighbor as route server client
-commit:expression: $VAR(../../../peer-group/) == ""; "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you can't set route-server-client for a neighbor in a peer-group"
+commit:expression: $VAR(../../../peer-group/) == ""; "you can't set route-server-client for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def
index 02a8d509..6e31f108 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def
@@ -1,2 +1,2 @@
help: Soft reconfiguration for neighbor
-commit:expression: $VAR(./inbound/) != ""; "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@) soft-reconfiguration: you must specify the type of soft-reconfiguration"
+commit:expression: $VAR(./inbound/) != ""; "you must specify the type of soft-reconfiguration"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def
index 0a1e25db..3562221b 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def
@@ -3,5 +3,5 @@ help: Route-map to selectively unsuppress suppressed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): route-map $VAR(@) doesn't exist"
-commit:expression: $VAR(../../../peer-group/) == ""; "protocols bgp $VAR(../../../../@) neighbor $VAR(../../../@): you can't set unsuppress-map for a neighbor in a peer-group"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
+commit:expression: $VAR(../../../peer-group/) == ""; "you can't set unsuppress-map for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/attribute-unchanged/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/attribute-unchanged/node.def
index 4bc8d9e8..80570e74 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/attribute-unchanged/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/attribute-unchanged/node.def
@@ -1,2 +1,2 @@
help: BGP attributes are sent unchanged
-commit:expression: $VAR(../peer-group/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@): you can't set attribute-unchanged for a neighbor in a peer-group"
+commit:expression: $VAR(../peer-group/) == ""; "you can't set attribute-unchanged for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/node.def
index b2a44f28..01688c8b 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/node.def
@@ -1,2 +1,2 @@
help: Send default route to this neighbor
-commit:expression: $VAR(../peer-group/) == ""; "protocold bgp $VAR(../../@) neighbor $VAR(../@): you can't set default-originate for a neighbor in a peer-group"
+commit:expression: $VAR(../peer-group/) == ""; "you can't set default-originate for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/route-map/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/route-map/node.def
index 2294e8e9..52fe303f 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/default-originate/route-map/node.def
@@ -3,5 +3,5 @@ help: Route-map to specify criteria of the default
allowed: local -a params
params=$(/opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map)
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@) default-originate: route-map $VAR(@) doesn't exist"
-commit:expression: $VAR(../../peer-group/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@): you can't set default-originate for a neighbor in a peer-group"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "route-map $VAR(@) doesn't exist"
+commit:expression: $VAR(../../peer-group/) == ""; "you can't set default-originate for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/extended/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/extended/node.def
index 852212d8..a0e6be2c 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/extended/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/extended/node.def
@@ -1,2 +1,2 @@
help: Disable sending extended community attributes to this neighbor
-commit:expression: $VAR(../../peer-group/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@): you can't set disable-send-community for a neighbor in a peer-group"
+commit:expression: $VAR(../../peer-group/) == ""; "you can't set disable-send-community for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/node.def
index bff2c868..2fd803db 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/node.def
@@ -1,2 +1,2 @@
help: Disable sending community attributes to this neighbor
-commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "protocols bgp $VAR(../../@) neighbor $VAR(../@): you must specify the type of community"
+commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "you must specify the type of community"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/standard/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/standard/node.def
index 3e3558dc..1a2a4e8b 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/standard/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/disable-send-community/standard/node.def
@@ -1,2 +1,2 @@
help: Disable sending standard community attributes to this neighbor
-commit:expression: $VAR(../../peer-group/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@): you can't set disable-send-community for a neighbor in a peer-group"
+commit:expression: $VAR(../../peer-group/) == ""; "you can't set disable-send-community for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/export/node.def
index 2ffff2dc..6e1360a5 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/export/node.def
@@ -6,6 +6,5 @@ syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Access list must be betwee
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; \
-"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) export: access-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/export/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@) distribute-list export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "access-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/import/node.def
index 068b8048..05c38e66 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/distribute-list/import/node.def
@@ -6,6 +6,5 @@ syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Access list must be betwee
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" ";\
-"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) import: access-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/import/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@) distribute-list import: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "access-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/ebgp-multihop/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/ebgp-multihop/node.def
index 96a89436..a3da4d5d 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/ebgp-multihop/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/ebgp-multihop/node.def
@@ -3,4 +3,4 @@ help: Allow this EBGP neighbor to not be on a directly connected network
val_help: u32:1-255; Number of hops
syntax:expression: $VAR(@) >=1 && $VAR(@) <= 255; "ebgp-multihop must be between 1 and 255"
-commit:expression: $VAR(../ttl-security/hops/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@) ebgp-multihop: you can't set both ebgp-multihop and ttl-security hops"
+commit:expression: $VAR(../ttl-security/hops/) == ""; "you can't set both ebgp-multihop and ttl-security hops"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/export/node.def
index 24836412..30c0335e 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/export/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter outgoing route updates to this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) filter-list export: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/import/node.def
index 27df8362..2626dfb4 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/filter-list/import/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter incoming route updates from this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) filter-list import: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/local-as/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/local-as/node.def
index e2bfa76e..a60b9bb1 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/local-as/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/local-as/node.def
@@ -3,7 +3,7 @@ type: u32
help: Local AS number [REQUIRED]
val_help: u32:1-4294967294; Local AS number
syntax:expression: $VAR(@) >=1 && $VAR(@) <= 4294967294; "local-as must be between 1 and 4294967294"
-commit:expression: $VAR(@) != $VAR(../../@); "protocols bgp $VAR(../../@) neighbor $VAR(../@): you can't set local-as the same as the router AS"
-commit:expression: $VAR(../remote-as/@) != $VAR(../../@); "protocols bgp $VAR(../../@) neighbor $VAR(../@): local-as can't be set on iBGP peers"
+commit:expression: $VAR(@) != $VAR(../../@); "you can't set local-as the same as the router AS"
+commit:expression: $VAR(../remote-as/@) != $VAR(../../@); "local-as can't be set on iBGP peers"
commit:expression: exec "/opt/vyatta/sbin/vyatta-bgp.pl --check-local-as --neighbor $VAR(../@) --as $VAR(../../@)"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/nexthop-self/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/nexthop-self/node.def
index a448c4f2..678ed0e1 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/nexthop-self/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/nexthop-self/node.def
@@ -1,2 +1,2 @@
help: Nexthop for routes sent to this neighbor to be the local router
-commit:expression: $VAR(../peer-group/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@) next-hop-self: you can't set next-hop-self for a neighbor in a peer-group"
+commit:expression: $VAR(../peer-group/) == ""; "you can't set next-hop-self for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/override-capability/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/override-capability/node.def
index 3b99bc65..4cafcb8b 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/override-capability/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/override-capability/node.def
@@ -1,2 +1,2 @@
help: Ignore capability negotiation with specified neighbor
-commit:expression: $VAR(../strict-capability/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@) override-capability: you can't set both strict-capability and override-capability"
+commit:expression: $VAR(../strict-capability/) == ""; "you can't set both strict-capability and override-capability"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/export/node.def
index 839eaf5f..8e84af9d 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/export/node.def
@@ -3,6 +3,5 @@ help: Prefix-list to filter outgoing route updates to this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; \
-"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) prefix-list export: prefix-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/export/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@) prefix-list export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/import/node.def
index ca0a1aa9..baa56b2e 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/prefix-list/import/node.def
@@ -3,7 +3,6 @@ help: Prefix-list to filter incoming route updates from this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; \
-"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) prefix-list import: prefix-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/import/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@) prefix-list import: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/remove-private-as/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/remove-private-as/node.def
index e868da71..8784afb6 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/remove-private-as/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/remove-private-as/node.def
@@ -1,3 +1,3 @@
help: Remove private AS numbers from AS path in outbound route updates
-commit:expression: $VAR(../peer-group/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@): you can't set remove-private-as for a neighbor in a peer-group"
-commit:expression: $VAR(../remote-as/@) != $VAR(../../@); "protocols bgp $VAR(../../@) neighbor $VAR(../@): you can't set remove-private-as for an iBGP peer"
+commit:expression: $VAR(../peer-group/) == ""; "you can't set remove-private-as for a neighbor in a peer-group"
+commit:expression: $VAR(../remote-as/@) != $VAR(../../@); "you can't set remove-private-as for an iBGP peer"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/export/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/export/node.def
index 9287267a..c7dfdb10 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/export/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/export/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter outgoing route updates to this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) export: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" "; "route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/import/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/import/node.def
index b3833328..86bc18f9 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/import/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-map/import/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter incoming route updates from this neighbor
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) neighbor $VAR(../../@) import: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" "; "route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-reflector-client/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-reflector-client/node.def
index a0471c36..f3c7af7c 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-reflector-client/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-reflector-client/node.def
@@ -1,3 +1,3 @@
help: Neighbor as a route reflector client
-commit:expression: $VAR(../peer-group/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@): you can't set route-reflector-client for a neighbor in a peer-group"
-commit:expression: $VAR(../../@) == $VAR(../remote-as/@); "protocols bgp $VAR(../../@) neighbor $VAR(../@) route-reflector-client: remote-as must equal local-as"
+commit:expression: $VAR(../peer-group/) == ""; "you can't set route-reflector-client for a neighbor in a peer-group"
+commit:expression: $VAR(../../@) == $VAR(../remote-as/@); "remote-as must equal local-as"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-server-client/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-server-client/node.def
index b9377a2b..9e59d8c1 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/route-server-client/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/route-server-client/node.def
@@ -1,2 +1,2 @@
help: Neighbor is route server client
-commit:expression: $VAR(../peer-group/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@): you can't set route-server-client for a neighbor in a peer-group"
+commit:expression: $VAR(../peer-group/) == ""; "you can't set route-server-client for a neighbor in a peer-group"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/soft-reconfiguration/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/soft-reconfiguration/node.def
index 7f4822d5..6e31f108 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/soft-reconfiguration/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/soft-reconfiguration/node.def
@@ -1,2 +1,2 @@
help: Soft reconfiguration for neighbor
-commit:expression: $VAR(./inbound/) != ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@) soft-reconfiguration: you must specify the type of soft-reconfiguration"
+commit:expression: $VAR(./inbound/) != ""; "you must specify the type of soft-reconfiguration"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/strict-capability-match/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/strict-capability-match/node.def
index 437d20cc..b50b823a 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/strict-capability-match/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/strict-capability-match/node.def
@@ -1,2 +1,2 @@
help: Enable strict capability negotiation
-commit:expression: $VAR(../override-capability/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@) strict-capability-match: you can't set both strict-capability and override-capability"
+commit:expression: $VAR(../override-capability/) == ""; "you can't set both strict-capability and override-capability"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/timers/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/timers/node.def
index 15c2c662..7a5633a5 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/timers/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/timers/node.def
@@ -1,5 +1,5 @@
help: Neighbor timers
# TODO: fix this. Can set connect &&|| (keepalive && holdtime)
-commit:expression: $VAR(./keepalive/) != ""; "protocols bgp $VAR(../../@) timers: you must set a keepalive interval"
-commit:expression: $VAR(./holdtime/) != ""; "protocols bgp $VAR(../../@) timers: you must set a holdtime interval"
+commit:expression: $VAR(./keepalive/) != ""; "you must set a keepalive interval"
+commit:expression: $VAR(./holdtime/) != ""; "you must set a holdtime interval"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/ttl-security/hops/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/ttl-security/hops/node.def
index 5a91ed3e..6014ad82 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/ttl-security/hops/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/ttl-security/hops/node.def
@@ -3,4 +3,4 @@ help: Number of the maximum number of hops to the BGP peer
val_help: u32:1-254; Number of hops
syntax:expression: $VAR(@) >=1 && $VAR(@) <= 254; "ttl-security hops must be between 1 and 254"
-commit:expression: $VAR(../../ebgp-multihop/) == ""; "protocols bgp $VAR(../../../@) neighbor $VAR(../../@) ttl-security hops: you can't set both ebgp-multihop and ttl-security hops"
+commit:expression: $VAR(../../ebgp-multihop/) == ""; "you can't set both ebgp-multihop and ttl-security hops"
diff --git a/templates/protocols/bgp/node.tag/neighbor/node.tag/unsuppress-map/node.def b/templates/protocols/bgp/node.tag/neighbor/node.tag/unsuppress-map/node.def
index f11bf532..526087f6 100644
--- a/templates/protocols/bgp/node.tag/neighbor/node.tag/unsuppress-map/node.def
+++ b/templates/protocols/bgp/node.tag/neighbor/node.tag/unsuppress-map/node.def
@@ -3,5 +3,5 @@ help: Route-map to selectively unsuppress suppressed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: $VAR(../peer-group/) == ""; "protocols bgp $VAR(../../@) neighbor $VAR(../@): you can't set unsuppress-map for a neighbor in a peer-group"
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../@) neighbor $VAR(../@): route-map $VAR(@) doesn't exist"
+commit:expression: $VAR(../peer-group/) == ""; "you can't set unsuppress-map for a neighbor in a peer-group"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/network/node.def b/templates/protocols/bgp/node.tag/network/node.def
index 7ca1d86f..a1b6068c 100644
--- a/templates/protocols/bgp/node.tag/network/node.def
+++ b/templates/protocols/bgp/node.tag/network/node.def
@@ -2,5 +2,4 @@ tag:
type: ipv4net
help: BGP network
syntax:expression: exec "${vyatta_sbindir}/check_prefix_boundary $VAR(@)"
-commit:expression: !($VAR(./backdoor/) != "" && $VAR(./route-map/) != "");
- "protocols bgp $VAR(../@) network $VAR(@): May specify route-map or backdoor but not both"
+commit:expression: !($VAR(./backdoor/) != "" && $VAR(./route-map/) != ""); "you may specify route-map or backdoor but not both"
diff --git a/templates/protocols/bgp/node.tag/network/node.tag/route-map/node.def b/templates/protocols/bgp/node.tag/network/node.tag/route-map/node.def
index e869fdb3..58ac22b7 100644
--- a/templates/protocols/bgp/node.tag/network/node.tag/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/network/node.tag/route-map/node.def
@@ -3,4 +3,4 @@ help: Route-map to modify route attributes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../@) network $VAR(../@): route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/parameters/dampening/max-suppress-time/node.def b/templates/protocols/bgp/node.tag/parameters/dampening/max-suppress-time/node.def
index 854beaf3..44e693f6 100644
--- a/templates/protocols/bgp/node.tag/parameters/dampening/max-suppress-time/node.def
+++ b/templates/protocols/bgp/node.tag/parameters/dampening/max-suppress-time/node.def
@@ -3,5 +3,5 @@ help: Maximum duration to suppress a stable route [REQUIRED]
val_help: u32:1-255; Maximum suppress duration in seconds
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 255; "Max-suppress-time must be between 1 and 255"
-commit:expression: $VAR(../re-use/) != ""; "protocols bgp $VAR(../../../@) parameters dampening max-suppress-time: you must set a re-use time"
-commit:expression: $VAR(../start-suppress-time/) != ""; "protocols bgp $VAR(../../../@) parameters dampening max-suppress-time: you must set a start-suppress-time"
+commit:expression: $VAR(../re-use/) != ""; "you must set a re-use time"
+commit:expression: $VAR(../start-suppress-time/) != ""; "you must set a start-suppress-time"
diff --git a/templates/protocols/bgp/node.tag/parameters/dampening/re-use/node.def b/templates/protocols/bgp/node.tag/parameters/dampening/re-use/node.def
index 99003040..b4a12622 100644
--- a/templates/protocols/bgp/node.tag/parameters/dampening/re-use/node.def
+++ b/templates/protocols/bgp/node.tag/parameters/dampening/re-use/node.def
@@ -3,5 +3,5 @@ help: Time to start reusing a route [REQUIRED]
val_help: u32:1-20000; Re-use time in seconds
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 20000; "Re-use value must be between 1 and 20000"
-commit:expression: $VAR(../start-suppress-time/) != ""; "protocols bgp $VAR(../../../@) parameters dampening re-use: you must set start-suppress-time"
-commit:expression: $VAR(../max-suppress-time/) != ""; "protocols bgp $VAR(../../../@) parameters dampening re-use: you must set max-suppress-time"
+commit:expression: $VAR(../start-suppress-time/) != ""; "you must set start-suppress-time"
+commit:expression: $VAR(../max-suppress-time/) != ""; "you must set max-suppress-time"
diff --git a/templates/protocols/bgp/node.tag/parameters/dampening/start-suppress-time/node.def b/templates/protocols/bgp/node.tag/parameters/dampening/start-suppress-time/node.def
index 0576c7e6..c7ee5b0e 100644
--- a/templates/protocols/bgp/node.tag/parameters/dampening/start-suppress-time/node.def
+++ b/templates/protocols/bgp/node.tag/parameters/dampening/start-suppress-time/node.def
@@ -2,5 +2,5 @@ type: u32
help: When to start suppressing a route [REQUIRED]
val_help: u32:1-20000; Start-suppress-time
syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 20000; "Start-suppress-time must be between 1 and 20000"
-commit:expression: $VAR(../re-use/) != ""; "protocols bgp $VAR(../../../@) parameters dampening max-suppress-time: you must set re-use"
-commit:expression: $VAR(../max-suppress-time/) != ""; "protocols bgp $VAR(../../../@) parameters dampening max-suppress-time: you must set max-suppress-time"
+commit:expression: $VAR(../re-use/) != ""; "you must set re-use"
+commit:expression: $VAR(../max-suppress-time/) != ""; "you must set max-suppress-time"
diff --git a/templates/protocols/bgp/node.tag/parameters/distance/global/node.def b/templates/protocols/bgp/node.tag/parameters/distance/global/node.def
index 02e08c2b..de4720f2 100644
--- a/templates/protocols/bgp/node.tag/parameters/distance/global/node.def
+++ b/templates/protocols/bgp/node.tag/parameters/distance/global/node.def
@@ -1,4 +1,4 @@
help: Global administratives distances for BGP routes
-commit:expression: $VAR(./external/) != ""; "protocols bgp $VAR(../../../@) parameters distance global: you must set an external route distance"
-commit:expression: $VAR(./internal/) != ""; "protocols bgp $VAR(../../../@) parameters distance global: you must set an internal route distance"
-commit:expression: $VAR(./local/) != ""; "protocols bgp $VAR(../../../@) parameters distance global: you must set a local route distance"
+commit:expression: $VAR(./external/) != ""; "you must set an external route distance"
+commit:expression: $VAR(./internal/) != ""; "you must set an internal route distance"
+commit:expression: $VAR(./local/) != ""; "you must set a local route distance"
diff --git a/templates/protocols/bgp/node.tag/parameters/distance/prefix/node.def b/templates/protocols/bgp/node.tag/parameters/distance/prefix/node.def
index eaf7d6d8..ed1a6e05 100644
--- a/templates/protocols/bgp/node.tag/parameters/distance/prefix/node.def
+++ b/templates/protocols/bgp/node.tag/parameters/distance/prefix/node.def
@@ -2,4 +2,4 @@ tag:
type: ipv4net
help: Administrative distance for a specific BGP prefix
syntax:expression: exec "${vyatta_sbindir}/check_prefix_boundary $VAR(@)"
-commit:expression: $VAR(./distance/) != ""; "protocols bgp $VAR(../../../@) parameters distance prefix $VAR(@): you must set a route distance for this prefix"
+commit:expression: $VAR(./distance/) != ""; "you must set a route distance for this prefix"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def
index 7fec6bf8..689451ce 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/default-originate/route-map/node.def
@@ -3,4 +3,4 @@ help: Route-map to specify criteria of the default
allowed: local -a params
params=$(/opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map)
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) default-originate: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/disable-send-community/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/disable-send-community/node.def
index 1af8f176..2f4c5cbe 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/disable-send-community/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/disable-send-community/node.def
@@ -1,2 +1,2 @@
help: Disable sending community attributes to this peer-group
-commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "protocols bgp $VAR(../../../../@) peer-group $VAR(../../../@): you must specify the type of community"
+commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "you must specify the type of community"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def
index 08165d9c..83aac419 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/export/node.def
@@ -3,6 +3,5 @@ help: Access-list to filter outgoing route updates to this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; \
-"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) export: access-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/export/) == ""; "protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) distribute-list export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "access-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def
index c30e425c..621bd0c2 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/distribute-list/import/node.def
@@ -3,6 +3,5 @@ help: Access-list to filter incoming route updates from this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" ";\
-"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) import: access-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/import/) == ""; "protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) distribute-list import: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list6 $VAR(@)\" "; "access-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/export/node.def
index e9404865..4ed52f34 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/export/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter outgoing route updates to this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) filter-list export: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/import/node.def
index d8406724..caeb3e20 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/filter-list/import/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter incoming route updates from this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) filter-list import: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def
index bfc6729a..9d5843d6 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/export/node.def
@@ -3,6 +3,5 @@ help: Prefix-list to filter outgoing route updates to this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; \
-"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) address-family ipv6-unicast prefix-list export: prefix-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/export/) == ""; "protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) address-family ipv6-unicast prefix-list6 export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; "prefix-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def
index 3ced79fa..08814067 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/prefix-list/import/node.def
@@ -3,7 +3,6 @@ help: Prefix-list to filter incoming route updates from this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list6 )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; \
-"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) address-family ipv6-unicast prefix-list import: prefix-list6 $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/import/) == ""; "protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) address-family ipv6-unicast prefix-list6 import: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list6 $VAR(@)\" "; "prefix-list6 $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/export/node.def
index e187cb88..c374aa33 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/export/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter outgoing route updates to this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) export: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/import/node.def
index 73dc867b..f1cddef5 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-map/import/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter incoming route updates from this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../../@) peer-group $VAR(../../../../@) import: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-reflector-client/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-reflector-client/node.def
index 7e0ffe30..eff79b87 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-reflector-client/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/route-reflector-client/node.def
@@ -1,2 +1,2 @@
help: Peer-group as a route reflector client
-commit:expression: $VAR(../../../../@) == $VAR(../../../remote-as/@); "protocols bgp $VAR(../../../../@) peer-group $VAR(../../../@) route-reflector-client: remote-as must equal local-as"
+commit:expression: $VAR(../../../../@) == $VAR(../../../remote-as/@); "remote-as must equal local-as"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def
index e52732f8..839477d3 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/soft-reconfiguration/node.def
@@ -1,2 +1,2 @@
help: Soft reconfiguration for peer-group
-commit:expression: $VAR(./inbound/) != ""; "protocols bgp $VAR(../../../../@) peer-group $VAR(../../../@) soft-reconfiguration: you must specify the type of soft-reconfiguration"
+commit:expression: $VAR(./inbound/) != ""; "you must specify the type of soft-reconfiguration"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def
index 0bd073e5..0f1602b2 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/address-family/ipv6-unicast/unsuppress-map/node.def
@@ -3,4 +3,4 @@ help: Route-map to selectively unsuppress suppressed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../../@) peer-group $VAR(../../../@): route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/default-originate/route-map/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/default-originate/route-map/node.def
index d327e542..689451ce 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/default-originate/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/default-originate/route-map/node.def
@@ -3,4 +3,4 @@ help: Route-map to specify criteria of the default
allowed: local -a params
params=$(/opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map)
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "protocols bgp $VAR(../../../@) peer-group $VAR(../../@) default-originate: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" " ; "route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/disable-send-community/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/disable-send-community/node.def
index c92cb4af..2f4c5cbe 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/disable-send-community/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/disable-send-community/node.def
@@ -1,2 +1,2 @@
help: Disable sending community attributes to this peer-group
-commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "protocols bgp $VAR(../../@) peer-group $VAR(../@): you must specify the type of community"
+commit:expression: ($VAR(./extended/) != "") || ($VAR(./standard/) != ""); "you must specify the type of community"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/export/node.def
index 8b05010e..452e9eda 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/export/node.def
@@ -6,6 +6,5 @@ syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Access list must be betwee
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; \
-"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) export: access-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/export/) == ""; "protocols bgp $VAR(../../../@) peer-group $VAR(../../@) distribute-list export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "access-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/import/node.def
index 33ee8973..f19d1d77 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/distribute-list/import/node.def
@@ -6,6 +6,5 @@ syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Access list must be betwee
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy access-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" ";\
-"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) import: access-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../prefix-list/import/) == ""; "protocols bgp $VAR(../../../@) peer-group $VAR(../../@) distribute-list import: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy access-list $VAR(@)\" "; "access-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../prefix-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/ebgp-multihop/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/ebgp-multihop/node.def
index 88cabc4c..ae541e15 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/ebgp-multihop/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/ebgp-multihop/node.def
@@ -3,4 +3,4 @@ help: Allow this EBGP peer-group to not be on a directly connected network
val_help: u32:1-255; Number of hops
syntax:expression: $VAR(@) >=1 && $VAR(@) <= 255; "ebgp-multihop must be between 1 and 255"
-commit:expression: $VAR(../ttl-security/hops/) == ""; "protocols bgp $VAR(../../@) peer-group $VAR(../@) ebgp-multihop: you can't set both ebgp-multihop and ttl-security hops"
+commit:expression: $VAR(../ttl-security/hops/) == ""; "you can't set both ebgp-multihop and ttl-security hops"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/export/node.def
index 07dfcbb6..4ed52f34 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/export/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter outgoing route updates to this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) filter-list export: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/import/node.def
index 0652e65f..caeb3e20 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/filter-list/import/node.def
@@ -3,4 +3,4 @@ help: As-path-list to filter incoming route updates from this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy as-path-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) filter-list import: as-path-list $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy as-path-list $VAR(@)\" ";"as-path-list $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/local-as/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/local-as/node.def
index 55b1c3c2..5cc6b1e7 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/local-as/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/local-as/node.def
@@ -3,4 +3,4 @@ type: u32
help: Local AS number [REQUIRED]
val_help: u32: 1-4294967294; Local AS number
syntax:expression: $VAR(@) >=1 && $VAR(@) <= 4294967294; "local-as must be between 1 and 4294967294"
-commit:expression: $VAR(@) != $VAR(../../@); "protocols bgp $VAR(../../@) peer-group $VAR(../@): you can't set local-as the same as the router AS"
+commit:expression: $VAR(@) != $VAR(../../@); "you can't set local-as the same as the router AS"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/override-capability/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/override-capability/node.def
index 0223e7d7..ebe04148 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/override-capability/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/override-capability/node.def
@@ -1,2 +1,2 @@
help: Ignore capability negotiation with specified peer-group
-commit:expression: $VAR(../strict-capability/) == ""; "protocols bgp $VAR(../../@) peer-group $VAR(../@) override-capability: you can't set both strict-capability and override-capability"
+commit:expression: $VAR(../strict-capability/) == ""; "you can't set both strict-capability and override-capability"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/export/node.def
index 90629ca0..303cf43f 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/export/node.def
@@ -4,6 +4,5 @@ allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; \
-"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) prefix-list export: prefix-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/export/) == ""; "protocols bgp $VAR(../../../@) peer-group $VAR(../../@) prefix-list export: you can't set both a prefix-list and a distribute list"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/export/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/import/node.def
index adec753f..ff96c716 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/prefix-list/import/node.def
@@ -3,7 +3,5 @@ help: Prefix-list to filter incoming route updates from this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy prefix-list )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; \
-"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) prefix-list import: prefix-list $VAR(@) doesn't exist"
-commit:expression: $VAR(../../distribute-list/import/) == ""; "protocols bgp $VAR(../../../@) peer-group $VAR(../../@) prefix-list import: you can't set both a prefix-list and a distribute list"
-
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy prefix-list $VAR(@)\" "; "prefix-list $VAR(@) doesn't exist"
+commit:expression: $VAR(../../distribute-list/import/) == ""; "you can't set both a prefix-list and a distribute list"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/export/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/export/node.def
index 4b1d3198..c374aa33 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/export/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/export/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter outgoing route updates to this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) export: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/import/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/import/node.def
index 49158a55..f1cddef5 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/import/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/route-map/import/node.def
@@ -3,4 +3,4 @@ help: Route-map to filter incoming route updates from this peer-group
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) peer-group $VAR(../../@) import: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/route-reflector-client/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/route-reflector-client/node.def
index 9c773c60..26b94f19 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/route-reflector-client/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/route-reflector-client/node.def
@@ -1,2 +1,2 @@
help: Peer-group as a route reflector client
-commit:expression: $VAR(../../@) == $VAR(../remote-as/@); "protocols bgp $VAR(../../@) peer-group $VAR(../@) route-reflector-client: remote-as must equal local-as"
+commit:expression: $VAR(../../@) == $VAR(../remote-as/@); "remote-as must equal local-as"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/soft-reconfiguration/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/soft-reconfiguration/node.def
index ae6ab330..839477d3 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/soft-reconfiguration/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/soft-reconfiguration/node.def
@@ -1,2 +1,2 @@
help: Soft reconfiguration for peer-group
-commit:expression: $VAR(./inbound/) != ""; "protocols bgp $VAR(../../@) peer-group $VAR(../@) soft-reconfiguration: you must specify the type of soft-reconfiguration"
+commit:expression: $VAR(./inbound/) != ""; "you must specify the type of soft-reconfiguration"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/timers/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/timers/node.def
index 942d081e..362c7f15 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/timers/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/timers/node.def
@@ -1,5 +1,5 @@
help: Peer-group timers
# TODO: fix this. Can set connect &&|| (keepalive && holdtime)
-commit:expression: $VAR(./keepalive/) != ""; "protocols bgp $VAR(../../@) timers: you must set a keepalive interval"
-commit:expression: $VAR(./holdtime/) != ""; "protocols bgp $VAR(../../@) timers: you must set a holdtime interval"
+commit:expression: $VAR(./keepalive/) != ""; "you must set a keepalive interval"
+commit:expression: $VAR(./holdtime/) != ""; "you must set a holdtime interval"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/ttl-security/hops/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/ttl-security/hops/node.def
index c2756c6f..6014ad82 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/ttl-security/hops/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/ttl-security/hops/node.def
@@ -3,4 +3,4 @@ help: Number of the maximum number of hops to the BGP peer
val_help: u32:1-254; Number of hops
syntax:expression: $VAR(@) >=1 && $VAR(@) <= 254; "ttl-security hops must be between 1 and 254"
-commit:expression: $VAR(../../ebgp-multihop/) == ""; "protocols bgp $VAR(../../../@) peer-group $VAR(../../@) ttl-security hops: you can't set both ebgp-multihop and ttl-security hops"
+commit:expression: $VAR(../../ebgp-multihop/) == ""; "you can't set both ebgp-multihop and ttl-security hops"
diff --git a/templates/protocols/bgp/node.tag/peer-group/node.tag/unsuppress-map/node.def b/templates/protocols/bgp/node.tag/peer-group/node.tag/unsuppress-map/node.def
index 5d8fbce9..0f1602b2 100644
--- a/templates/protocols/bgp/node.tag/peer-group/node.tag/unsuppress-map/node.def
+++ b/templates/protocols/bgp/node.tag/peer-group/node.tag/unsuppress-map/node.def
@@ -3,4 +3,4 @@ help: Route-map to selectively unsuppress suppressed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../@) peer-group $VAR(../@): route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/redistribute/connected/route-map/node.def b/templates/protocols/bgp/node.tag/redistribute/connected/route-map/node.def
index 4c6ac621..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/redistribute/connected/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/redistribute/connected/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) redistribute connected: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/redistribute/kernel/route-map/node.def b/templates/protocols/bgp/node.tag/redistribute/kernel/route-map/node.def
index c18a2d32..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/redistribute/kernel/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/redistribute/kernel/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) redistribute kernel: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/redistribute/ospf/route-map/node.def b/templates/protocols/bgp/node.tag/redistribute/ospf/route-map/node.def
index c8850aa4..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/redistribute/ospf/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/redistribute/ospf/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) redistribute ospf: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/redistribute/rip/route-map/node.def b/templates/protocols/bgp/node.tag/redistribute/rip/route-map/node.def
index 735da89d..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/redistribute/rip/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/redistribute/rip/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) redistribute rip: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/redistribute/static/route-map/node.def b/templates/protocols/bgp/node.tag/redistribute/static/route-map/node.def
index 0dc6db88..3d61955a 100644
--- a/templates/protocols/bgp/node.tag/redistribute/static/route-map/node.def
+++ b/templates/protocols/bgp/node.tag/redistribute/static/route-map/node.def
@@ -3,4 +3,4 @@ help: Route map to filter redistributed routes
allowed: local -a params
params=$( /opt/vyatta/sbin/vyatta-policy.pl --list-policy route-map )
echo -n ${params[@]##*/}
-commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"protocols bgp $VAR(../../../@) redistribute static: route-map $VAR(@) doesn't exist"
+commit:expression: exec "/opt/vyatta/sbin/vyatta_quagga_utils.pl --exists \"policy route-map $VAR(@)\" ";"route-map $VAR(@) doesn't exist"
diff --git a/templates/protocols/bgp/node.tag/timers/node.def b/templates/protocols/bgp/node.tag/timers/node.def
index ffa19605..9ea1837b 100644
--- a/templates/protocols/bgp/node.tag/timers/node.def
+++ b/templates/protocols/bgp/node.tag/timers/node.def
@@ -1,3 +1,3 @@
help: BGP protocol timers
-commit:expression: $VAR(./keepalive/) != ""; "protocols bgp $VAR(../@) timers: you must set a keepalive interval"
-commit:expression: $VAR(./holdtime/) != ""; "protocols bgp $VAR(../@) timers: you must set a holdtime interval"
+commit:expression: $VAR(./keepalive/) != ""; "you must set a keepalive interval"
+commit:expression: $VAR(./holdtime/) != ""; "you must set a holdtime interval"