File Coverage

blib/lib/Plack/Middleware/Apache2/ModSSL.pm
Criterion Covered Total %
statement 10 12 83.3
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 14 16 87.5


line stmt bran cond sub pod time code
1             package Plack::Middleware::Apache2::ModSSL;
2              
3 1     1   21352 use 5.010;
  1         4  
  1         41  
4 1     1   6 use strict;
  1         2  
  1         43  
5              
6 1     1   5 use base qw(Plack::Middleware);
  1         6  
  1         856  
7 1     1   19336 use Apache2::ModSSL;
  0            
  0            
8             use Plack::Util::Accessor qw(vars client_exts server_exts);
9              
10             BEGIN {
11             $Plack::Middleware::Apache2::ModSSL::AUTHORITY = 'cpan:TOBYINK';
12             $Plack::Middleware::Apache2::ModSSL::VERSION = '0.002';
13             }
14              
15             sub call
16             {
17             my ($self, $env) = @_;
18             my $c = $env->{'psgi.input'}->connection;
19            
20             $env->{$_} //= $c->ssl_var_lookup($_)
21             for @{ $self->vars // [] };
22            
23             $env->{"SERVER:$_"} //= $c->ssl_ext_lookup(0, $_)
24             for @{ $self->server_exts // [] };
25            
26             $env->{"CLIENT:$_"} //= $c->ssl_ext_lookup(1, $_)
27             for @{ $self->client_exts // [] };
28            
29             $self->app->($env);
30             }
31              
32             __PACKAGE__
33             __END__