PK®Z,RŸŸ LICENSE.TERMSnuW+A„¶This FastCGI application library source and object code (the "Software") and its documentation (the "Documentation") are copyrighted by Open Market, Inc ("Open Market"). The following terms apply to all files associated with the Software and Documentation unless explicitly disclaimed in individual files. Open Market permits you to use, copy, modify, distribute, and license this Software and the Documentation for any purpose, provided that existing copyright notices are retained in all copies and that this notice is included verbatim in any distributions. No written agreement, license, or royalty fee is required for any of the authorized uses. Modifications to this Software and Documentation may be copyrighted by their authors and need not follow the licensing terms described here. If modifications to this Software and Documentation have new licensing terms, the new terms must be clearly indicated on the first page of each file where they apply. OPEN MARKET MAKES NO EXPRESS OR IMPLIED WARRANTY WITH RESPECT TO THE SOFTWARE OR THE DOCUMENTATION, INCLUDING WITHOUT LIMITATION ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL OPEN MARKET BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY DAMAGES ARISING FROM OR RELATING TO THIS SOFTWARE OR THE DOCUMENTATION, INCLUDING, WITHOUT LIMITATION, ANY INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES OR SIMILAR DAMAGES, INCLUDING LOST PROFITS OR LOST DATA, EVEN IF OPEN MARKET HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THE SOFTWARE AND DOCUMENTATION ARE PROVIDED "AS IS". OPEN MARKET HAS NO LIABILITY IN CONTRACT, TORT, NEGLIGENCE OR OTHERWISE ARISING OUT OF THIS SOFTWARE OR THE DOCUMENTATION. PK®Zô Ê-Ê- ChangeLognuW+A„¶Version 0.74 -- 24 Sep 2011 o Stop leaking information across requests when using the deprecated and undocumented old FCGI interface. This is CVE-2011-2766. o Only discard input stream if FCGI_KEEP_CONN is set in FCGI_BeginRequestBody flags. Version 0.73 -- 19 May 2011 o Stop claiming we ship a file called -e in the MANIFEST. Version 0.72 -- 19 May 2011 o Clean up Makefile.PL and restore compatibility with recent ExtUtils::MakeMaker versions. Version 0.71_03 -- 28 Apr 2011 o Remove support for sfio which is an optional (and not enabled by default) compile option to perl that is never used. o Fix FCGI::Stream::READ() to warn() instead of croak() incase of wide characters which cannot be gracefully downgraded. o Fix warnings due to wide characters being mangled to note that accepting them is deprecated and will stop working at some point. o 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 o 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. o Fixed indent style and braces to be consistent, swapped tabs for spaces in indenting. Version 0.71_02 -- 28 Apr 2011 o 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 o 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. o Fix PRINT retval (Closes: RT#57697). Version 0.71 -- 1 Apr 2010 Florian Ragwitz o Fix some more defined(%hash) warnings on perl 5.12. Version 0.70 -- 22 Mar 2010 Tomas Doran o Fix use of defined %hash which becomes deprecated in perl 5.12 Version 0.69 -- 15 Feb 2010 Matt S Trout o No changes since the previous development release. Version 0.68_02 -- 13 Jan 2010 Matt S Trout o 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 o Force signal handler installation so that we correctly install handlers for SIGPIPE. Fixes RT#5100 o Make the PRINT method return the number of bytes written rather than undef to be consistent with the IO:: interface. Fixes RT#24347 o 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 o No changes since the previous development release. Version 0.67_01 -- 20 Dec 2009 Matt S Trout o 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 o Call the fcgi lib's attach/detach Version 0.67 -- 22 December 2002 Sven Verdoolaege o Fixes for pure perl version based on report and patch from "Kurtis D. Rader" o FCGI_UndoBinding perl 5.8.0 compatibility Reported by Marko Asplund o Fix problem with fcgi_config.h on win32. Reported by Igor Franchuk o Add minimal tests Version 0.66 -- 5 September 2002 Sven Verdoolaege o perl 5.8.0 compatibility fix by Autrijus o library fixes from Rob Version 0.65 -- 19 February 2002 Sven Verdoolaege o fix perl 5.005 compatibility problem o fix strict warning Version 0.64 -- 25 September 2001 Sven Verdoolaege Version 0.63 -- 24 September 2001 Sven Verdoolaege o Update build process Version 0.62 -- 21 September 2001 Sven Verdoolaege o Move version number to separate file Version 0.61 -- 20 September 2001 Sven Verdoolaege o Fix refcounting bug o Add GetEnvironment for pure version o Add LastCall method o Allow filehandle for Request's socket parameter o library fixes ("Rob Saccoccio" ) Version 0.60 -- 8 July 2001 Sven Verdoolaege o Allow specification of purity on command line (suggested by Rob Brown ) o Fix bug in pure perl implementation o Don't try to compile anything on pure perl build o Add BINMODE method o Add comment on socket permissions Version 0.59 -- 31 December 2000 Sven Verdoolaege o preliminary pure perl implementation o copy win32 configuration file instead of moving it o convert echo.fpl to new interface Version 0.58 -- 15 November 2000 Sven Verdoolaege o fix bug introduced in 0.57 Version 0.57 -- 12 November 2000 Sven Verdoolaege o don't flush unbound request Version 0.56 -- 3 November 2000 Sven Verdoolaege o add example remote.fpl o provide access to the Request parameters o add IsFastCGI method o fix warn handler (Andrew Pimlott ) Version 0.55 -- 18 October 2000 Sven Verdoolaege o small documentation fix o compilation issues with older perls fixed o library initialization when using sockets fixed Version 0.54 -- 8 October 2000 Sven Verdoolaege o library fixes ("Rob Saccoccio" ) o compilation issues with newer gcc o completely untested OPEN and READLINE methods Version 0.53 -- 10 July 2000 Sven Verdoolaege o 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 o General clean-ups o Allow attaching/detaching o Changed DESTROY behaviour o Fixed default warn/die handler of old interface o Document new interface Version 0.48 -- 27 August 1999 Sven Verdoolaege o perl 5.005_60 compatibility o locking on platforms that need it o support for remote connections Version 0.47 -- 31 July 1999 Sven Verdoolaege o move PRINTF into correct package o deprecated set_exit_status o general cleanup, moving old non thread safe interface from xs to perl Version 0.46 -- 30 July 1999 Sven Verdoolaege o new thread safe interface o new threaded example program Version 0.45 -- 8 March 1999 Sven Verdoolaege o FCGI.pm now part of the devel kit o library fixes ("Rob Saccoccio" ) o allow bypassing of installation of handlers o ActivePerl compatibility (Murray Nesbitt ) Version 0.43 -- 22 December 1998 Sven Verdoolaege o POST on bigendians (Paul GABORIT ) o Some win32 changes (Monty ) o library fixes ("Rob Saccoccio" ) Version 0.42 -- 28 August 1998 Sven Verdoolaege o environ fixes ? o print NULLs (Ken Alexander ) o PRINTF support o set version in FCGI.pm o library fixes ("Rob Saccoccio" ) Version 0.41 -- 29 July 1998 Sven Verdoolaege o Compiles with perl 5.005 Version 0.40 -- 15 July 1998 Sven Verdoolaege o Added default die hook o Minimal documentation Version 0.39 -- 3 July 1998 Sven Verdoolaege o Fixed read bug Version 0.38 -- 28 June 1998 Sven Verdoolaege o Fixed flush bug o Added default warn hook Version 0.37 -- 27 June 1998 Sven Verdoolaege o More support for tied handles o Added flush function Version 0.36 -- 23 June 1998 Sven Verdoolaege o More support for tied handles (GETC and autoflushing) Version 0.35 -- 22 June 1998 Sven Verdoolaege o Added forgotten typemap Version 0.34 -- 17 June 1998 Sven Verdoolaege o No longer force sfio less compile o Update os_unix.c from fcgi2.0b2.1 o Small documentation changes Version 0.33 -- 16 June 1998 Sven Verdoolaege o More support for tied handles Version 0.32 -- 16 June 1998 Sven Verdoolaege o Preliminary support for tied handles (doesn't require sfio) o Force sfio less compile o Changed protoype of set_exit_status Version 0.31 -- 13 July 1997 Sven Verdoolaege o Applied solaris accept patch from Chip Salzenberg o Preliminary support glibc's cookie mechanism Version 0.30 -- 24 June 1997 Sven Verdoolaege o Added forgotten library files Version 0.29 -- 10 June 1997 Sven Verdoolaege o Updated library files from fastcgi 2.02b o Use installed library/include file if found Version 0.28 -- 24 February 1997 Sven Verdoolaege o Intialization of %ENV did not change environ. Fixed. Problem reported by Jan Drehmer Version 0.26 -- 19 February 1997 Sven Verdoolaege o Flush output when $| is set to eliminate a problem reported by echo@echo.cica.fr Version 0.25 -- 13 October 1996 Sven Verdoolaege o Eliminate some warnings o Check whether perl is compiled with sfio support Version 0.25 -- 25 September 1996 Sven Verdoolaege o First public release o Additional bugfixes Version 0.21 -- 20 September 1996 Sven Verdoolaege o Bugfix Version 0.2 -- 19 September 1996 Sven Verdoolaege o First Version based on sfio Version 0.1 -- 12 June 1996 o Original version from Open Market's FastCGI Developer's Kit PK®ZZØx READMEnuW+A„¶$Id: README,v 1.7 2001/10/04 08:08:34 skimo Exp $ Copyright (c) 1996 Open Market, Inc. See the file "LICENSE.TERMS" for information on usage and redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. Copyright (c) 1996-1998 Sven Verdoolaege No additional restrictions/warranties. This is a Fast CGI module for perl. It's based on the FCGI module that comes with Open Market's FastCGI Developer's Kit, but does not require you to recompile perl. It even no longer requires perl to be compiled with sfio. To compile with sfio you'll need at least perl 5.003_02 and you'll have to have configured it with eg './Configure -Duseperlio -Dusesfio'. (See the INSTALL file that comes with the perl distribution.) To compile without sfio you'll need an even more recent perl version. (perl 5.004 and up should be fine.) See http://www.fastcgi.com/ for more information about fastcgi. Lincoln D. Stein's perl CGI module also contains some information about fastcgi programming. See echo.fpl for an example on how to use this module. To install, do the usual perl Makefile.PL make make install If you want to use the (experimental) pure perl version, that doesn't require a compiler and currently only works on Unix, you have to pass the --pure-perl option as in "perl Makefile.PL --pure-perl". Note that the pure version does not support Window's Named Pipes. Support for Named Pipes is not a requirement of the FastCGI specification. Named Pipes are used by mod_fastcgi and the FastCGI application library as a replacement for Unix sockets. mod_fastcgi uses Named Pipes on Windows (Unix sockets on Unix) by default (see the mod_fastcgi docs for more information). If you want the module to use a previously installed fcgi library instead of the included files, use the --use-installed option, optionally followed by the name of the directory in which it can be found. To configure the library Makefile.PL will run ./configure . You may want to run it yourself beforehand because its findings may not always be correct. The configure.readme file describes how to run ./configure (and only that). If you're on a solaris system and your installed fcgi library is 2.02b or earlier, you'll probably want to use the included files. The old interface of the FCGI module installs die and warn handlers that merely print the error/warning to STDERR (the default handlers print directly to stderr, which isn't redirected in the non sfio case). I'm not very happy with the result. Suggestions welcome. Sven Verdoolaege skimo@kotnet.org PK®Z,RŸŸ LICENSE.TERMSnuW+A„¶PK®Zô Ê-Ê- ÜChangeLognuW+A„¶PK®ZZØx ß4READMEnuW+A„¶PKÜ?