aboutsummaryrefslogtreecommitdiff
path: root/security/p5-Crypt-SSLeay
diff options
context:
space:
mode:
authorAnton Berezin <tobez@FreeBSD.org>2010-05-19 19:23:36 +0000
committerAnton Berezin <tobez@FreeBSD.org>2010-05-19 19:23:36 +0000
commit1555a385d1320ad99f2f21a84f509ed9e9f4ec84 (patch)
tree3cad9203a08e6ea698f1d9cdf30ecda952e72849 /security/p5-Crypt-SSLeay
parent287ac8fd08324a493c51d71cfdf2d89fbaa1bf05 (diff)
Notes
Diffstat (limited to 'security/p5-Crypt-SSLeay')
-rw-r--r--security/p5-Crypt-SSLeay/Makefile4
-rw-r--r--security/p5-Crypt-SSLeay/files/patch-lib-Net-SSL.pm20
2 files changed, 24 insertions, 0 deletions
diff --git a/security/p5-Crypt-SSLeay/Makefile b/security/p5-Crypt-SSLeay/Makefile
index 61902a661905..f392ac07426b 100644
--- a/security/p5-Crypt-SSLeay/Makefile
+++ b/security/p5-Crypt-SSLeay/Makefile
@@ -7,6 +7,7 @@
PORTNAME= Crypt-SSLeay
PORTVERSION= 0.57
+PORTREVISION= 1
CATEGORIES= security perl5
MASTER_SITES= CPAN
PKGNAMEPREFIX= p5-
@@ -24,4 +25,7 @@ USE_OPENSSL= yes
MAN3= Crypt::SSLeay.3 Net::SSL.3
+post-patch:
+ ${RM} ${WRKSRC}/lib/Net/SSL.pm.orig
+
.include <bsd.port.mk>
diff --git a/security/p5-Crypt-SSLeay/files/patch-lib-Net-SSL.pm b/security/p5-Crypt-SSLeay/files/patch-lib-Net-SSL.pm
new file mode 100644
index 000000000000..fa29d7579fdd
--- /dev/null
+++ b/security/p5-Crypt-SSLeay/files/patch-lib-Net-SSL.pm
@@ -0,0 +1,20 @@
+--- lib/Net/SSL.pm.orig 2007-09-17 12:56:52.000000000 -0700
++++ lib/Net/SSL.pm 2010-05-19 11:23:50.000000000 -0700
+@@ -361,8 +361,15 @@
+
+ $connect_string .= $CRLF;
+ $self->SUPER::send($connect_string);
+- my $header;
+- my $n = $self->SUPER::sysread($header, 8192);
++ my $header = "";
++ my $timeout;
++ while ($header !~ m{HTTP/\d+\.\d+\s+200\s+.*\r\n\r\n}s) {
++ $timeout = $self->timeout(5) unless length $header;
++ my $n = $self->SUPER::sysread($header, 8192, length $header);
++ last if $n <= 0;
++ }
++ $self->timeout($timeout) if defined $timeout;
++
+ my $conn_ok = ($header =~ /HTTP\/\d+\.\d+\s+200\s+/is) ? 1 : 0;
+
+ if (not $conn_ok) {