extra/perl-anyevent to 7.13-2

This commit is contained in:
Kevin Mihelich 2017-05-24 12:37:30 +00:00
parent 31f39dcb60
commit e98ad3bc1a
3 changed files with 35 additions and 13 deletions

View file

@ -6,13 +6,14 @@
pkgname=perl-anyevent
pkgver=7.13
pkgrel=1.1
pkgrel=2
epoch=4
pkgdesc='The DBI of event loop programming'
arch=('any')
url="https://metacpan.org/release/AnyEvent"
license=('PerlArtistic' 'GPL')
depends=('perl')
checkdepends=('glib-perl' 'perl-async-interrupt' 'perl-ev' 'perl-net-ssleay')
optdepends=('perl-async-interrupt: for fast signal handling'
'perl-ev: for the recommended EV event loop backend'
'perl-guard: to speed up guards'
@ -21,12 +22,16 @@ optdepends=('perl-async-interrupt: for fast signal handling'
'perl-net-ssleay: TLS/SSL connections with AnyEvent::Handle')
options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/M/ML/MLEHMANN/AnyEvent-$pkgver.tar.gz"
'openssl.patch')
issue53923.patch
openssl.patch)
md5sums=('70eea152cf4686f8f351aa8bc96157f9'
'45b5b96cfd67a1ae2c1c36d4d7941c0d')
'e6e9e44caa1610a1d527c76258270d7a'
'fa31c399ba591a634c3165420a273f33')
prepare() {
cd AnyEvent-$pkgver
# https://rt.cpan.org/Public/Bug/Display.html?id=118584
patch -p1 -i ../issue53923.patch
patch -p1 -i ../openssl.patch
}
@ -38,7 +43,7 @@ build() {
check() {
cd AnyEvent-$pkgver
make test
PERL_ANYEVENT_LOOP_TESTS=true make test
}
package() {

View file

@ -0,0 +1,26 @@
--- AnyEvent/lib/AnyEvent/Handle.pm 2016/10/30 23:03:36 1.248
+++ AnyEvent/lib/AnyEvent/Handle.pm 2016/11/26 03:34:50 1.249
@@ -2195,19 +2195,19 @@
# basically, this is deep magic (because SSL_read should have the same issues)
# but the openssl maintainers basically said: "trust us, it just works".
# (unfortunately, we have to hardcode constants because the abysmally misdesigned
- # and mismaintained ssleay-module doesn't even offer them).
+ # and mismaintained ssleay-module didn't offer them for a decade or so).
# http://www.mail-archive.com/openssl-dev@openssl.org/msg22420.html
#
# in short: this is a mess.
- #
+ #
# note that we do not try to keep the length constant between writes as we are required to do.
# we assume that most (but not all) of this insanity only applies to non-blocking cases,
# and we drive openssl fully in blocking mode here. Or maybe we don't - openssl seems to
# have identity issues in that area.
-# Net::SSLeay::CTX_set_mode ($ssl,
+# Net::SSLeay::set_mode ($ssl,
# (eval { local $SIG{__DIE__}; Net::SSLeay::MODE_ENABLE_PARTIAL_WRITE () } || 1)
# | (eval { local $SIG{__DIE__}; Net::SSLeay::MODE_ACCEPT_MOVING_WRITE_BUFFER () } || 2));
- Net::SSLeay::CTX_set_mode ($tls, 1|2);
+ Net::SSLeay::set_mode ($tls, 1|2);
$self->{_rbio} = Net::SSLeay::BIO_new (Net::SSLeay::BIO_s_mem ());
$self->{_wbio} = Net::SSLeay::BIO_new (Net::SSLeay::BIO_s_mem ());

View file

@ -10,12 +10,3 @@ diff -urN a/lib/AnyEvent/Handle.pm b/lib/AnyEvent/Handle.pm
and (delete $self->{_on_starttls})->($self, 1, "TLS/SSL connection established");
}
@@ -2224,7 +2224,7 @@
# Net::SSLeay::CTX_set_mode ($ssl,
# (eval { local $SIG{__DIE__}; Net::SSLeay::MODE_ENABLE_PARTIAL_WRITE () } || 1)
# | (eval { local $SIG{__DIE__}; Net::SSLeay::MODE_ACCEPT_MOVING_WRITE_BUFFER () } || 2));
- Net::SSLeay::CTX_set_mode ($tls, 1|2);
+ Net::SSLeay::set_mode ($tls, 1|2);
$self->{_rbio} = Net::SSLeay::BIO_new (Net::SSLeay::BIO_s_mem ());
$self->{_wbio} = Net::SSLeay::BIO_new (Net::SSLeay::BIO_s_mem ());