Hiroyuki Iwatsuki さんは書きました:
> たしかにWEBrick::CGI::Socket#eof?は未定義なのですが、
> 同じスクリプトをFreeBSD上のRuby 1.8.6で動かしたところ正常に動作しました。
> 何か違いがあるのでしょうか?

この部分は、Content-Lengthの値よりも短いデータしか受信できておらず、かつ
クライアントがソケットを切断しているという判断をしています。
本当にクライアントが途中で切断しているのならいいのですが、まともなクライ
アントを使っていて再現性があるならば環境に依存する問題が別のところにある
かもしれません。

> また、試しにWEBrick::CGI::Socket#eof?を書こうと思ったのですが、
> どのように書いて良いのか分かりませんでした。

trunkとruby_1_8に追加しておきました。意図したところでBadRequestが上がる
ようになったと思います。

-- 
ごとうゆうぞう