2014-03-13 16:07:36 +01:00
|
|
|
package Lemonldap::NG::Handler::Main::Headers;
|
|
|
|
|
|
|
|
use strict;
|
|
|
|
|
2014-06-13 18:12:54 +02:00
|
|
|
use Lemonldap::NG::Handler::API qw( :webserverCodes ); # for importing MP function
|
2014-03-13 16:07:36 +01:00
|
|
|
use Lemonldap::NG::Handler::Main::Logger;
|
|
|
|
|
2014-05-23 17:21:10 +02:00
|
|
|
our $VERSION = '1.4.0';
|
2014-03-13 16:07:36 +01:00
|
|
|
|
|
|
|
|
|
|
|
## @rmethod void sendHeaders()
|
|
|
|
# Launch function compiled by forgeHeadersInit() for the current virtual host
|
|
|
|
sub sendHeaders {
|
2014-05-23 17:21:10 +02:00
|
|
|
my ( $class, $apacheRequest, $forgeHeaders ) = splice @_;
|
2014-06-09 19:09:48 +02:00
|
|
|
my $vhost = Lemonldap::NG::Handler::API->hostname($apacheRequest);
|
2014-03-13 16:07:36 +01:00
|
|
|
if ( defined( $forgeHeaders->{$vhost} ) ) {
|
2014-06-08 12:04:50 +02:00
|
|
|
Lemonldap::NG::Handler::API->set_header_in( $apacheRequest,
|
|
|
|
&{ $forgeHeaders->{$vhost} } );
|
2014-03-13 16:07:36 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
## @rmethod void cleanHeaders()
|
|
|
|
# Unset HTTP headers for the current virtual host, when sendHeaders is skipped
|
|
|
|
sub cleanHeaders {
|
2014-05-23 17:21:10 +02:00
|
|
|
my ( $class, $apacheRequest, $forgeHeaders, $headerList ) = splice @_;
|
2014-06-09 19:09:48 +02:00
|
|
|
my $vhost = Lemonldap::NG::Handler::API->hostname($apacheRequest);
|
2014-03-13 16:07:36 +01:00
|
|
|
if ( defined( $forgeHeaders->{$vhost} ) ) {
|
2014-06-08 12:04:50 +02:00
|
|
|
Lemonldap::NG::Handler::API->unset_header_in( $apacheRequest,
|
|
|
|
@{ $headerList->{$vhost} } );
|
2014-03-13 16:07:36 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
1;
|