Diff for /loncom/cgi/decompress.pl between versions 1.15 and 1.16

version 1.15, 2005/11/03 20:36:58 version 1.16, 2006/05/05 21:07:19
Line 33  use strict; Line 33  use strict;
 use lib '/home/httpd/lib/perl';  use lib '/home/httpd/lib/perl';
 use LONCAPA::loncgi;  use LONCAPA::loncgi;
   
 if(! &LONCAPA::loncgi::check_cookie_and_load_env()) {  my %location_of;
     print "Content-type: text/html\n\n";  foreach my $program ('tar','gunzip','bunzip2','unzip') {
     print <<END;      foreach my $dir ('/bin/','/usr/bin/','/usr/local/bin/','/sbin/',
        '/usr/sbin/') {
    if (-x $dir.$program) {
       $location_of{$program} = $dir.$program;
    }
       }
   }
   
   if (!&LONCAPA::loncgi::check_cookie_and_load_env()) {
       print("Content-type: text/html\n\n");
       print(<<END);
     <html><body>NO COOKIE!</body></html>      <html><body>NO COOKIE!</body></html>
 END  END
 } else {  } else {
Line 53  END Line 63  END
         chdir($dir);          chdir($dir);
  my @cmd;   my @cmd;
         if ($file =~ m|\.zip$|) {          if ($file =~ m|\.zip$|) {
             @cmd = ("/usr/bin/unzip","-o");              @cmd = ($location_of{'unzip'},"-o");
         } elsif ($file =~ m|\.tar\.gz$|) {          } elsif ($file =~ m|\.tar\.gz$|
             @cmd = ("/usr/bin/tar","-zxpvf");   || $file =~ m|\.tgz$| ) {
               @cmd = ($location_of{'tar'},"-zxpvf");
         } elsif ($file =~ m|\.tar\.bz2$|) {          } elsif ($file =~ m|\.tar\.bz2$|) {
             @cmd = ("/usr/bin/tar","-jxpvf");              @cmd = ($location_of{'tar'},"-jxpvf");
         } elsif ($file =~ m|\.bz2$|) {          } elsif ($file =~ m|\.bz2$|) {
             @cmd = ("/usr/bin/bunzip2");              @cmd = ($location_of{'bunzip2'});
         } elsif ($file =~ m|\.tgz$|) {  
             @cmd = ("/usr/bin/tar","-zxpvf");  
         } elsif ($file =~ m|\.gz$|) {          } elsif ($file =~ m|\.gz$|) {
     @cmd = ("/usr/bin/gunzip");      @cmd = ($location_of{'gunzip'});
         } elsif ($file =~ m|\.tar$|) {          } elsif ($file =~ m|\.tar$|) {
             @cmd = ("/usr/bin/tar","-xpvf");              @cmd = ($location_of{'tar'},"-xpvf");
         } else {          } else {
             print("There has been an error in determining the file type of $file, please check name");              print("There has been an error in determining the file type of $file, please check name");
         }          }
Line 73  END Line 82  END
     undef($!);      undef($!);
     undef($@);      undef($@);
     open(OUTPUT,"-|", @cmd, $file);      open(OUTPUT,"-|", @cmd, $file);
     while (<OUTPUT>) { print "$_<br />"; }      while (my $line = <OUTPUT>) { print("$line<br />"); }
     close(OUTPUT);      close(OUTPUT);
     print("<p><b>Decompress complete.</b></p>");      print("<p><b>Decompress complete.</b></p>");
     if ($! || $@) {      if ($! || $@) {

Removed from v.1.15  
changed lines
  Added in v.1.16


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