Release history for FCGI Version 0.80 -- 2021-07-24 - Add test for FCGI over unix domain socket (Michal Josef Špaček, PR #6) Version 0.79 -- 2019-12-14 - Check socket path length in OS_CreateLocalIpcFd() and OS_FcgiConnect() to avoid buffer overrun (Petr Písař, pull request #5) - Fix a memory leak in ProcessManagementRecord() (Petr Písař, pull request #4) Version 0.78 -- 2015-03-07 - make copyright and license information more visible (RT#112535) Version 0.77 -- 2014-08-05 - re-release to remove build artifacts that should not have been shipped Version 0.76 -- 2014-08-05 - On Android, set TMPDIR before calling configure (RT#97680, Brian Fraser) Version 0.75 -- 2014-07-17 - deprecated APIs removed (chansen) - broken PP implementation removed (chansen) - retooled distribution so FCGI.pm and FCGI.xs exist as-is, rather than being generated by FCGI.PL and FCGI.XL (chansen) Version 0.74 -- 24 Sep 2011 - Stop leaking information across requests when using the deprecated and undocumented old FCGI interface. This is CVE-2011-2766. - Only discard input stream if FCGI_KEEP_CONN is set in FCGI_BeginRequestBody flags. Version 0.73 -- 19 May 2011 - Stop claiming we ship a file called -e in the MANIFEST. Version 0.72 -- 19 May 2011 - Clean up Makefile.PL and restore compatibility with recent ExtUtils::MakeMaker versions. Version 0.71_03 -- 28 Apr 2011 - Remove support for sfio which is an optional (and not enabled by default) compile option to perl that is never used. - Fix FCGI::Stream::READ() to warn() instead of croak() incase of wide characters which cannot be gracefully downgraded. - Fix warnings due to wide characters being mangled to note that accepting them is deprecated and will stop working at some point. - Various fixes to FCGI::Stream::READ() to improve handling of error and edge cases. - croak if called with invalid number of arguments - croak if length is negative - croak if offset is outside string - pad scalar if offset is greater than length - Fix in FCGX_Finish_r to discard any remaining data in input stream which otherwise ends up in next request. This fixes multiple requests being broken if something goes wrong whilst reading the initial request. This discarding is done silently, as RFC 3875 says a script is not obliged to read any of the data. - Fixed indent style and braces to be consistent, swapped tabs for spaces in indenting. Version 0.71_02 -- 28 Apr 2011 - Change the Request function to pass FAIL_ON_INTR into the XS RequestX function. This prevents the fcgi C client code from looping around their accept() call. This change means that when using CGI::Fast, and the process recieves SIGTERM or SIGHUP, the error statusis correctly passed back up, allowing process managers (such as FCGI::ProcManager) to correctly handle cleanly exiting. Version 0.71_01 -- 24 Aug 2010 - Restore old behavior when un-downgradeable uft8 is sent to FCGI. The first time this happens, a warning will be issued, but subsequently the bytes will be sent through raw (causing double encoding etc). If the character string can be downgraded safely, then it will still be. use warnings FATAL => 'utf8'; can be used to make undowngradeable strings throw an exception. - Fix PRINT retval (Closes: RT#57697). Version 0.71 -- 1 Apr 2010 Florian Ragwitz - Fix some more defined(%hash) warnings on perl 5.12. Version 0.70 -- 22 Mar 2010 Tomas Doran - Fix use of defined %hash which becomes deprecated in perl 5.12 Version 0.69 -- 15 Feb 2010 Matt S Trout - No changes since the previous development release. Version 0.68_02 -- 13 Jan 2010 Matt S Trout - Make the PRINT method return a boolean value rather than the number of bytes written, previous patch was incorrect. Version 0.68_01 -- 10 Jan 2010 Matt S Trout - Force signal handler installation so that we correctly install handlers for SIGPIPE. Fixes RT#5100 - Make the PRINT method return the number of bytes written rather than undef to be consistent with the IO:: interface. Fixes RT#24347 - Fix UTF-8 double encoding when FCGI is passed octets by downgrading them into bytes correctly. Fixes RT#52400 Version 0.68 -- 31 Dec 2009 Matt S Trout - No changes since the previous development release. Version 0.67_01 -- 20 Dec 2009 Matt S Trout - Add FILENO method which returns a defined but invalid value to placate things such as IPC::Run which call fileno to check if a filehandle is open. Closes bugs: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=544540 http://rt.cpan.org/Public/Bug/Display.html?id=50972 Removes need for upstream patch in OpenBSD - Call the fcgi lib's attach/detach Version 0.67 -- 22 December 2002 Sven Verdoolaege - Fixes for pure perl version based on report and patch from "Kurtis D. Rader" - FCGI_UndoBinding perl 5.8.0 compatibility Reported by Marko Asplund - Fix problem with fcgi_config.h on win32. Reported by Igor Franchuk - Add minimal tests Version 0.66 -- 5 September 2002 Sven Verdoolaege - perl 5.8.0 compatibility fix by Autrijus - library fixes from Rob Version 0.65 -- 19 February 2002 Sven Verdoolaege - fix perl 5.005 compatibility problem - fix strict warning Version 0.64 -- 25 September 2001 Sven Verdoolaege Version 0.63 -- 24 September 2001 Sven Verdoolaege - Update build process Version 0.62 -- 21 September 2001 Sven Verdoolaege - Move version number to separate file Version 0.61 -- 20 September 2001 Sven Verdoolaege - Fix refcounting bug - Add GetEnvironment for pure version - Add LastCall method - Allow filehandle for Request's socket parameter - library fixes ("Rob Saccoccio" ) Version 0.60 -- 8 July 2001 Sven Verdoolaege - Allow specification of purity on command line (suggested by Rob Brown ) - Fix bug in pure perl implementation - Don't try to compile anything on pure perl build - Add BINMODE method - Add comment on socket permissions Version 0.59 -- 31 December 2000 Sven Verdoolaege - preliminary pure perl implementation - copy win32 configuration file instead of moving it - convert echo.fpl to new interface Version 0.58 -- 15 November 2000 Sven Verdoolaege - fix bug introduced in 0.57 Version 0.57 -- 12 November 2000 Sven Verdoolaege - don't flush unbound request Version 0.56 -- 3 November 2000 Sven Verdoolaege - add example remote.fpl - provide access to the Request parameters - add IsFastCGI method - fix warn handler (Andrew Pimlott ) Version 0.55 -- 18 October 2000 Sven Verdoolaege - small documentation fix - compilation issues with older perls fixed - library initialization when using sockets fixed Version 0.54 -- 8 October 2000 Sven Verdoolaege - library fixes ("Rob Saccoccio" ) - compilation issues with newer gcc - completely untested OPEN and READLINE methods Version 0.53 -- 10 July 2000 Sven Verdoolaege - sfio version compiles again Version 0.52 -- 12 April 2000 Sven Verdoolaege Version 0.51 -- 12 April 2000 Sven Verdoolaege Version 0.50 -- 10 April 2000 Sven Verdoolaege Version 0.49 -- 9 April 2000 Sven Verdoolaege - General clean-ups - Allow attaching/detaching - Changed DESTROY behaviour - Fixed default warn/die handler of old interface - Document new interface Version 0.48 -- 27 August 1999 Sven Verdoolaege - perl 5.005_60 compatibility - locking on platforms that need it - support for remote connections Version 0.47 -- 31 July 1999 Sven Verdoolaege - move PRINTF into correct package - deprecated set_exit_status - general cleanup, moving old non thread safe interface from xs to perl Version 0.46 -- 30 July 1999 Sven Verdoolaege - new thread safe interface - new threaded example program Version 0.45 -- 8 March 1999 Sven Verdoolaege - FCGI.pm now part of the devel kit - library fixes ("Rob Saccoccio" ) - allow bypassing of installation of handlers - ActivePerl compatibility (Murray Nesbitt ) Version 0.43 -- 22 December 1998 Sven Verdoolaege - POST on bigendians (Paul GABORIT ) - Some win32 changes (Monty ) - library fixes ("Rob Saccoccio" ) Version 0.42 -- 28 August 1998 Sven Verdoolaege - environ fixes ? - print NULLs (Ken Alexander ) - PRINTF support - set version in FCGI.pm - library fixes ("Rob Saccoccio" ) Version 0.41 -- 29 July 1998 Sven Verdoolaege - Compiles with perl 5.005 Version 0.40 -- 15 July 1998 Sven Verdoolaege - Added default die hook - Minimal documentation Version 0.39 -- 3 July 1998 Sven Verdoolaege - Fixed read bug Version 0.38 -- 28 June 1998 Sven Verdoolaege - Fixed flush bug - Added default warn hook Version 0.37 -- 27 June 1998 Sven Verdoolaege - More support for tied handles - Added flush function Version 0.36 -- 23 June 1998 Sven Verdoolaege - More support for tied handles (GETC and autoflushing) Version 0.35 -- 22 June 1998 Sven Verdoolaege - Added forgotten typemap Version 0.34 -- 17 June 1998 Sven Verdoolaege - No longer force sfio less compile - Update os_unix.c from fcgi2.0b2.1 - Small documentation changes Version 0.33 -- 16 June 1998 Sven Verdoolaege - More support for tied handles Version 0.32 -- 16 June 1998 Sven Verdoolaege - Preliminary support for tied handles (doesn't require sfio) - Force sfio less compile - Changed protoype of set_exit_status Version 0.31 -- 13 July 1997 Sven Verdoolaege - Applied solaris accept patch from Chip Salzenberg - Preliminary support glibc's cookie mechanism Version 0.30 -- 24 June 1997 Sven Verdoolaege - Added forgotten library files Version 0.29 -- 10 June 1997 Sven Verdoolaege - Updated library files from fastcgi 2.02b - Use installed library/include file if found Version 0.28 -- 24 February 1997 Sven Verdoolaege - Intialization of %ENV did not change environ. Fixed. Problem reported by Jan Drehmer Version 0.26 -- 19 February 1997 Sven Verdoolaege - Flush output when $| is set to eliminate a problem reported by echo@echo.cica.fr Version 0.25 -- 13 October 1996 Sven Verdoolaege - Eliminate some warnings - Check whether perl is compiled with sfio support Version 0.25 -- 25 September 1996 Sven Verdoolaege - First public release - Additional bugfixes Version 0.21 -- 20 September 1996 Sven Verdoolaege - Bugfix Version 0.2 -- 19 September 1996 Sven Verdoolaege - First Version based on sfio Version 0.1 -- 12 June 1996 - Original version from Open Market's FastCGI Developer's Kit