Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: QUERY_STRING check in cgi.c



AN HTTPD の中田です。

Ken-ichi Hirose wrote:
> 
> 広瀬です。
> 
> AN HTTPD を作っている中田さんから
> #AN HTTPD <URI:http://www.st.rim.or.jp/~nakata/>
> 
> 以下のような指摘と、code を頂きました。
> #元々の問題は IIS シリーズと AN HTTPD を Win9x で動作させた時に
> #namazu.cgi で QUERY(引数?)が無いと QUERY_STRING が作成されないため
> #security check に引っかかって動作しないというものでした。
>
> (以下略)

確かに Internet-Draft では QUERY_STRING がセットされているべきなのか、セ
ットされていなくてもいいのかよくわかりません。
CGI/1.2 では QUERY_STRING の欄の "Servers MUST supply" の文は(今のとこ
ろ)ありません。
CGI/1.1 も RFC にするときもまずは Category: Informational のようですか
ら、HTTP/1.0(RFC1945)と同じような扱いになるのではないかと思います。  
しかも CGI/1.1 では AmigaDOSとUNIXの実装についてしか触れていませんし。

Windows上の実装では Microsoft のものがあるので、先にご提案した通りで問題
はないと思います。
getenv("QUERY_STRING")が NULL になるからといって、security 上の問題はな
いと思いますし。

ただ、AN HTTPD については Ver1.28 から、Win9x で QUERY_STRING がない場合
も "" にセットするようにしました。