Diff for /loncom/lonnet/perl/lonnet.pm between versions 1.491 and 1.492

version 1.491, 2004/04/29 07:57:47 version 1.492, 2004/04/29 17:25:11
Line 1165  sub externalssi { Line 1165  sub externalssi {
     return $response->content;      return $response->content;
 }  }
   
 # ------- Add a token to a remote URI's query string to vouch for access rights  # -------------------------------- Allow a /uploaded/ URI to be vouched for
   
   sub allowuploaded {
       my ($srcurl,$url)=@_;
       $url=&clutter(&declutter($url));
       my $dir=$url;
       $dir=~s/\/[^\/]+$//;
       my %httpref=();
       my $httpurl=&hreflocation('',$url);
       $httpref{'httpref.'.$httpurl}=$srcurl;
       &Apache::lonnet::appenv(%httpref);
   }
   
 sub tokenwrapper {  sub tokenwrapper {
     my $uri=shift;      &FIXME_blow_up;
     $uri=~s/^http\:\/\/([^\/]+)//;  
     $uri=~s/^\///;  
     $ENV{'user.environment'}=~/\/([^\/]+)\.id/;  
     my $token=$1;  
 #    if ($uri=~/^uploaded\/([^\/]+)\/([^\/]+)\/([^\/]+)(\?\.*)*$/) {  
     if ($uri=~m|^uploaded/([^/]+)/([^/]+)/(.+)(\?\.*)*$|) {  
  &appenv('userfile.'.$1.'/'.$2.'/'.$3 => $ENV{'request.course.id'});  
         return 'http://'.$hostname{ &homeserver($2,$1)}.'/'.$uri.  
                (($uri=~/\?/)?'&':'?').'token='.$token.  
                                '&tokenissued='.$perlvar{'lonHostID'};  
     } else {  
  return '/adm/notfound.html';  
     }  
 }  }
   
 # --------- File operations in /home/httpd/html/userfiles/$domain/1/2/3/$course  # --------- File operations in /home/httpd/html/userfiles/$domain/1/2/3/$course
Line 2688  sub allowed { Line 2686  sub allowed {
   
 # URI is an uploaded document for this course  # URI is an uploaded document for this course
   
     if (($priv eq 'bre') &&       if (($priv eq 'bre') && ($uri=~m|^uploaded/|)) {
         ($uri=~/^uploaded\/$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}\/$ENV{'course.'.$ENV{'request.course.id'}.'.num'}/)) {   my $refuri=$ENV{'httpref.'.$orguri};
         return 'F';   if ($refuri) {
       if ($refuri =~ m|^/adm/|) {
    $thisallowed='F';
       }
    }
     }      }
   
 # Full access at system, domain or course-wide level? Exit.  # Full access at system, domain or course-wide level? Exit.
   
     if ($thisallowed=~/F/) {      if ($thisallowed=~/F/) {

Removed from v.1.491  
changed lines
  Added in v.1.492


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>