summaryrefslogtreecommitdiff
path: root/scripts/vyatta-tunnel-cleanup
diff options
context:
space:
mode:
authorStephen Hemminger <stephen.hemminger@vyatta.com>2011-05-25 17:29:54 -0700
committerStephen Hemminger <stephen.hemminger@vyatta.com>2011-05-25 17:29:54 -0700
commitd61ce5aa1c7b2a8e9d77d2a3e34f9b996ed6a6fb (patch)
treef1583aa63a0929532e8f120d40d1b167feffc797 /scripts/vyatta-tunnel-cleanup
parent31f3d30599b976bfd033b7c69b2aa1394541d879 (diff)
parent29e419548be1390824eb8e0bf29c57a00c444359 (diff)
downloadvyatta-cfg-quagga-d61ce5aa1c7b2a8e9d77d2a3e34f9b996ed6a6fb.tar.gz
vyatta-cfg-quagga-d61ce5aa1c7b2a8e9d77d2a3e34f9b996ed6a6fb.zip
Merge branch 'napa' of suva.vyatta.com:/git/vyatta-cfg-system into napa
Diffstat (limited to 'scripts/vyatta-tunnel-cleanup')
-rwxr-xr-xscripts/vyatta-tunnel-cleanup8
1 files changed, 6 insertions, 2 deletions
diff --git a/scripts/vyatta-tunnel-cleanup b/scripts/vyatta-tunnel-cleanup
index 6094818c..979fb7bd 100755
--- a/scripts/vyatta-tunnel-cleanup
+++ b/scripts/vyatta-tunnel-cleanup
@@ -15,13 +15,17 @@ my %encapsulation = (
'sit' => 'sit',
);
+# interface being deleted
+my $interface = $ARGV[0];
+
# Create map of encapsulations still in use
my $config = new Vyatta::Config;
$config->setLevel("interfaces tunnel");
my %tunnel;
-foreach my $tun ( $config->listNodes() ) {
- my $mode = $config->returnValue("$tun encapsulation");
+foreach my $tun ( $config->listEffectiveNodes() ) {
+ my $mode = $config->returnEffectiveValue("$tun encapsulation");
+ next if ($interface eq $tun); # don't count the one being deleted
$tunnel{$mode} = 1;
}