Index: files/patch-http-ssl =================================================================== --- files/patch-http-ssl (nonexistent) +++ files/patch-http-ssl (working copy) @@ -0,0 +1,167 @@ +diff -u ../HTTP-Daemon-SSL-1.04/Changes ./Changes +--- ../HTTP-Daemon-SSL-1.04/Changes 2008-02-12 02:27:03.000000000 +0100 ++++ ./Changes 2009-12-09 12:51:02.000000000 +0100 +@@ -1,3 +1,14 @@ ++v1.05_01 ++ - dev release ++ - re-introducing _need_more to work around issue in base LWP ++ http://rt.cpan.org/Ticket/Display.html?id=45625 ++ - will need further testing on the two bugs below which were ++ resolved by removing it (or hopefully the base issue will ++ be resolved) ++ - also resolved: ++ http://rt.cpan.org/Ticket/Display.html?id=46038 ++ http://rt.cpan.org/Ticket/Display.html?id=45153 ++ + v1.04 + - production release + - only documentation and text file changes from 1.03_02 +diff -u ../HTTP-Daemon-SSL-1.04/MANIFEST ./MANIFEST +--- ../HTTP-Daemon-SSL-1.04/MANIFEST 2008-02-12 02:27:03.000000000 +0100 ++++ ./MANIFEST 2009-12-09 12:52:11.000000000 +0100 +@@ -5,9 +5,15 @@ + Changes + Makefile.PL + MANIFEST ++MANIFEST.SKIP ++META.yml Module meta-data (added by MakeMaker) + README + SSL.pm + t/loadmodule.t +-t/testmodule.t ++t/pod.t ++t/post.t ++t/post500k ++t/post66k ++t/post67k + t/ssl_settings.req +-META.yml Module meta-data (added by MakeMaker) ++t/testmodule.t +Only in .: MANIFEST.SKIP +diff -u ../HTTP-Daemon-SSL-1.04/META.yml ./META.yml +--- ../HTTP-Daemon-SSL-1.04/META.yml 2008-02-12 02:27:03.000000000 +0100 ++++ ./META.yml 2009-12-09 12:58:24.000000000 +0100 +@@ -1,12 +1,23 @@ +-# http://module-build.sourceforge.net/META-spec.html +-name: HTTP-Daemon-SSL +-version: 1.04 +-version_from: SSL.pm +-installdirs: site +-license: perl ++--- #YAML:1.0 ++name: HTTP-Daemon-SSL ++version: 1.05_01 ++abstract: ~ ++author: [] ++license: unknown ++distribution_type: module ++configure_requires: ++ ExtUtils::MakeMaker: 0 ++build_requires: ++ ExtUtils::MakeMaker: 0 + requires: +- HTTP::Daemon: 1 +- IO::Socket::SSL: 0.93 +- +-distribution_type: module +-generated_by: ExtUtils::MakeMaker version 6.17 ++ HTTP::Daemon: 1 ++ IO::Socket::SSL: 0.93 ++ Test::More: 0 ++no_index: ++ directory: ++ - t ++ - inc ++generated_by: ExtUtils::MakeMaker version 6.55_02 ++meta-spec: ++ url: http://module-build.sourceforge.net/META-spec-v1.4.html ++ version: 1.4 +diff -u ../HTTP-Daemon-SSL-1.04/Makefile.PL ./Makefile.PL +--- ../HTTP-Daemon-SSL-1.04/Makefile.PL 2008-02-12 02:27:03.000000000 +0100 ++++ ./Makefile.PL 2009-12-09 10:59:28.000000000 +0100 +@@ -9,6 +9,10 @@ + 'NAME' => 'HTTP::Daemon::SSL', + 'VERSION_FROM' => 'SSL.pm', + 'DISTNAME' => 'HTTP-Daemon-SSL', +- 'PREREQ_PM' => { 'HTTP::Daemon' => 1.0, 'IO::Socket::SSL' => 0.93 }, ++ 'PREREQ_PM' => { ++ 'HTTP::Daemon' => 1.0, ++ 'IO::Socket::SSL' => 0.93, ++ 'Test::More' => 0, ++ }, + 'dist' => { COMPRESS => 'gzip', SUFFIX => 'gz', }, + ); +diff -u ../HTTP-Daemon-SSL-1.04/SSL.pm ./SSL.pm +--- ../HTTP-Daemon-SSL-1.04/SSL.pm 2008-02-12 02:27:03.000000000 +0100 ++++ ./SSL.pm 2009-12-09 12:51:38.000000000 +0100 +@@ -72,7 +72,7 @@ + use IO::Socket::SSL; + use HTTP::Daemon; + +-$VERSION = "1.04"; ++$VERSION = "1.05_01"; + @ISA = qw(IO::Socket::SSL HTTP::Daemon); + + =item $d = new HTTP::Daemon::SSL +@@ -160,6 +160,44 @@ + @ISA = qw(IO::Socket::SSL HTTP::Daemon::ClientConn); + *DEBUG = \$HTTP::Daemon::DEBUG; + ++sub _need_more ++{ ++ my $self = shift; ++ if ($_[1]) { ++ my($timeout, $fdset) = @_[1,2]; ++ print STDERR "select(,,,$timeout)\n" if $DEBUG; ++ my $n = select($fdset,undef,undef,$timeout); ++ unless ($n) { ++ $self->reason(defined($n) ? "Timeout" : "select: $!"); ++ return; ++ } ++ } ++ my $total = 0; ++ while (1){ ++ print STDERR sprintf("sysread() already %d\n",$total) if $DEBUG; ++ my $n = sysread($self, $_[0], 2048, length($_[0])); ++ print STDERR sprintf("sysread() just \$n=%s\n",(defined $n?$n:'undef')) if $DEBUG; ++ $total += $n if defined $n; ++ last if $! =~ 'Resource temporarily unavailable'; ++ #SSL_Error because of aggressive reading ++ ++ $self->reason(defined($n) ? "Client closed" : "sysread: $!") unless $n; ++ last unless $n; ++ last unless $n == 2048; ++ } ++ $total; ++} ++ ++ ++=back ++ ++=head1 BUGS ++ ++There is a problem with the interaction between the L base class and ++L buffering which causes large post or put actions (>66k or so, ++depending on your OS) to hang. ++ ++See L. + + =head1 SEE ALSO + +@@ -167,10 +205,13 @@ + + L, L, L + ++Github repository: L ++ + =head1 COPYRIGHT + + Code and documentation from HTTP::Daemon Copyright 1996-2001, Gisle Aas + Changes Copyright 2003-2004, Peter Behroozi ++Changes Copyright 2007-2009, Mark Aufflick C<< >> + + This library is free software; you can redistribute it and/or + modify it under the same terms as Perl itself. +Common subdirectories: ../HTTP-Daemon-SSL-1.04/certs and ./certs +Only in .: d +Common subdirectories: ../HTTP-Daemon-SSL-1.04/t and ./t Property changes on: files/patch-http-ssl ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property