Revision history for libapreq-1 =over 4 =item 1.34 - January 7, 2009 Remove quadratic memory allocation during multipart_buffer reads [joes] have fill_buffer() completely fill the multipart_buffer. This bug is tickled by the FireFox 2.0 when doing ssl uploads: move the mod_perl version detection to the top of Makefile.PL, so Apache-Test and other things won't fool around with %INC and confuse the detection code. [Stas] =item 1.33 - December 15, 2004] =item 1.32 Fix mfd's Content-Type parser to deal with Opera 7.2's extra attributes. For details see Bug first reported by Sven Geisler [joes]. =item 1.31 - ongoing added a proper implementation of the ithreads support. At the same time it should resolve the problem with perl 5.8.2 under threaded applications, since it no longer relies on the implicit context and passes aTHX around. [Stas] =item 1.30 - September 27, 2003 libapreq-1.3 is released. =item 1.25 - August 23, 2003 Michael G. Schwern's "play it safe" patch to c/Makefile.PL (applied patch submitted by Steve Hay). See for details. [joes] =item 1.24 - August 23, 2003 Applied Steve Hay's Request.pm doc patch explaining the tempnam() dependence for C<Apache::Request::new()>'s TEMP_DIR option. [joes] =item 1.23 - July 10, 2003 Applied Graham Clark's patch to cleanup apache_request.h macros. Added missing doc credits for Steve Hay in Request.pm. [joes] =item 1.22 - July 5, 2003 Open uploaded files with binary mode (relevant for Perl > 5.7), so as to be able to get the correct sizes on systems where such a mode makes a difference. Thanks to Steve Hay for first pointing out this problem. [randyk] =item 1.21 - June 25, 2003 Fix memory access problem with TEMP_DIR - see Thanks to Jay Buffington for the spot. [joes] =item 1.2 - June 19, 2003 libapreq-1.2 released. =item 1.16 - June 19, 2003 Updated INSTALL & README documents to explain how to configure the tests. Apache::Test v1.03 is now a prerequisite for libapreq. =item 1.15 - June 13, 2003 Experimental support for SFIO is withdrawn. =item 1.14 - April 30, 2003 Add documentation for subclassing Apache::Request. [Steve Hay] =item 1.13 - April 18, 2003 Sync test suite uris with latest Apache::Test [Stas] Patch mfd parser's Content-Disposition header to do case-insensitive matches on "name" & "filename" keywords. This feature allows uploads from Nokia Series 60 phones to work as expected. [Oskari 'Okko' Ojala] Patch Request.xs to revert to using pre-1.1 $upload->fh code for pre-5.8 perls. This patch may get backed out prior to 1.2's release, unless it is known to resolve problems (zombies?) reported to occur with libapreq-1.1 uploads and pre-5.8 perls. [Joe] =item 1.12 - February 27, 2003 do a better mod_perl version checking, including the test for mod_perl 2.0. [Stas] Applied IKEBE Tomohiro's patch for handling %uXXXX strings. =item 1.11 - February 27, 2003 Add req->nargs to C API to distinguish between query string and request body params. =item 1.05 - January 5, 2003 Include patch and supporting documentation for OS X [David Wheeler]. Temporarily revert test suite to Apache::test. [Joe Schaefer] Update Request.xs to avoid segfaults caused by empty file uploads via an upload_hook. The upload_hook isn't called in this case, which triggered a segfault in $upload->fh [Sven Geisler]. =item 1.04 - November 5, 2002 Replace autogenerated files with BUILD.sh script. This is necessary for OS X support via libtool & friends. [Joe Schaefer] =item 1.02 - November 3, 2002 Added documentation for issues with '\0' bytes (encoded) in cookie strings. [Issac Goldstand] =item 1.01 add a basic test suite [Stas Bekman] =item 1.0 - February 21, 2002 update to Apache Software License, Version 1.1 work around bug in Mozilla 0.9.7, which fails to send a required CRLF with each empty file field. [Joe Schaefer <joe@sunstarsys.com>] ignore empty cookie attributes; replace ap_getword calls with ap_getword_nulls for parsing "&" separator. brings the behavior of Apache::Cookie closer to that of CGI::Cookie, and hopefully improves the functionality of the C interface as well. [Maurice Aubrey] make apache_cookie.h c++ compatible [Simon Tamás <simont@westel.hu>] =item 0.33 - June 17, 2001 $r->upload can be set to another Apache::Upload instance [dougm] based on patch from Dave LaMacchia <dml@topped-with-meat.com> =item 0.32 - April 4, 2001 fix $r->param( key => [ 0..9 ] ), convert to XS. [Joe Schaefer <joe@sunstarsys.com>] Thanks to Jody Biggs <jody@codegrok.com> for the spot and suggested fix. req->upload_hook, req->hook_data added. [David Welton <davidw@innominate.it>] upload->tempname, req->temp_dir; $upload->link(), $upload->tempname() added. [Joe Schaefer <joe@sunstarsys.com>] handle cookies containing "&", "=" in data. [Joe Schaefer <joe@sunstarsys.com>] $r->parms can be set to another Apache::Table instance [dougm] fix compile errors when PerlIO is used [dougm, Randy Kobes <randy@theoryx5.uwinnipeg.ca>] fix subclassing mechanism so the the value of an `r' or `_r' key can be a hash ref [dougm] fix win32 build (requires mod_perl later than 1.24_01) [Randy Kobes <randy@theoryx5.uwinnipeg.ca>] Handle cookies with names but no value [David Welton <davidw@prosa.it>] AIX compile fixes [Jens-Uwe Mager <jum@helios.de>] =item 0.31_03 - December 23, 2000 Apache::Request->instance [Matt Sergeant <matt@sergeant.org>] =item 0.31_02 - December 17, 2000 autoconf support [Tom Vaughan <tvaughan@aventail.com>] also parse r->args if content-type is multipart [Ville Skyttä <ville@office.popsystems.com>] deal properly with Apache::Cookie->new(key => undef) thanks to Matt Sergeant for the spot fix parsing of Content-type header to deal with charsets [Artem Chuprina <ran@ran.pp.ru>] fix nasty bug when connection is broken during file upload thanks to Jeff Baker for the spot multipart_buffer.[ch] renamed to apache_multipart_buffer.[ch] =item 0.31_01 - December 4, 2000 keep reusing same buffer when handling file uploads to prevent overzealous memory allocation [Yeasah Pell, Jim Winstead <jimw@apache.org>] handle internet explorer for the macintosh bug that sends corrupt mime boundaries when image submit buttons are used in multipart/form-data forms [Yeasah Pell] fix uninitialized variable in ApacheRequest_parse_urlencoded [Yeasah Pell] =item 0.31 - July 2, 1999 CGI.pm 2.53's path/domain defaults will be used with -DDEFINE=CGI_253 Apache::Cookie->new($r)->parse will properly return () instead of undef when there is no cookie header, thanks to Nick Tonkin for the spot =item 0.30_04 - May 13, 1999 pass Apache::/Apache::SubRequest:: object to sv_magic, so it does not go out of scope until the Apache::Request object does =item 0.30_03 - May 5, 1999 when attaching request_rec* to Apache::Request object, dont let Perl copy it =item 0.30_02 - April 30, 1999 always parse the query string (if present), including POST requests fixed another bug related to path_info fixed Apache::Cookie->path bug spotted by Jeffrey W. Baker =item 0.30_01 - January, 27 - 1999 added ApacheRequest_script_name (r->uri minus r->path_info) added eg/c/testapreq/Makefile.apxs C sources *.[ch] moved to its own c/ directory (e.g. for easy cvs import) fixed bug in ApacheRequest_parse_urlencoded (possible core dump on GET request) allow `;' URI attribute delimiter as per HTML 4.0 spec allow sub-classing via _r/r key mechanism don't use $VERSION variable name in Makefile.PL param() now uses set() instead of add() [Andreas J. Koenig <andreas.koenig@anima.de>] =item 0.20_01 - January 6, 1999 Apache::libapreq for compiler + linker flags added documentation now build and install libapreq.a and header files move cookie functions to new apache_cookie.c and Apache::Cookie modules new Apache::Upload class added param() method we are now a subclass of Apache (requires 1.16_02+) adhere to Apache code style guide add logic to parse GET requests [Larry Foard <larry@cp.net>] fix apache_request.h not to use mod_perl.h and deal w/ g++ [Larry Foard <larry@cp.net>] =item 0.01 - October 23, 1998 original version [Doug MacEachern <dougm@cp.net>] basic framework for parsing HTTP cookies and POST data of types: application/x-www-form-urlencoded, multipart/form-data =back