chiark / gitweb /
mason diversion etc.
[nj-awaymsg.git] / mason / autohandler
1 <%once>
2 use CGI::Auth::Flexible;
3
4 sub do_redirect_mason ($$$$) {
5     my ($c, $ar, $new_url, $cookie) = @_;
6     $m->auto_send_headers(0);
7     CGI::Auth::Flexible::do_redirect_cgi($c,$ar,$new_url,$cookie);
8 }
9
10 my $verifier = CGI::Auth::Flexible->new_verifier(
11     dir => "$ENV{'NJAWAYMSG'}/data",
12 #    do_redirect => \&do_redirect_mason,
13     handle_divert => sub { $m->auto_send_headers(0); return 0; },
14 #    print => sub { my ($c,$ar,@t) = @_; $m->print(@t); },
15     encrypted_only => 0,
16     );
17 </%once>
18 <%perl>
19 my $cgi = $m->cgi_object();
20 my $ar = $verifier->new_request($cgi);
21 if ($ar->check_ok()) {
22    $m->call_next();   
23 }
24 </%perl>