summaryrefslogtreecommitdiff
path: root/scripts/system/vyatta_update_login.pl
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/vyatta_update_login.pl
parent6859b8c8e408817161a1723a19396c880ae6e889 (diff)
downloadvyatta-cfg-system-ba60053e94147f401efd298fe1bd4d38cf9f34f7.tar.gz
vyatta-cfg-system-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/vyatta_update_login.pl')
-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();
}