summaryrefslogtreecommitdiff
path: root/scripts/system
diff options
context:
space:
mode:
authorStephen Hemminger <stephen.hemminger@vyatta.com>2009-06-02 14:22:15 -0700
committerAn-Cheng Huang <ancheng@vyatta.com>2009-07-17 14:30:20 -0700
commitba60053e94147f401efd298fe1bd4d38cf9f34f7 (patch)
tree0a52ff1572e9a8f7d6ff55c5297a719f60721726 /scripts/system
parent6859b8c8e408817161a1723a19396c880ae6e889 (diff)
downloadvyatta-cfg-quagga-ba60053e94147f401efd298fe1bd4d38cf9f34f7.tar.gz
vyatta-cfg-quagga-ba60053e94147f401efd298fe1bd4d38cf9f34f7.zip
Change API for login modules
The login modules aren't really objects (if Perl really had objects), so just use dynamic invoke of update routine. (cherry picked from commit 37ba59896d4c9ac5c914d1901d86ed7e7d844871)
Diffstat (limited to 'scripts/system')
-rw-r--r--scripts/system/vyatta_update_login.pl13
1 files changed, 5 insertions, 8 deletions
diff --git a/scripts/system/vyatta_update_login.pl b/scripts/system/vyatta_update_login.pl
index b854427b..94e88ed1 100644
--- a/scripts/system/vyatta_update_login.pl
+++ b/scripts/system/vyatta_update_login.pl
@@ -30,13 +30,10 @@ foreach my $type ($config->listNodes()) {
my $kind = ucfirst $type;
$kind =~ s/-server/Server/;
- my $location = "Vyatta/Login/$kind.pm";
- my $class = "Vyatta::Login::$kind";
-
- require $location;
+ # Dynamically load the module to handle that login method
+ require "Vyatta/Login/$kind.pm";
- my $obj = $class->new();
- die "Don't understand $type" unless $obj;
-
- $obj->update();
+ # Dynamically invoke update for this type
+ my $login = "Vyatta::Login::$kind";
+ $login->update();
}