www.cgi --- API change in 0.8.2
Shiro Kawai <shiro <at> lava.net>
2004-11-13 00:11:07 GMT
This is a head-up notice for those using rfc.mime and
the file uploading feature of www.cgi (which uses rfc.mime).
If you're not using rfc.mime's mime-parse-message, mime-body-≥string
or mime-body-≥file, or passing procedure in the PART-HANDLERS
of cgi-parse-parameters, then your code isn't affected by this change.
It was reported that there was a serious bug in rfc.mime that
cannot handle MIME body of non-encoded binary data. It
generally doesn't occur in mail messages, but many Web browsers
include non-encoded binary data when they upload files by
POST method.
The original approach of rfc.mime is to pass a 'reader' procedure
down to each MIME handler, and that reader procedure recognizes
MIME part boundary. Unfortunately, this assumes all the input
can be line-oriented, and doesn't go well along binary data.
Belated but finally coming Gauche 0.8.2 has procedural ports,
with which you can customize port's behavior in Scheme. And
I'm rewriting rfc.mime using a special procedural port that
returns EOF when it reaches MIME boundary. So in the new
version MIME handler won't take 'reader' procedure, but only
a port, from which the handler can simply read until EOF.
--shiro
-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
(Continue reading)