#! @PERL@ #------------------------------------------------------------------ # SORRY TO HAVE SURPRISED YOU! # IF YOU SEE THIS UNREASONABLE FILE WHILE BROUSING, FORGET PLEASE. # IF YOU ARE A ADMINISTRATOR OF THIS SITE, PLEASE SETUP HTTP SERVER # SO THAT THIS SCRIPT CAN BE EXECUTED AS A CGI COMMAND. THANK YOU. #------------------------------------------------------------------ $htmlbase = $ENV{'HTTP_REFERER'}; if ($htmlbase) { $htmlbase =~ s/\/[^\/]*$//; } else { $htmlbase = '..'; } print "Content-type: text/html\n\n"; print "\n"; print "\n"; if (! -x '.\/global.exe' || ! -x '.\/btreeop.exe') { print "

Error

\n"; print "

Server side command not found. [return]

\n"; print "\n"; print "\n"; exit 0; } @pairs = split (/&/, $ENV{'QUERY_STRING'}); foreach $p (@pairs) { ($name, $value) = split(/=/, $p); $value =~ tr/+/ /; $value =~ s/%([\dA-Fa-f][\dA-Fa-f])/pack("C", hex($1))/eg; $form{$name} = $value; } if ($form{'pattern'} eq '') { print "

Error

\n"; print "

Pattern not specified. [return]

\n"; print "\n"; print "\n"; exit 0; } $pattern = $form{'pattern'}; $flag = ''; $words = 'definitions'; if ($form{'type'} eq 'reference') { $flag = 'r'; $words = 'references'; } elsif ($form{'type'} eq 'symbol') { $flag = 's'; $words = 'symbols'; } if ($form{'id'}) { chdir("$form{'id'}/HTML/cgi-bin"); if ($?) { print "

Error

\n"; print "

Couldn't find tag directory in secure mode. [return]

\n"; print "\n"; print "\n"; exit 0; } } $pattern =~ s/"//g; # to shut security hole unless (open(PIPE, ".\/global.exe -x$flag \"$pattern\" |")) { print "

Error

\n"; print "

Cannot execute global. [return]

\n"; print "\n"; print "\n"; exit 0; } print "

" . $pattern . "

\n"; print "Following $words are matched to above pattern.
\n"; $cnt = 0; local($tag, $lno, $filename, $fileno); print "
\n";
while () {
	$cnt++;
	($tag, $lno, $filename) = split;
	chop($fileno = `.\/btreeop.exe -K "./$filename" GPATH`);
	s!($tag)!$1<\/A>!;
	print;
}
close(PIPE);
print "
\n"; if ($cnt == 0) { print "

Pattern not found. [return]

\n"; } print "\n"; print "\n"; exit 0; #------------------------------------------------------------------ # SORRY TO HAVE SURPRISED YOU! # IF YOU SEE THIS UNREASONABLE FILE WHILE BROUSING, FORGET PLEASE. # IF YOU ARE A ADMINISTRATOR OF THIS SITE, PLEASE SETUP HTTP SERVER # SO THAT THIS SCRIPT CAN BE EXECUTED AS A CGI COMMAND. THANK YOU. #------------------------------------------------------------------