summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog37
-rwxr-xr-xlib/Vyatta/Interface.pm12
-rwxr-xr-xscripts/vyatta-cfg-cmd-wrapper24
-rwxr-xr-xscripts/vyatta-cli-expand-var.pl2
-rwxr-xr-xscripts/vyatta-load-config.pl2
-rw-r--r--templates/priority7
6 files changed, 74 insertions, 10 deletions
diff --git a/debian/changelog b/debian/changelog
index d98bd04..cd8f503 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,40 @@
+vyatta-cfg (0.15.7) unstable; urgency=low
+
+ [ Stephen Hemminger ]
+ * Add hw_address method for use in bonding
+
+ [ Stig Thormodsrud ]
+ * Fix [Bug 4760] New: members were removed after an in-use firewall
+ group
+
+ -- Stig Thormodsrud <stig@vyatta.com> Thu, 30 Jul 2009 11:43:34 -0700
+
+vyatta-cfg (0.15.6) unstable; urgency=low
+
+ * update cli-expand-var script to match current variable reference
+ syntax.
+
+ -- An-Cheng Huang <ancheng@vyatta.com> Wed, 29 Jul 2009 12:02:31 -0700
+
+vyatta-cfg (0.15.5) unstable; urgency=low
+
+ * alter rename rule option to work for firewall and nat rules
+
+ -- Mohit Mehta <mohit.mehta@vyatta.com> Tue, 28 Jul 2009 17:08:03 -0700
+
+vyatta-cfg (0.15.4) unstable; urgency=low
+
+ [ slioch ]
+ * fix for bug 4255. commit check was not being called on active node
+ that had deleted children. This change only affects
+
+ [ Stig Thormodsrud ]
+ * Fix 4722: Output inconsistent from 'save' and 'load' commands
+
+ [ Mohit Mehta ]
+
+ -- Mohit Mehta <mohit.mehta@vyatta.com> Fri, 24 Jul 2009 14:27:06 -0700
+
vyatta-cfg (0.15.3) unstable; urgency=low
* Bugfix 4717: Remove duplicate entries in priority file.
diff --git a/lib/Vyatta/Interface.pm b/lib/Vyatta/Interface.pm
index 96429c0..97ef7f7 100755
--- a/lib/Vyatta/Interface.pm
+++ b/lib/Vyatta/Interface.pm
@@ -222,6 +222,18 @@ sub flags {
return hex($val);
}
+sub hw_address {
+ my $self = shift;
+
+ open my $addrf, '<', "/sys/class/net/$self->{name}/address"
+ or return;
+ my $address = <$addrf>;
+ close $addrf;
+
+ chomp $address if $address;
+ return $address;
+}
+
sub is_broadcast {
my $self = shift;
return $self->flags() & IFF_BROADCAST;
diff --git a/scripts/vyatta-cfg-cmd-wrapper b/scripts/vyatta-cfg-cmd-wrapper
index 8a73d17..53a3fcc 100755
--- a/scripts/vyatta-cfg-cmd-wrapper
+++ b/scripts/vyatta-cfg-cmd-wrapper
@@ -157,18 +157,28 @@ case "$1" in
/opt/vyatta/sbin/vyatta-load-config.pl "${@:2}"
RET_STATUS=$?
;;
- firewall-rule-rename)
- # this option is to be used for renaming firewall rules only
- # usage for this option specified on the next line -
- # firewall-rule-rename $firewall_ruleset rule $rule_num to rule $rename_rulenum
+ rule-rename)
+ # this option is to be used for renaming firewall and nat rules only
+ # usage for this option specified on the next two lines -
+ # rule-rename firewall $firewall_ruleset rule $rule_num to rule $rename_rulenum
+ # rule-rename nat rule $rule_num to rule $rename_rulenum
- VYATTA_TEMPLATE_LEVEL=/firewall/name/node.tag;
- VYATTA_EDIT_LEVEL="/firewall/name/$2";
+ if [ "$2" == "firewall" ]; then
+ VYATTA_TEMPLATE_LEVEL=/firewall/name/node.tag;
+ VYATTA_EDIT_LEVEL="/firewall/name/$3";
+ elif [ "$2" == "nat" ]; then
+ VYATTA_TEMPLATE_LEVEL=/service/nat;
+ VYATTA_EDIT_LEVEL=/service/nat;
+ fi
_mpath=${VYATTA_TEMP_CONFIG_DIR}/${VYATTA_EDIT_LEVEL}
_tpath=${VYATTA_CONFIG_TEMPLATE}/${VYATTA_TEMPLATE_LEVEL}
VYATTA_EDIT_LEVEL="${_mpath#$VYATTA_TEMP_CONFIG_DIR}/"
VYATTA_TEMPLATE_LEVEL="${_tpath#$VYATTA_CONFIG_TEMPLATE}/"
- mvcp rename Rename mv "${@:3}"
+ if [ $2 == "firewall" ]; then
+ mvcp rename Rename mv "${@:4}"
+ elif [ $2 == "nat" ]; then
+ mvcp rename Rename mv "${@:3}"
+ fi
RET_STATUS=$?
;;
*)
diff --git a/scripts/vyatta-cli-expand-var.pl b/scripts/vyatta-cli-expand-var.pl
index f690f0b..f3bda2d 100755
--- a/scripts/vyatta-cli-expand-var.pl
+++ b/scripts/vyatta-cli-expand-var.pl
@@ -34,7 +34,7 @@ $_ = $ARGV[0];
# basic format check:
# '(' ')' not allowed in reference.
# only allow absolute path for now.
-if (!/^\$\(\/([^()]+)\)$/) {
+if (!/^\$VAR\(\/([^()]+)\)$/) {
print STDERR "invalid variable reference (invalid format)\n";
exit 1;
}
diff --git a/scripts/vyatta-load-config.pl b/scripts/vyatta-load-config.pl
index a3cf6ef..f0dbaf1 100755
--- a/scripts/vyatta-load-config.pl
+++ b/scripts/vyatta-load-config.pl
@@ -175,7 +175,7 @@ syslog( "warning", "Load config [$orig_load_file] by $login" );
# do config migration
system("$sbindir/vyatta_config_migrate.pl $load_file");
-print "Loading config file $load_file...\n";
+print "Loading configuration from '$load_file'...\n";
my %cfg_hier = Vyatta::ConfigLoad::loadConfigHierarchy($load_file,$merge);
if ( scalar( keys %cfg_hier ) == 0 ) {
print "The specified file does not contain any configuration.\n";
diff --git a/templates/priority b/templates/priority
index c1507b3..9ee1fe9 100644
--- a/templates/priority
+++ b/templates/priority
@@ -85,7 +85,12 @@
# "active config" tree at the time the lower-level node is committed.
#
-200 firewall/group
+200 firewall/group/port-group
+200 firewall/group/port-group/node.tag/port
+200 firewall/group/address-group
+200 firewall/group/address-group/node.tag/address
+200 firewall/group/network-group
+200 firewall/group/network-group/node.tag/network
210 firewall/name/node.tag
210 firewall/modify/node.tag
210 firewall/ipv6-name/node.tag