This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigD71121AA134030E951D0E2F1
Content-Type: multipart/mixed;
 boundary-----------040304040103020303040102"

This is a multi-part message in MIME format.
--------------040304040103020303040102
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: quoted-printable

http://rubyforge.org/projects/multipart/ で、Rubyで作ったCGIにファイルを
アップロードしようとして(失敗して)気付いたのですが、cgi.rbの先頭の
boundaryまでの読み込みがstrict過ぎたりしないでしょうか。

multipartは、(処理の都合上っぽいですが)HTTP message bodyの先頭に改行が
ひとつ余計にはいるので、cgi.rbがうまく処理できないようです(l984で、
boundary + CRLFが、statusと合致しない; statusの先頭に余分な改行がついて
る)。先頭の特別扱いを消して、単純に汎用の処理にしてしまえばよさそうです
が、どうでしょうか。

trunkのほうは見た目実装が変わってますが、見た目だけの変更っぽいので、
同じ変更を入れてもよいのかも?

fileのuploadをしたのが初めてなので、JavaやPHPでどうなっているか、互換性
はどうかなど、どなたかご存知でしたらご指摘願います。

--------------040304040103020303040102
Content-Type: text/plain;
 name
gi_multipart.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename
gi_multipart.diff" SW5kZXg6IGV4dC9vcGVuc3NsL29zc2xfeDUwOWV4dC5jCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV4 dC9vcGVuc3NsL29zc2xfeDUwOWV4dC5jCShyZXZpc2lvbiAyMDg4NikKKysrIGV4dC9vcGVu c3NsL29zc2xfeDUwOWV4dC5jCSh3b3JraW5nIGNvcHkpCkBAIC0xOTgsNiArMTk4LDcgQEAK IAlvc3NsX3g1MDlleHRmYWN0b3J5X3NldF9zdWJqZWN0X3JlcShzZWxmLCBzdWJqZWN0X3Jl cSk7CiAgICAgaWYgKCFOSUxfUChjcmwpKQogCW9zc2xfeDUwOWV4dGZhY3Rvcnlfc2V0X2Ny bChzZWxmLCBjcmwpOworICAgIHJiX2l2X3NldChzZWxmLCAiQGNvbmZpZyIsIFFuaWwpOwog CiAgICAgcmV0dXJuIHNlbGY7CiB9CkluZGV4OiBsaWIvY2dpLnJiCj09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tIGxpYi9jZ2kucmIJKHJldmlzaW9uIDIwODg2KQorKysgbGliL2NnaS5yYgkod29ya2lu ZyBjb3B5KQpAQCAtOTgwLDE0ICs5ODAsNiBAQAogCiAgICAgICAjIHN0YXJ0IG11bHRpcGFy dC9mb3JtLWRhdGEKICAgICAgIHN0ZGlucHV0LmJpbm1vZGUgaWYgZGVmaW5lZD8gc3RkaW5w dXQuYmlubW9kZQotICAgICAgYm91bmRhcnlfc2l6ZSA9IGJvdW5kYXJ5LnNpemUgKyBFT0wu c2l6ZQotICAgICAgY29udGVudF9sZW5ndGggLT0gYm91bmRhcnlfc2l6ZQotICAgICAgc3Rh dHVzID0gc3RkaW5wdXQucmVhZChib3VuZGFyeV9zaXplKQotICAgICAgaWYgbmlsID09IHN0 YXR1cwotICAgICAgICByYWlzZSBFT0ZFcnJvciwgIm5vIGNvbnRlbnQgYm9keSIKLSAgICAg IGVsc2lmIGJvdW5kYXJ5ICsgRU9MICE9IHN0YXR1cwotICAgICAgICByYWlzZSBFT0ZFcnJv ciwgImJhZCBjb250ZW50IGJvZHkiCi0gICAgICBlbmQKIAogICAgICAgbG9vcCBkbwogICAg ICAgICBoZWFkID0gbmlsCg--------------040304040103020303040102-- --------------enigD71121AA134030E951D0E2F1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Cygwin) iQEcBAEBAgAGBQJJS8U2AAoJEKYDTjohNqG5ngAIAKqos7gzFXpK4qvBxmbTJQ+l J4v29VTbj3AlyLvyxNv7LRmzO9OFe1YhXSESN852rU6WDQUfJpXQzEQ2lPygV2a4 LETlY+NskzzAaXxG3D8laB36yJvocYXLoXOaeOEL56f3MMZVh08xB++HUHjFKk31 X1ZQYQZYcrY5y4Qx31QWn4exYyHLIAkSM8IsRNyzTVZEW2wv8pnxAP3n4hP+6cpd BY9szbT7xYnPcElXmuHf7pGKkoT8kaVgxqJRcP0Z8GWGK8HtZipTIvVZDbVrSwv9 2yBjBe/DzyjJleoBFIhgVaG2lvpjyijjZNX5GPZcaqnlicDXUrO3cibkAyUEaQAbB -----END PGP SIGNATURE----- --------------enigD71121AA134030E951D0E2F1--