/usr/share/perl5/Jifty/Plugin/Authentication/CAS/Dispatcher.pm is in libjifty-plugin-authentication-cas-perl 1.00-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | use strict;
use warnings;
package Jifty::Plugin::Authentication::CAS::Dispatcher;
use Jifty::Dispatcher -base;
# whitelist safe actions to avoid cross-site scripting
before '*' => run { Jifty->api->allow('CASLogout') };
# Put any plugin-specific dispatcher rules here.
before '/caslogin' => run {
if (get('ticket')) {
# verify ticket
set 'action' =>
Jifty->web->new_action(
class => 'CASLogin',
moniker => 'casloginbox',
arguments => { ticket => get('ticket') },
);
};
set 'next' => Jifty->web->request->continuation
|| Jifty::Continuation->new(
request => Jifty::Request->new( path => "/" ) );
};
on '/caslogin' => run {
Jifty->web->new_action(
moniker => 'casloginbox',
class => 'CASLogin',
arguments => { ticket => get('ticket') }
)->run;
if(Jifty->web->request->continuation) {
Jifty->web->request->continuation->call;
} else {
redirect '/';
}
};
# Log out
before '/caslogout' => run {
Jifty->web->request->add_action(
class => 'CASLogout',
moniker => 'caslogout',
);
};
on '/caslogout' => run {
redirect '/';
};
1;
|