[BACK]Return to cvsweb.cgi CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / cvsweb

Diff for /cvsweb/cvsweb.cgi between version 1.18 and 1.25

version 1.18, 1998/05/08 10:14:10 version 1.25, 1998/08/24 16:41:42
Line 3 
Line 3 
 # cvsweb - a CGI interface to the CVS tree.  # cvsweb - a CGI interface to the CVS tree.
 #  #
 # Written by Bill Fenner <fenner@parc.xerox.com> on his own time.  # Written by Bill Fenner <fenner@parc.xerox.com> on his own time.
 # Insert BSD copyright here.  
 #  #
   # Copyright (c) 1996-1998 Bill Fenner
   # All rights reserved.
   #
   # Redistribution and use in source and binary forms, with or without
   # modification, are permitted provided that the following conditions
   # are met:
   # 1. Redistributions of source code must retain the above copyright
   #    notice, this list of conditions and the following disclaimer.
   # 2. Redistributions in binary form must reproduce the above copyright
   #    notice, this list of conditions and the following disclaimer in the
   #    documentation and/or other materials provided with the distribution.
   #
   # THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
   # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   # ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
   # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   # SUCH DAMAGE.
   #
   # $fId: cvsweb.cgi,v 1.24 1998/08/16 13:45:12 wosch Exp $
   #
   
   
 #HTTP_USER_AGENT: Mozilla/1.1N (X11; I; SunOS 4.1.3_U1 sun4m) via proxy gateway CERN-HTTPD/3.0 libwww/2.17  #HTTP_USER_AGENT: Mozilla/1.1N (X11; I; SunOS 4.1.3_U1 sun4m) via proxy gateway CERN-HTTPD/3.0 libwww/2.17
 #SERVER_NAME: www.freebsd.org  #SERVER_NAME: www.freebsd.org
 #QUERY_STRING: baz  #QUERY_STRING: baz
Line 34  require 'cgi-style.pl';
Line 61  require 'cgi-style.pl';
   
 %CVSROOT = (  %CVSROOT = (
             'freebsd', '/home/ncvs',              'freebsd', '/home/ncvs',
             'openbsd', '/home/OpenBSD/cvs',  
             'learn', '/c/learncvs',              'learn', '/c/learncvs',
             'mozilla', '/a/mozilla-cvs',  
             );              );
   
 %CVSROOTdescr = (  %CVSROOTdescr = (
             'freebsd', 'FreeBSD',              'freebsd', 'FreeBSD',
             'openbsd', 'OpenBSD',  
             'learn', 'Learn',              'learn', 'Learn',
             'mozilla', 'Mozilla FreeBSD',  
             );              );
   
   %mirrors = (
               'Germany', 'http://www.de.freebsd.org/cgi/cvsweb.cgi',
           'Japan', 'http://www.jp.freebsd.org/www.freebsd.org/cgi/cvsweb.cgi',
              );
   
 $cvstreedefault = 'freebsd';  $cvstreedefault = 'freebsd';
 $cvstree = $cvstreedefault;  $cvstree = $cvstreedefault;
 $cvsroot = $CVSROOT{"$cvstree"} || "/home/ncvs";  $cvsroot = $CVSROOT{"$cvstree"} || "/home/ncvs";
Line 119  if (!-d $cvsroot) {
Line 147  if (!-d $cvsroot) {
 {  {
     local(@foo, $i);      local(@foo, $i);
     local($scriptname) = $ENV{'SCRIPT_NAME'};      local($scriptname) = $ENV{'SCRIPT_NAME'};
     foreach (keys %CVSROOT) {      foreach (sort keys %CVSROOT) {
         if (-d $CVSROOT{$_}) {          if (-d $CVSROOT{$_}) {
             push(@foo, $_);              push(@foo, $_);
         }          }
Line 136  if (!-d $cvsroot) {
Line 164  if (!-d $cvsroot) {
 }  }
   
   
   {
       local(@mirrors) = sort keys %mirrors;;
       if ($#mirrors >= 0) {
           $intro .= "<p>\nThis script is mirrored in:\n";
           local($m);
           for($m = 0; $m <= $#mirrors; $m++) {
               $intro .= qq(<a href="$mirrors{$mirrors[$m]}">$mirrors[$m]</a>);
               $intro .= ',' if $m != $#mirrors;
               $intro .= "\n";
           }
       }
   }
   
   
 if (-d $fullname) {  if (-d $fullname) {
         opendir(DIR, $fullname) || &fatal("404 Not Found","$where: $!");          opendir(DIR, $fullname) || &fatal("404 Not Found","$where: $!");
         @dir = readdir(DIR);          @dir = readdir(DIR);
Line 148  if (-d $fullname) {
Line 190  if (-d $fullname) {
             print $shortinstr;              print $shortinstr;
         }          }
         print "<p>";          print "<p>";
         print "Current CVS tree: <b>$cvstree</b><br>\n"          print "Current CVS tree: <b>",
             if $cvstree ne $cvstreedefault;                  ($CVSROOTdescr{"$cvstree"} ? $CVSROOTdescr{"$cvstree"} :
                           $cvstree), "</b><br>\n";
         print "Current directory: <b>/$where</b>\n";          print "Current directory: <b>/$where</b>\n";
         print "<P><HR NOSHADE>\n";          print "<P><HR NOSHADE>\n";
         # Using <MENU> in this manner violates the HTML2.0 spec but          # Using <MENU> in this manner violates the HTML2.0 spec but
Line 174  if (-d $fullname) {
Line 217  if (-d $fullname) {
             if ($_ eq '.') {              if ($_ eq '.') {
                 next;                  next;
             }              }
             next if $_ eq '#cvs.lock';              # ignore CVS lock and stale NFS files
               next if /^#cvs\.|^,|^\.nfs/;
   
             if (s|^Attic/||) {              if (s|^Attic/||) {
                 $attic = " (in the Attic)";                  $attic = " (in the Attic)";

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.25

CVSweb