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