| 6 |
|
|
| 7 |
=cut |
=cut |
| 8 |
|
|
| 9 |
|
use Suika::CGI; |
| 10 |
use Suika::CGI::Error; |
use Suika::CGI::Error; |
| 11 |
use strict; |
use strict; |
| 12 |
require 'jcode.pl'; |
require 'jcode.pl'; |
| 13 |
|
|
| 14 |
if ($main::ENV{PATH_TRANSLATED}) { |
if ($main::ENV{PATH_TRANSLATED}) { |
| 15 |
my $logid = $main::ENV{PATH_TRANSLATED}; |
my $logid = $main::ENV{PATH_TRANSLATED}; |
| 16 |
|
$logid = readlink ($logid) if -l $logid; |
| 17 |
Suika::CGI::Error::die ('404') unless -e $logid; |
Suika::CGI::Error::die ('404') unless -e $logid; |
| 18 |
|
|
| 19 |
open LOG, $logid or Suika::CGI::Error::die ('500',''=> $!) unless -e $logid; |
open LOG, $logid or Suika::CGI::Error::die ('500',''=> $!); |
| 20 |
my @log = <LOG>; |
my @log = <LOG>; |
| 21 |
close LOG; |
close LOG; |
| 22 |
|
|
| 48 |
if ($item eq 'Referer') { |
if ($item eq 'Referer') { |
| 49 |
if ($sitem =~ m#http://(?:suika\.fam\.cx|suika\.susumu|suika\.ssm|61\.201\.226\.127|192\.168\.0\.4)/search/(?:namazu)\?.*?query=([\x21-\x7e]+?)(?:[&;]|$)#) { |
if ($sitem =~ m#http://(?:suika\.fam\.cx|suika\.susumu|suika\.ssm|61\.201\.226\.127|192\.168\.0\.4)/search/(?:namazu)\?.*?query=([\x21-\x7e]+?)(?:[&;]|$)#) { |
| 50 |
my $query = $1; $query =~ tr/+/ /; |
my $query = $1; $query =~ tr/+/ /; |
| 51 |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack(C, hex($1))/eg; |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack('C', hex($1))/eg; |
| 52 |
jcode::convert(\$query, 'euc'); $query = _html($query); |
jcode::convert(\$query, 'euc'); $query = _html($query); |
| 53 |
jcode::convert(\$query, 'jis'); |
jcode::convert(\$query, 'jis'); |
| 54 |
jcode::fw2hw(\$query, 'jis'); |
jcode::fw2hw(\$query, 'jis'); |
| 60 |
my ($name,$query) = split /=/, $_; |
my ($name,$query) = split /=/, $_; |
| 61 |
if ($name =~ /q/) { |
if ($name =~ /q/) { |
| 62 |
$query =~ tr/+/ /; |
$query =~ tr/+/ /; |
| 63 |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack(C, hex($1))/eg; |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack('C', hex($1))/eg; |
| 64 |
jcode::convert(\$query, 'euc'); $query = _html($query); |
jcode::convert(\$query, 'euc'); $query = _html($query); |
| 65 |
jcode::convert(\$query, 'jis'); jcode::fw2hw(\$query, 'jis'); |
jcode::convert(\$query, 'jis'); jcode::fw2hw(\$query, 'jis'); |
| 66 |
$ret .= ' '.$query |
$ret .= ' '.$query |
| 69 |
$sitem = 'Search (Google) for '.$ret.'<!-- '.$sitem.' -->'; |
$sitem = 'Search (Google) for '.$ret.'<!-- '.$sitem.' -->'; |
| 70 |
} elsif ($sitem =~ m#http://google\.yahoo\.co\.jp/bin/query\?(?:.*?[&;])?p=([\x21-\x7e]+?)(?:[&;]|$)#) { |
} elsif ($sitem =~ m#http://google\.yahoo\.co\.jp/bin/query\?(?:.*?[&;])?p=([\x21-\x7e]+?)(?:[&;]|$)#) { |
| 71 |
my $query = $1; $query =~ tr/+/ /; |
my $query = $1; $query =~ tr/+/ /; |
| 72 |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack(C, hex($1))/eg; |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack('C', hex($1))/eg; |
| 73 |
jcode::convert(\$query, 'euc'); $query = _html($query); |
jcode::convert(\$query, 'euc'); $query = _html($query); |
| 74 |
jcode::convert(\$query, 'jis'); jcode::fw2hw(\$query, 'jis'); |
jcode::convert(\$query, 'jis'); jcode::fw2hw(\$query, 'jis'); |
| 75 |
$sitem = 'Search (Google.Yahoo!j) for '.$query.'<!-- '.$sitem.' -->'; |
$sitem = 'Search (Google.Yahoo!j) for '.$query.'<!-- '.$sitem.' -->'; |
| 76 |
} elsif ($sitem =~ m#http://asearch\.nifty\.com/cgi-bin/Search.cgi\?(?:.*?[&;])?q=([\x21-\x7e]+?)(?:[&;]|$)#) { |
} elsif ($sitem =~ m#http://asearch\.nifty\.com/cgi-bin/Search.cgi\?(?:.*?[&;])?q=([\x21-\x7e]+?)(?:[&;]|$)#) { |
| 77 |
my $query = $1; $query =~ tr/+/ /; |
my $query = $1; $query =~ tr/+/ /; |
| 78 |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack(C, hex($1))/eg; |
$query =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack('C', hex($1))/eg; |
| 79 |
jcode::convert(\$query, 'euc'); $query = _html($query); |
jcode::convert(\$query, 'euc'); $query = _html($query); |
| 80 |
jcode::convert(\$query, 'jis'); jcode::fw2hw(\$query, 'jis'); |
jcode::convert(\$query, 'jis'); jcode::fw2hw(\$query, 'jis'); |
| 81 |
$sitem = 'Search (@search) for '.$query.'<!-- '.$sitem.' -->'; |
$sitem = 'Search (@search) for '.$query.'<!-- '.$sitem.' -->'; |