[arch-commits] Commit in perl-anyevent/trunk (PKGBUILD issue53923.patch)

Felix Yan felixonmars at archlinux.org
Wed May 24 06:35:35 UTC 2017


    Date: Wednesday, May 24, 2017 @ 06:35:35
  Author: felixonmars
Revision: 296523

upgpkg: perl-anyevent 4:7.13-2

add a patch for FS#53923

Added:
  perl-anyevent/trunk/issue53923.patch
Modified:
  perl-anyevent/trunk/PKGBUILD

------------------+
 PKGBUILD         |   17 +++++++++++++----
 issue53923.patch |   26 ++++++++++++++++++++++++++
 2 files changed, 39 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-05-23 21:36:26 UTC (rev 296522)
+++ PKGBUILD	2017-05-24 06:35:35 UTC (rev 296523)
@@ -3,7 +3,7 @@
 
 pkgname=perl-anyevent
 pkgver=7.13
-pkgrel=1
+pkgrel=2
 epoch=4
 pkgdesc='The DBI of event loop programming'
 arch=('any')
@@ -10,6 +10,7 @@
 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'
@@ -17,9 +18,17 @@
             'perl-json-xs: send or receive JSON with AnyEvent::Handle'
             '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")
-md5sums=('70eea152cf4686f8f351aa8bc96157f9')
+source=("http://search.cpan.org/CPAN/authors/id/M/ML/MLEHMANN/AnyEvent-$pkgver.tar.gz"
+        issue53923.patch)
+md5sums=('70eea152cf4686f8f351aa8bc96157f9'
+         'e6e9e44caa1610a1d527c76258270d7a')
 
+prepare() {
+  cd AnyEvent-$pkgver
+  # https://rt.cpan.org/Public/Bug/Display.html?id=118584
+  patch -p1 -i ../issue53923.patch
+}
+
 build() {
   cd AnyEvent-$pkgver
   perl Makefile.PL INSTALLDIRS=vendor
@@ -28,7 +37,7 @@
 
 check() {
   cd AnyEvent-$pkgver
-  make test
+  PERL_ANYEVENT_LOOP_TESTS=true make test
 }
 
 package() {

Added: issue53923.patch
===================================================================
--- issue53923.patch	                        (rev 0)
+++ issue53923.patch	2017-05-24 06:35:35 UTC (rev 296523)
@@ -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 ());



More information about the arch-commits mailing list