2010-12-08 07:04:57 +01:00
|
|
|
## @file
|
|
|
|
# Slave userDB mechanism
|
|
|
|
|
|
|
|
## @class
|
|
|
|
# Slave userDB mechanism class
|
|
|
|
package Lemonldap::NG::Portal::UserDBSlave;
|
|
|
|
|
|
|
|
use strict;
|
2012-02-13 18:35:44 +01:00
|
|
|
use Lemonldap::NG::Portal::_Slave;
|
2010-12-08 07:04:57 +01:00
|
|
|
use Lemonldap::NG::Portal::Simple;
|
|
|
|
use Lemonldap::NG::Portal::UserDBNull;
|
|
|
|
|
2014-02-18 17:52:31 +01:00
|
|
|
our $VERSION = '1.4.0';
|
2010-12-08 07:04:57 +01:00
|
|
|
our @ISA = qw(Lemonldap::NG::Portal::UserDBNull);
|
|
|
|
|
|
|
|
## @apmethod int setSessionInfo()
|
|
|
|
# Search exportedVars values in HTTP headers.
|
|
|
|
# @return Lemonldap::NG::Portal constant
|
|
|
|
sub setSessionInfo {
|
|
|
|
my $self = shift;
|
2011-07-01 11:40:45 +02:00
|
|
|
|
2012-02-13 18:35:44 +01:00
|
|
|
return PE_FORBIDDENIP
|
|
|
|
unless ( $self->checkIP );
|
|
|
|
|
2014-02-19 15:35:59 +01:00
|
|
|
my %vars = ( %{ $self->{exportedVars} }, %{ $self->{slaveExportedVars} } );
|
|
|
|
while ( my ( $k, $v ) = each %vars ) {
|
2010-12-08 07:04:57 +01:00
|
|
|
$v = 'HTTP_' . uc($v);
|
|
|
|
$v =~ s/\-/_/g;
|
2011-07-01 11:40:45 +02:00
|
|
|
$self->{sessionInfo}->{$k} = $ENV{$v};
|
2010-12-08 07:04:57 +01:00
|
|
|
}
|
2011-07-01 11:40:45 +02:00
|
|
|
|
|
|
|
return PE_OK;
|
2010-12-08 07:04:57 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
1;
|
|
|
|
|