pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/databases Apply fix from https://bugzilla.redhat.com/s...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/79dd2634a0e4
branches:  trunk
changeset: 355837:79dd2634a0e4
user:      he <he%pkgsrc.org@localhost>
date:      Tue Dec 13 10:38:06 2016 +0000

description:
Apply fix from https://bugzilla.redhat.com/show_bug.cgi?id=1238322
Incorrect multi-keyword mode cipherstring parsing.
Fixes CVE-2015-3276.
Submitted upstream as ITS#8543, it apparently wasn't already(!)
http://www.openldap.org/its/index.cgi/Incoming?id=8543

Bump PKGREVISION for both openldap, openldap-server and openldap-client
(to be on the safe side...)

diffstat:

 databases/openldap-client/Makefile                          |   4 +-
 databases/openldap-server/Makefile                          |   4 +-
 databases/openldap/Makefile                                 |   4 +-
 databases/openldap/distinfo                                 |   3 +-
 databases/openldap/patches/patch-libraries_libldap_tls__m.c |  44 +++++++++++++
 5 files changed, 52 insertions(+), 7 deletions(-)

diffs (101 lines):

diff -r f6d7cf18d5f6 -r 79dd2634a0e4 databases/openldap-client/Makefile
--- a/databases/openldap-client/Makefile        Tue Dec 13 09:09:12 2016 +0000
+++ b/databases/openldap-client/Makefile        Tue Dec 13 10:38:06 2016 +0000
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.24 2016/06/17 14:01:58 jperkin Exp $
+# $NetBSD: Makefile,v 1.25 2016/12/13 10:38:06 he Exp $
 
 PKGNAME=       ${DISTNAME:S/-/-client-/}
-PKGREVISION=   2
+PKGREVISION=   3
 COMMENT=       Lightweight Directory Access Protocol libraries and client programs
 
 CONFLICTS+=            openldap<2.3.23nb1
diff -r f6d7cf18d5f6 -r 79dd2634a0e4 databases/openldap-server/Makefile
--- a/databases/openldap-server/Makefile        Tue Dec 13 09:09:12 2016 +0000
+++ b/databases/openldap-server/Makefile        Tue Dec 13 10:38:06 2016 +0000
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.49 2016/07/02 21:03:08 jperkin Exp $
+# $NetBSD: Makefile,v 1.50 2016/12/13 10:38:06 he Exp $
 
 PKGNAME=       ${DISTNAME:S/-/-server-/}
-PKGREVISION=   3
+PKGREVISION=   4
 COMMENT=       Lightweight Directory Access Protocol server suite
 
 CONFLICTS+=    openldap<2.3.23nb1
diff -r f6d7cf18d5f6 -r 79dd2634a0e4 databases/openldap/Makefile
--- a/databases/openldap/Makefile       Tue Dec 13 09:09:12 2016 +0000
+++ b/databases/openldap/Makefile       Tue Dec 13 10:38:06 2016 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.145 2016/03/05 11:28:12 jperkin Exp $
+# $NetBSD: Makefile,v 1.146 2016/12/13 10:38:06 he Exp $
 
-PKGREVISION= 1
+PKGREVISION= 2
 .include "../../databases/openldap/Makefile.version"
 
 DISTNAME=      openldap-${OPENLDAP_VERSION}
diff -r f6d7cf18d5f6 -r 79dd2634a0e4 databases/openldap/distinfo
--- a/databases/openldap/distinfo       Tue Dec 13 09:09:12 2016 +0000
+++ b/databases/openldap/distinfo       Tue Dec 13 10:38:06 2016 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.107 2016/10/30 05:04:09 manu Exp $
+$NetBSD: distinfo,v 1.108 2016/12/13 10:38:06 he Exp $
 
 SHA1 (openldap-2.4.44.tgz) = 016a738d050a68d388602a74b5e991035cdba149
 RMD160 (openldap-2.4.44.tgz) = 6ea3139f630e93c6e0af60638672d88d6c535a6a
@@ -22,4 +22,5 @@
 SHA1 (patch-its7506) = a50f9428d6d7dd28f71d21e11ae3f8b0f1372f75
 SHA1 (patch-its7595) = 9ea396adb7f2fd572d60190534caa80a01ef79d2
 SHA1 (patch-libraries_libldap_os-local.c) = 7cd4f8638456fae12499de0d36d7802e47d3d688
+SHA1 (patch-libraries_libldap_tls__m.c) = 91dab1dcfa6560c30093094586ea9eabf2e977b8
 SHA1 (patch-libraries_liblmdb_mdb.c) = 590a059d784687f678ac44a577770551b11a2be5
diff -r f6d7cf18d5f6 -r 79dd2634a0e4 databases/openldap/patches/patch-libraries_libldap_tls__m.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/databases/openldap/patches/patch-libraries_libldap_tls__m.c       Tue Dec 13 10:38:06 2016 +0000
@@ -0,0 +1,44 @@
+$NetBSD: patch-libraries_libldap_tls__m.c,v 1.1 2016/12/13 10:38:06 he Exp $
+
+Incorrect multi-keyword mode cipherstring parsing.
+Lifted from https://bugzilla.redhat.com/show_bug.cgi?id=1238322
+Fixes CVE-2015-3276.
+Submitted upstream as ITS#8543
+http://www.openldap.org/its/index.cgi/Incoming?id=8543
+
+--- libraries/libldap/tls_m.c.orig     2016-02-05 23:57:45.000000000 +0000
++++ libraries/libldap/tls_m.c
+@@ -621,17 +621,23 @@ nss_parse_ciphers(const char *cipherstr,
+                        */
+                       if (mask || strength || protocol) {
+                               for (i=0; i<ciphernum; i++) {
+-                                      if (((ciphers_def[i].attr & mask) ||
+-                                               (ciphers_def[i].strength & strength) ||
+-                                               (ciphers_def[i].version & protocol)) &&
+-                                              (cipher_list[i] != -1)) {
+-                                              /* Enable the NULL ciphers only if explicity
+-                                               * requested */
+-                                              if (ciphers_def[i].attr & SSL_eNULL) {
+-                                                      if (mask & SSL_eNULL)
+-                                                              cipher_list[i] = action;
+-                                              } else
++                                      /* if more than one mask is provided
++                                       * then AND logic applies (to match openssl)
++                                       */
++                                      if ( cipher_list[i] == -1) )
++                                              continue;
++                                      if ( mask && ! (ciphers_def[i].attr & mask) )
++                                              continue;
++                                      if ( strength && ! (ciphers_def[i].strength & strength) )
++                                              continue;
++                                      if ( protocol && ! (ciphers_def[i].version & protocol) )
++                                              continue;
++                                      /* Enable the NULL ciphers only if explicity requested */
++                                      if (ciphers_def[i].attr & SSL_eNULL) {
++                                              if (mask & SSL_eNULL)
+                                                       cipher_list[i] = action;
++                                      } else
++                                              cipher_list[i] = action;
+                                       }
+                               }
+                       } else {



Home | Main Index | Thread Index | Old Index