in reply to User configured selection of modules
Not as dynamic, but you might want to setup a hash of method => coderef and have the implementation modules register therein.
package Wireless::Auth; our %methods; ... package Wireless::Auth::Wisc; sub Wisc { ... } $Wireless::Auth::methods{ 'Wisc' } => \&Wisc; 1;
You could also wrap things up with a registerMethod routine rather than mucking with the hash directly. This way you can also use exists $methods{ $auth_type } to check what's been configured before calling $methods{ $auth_type }->( $user, $pass ) (warning for unknown methods and using a sub which always denies authorization).
|
|---|