summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/node-exists.pl47
-rwxr-xr-xscripts/vyatta-remote-copy.pl68
2 files changed, 115 insertions, 0 deletions
diff --git a/scripts/node-exists.pl b/scripts/node-exists.pl
new file mode 100755
index 0000000..8a77ea3
--- /dev/null
+++ b/scripts/node-exists.pl
@@ -0,0 +1,47 @@
+#!/usr/bin/perl -W
+
+
+# **** License ****
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# This code was originally developed by Vyatta, Inc.
+# Portions created by Vyatta are Copyright (C) 2007 Vyatta, Inc.
+# All Rights Reserved.
+#
+# Author: Deepti Kulkarni
+# Date: May 2010
+# Description: Script to check if the node exists in the configuration
+#
+# **** End License ****
+
+use strict;
+use warnings;
+use lib "/opt/vyatta/share/perl5";
+use Vyatta::Config;
+use Vyatta::ConfigOutput;
+my $config = new Vyatta::Config;
+
+if ($ARGV[0])
+ {
+ my $node = $ARGV[0];
+ my $level = $ARGV[1];
+ my $i=2;
+ while ($ARGV[$i])
+ {
+ my $sublevel = $ARGV[$i];
+ $level = $level . " " . $sublevel;
+ $i++;
+ }
+
+ $config->setLevel($level);
+ if ($config->existsOrig($node))
+ { exit 0; }
+ else { exit 1; }
+ }
diff --git a/scripts/vyatta-remote-copy.pl b/scripts/vyatta-remote-copy.pl
new file mode 100755
index 0000000..93507ad
--- /dev/null
+++ b/scripts/vyatta-remote-copy.pl
@@ -0,0 +1,68 @@
+#!/usr/bin/perl
+
+# Author: Deepti Kulkarni
+# Date: May 2010
+# Description: script to save file remotely.
+
+# **** License ****
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# This code was originally developed by Vyatta, Inc.
+# Portions created by Vyatta are Copyright (C) 2006, 2007, 2008 Vyatta, Inc.
+# All Rights Reserved.
+# **** End License ****
+
+use strict;
+use lib "/opt/vyatta/share/perl5";
+
+my $save_file;
+
+if (defined($ARGV[0])) {
+ $save_file = $ARGV[0];
+}
+my $tmp_file = $ARGV[1];
+my $flag = $ARGV[2];
+
+my $mode = 'local';
+my $proto;
+
+if ($save_file =~ /^[^\/]\w+:\//) {
+
+if ($save_file =~ /^(\w+):\/\/\w/) {
+ $mode = 'url';
+ $proto = lc($1);
+ if ($proto eq 'ftp') {
+ }
+ elsif ($proto eq 'scp') {
+ } else {
+ print "Invalid url protocol [$proto]\n";
+ exit 1;
+ }
+ } else {
+ print "Invalid url [$save_file]\n";
+ exit 1;
+ }
+}
+if ($flag == 0)
+{
+ $save_file=$save_file . ".gz"
+}
+if ($mode eq 'url') {
+ print "Saving output to $save_file\n";
+ my $rc = system("curl -# -T $tmp_file $save_file");
+ system("rm -f $tmp_file");
+ if ($rc) {
+ print "Error saving $save_file\n";
+ exit 1;
+ }
+}
+
+print "Done\n";
+exit 0;