Diff for /loncom/auth/lonacc.pm between versions 1.85 and 1.86

version 1.85, 2006/07/10 03:58:45 version 1.86, 2006/07/14 21:38:26
Line 35  use Apache::File; Line 35  use Apache::File;
 use Apache::lonnet;  use Apache::lonnet;
 use Apache::loncommon();  use Apache::loncommon();
 use Apache::lonlocal;  use Apache::lonlocal;
   use Apache::restrictedaccess();
 use CGI::Cookie();  use CGI::Cookie();
 use Fcntl qw(:flock);  use Fcntl qw(:flock);
 use LONCAPA;  use LONCAPA;
Line 292  sub passphrase_access_checker { Line 293  sub passphrase_access_checker {
             }              }
         }          }
     }      }
     my $login = $r->dir_config('Login');      $r->set_handlers('PerlHandler'=> \&Apache::restrictedaccess::handler);
     $login .= '?origurl='.&escape($requrl);      $r->content_type('perl-script');
     $r->custom_response(FORBIDDEN,$login);  
     return;      return;
 }  }
   
Line 389  sub handler { Line 389  sub handler {
                 if ($result eq 'ok') {                  if ($result eq 'ok') {
                     return OK;                      return OK;
                 } elsif ($result =~ /^[^:]+:guest_/) {                  } elsif ($result =~ /^[^:]+:guest_/) {
                     if (&passphrase_access_checker($r,$result,$requrl) eq 'ok') {                      &passphrase_access_checker($r,$result,$requrl);
                         return OK;      return OK;
                     } else {  
                         return FORBIDDEN;  
                     }   
                 }                  }
             } elsif ($requrl =~ m|/+uploaded/([^/]+)/([^/]+)/groups/([^/]+)/portfolio/(.+)$|) {              } elsif ($requrl =~ m|/+uploaded/([^/]+)/([^/]+)/groups/([^/]+)/portfolio/(.+)$|) {
                 my $result = &portfolio_access($1,$2,$3.'/'.$4,$3);                  my $result = &portfolio_access($1,$2,$3.'/'.$4,$3);
                 if ($result eq 'ok') {                  if ($result eq 'ok') {
                     return OK;                      return OK;
                 } elsif ($result =~ /^[^:]+:guest_/) {                  } elsif ($result =~ /^[^:]+:guest_/) {
                     if (&passphrase_access_checker($r,$result,$requrl) eq 'ok') {                      &passphrase_access_checker($r,$result,$requrl);
                         return OK;      return OK;
                     } else {  
                         return FORBIDDEN;  
                     }  
                 }                  }
             }              }
             if ($requrl!~/^\/adm|public|prtspool\//) {              if ($requrl!~/^\/adm|public|prtspool\//) {
Line 525  sub handler { Line 519  sub handler {
         if ($result eq 'ok') {          if ($result eq 'ok') {
             return OK;              return OK;
         } elsif ($result =~ /^[^:]+:guest_/) {          } elsif ($result =~ /^[^:]+:guest_/) {
             if (&passphrase_access_checker($r,$result,$requrl) eq 'ok') {              &passphrase_access_checker($r,$result,$requrl);
                 return OK;      return OK;
             } else {  
                 return FORBIDDEN;  
             }  
         }          }
     } elsif ($requrl =~ m|/+uploaded/([^/]+)/([^/]+)/groups/([^/]+)/portfolio/(.+)$|) {      } elsif ($requrl =~ m|/+uploaded/([^/]+)/([^/]+)/groups/([^/]+)/portfolio/(.+)$|) {
         my $result = &portfolio_access($1,$2,$3.'/'.$4,$3);          my $result = &portfolio_access($1,$2,$3.'/'.$4,$3);
         if ($result eq 'ok') {          if ($result eq 'ok') {
             return OK;              return OK;
         } elsif ($result =~ /^[^:]+:guest_/) {          } elsif ($result =~ /^[^:]+:guest_/) {
             if (&passphrase_access_checker($r,$result,$requrl) eq 'ok') {              &passphrase_access_checker($r,$result,$requrl);
                 return OK;      return OK;
             } else {   }
                 return FORBIDDEN;  
             }  
         }  
     }      }
 # -------------------------------------------------------------- Not authorized  # -------------------------------------------------------------- Not authorized
     $requrl=~/\.(\w+)$/;      $requrl=~/\.(\w+)$/;

Removed from v.1.85  
changed lines
  Added in v.1.86


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