Plugin Register does not work with Combination
Affected version
Version: %2.17.1
Platform: Any
Summary
Multiple bugs are encountered while trying to use Plugin Register with Combination.
- Authentication: Combination
- UserDB : Same
- Register : LDAP
- Combination: [MySlave, MyLDAP] or [MyLDAP, MyLDAP]
Logs
mod_fcgid: stderr: Can't use an undefined value as an ARRAY reference at /usr/share/perl5/Lemonldap/NG/Portal/Auth/Combination.pm line 216.
When fixing this bug, I have encoutered another one:
[notice] Combination (Lemonldap::NG::Portal::Lib::LDAP): user@domain.com was not found in LDAP directory (1.2.3.4)
[debug] [notice] Combination (Lemonldap::NG::Portal::Lib::LDAP): user@domain.com was not found in LDAP directory (1.2.3.4)
[debug] Can't locate object method "setSecurity" via package "Lemonldap::NG::Portal::Auth::Slave" at /usr/share/perl5/Lemonldap/NG/Common/Combination/Parser.pm line 144.
[info] Scheme "MyLDAP" returned 5, trying next
[error] Register: refuse mail user@domain.com because already exists in UserDB
[debug] [error] Register: refuse mail user@domain.com because already exists in UserDB
Backends used
configuration : file sessions : file
Possible fixes
Lemonldap/NG/Portal/Auth/Combination.pm
sub getStack {
...
if( $req->steps )
{
@{ $req->data->{combinationSteps} } = ( @steps, @{ $req->steps } );
}
else
{
@{ $req->data->{combinationSteps} } = ( @steps );
}