namazu-ml(avocado)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
invalid dbname on the CGI mode
- From: Satoru Takabayashi <ccsatoru@xxxxxxxxxxxxxxxxxx>
- Date: Sat, 26 Sep 1998 14:53:42 +0900
- X-ml-name: namazu
- X-mail-count: 01224
高林です
昔の manual.html によると CGIとして呼び出されたときには
| また、おかしな人が "../../../etc" などのように上位のディレクトリを指定
| してきた場合を考えて、 dbname に渡される文字列に '/' が含まれる場合には
| 無効にするようにしました (実際にはどうせ NMZ.* しかプログラムは参照でき
| ないわけですが)。
という制限があったはずなのですが、いつのまにかこのチェックはなくなっ
ていました (記憶にないんだけど)。
こんなルールで復活させることにしましたがいかがでしょう?
* CGIから実行されたときの不正な dbname の判定を新しいルールで
復活させた
+ 先頭が / から始まっていない
+ パスに ../ を含まない
このルールならインデックスを階層化して置くことができます。
で、そんな修正を加えたものを
<URL:http://saturn.aichi-u.ac.jp/%7Eccsatoru/Namazu/proto/> に
namazu-1.2.0.8-beta-6.tar.gz, namazu-1.3.0.0-beta-4.tar.gz として
置いておきました。
また、この版では Win32, OS/2上での日本語のファイル名の扱いが改善さ
れているはずなので
mithara <mithara@xxxxxxxxxxxxxxxx> wrote:
>9つのディレクトリ名、45のhtml、txtファイル名について英文字化して
>インデックスをとり検索してみたところ、タイトル、抄録、ファイル名共
>文字化けは発生しませんでした。ということは、問題は日本語ファイル名
>ということですか。
は解決していると思います。 \ を / に変換する部分は結局
# Shift_JIS の漢字を考慮して \ を / に変換
$url =~ s!([\x81-\x9f\xe0-\xef][\x40-\x7e\x80-\xfc]|[\x01-\x7f])!
$1 eq "\\" ? "/" : $1!gex;
こんなふうになりました。日本語のファイル名の問題が解決していれば
v1.2.0.8 の方は正式版としてリリースしたいと思います。
# 広瀬さんあたり日本語ファイル名のテストをしてもらえません?
# "\hoge\ソソソ\噂噂.txt" のような名前をつけたりして。
それから、 v1.3.0.0-beta-4 の方は mknmz で $SYSTEM を $^O から取得
するようにしました。たぶん問題ないと思いますが、念のため確かめてく
ださると助かります。
-- Satoru Takabayashi