Diff for /loncom/auth/lonracc.pm between versions 1.17 and 1.18

version 1.17, 2005/04/07 06:56:21 version 1.18, 2007/02/01 06:20:34
Line 36  use IO::Socket; Line 36  use IO::Socket;
   
 sub subscribed {  sub subscribed {
     my ($filename,$id) = @_;      my ($filename,$id) = @_;
     my $found=0;  
       return 0 if (-e "$filename.subscription");
   
     my $hostname=$Apache::lonnet::hostname{$id};      my $hostname=$Apache::lonnet::hostname{$id};
     my (undef,undef,undef,undef,$ip) = gethostbyname($hostname);      my (undef,undef,undef,undef,$ip) = gethostbyname($hostname);
       
       return 0 if (length($ip) != 4);
   
     $ip=inet_ntoa($ip);      $ip=inet_ntoa($ip);
     my $expr='^'.$id.':'.$ip.':';  
     $expr =~ s/\./\\\./g;      my $expr='^'.quotemeta($id).':'.quotemeta($ip).':';
     my $sh;  
     if ($sh=Apache::File->new("$filename.subscription")) {      my $found=0;
       if (my $sh=Apache::File->new("$filename.subscription")) {
  while (my $subline=<$sh>) { if ($subline =~ /$expr/) { $found=1; } }   while (my $subline=<$sh>) { if ($subline =~ /$expr/) { $found=1; } }
  $sh->close();   $sh->close();
     }      }
Line 64  sub handler { Line 70  sub handler {
  return OK;   return OK;
     }      }
     my $return;      my $return;
     my @ids=();      my @ids;
     my $id;  
   
     foreach $id (@{$hostids}) {      foreach my $id (@{$hostids}) {
  my $filename=$r->filename;   my $filename=$r->filename;
  my $uri =$r->uri;   my $uri =$r->uri;
  if ((-e "$filename.$id") ||   if (($filename=~/\.meta$/) ||
     &subscribed($filename,$id) ||      ($uri=~m|^/raw/uploaded|) ||
     ($filename=~/\.meta$/) ||      (-e "$filename.$id") ||
     ($uri=~m|^/raw/uploaded|)) {      &subscribed($filename,$id) ) {
     return OK;      return OK;
  } else {   } else {
     $return=FORBIDDEN;      $return=FORBIDDEN;

Removed from v.1.17  
changed lines
  Added in v.1.18


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