diff options
-rw-r--r-- | debian/changelog | 10 | ||||
-rwxr-xr-x | scripts/vyatta-save-config.pl | 21 |
2 files changed, 26 insertions, 5 deletions
diff --git a/debian/changelog b/debian/changelog index 98055e3..7ddcc58 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +vyatta-cfg (0.16.88) unstable; urgency=low + + [ An-Cheng Huang ] + * return false for invalid value instead of exiting + + [ Michael Larson ] + * add option to save w/o default values. + + -- Michael Larson <slioch@slioch.vyatta.com> Tue, 29 Jun 2010 10:47:37 -0700 + vyatta-cfg (0.16.87) unstable; urgency=low * fix for bug 5721 and 5722--actually these were duplicates. diff --git a/scripts/vyatta-save-config.pl b/scripts/vyatta-save-config.pl index 9a95906..cebdf96 100755 --- a/scripts/vyatta-save-config.pl +++ b/scripts/vyatta-save-config.pl @@ -29,16 +29,27 @@ my $bootpath = $etcdir . "/config"; my $save_file = $bootpath . "/config.boot"; my $url_tmp_file = $bootpath . "/config.boot.$$"; - -if ($#ARGV > 0) { - print "Usage: save [config_file_name]\n"; +my $set_show_opt = 1; +if ($#ARGV > 1) { + print "Usage: save [config_file_name] --no-defaults\n"; exit 1; } + if (defined($ARGV[0])) { - $save_file = $ARGV[0]; + if ($ARGV[0] ne '--no-defaults') { + $save_file = $ARGV[0]; + } + else { + $set_show_opt = 0; + } + + if (defined($ARGV[1]) && $ARGV[1] eq '--no-defaults') { + $set_show_opt = 0; + } } + my $mode = 'local'; my $proto; @@ -89,7 +100,7 @@ if ($mode eq 'local') { } select $save; -set_show_all(1); +set_show_all($set_show_opt); outputActiveConfig(); print $version_str; select STDOUT; |