--- loncom/auth/loncacc.pm 2001/12/21 16:57:54 1.18 +++ loncom/auth/loncacc.pm 2002/01/04 14:57:14 1.19 @@ -1,39 +1,9 @@ # The LearningOnline Network # Cookie Based Access Handler for Construction Area # (lonacc: 5/21/99,5/22,5/29,5/31 Gerd Kortemeyer) -# -# $Id: loncacc.pm,v 1.18 2001/12/21 16:57:54 harris41 Exp $ -# -# Copyright Michigan State University Board of Trustees -# -# This file is part of the LearningOnline Network with CAPA (LON-CAPA). -# -# LON-CAPA is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# LON-CAPA is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with LON-CAPA; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# /home/httpd/html/adm/gpl.txt -# -# http://www.lon-capa.org/ -# -# YEAR=2000 # 6/15,16/11,22/11, -# YEAR=2001 # 01/06,01/11,6/1,9/25,9/28,11/22,12/25,12/26, # 01/06/01,05/04,05/05,05/09 Gerd Kortemeyer -# 12/21 Scott Harrison -# -### package Apache::loncacc; @@ -56,11 +26,11 @@ sub constructaccess { my $capriv='user.priv.ca./'. $ownerdomain.'/'.$ownername.'./'. $ownerdomain.'/'.$ownername; - foreach (keys %ENV) { + map { if ($_ eq $capriv) { return ($ownername,$ownerdomain); } - } + } keys %ENV; return ''; } @@ -162,6 +132,7 @@ sub handler { } } } + $ENV{'request.method'}=$ENV{'REQUEST_METHOD'}; $r->method_number(M_GET); $r->method('GET'); $r->headers_in->unset('Content-length'); @@ -181,61 +152,6 @@ sub handler { 1; __END__ -=head1 NAME - -Apache::lonacc - Cookie Based Access Handler for Construction Area - -=head1 SYNOPSIS - -Invoked (for various locations) by /etc/httpd/conf/srm.conf: - - PerlAccessHandler Apache::loncacc - -=head1 INTRODUCTION - -This module enables cookie based authentication for construction area -and is used to control access for three (essentially equivalent) URIs. - - - - - -Whenever the client sends the cookie back to the server, -if the cookie is missing or invalid, the user is re-challenged -for login information. - -This is part of the LearningOnline Network with CAPA project -described at http://www.lon-capa.org. - -=head1 HANDLER SUBROUTINE - -This routine is called by Apache and mod_perl. - -=over 4 - -=item * - -load POST parameters - -=item * - -store where they wanted to go (first url entered) - -=back - -=head1 OTHERSUBROUTINES - -=over 4 - -=item * - -constructaccess($url,$ownerdomain) : See if the owner domain and name -in the URL match those in the expected environment. If so, return -two element list ($ownername,$ownerdomain). Else, return null string. - -=back - -=cut