#117 should be fixed now
This commit is contained in:
parent
83800ccd13
commit
f035c635fc
|
@ -244,12 +244,14 @@ sub regRemoteIp {
|
|||
# @param $h Name of the header
|
||||
# @param $v Value of the header
|
||||
sub lmSetHeaderIn {
|
||||
my ( $r, $h, $v ) = splice @_;
|
||||
my ( $r, %hdr ) = splice @_;
|
||||
while ( my ( $h, $v ) = each %hdr ) {
|
||||
if ( MP() == 2 ) {
|
||||
return $r->headers_in->set( $h => $v );
|
||||
$r->headers_in->set( $h => $v );
|
||||
}
|
||||
elsif ( MP() == 1 ) {
|
||||
return $r->header_in( $h => $v );
|
||||
$r->header_in( $h => $v );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -344,11 +346,10 @@ sub safe {
|
|||
}";
|
||||
$class->lmLog( $@, 'error' ) if ($@);
|
||||
}
|
||||
$safe->share_from( 'main', [ '%ENV', 'APR::Table::set' ] );
|
||||
$safe->share_from( 'main', [ '%ENV' ] );
|
||||
$safe->share_from( 'Lemonldap::NG::Common::Safelib',
|
||||
$Lemonldap::NG::Common::Safelib::functions );
|
||||
$safe->share( '&encode_base64', '$datas', '&lmSetHeaderIn',
|
||||
'$apacheRequest', '&portal', @t );
|
||||
$safe->share( '&encode_base64', '$datas', '&portal', @t );
|
||||
|
||||
return $safe;
|
||||
}
|
||||
|
@ -1210,14 +1211,12 @@ sub forgeHeadersInit {
|
|||
|
||||
my $sub;
|
||||
foreach ( keys %tmp ) {
|
||||
$sub .=
|
||||
"lmSetHeaderIn(\$apacheRequest,'$_' => join('',split(/[\\r\\n]+/,"
|
||||
. $tmp{$_} . ")));";
|
||||
$sub .= "'$_' => join('',split(/[\\r\\n]+/,$tmp{$_})),";
|
||||
}
|
||||
$forgeHeaders = (
|
||||
SAFEWRAP
|
||||
? $class->safe->wrap_code_ref( $class->safe->reval("sub{$sub}") )
|
||||
: $class->safe->reval("sub{$sub}")
|
||||
: $class->safe->reval("sub{return($sub)}")
|
||||
);
|
||||
$class->lmLog( "$class: Unable to forge headers: $@: sub {$sub}", 'error' )
|
||||
if ($@);
|
||||
|
@ -1254,7 +1253,7 @@ qq{<html><body onload="document.getElementById('f').submit()"><form id="f" metho
|
|||
## @rmethod protected void sendHeaders()
|
||||
# Launch function compiled by forgeHeadersInit()
|
||||
sub sendHeaders {
|
||||
&$forgeHeaders;
|
||||
lmSetHeaderIn( $apacheRequest, &$forgeHeaders );
|
||||
}
|
||||
|
||||
## @rmethod protected boolean isProtected()
|
||||
|
|
|
@ -102,15 +102,13 @@ sub forgeHeadersInit {
|
|||
|
||||
my $sub;
|
||||
foreach ( keys %tmp ) {
|
||||
$sub .=
|
||||
"lmSetHeaderIn(\$apacheRequest,'$_' => join('',split(/[\\r\\n]+/,"
|
||||
. $tmp{$_} . ")));";
|
||||
$sub .= "'$_' => join('',split(/[\\r\\n]+/,$tmp{$_})),";
|
||||
}
|
||||
|
||||
$forgeHeaders->{$vhost} = (
|
||||
SAFEWRAP
|
||||
? $class->safe->wrap_code_ref( $class->safe->reval("sub {$sub}") )
|
||||
: $class->safe->reval("sub {$sub}")
|
||||
: $class->safe->reval("sub {return($sub)}")
|
||||
);
|
||||
$class->lmLog( "$class: Unable to forge headers: $@: sub {$sub}",
|
||||
'error' )
|
||||
|
@ -126,10 +124,7 @@ sub sendHeaders {
|
|||
my $vhost;
|
||||
$vhost = $apacheRequest->hostname;
|
||||
if ( defined( $forgeHeaders->{$vhost} ) ) {
|
||||
&{ $forgeHeaders->{$vhost} };
|
||||
}
|
||||
else {
|
||||
lmSetHeaderIn( $apacheRequest, 'Auth-User' => $datas->{uid} );
|
||||
lmSetHeaderIn( $apacheRequest, &{ $forgeHeaders->{$vhost} } );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -271,7 +266,6 @@ it under the same terms as Perl itself, either Perl version 5.10.0 or,
|
|||
at your option, any later version of Perl 5 you may have available.
|
||||
|
||||
=cut
|
||||
|
||||
## @imethod protected void postUrlInit()
|
||||
# Prepare methods to post form attributes
|
||||
sub postUrlInit {
|
||||
|
|
Loading…
Reference in New Issue
Block a user