use Plack::Util::Accessor qw[
session_key
sid_generator
- sid_checker
+ sid_validator
];
sub new {
$params{'sid_generator'} ||= sub {
Digest::SHA1::sha1_hex(rand() . $$ . {} . time)
};
- $params{'sid_checker'} ||= qr/\A[0-9a-f]{40}\Z/;
+ $params{'sid_validator'} ||= qr/\A[0-9a-f]{40}\Z/;
bless { %params } => $class;
}
return $id;
}
-sub check_request_session_id {
+sub validate_request_session_id {
my ($self, $request) = @_;
my $reqest_session_id = $self->get_request_session_id($request);
- my $sid_checker = $self->sid_checker;
+ my $sid_validator = $self->sid_validator;
- defined $reqest_session_id && $reqest_session_id =~ m{$sid_checker};
+ defined $reqest_session_id && $reqest_session_id =~ m{$sid_validator};
}
sub get_session_id {
my ($self, $request) = @_;
(
- $self->check_request_session_id($request)
+ $self->validate_request_session_id($request)
&&
$self->extract( $request )
)
it will generate a SHA1 using fairly sufficient entropy. If you are
concerned or interested, just read the source.
-=item B<sid_checker>
+=item B<sid_validator>
-This is a regex used to check requested session id,
+This is a regex used to validate requested session id,
=back
session. The C<$request> is expected to be a L<Plack::Request> instance
or an object with an equivalent interface.
+=item B<get_request_session_id ( $request )>
+
=item B<extract ( $request )>
This will attempt to extract the session from a C<$request> by looking