version 1.1.1.21, 2001/01/12 04:17:16 |
version 1.1.1.22, 2001/01/14 08:49:27 |
|
|
# Copyright (c) 1996-1998 Bill Fenner |
# Copyright (c) 1996-1998 Bill Fenner |
# (c) 1998-1999 Henner Zeller |
# (c) 1998-1999 Henner Zeller |
# (c) 1999 Henrik Nordstrom |
# (c) 1999 Henrik Nordstrom |
# (c) 2000 Akinori MUSHA |
# (c) 2000-2001 Akinori MUSHA |
# All rights reserved. |
# All rights reserved. |
# |
# |
# Redistribution and use in source and binary forms, with or without |
# Redistribution and use in source and binary forms, with or without |
|
|
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
# SUCH DAMAGE. |
# SUCH DAMAGE. |
# |
# |
# $zId: cvsweb.cgi,v 1.104 2000/11/01 22:05:12 hnordstrom Exp $ |
# $zId: cvsweb.cgi,v 1.105 2000/11/26 01:51:04 jumager Exp $ |
# $kId: cvsweb.cgi,v 1.63 2001/01/11 23:42:01 knu Exp $ |
# $Idaemons: /home/cvs/cvsweb/cvsweb.cgi,v 1.64 2001/01/13 07:48:09 knu Exp $ |
# |
# |
### |
### |
|
|
|
|
use strict; |
use strict; |
|
|
use vars qw ( |
use vars qw ( |
|
$cvsweb_revision |
$mydir $uname $config $allow_version_select $verbose |
$mydir $uname $config $allow_version_select $verbose |
@CVSrepositories @CVSROOT %CVSROOT %CVSROOTdescr |
@CVSrepositories @CVSROOT %CVSROOT %CVSROOTdescr |
%MIRRORS %DEFAULTVALUE %ICONS %MTYPES |
%MIRRORS %DEFAULTVALUE %ICONS %MTYPES |
Line 138 sub forbidden_module($); |
|
Line 139 sub forbidden_module($); |
|
##### Start of Configuration Area ######## |
##### Start of Configuration Area ######## |
delete $ENV{PATH}; |
delete $ENV{PATH}; |
|
|
|
$cvsweb_revision = join('.', '1.105', (split(/ /, |
|
q$Idaemons: /home/cvs/cvsweb/cvsweb.cgi,v 1.64 2001/01/13 07:48:09 knu Exp $ |
|
))[2]); |
|
|
use File::Basename; |
use File::Basename; |
|
|
($mydir) = (dirname($0) =~ /(.*)/); # untaint |
($mydir) = (dirname($0) =~ /(.*)/); # untaint |
Line 248 $where =~ s|^/||; |
|
Line 253 $where =~ s|^/||; |
|
$scriptname = defined($ENV{SCRIPT_NAME}) ? $ENV{SCRIPT_NAME} : ''; |
$scriptname = defined($ENV{SCRIPT_NAME}) ? $ENV{SCRIPT_NAME} : ''; |
$scriptname =~ s|^/*|/|; |
$scriptname =~ s|^/*|/|; |
|
|
# Let's workaround thttpd's stupidness.. |
# Let's workaround thttpd's stupidity.. |
if ($scriptname =~ m|/$|) { |
if ($scriptname =~ m|/$|) { |
$pathinfo .= '/'; |
$pathinfo .= '/'; |
my $re = quotemeta $pathinfo; |
my $re = quotemeta $pathinfo; |
Line 733 if (-d $fullname) { |
|
Line 738 if (-d $fullname) { |
|
|
|
if ($_ eq '..' || -d "$fullname/$_") { |
if ($_ eq '..' || -d "$fullname/$_") { |
next if ($_ eq '..' && $where eq '/'); |
next if ($_ eq '..' && $where eq '/'); |
my ($rev,$date,$log,$author,$filename) = @{$fileinfo{$_}} |
my ($rev,$date,$log,$author,$filename); |
|
($rev,$date,$log,$author,$filename) = @{$fileinfo{$_}} |
if (defined($fileinfo{$_})); |
if (defined($fileinfo{$_})); |
printf '<tr bgcolor="%s"><td>', $tabcolors[$dirrow % 2] if $dirtable; |
printf '<tr bgcolor="%s"><td>', $tabcolors[$dirrow % 2] if $dirtable; |
if ($_ eq '..') { |
if ($_ eq '..') { |
Line 2752 sub navigateHeader($$$$$) { |
|
Line 2758 sub navigateHeader($$$$$) { |
|
my ($swhere,$path,$filename,$rev,$title) = @_; |
my ($swhere,$path,$filename,$rev,$title) = @_; |
$swhere = "" if ($swhere eq $scriptwhere); |
$swhere = "" if ($swhere eq $scriptwhere); |
$swhere = urlencode($filename) if ($swhere eq ""); |
$swhere = urlencode($filename) if ($swhere eq ""); |
print qq`<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">`; |
|
print "<HTML>\n<HEAD>\n"; |
print <<EOF; |
print qq`<META name="robots" content="nofollow">\n`; |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
print '<!-- CVSweb $zRevision: 1.104 $ $kRevision: 1.63 $ -->'; |
<HTML> |
print "\n<TITLE>$path$filename - $title - $rev</TITLE></HEAD>\n"; |
<HEAD> |
print "$body_tag_for_src\n"; |
<META name="robots" content="nofollow"> |
print "<table width=\"100%\" border=0 cellspacing=0 cellpadding=1 bgcolor=\"$navigationHeaderColor\">"; |
<!-- knu-cvsweb $cvsweb_revision --> |
print "<tr valign=bottom><td>"; |
<TITLE>$path$filename - $title - $rev</TITLE></HEAD> |
|
$body_tag_for_src |
|
<table width="100%" border=0 cellspacing=0 cellpadding=1 bgcolor="$navigationHeaderColor"> |
|
<tr valign=bottom><td> |
|
EOF |
|
|
print &link($backicon, "$swhere$query#rev$rev"); |
print &link($backicon, "$swhere$query#rev$rev"); |
print "</a> <b>Return to ", &link("$filename","$swhere$query#rev$rev")," CVS log"; |
print "</a> <b>Return to ", &link("$filename","$swhere$query#rev$rev")," CVS log"; |
print "</b> $fileicon</td>"; |
print "</b> $fileicon</td>"; |
Line 3150 sub http_header(;$) { |
|
Line 3161 sub http_header(;$) { |
|
|
|
sub html_header($) { |
sub html_header($) { |
my ($title) = @_; |
my ($title) = @_; |
my $version = '$zRevision: 1.104 $ $kRevision: 1.63 $'; #' |
|
http_header("text/html"); |
http_header("text/html"); |
print <<EOH; |
print <<EOH; |
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" |
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" |
Line 3159 sub html_header($) { |
|
Line 3169 sub html_header($) { |
|
<head> |
<head> |
<meta name="robots" content="nofollow"> |
<meta name="robots" content="nofollow"> |
<title>$title</title> |
<title>$title</title> |
<!-- CVSweb $version --> |
<!-- knu-cvsweb $cvsweb_revision --> |
</head> |
</head> |
$body_tag |
$body_tag |
$logo <h1 align="center">$title</h1> |
$logo <h1 align="center">$title</h1> |