[LON-CAPA-cvs] cvs: loncom(version_1_1_1_s17) /auth loncacc.pm
albertel
lon-capa-cvs@mail.lon-capa.org
Tue, 27 Jan 2004 23:06:22 -0000
albertel Tue Jan 27 18:06:22 2004 EDT
Modified files: (Branch: version_1_1_1_s17)
/loncom/auth loncacc.pm
Log:
- backport 1.33 to 1.1.1 for installation on s17
Index: loncom/auth/loncacc.pm
diff -u loncom/auth/loncacc.pm:1.31 loncom/auth/loncacc.pm:1.31.2.1
--- loncom/auth/loncacc.pm:1.31 Sat Sep 20 13:44:22 2003
+++ loncom/auth/loncacc.pm Tue Jan 27 18:06:22 2004
@@ -2,7 +2,7 @@
# Cookie Based Access Handler for Construction Area
# (lonacc: 5/21/99,5/22,5/29,5/31 Gerd Kortemeyer)
#
-# $Id: loncacc.pm,v 1.31 2003/09/20 17:44:22 www Exp $
+# $Id: loncacc.pm,v 1.31.2.1 2004/01/27 23:06:22 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -43,6 +43,8 @@
use CGI::Cookie();
use Fcntl qw(:flock);
use Apache::lonlocal;
+use Apache::lonnet();
+
sub constructaccess {
my ($url,$ownerdomain)=@_;
@@ -50,17 +52,24 @@
unless (($ownername) && ($ownerdomain)) { return ''; }
# We do not allow editing of previous versions of files.
if ($url=~/\.(\d+)\.(\w+)$/) { return ''; }
- if (($ownername eq $ENV{'user.name'}) &&
- ($ownerdomain eq $ENV{'user.domain'})) {
- return ($ownername,$ownerdomain);
+ my @possibledomains = &Apache::lonnet::current_machine_domains();
+ &Apache::lonnet::logthis("got domains of ".join(':',@possibledomains));
+ if ($ownername eq $ENV{'user.name'}) {
+ foreach my $domain (@possibledomains) {
+ if ($domain eq $ENV{'user.domain'}) {
+ return ($ownername,$domain);
+ }
+ }
}
+
- my $capriv='user.priv.ca./'.
- $ownerdomain.'/'.$ownername.'./';
- foreach (keys %ENV) {
- if ($_ eq $capriv) {
- return ($ownername,$ownerdomain);
- }
+ foreach my $domain (@possibledomains) {
+ my $capriv='user.priv.ca./'.$domain.'/'.$ownername.'./';
+ foreach (keys %ENV) {
+ if ($_ eq $capriv) {
+ return ($ownername,$domain);
+ }
+ }
}
return '';
}