Diff for /loncom/interface/lonhelp.pm between versions 1.5 and 1.6

version 1.5, 2003/02/25 22:50:11 version 1.6, 2003/07/15 18:50:43
Line 132  sub handler Line 132  sub handler
      my $docroot = $r->dir_config('lonDocRoot');       my $docroot = $r->dir_config('lonDocRoot');
      my $serverroot = $ENV{'HTTP_HOST'};       my $serverroot = $ENV{'HTTP_HOST'};
   
      my $filename = substr ($ENV{'REQUEST_URI'} ,        my $filenames = substr ($ENV{'REQUEST_URI'} , 
     rindex($ENV{'REQUEST_URI'}, '/') + 1, -4);      rindex($ENV{'REQUEST_URI'}, '/') + 1, -4);
             
      # Security check on the file; the whole filename must consist       # Security check on the file; the whole filename must consist
      # of nothing but alphanums, ' ,, or ., or the file       # of nothing but alphanums, ' ,, or ., or the file
      # will be "not found", no matter what.       # will be "not found", no matter what.
             
      return HTTP_NOT_FOUND if ($filename !~ /\A[-0-9a-zA-z_'',.]+\Z/);       return HTTP_NOT_FOUND if ($filenames !~ /\A[-0-9a-zA-z_'',.]+\Z/);
   
      (my $file = Apache::File->new($docroot . "/adm/help/tex/".$filename.'.tex'))       # Join together the tex files, return HTTP_NOT_FOUND if any of
  or return HTTP_NOT_FOUND;       # them are not found
        my $tex = '';
        my @files = split(/,/, $filenames);
        
        for my $filename (@files) {
    (my $file = Apache::File->new($docroot
      . '/adm/help/tex/'.$filename.'.tex'))
        or return HTTP_NOT_FOUND;
    $tex .= join('', <$file>);
        }
   
      # get me my environment if it exists       # get me my environment if it exists
      &Apache::lonacc::handler($r);       &Apache::lonacc::handler($r);
Line 165  sub handler Line 174  sub handler
  }   }
      }       }
   
      my $tex = join('', <$file>);  
      $tex = render($tex, $docroot, $serverroot);       $tex = render($tex, $docroot, $serverroot);
      serveTex($tex, $r);       serveTex($tex, $r);
   

Removed from v.1.5  
changed lines
  Added in v.1.6


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