前田です。

At Fri, 8 Dec 2000 16:48:42 +0900,
Masao Shirakura <masa / masternet.or.jp> wrote:
> 現象ですが、 cgi.rb の831行目付近の
>    eval <<-END
>     def body.original_filename
>      #{
>       filename = ($1 or "").dup
>        ・
>        ・
> 
> のように、#{ } の中に代入文があると落ちます。

これってmod_rubyの話でしょうか?

Apache/1.3.14 (Unix) Debian/GNU mod_ruby/0.2.2 Ruby/1.6.2(2000-12-05) eRuby/0.1.3 

という環境では、以下の変更が必要(ないとInsecureだと言われる)でし
たけど、関係ありますかね。

--- cgi.rb.orig	Fri Dec  8 17:54:35 2000
+++ cgi.rb	Fri Dec  8 17:55:59 2000
@@ -825,7 +825,7 @@
         END
 
         /Content-Disposition:.* filename="?([^\";]*)"?/ni === head
-        eval <<-END
+        eval <<-END.untaint
           def body.original_filename
             #{
               filename = ($1 or "").dup
@@ -841,7 +841,7 @@
         END
 
         /Content-Type: (.*)/ni === head
-        eval <<-END
+        eval <<-END.untaint
           def body.content_type
             #{($1 or "").dump}
           end