net-misc/openssh: Update hpn patch to remove another theoretic race
authorPatrick McLean <chutzpah@gentoo.org>
Wed, 7 Sep 2016 22:23:49 +0000 (15:23 -0700)
committerPatrick McLean <chutzpah@gentoo.org>
Wed, 7 Sep 2016 22:24:07 +0000 (15:24 -0700)
Package-Manager: portage-2.3.0

net-misc/openssh/files/openssh-7.3_p1-hpn-update.patch
net-misc/openssh/openssh-7.3_p1-r3.ebuild

index 34acd5d692b9f87b350d7a64b6164835ae30c179..e8d462cb6222515d7c34a12291d295630c17f8ce 100644 (file)
@@ -1,5 +1,5 @@
 --- openssh-7_2_P2-hpn-14.10.diff.orig 2016-09-01 10:34:05.905112131 -0700
-+++ openssh-7_2_P2-hpn-14.10.diff      2016-09-07 11:37:21.455870893 -0700
++++ openssh-7_2_P2-hpn-14.10.diff      2016-09-07 15:13:59.267910872 -0700
 @@ -156,145 +156,6 @@
        compat.o crc32.o deattack.o fatal.o hostfile.o \
        log.o match.o md-sha256.o moduli.o nchan.o packet.o opacket.o \
  +
  +             c->state = HAVE_NONE;
  +             for (i = 0; i < NUMKQ; i++) {
-@@ -966,7 +836,9 @@
+@@ -966,10 +836,12 @@
  +             /* Start threads */
  +             for (i = 0; i < CIPHER_THREADS; i++) {
  +                     debug("spawned a thread");
 ++                     pthread_rwlock_unlock(&c->thread_lock);
  +             }
  +             pthread_mutex_lock(&c->q[0].lock);
- +             while (c->q[0].qstate != KQDRAINING)
+-+             while (c->q[0].qstate != KQDRAINING)
+++             while (c->q[0].qstate == KQINIT)
+ +                     pthread_cond_wait(&c->q[0].cond, &c->q[0].lock);
+ +             pthread_mutex_unlock(&c->q[0].lock);
+ +     }
 @@ -1003,7 +875,9 @@
  +     /* reconstruct threads */
  +     for (i = 0; i < CIPHER_THREADS; i++) {
index ddaf4581fba5fac1a6ad28503d0a07a84e70c42b..be91ad461a2270d13b9a20fabb9806c1ccbdc2a0 100644 (file)
@@ -36,12 +36,13 @@ LICENSE="BSD GPL-2"
 SLOT="0"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~arm-linux ~x86-linux"
 # Probably want to drop ssl defaulting to on in a future version.
-IUSE="bindist debug ${HPN_PATCH:++}hpn kerberos kernel_linux ldap ldns libedit libressl livecd pam +pie sctp selinux skey ssh1 +ssl static X X509"
+IUSE="bindist debug ${HPN_PATCH:++}hpn kerberos kernel_linux ldap ldns libedit libressl livecd pam +pie sctp selinux skey ssh1 +ssl static test X X509"
 REQUIRED_USE="ldns? ( ssl )
        pie? ( !static )
        ssh1? ( ssl )
        static? ( !kerberos !pam )
-       X509? ( !ldap ssl )"
+       X509? ( !ldap ssl )
+       test? ( ssl )"
 
 LIB_DEPEND="
        ldns? (