Sat Jan 28 12:09:14 2017 UTC ()
Updated py-OpenSSL to 16.2.0.

Add patch that makes tests on NetBSD progress further.
But then there's a segfault. See
https://github.com/pyca/pyopenssl/issues/596

16.2.0 (2016-10-15)
-------------------

Changes:
^^^^^^^^

- Fixed compatibility errors with OpenSSL 1.1.0.
- Fixed an issue that caused failures with subinterpreters and embedded Pythons.
  `#552 <https://github.com/pyca/pyopenssl/pull/552>`_

16.1.0 (2016-08-26)
-------------------

Deprecations:
^^^^^^^^^^^^^

- Dropped support for OpenSSL 0.9.8.

Changes:
^^^^^^^^

- Fix memory leak in ``OpenSSL.crypto.dump_privatekey()`` with ``FILETYPE_TEXT``.
  `#496 <https://github.com/pyca/pyopenssl/pull/496>`_
- Enable use of CRL (and more) in verify context.
  `#483 <https://github.com/pyca/pyopenssl/pull/483>`_
- ``OpenSSL.crypto.PKey`` can now be constructed from ``cryptography`` objects and also exported as such.
  `#439 <https://github.com/pyca/pyopenssl/pull/439>`_
- Support newer versions of ``cryptography`` which use opaque structs for OpenSSL 1.1.0 compatibility.


(wiz)
diff -r1.39 -r1.40 pkgsrc/security/py-OpenSSL/Makefile
diff -r1.12 -r1.13 pkgsrc/security/py-OpenSSL/distinfo
diff -r0 -r1.1 pkgsrc/security/py-OpenSSL/patches/patch-tests_memdbg.py

cvs diff -r1.39 -r1.40 pkgsrc/security/py-OpenSSL/Makefile (expand / switch to context diff)
--- pkgsrc/security/py-OpenSSL/Makefile 2016/06/08 17:43:38 1.39
+++ pkgsrc/security/py-OpenSSL/Makefile 2017/01/28 12:09:14 1.40
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.39 2016/06/08 17:43:38 wiz Exp $
+# $NetBSD: Makefile,v 1.40 2017/01/28 12:09:14 wiz Exp $
 
-DISTNAME=	pyOpenSSL-16.0.0
+DISTNAME=	pyOpenSSL-16.2.0
 PKGNAME=	${PYPKGPREFIX}-${DISTNAME:S/py//}
 CATEGORIES=	security python
 MASTER_SITES=	${MASTER_SITE_PYPI:=p/pyOpenSSL/}
@@ -12,6 +12,8 @@
 
 DEPENDS+=	${PYPKGPREFIX}-cryptography>=0.3:../../security/py-cryptography
 DEPENDS+=	${PYPKGPREFIX}-six>=1.5.2:../../lang/py-six
+# TEST_DEPENDS
+BUILD_DEPENDS+=	${PYPKGPREFIX}-test-[0-9]*:../../devel/py-test
 
 .include "../../lang/python/egg.mk"
 .include "../../security/openssl/buildlink3.mk"

cvs diff -r1.12 -r1.13 pkgsrc/security/py-OpenSSL/distinfo (expand / switch to context diff)
--- pkgsrc/security/py-OpenSSL/distinfo 2016/04/20 16:05:57 1.12
+++ pkgsrc/security/py-OpenSSL/distinfo 2017/01/28 12:09:14 1.13
@@ -1,6 +1,7 @@
-$NetBSD: distinfo,v 1.12 2016/04/20 16:05:57 leot Exp $
+$NetBSD: distinfo,v 1.13 2017/01/28 12:09:14 wiz Exp $
 
-SHA1 (pyOpenSSL-16.0.0.tar.gz) = 4efb8f880743acf48070d3adaf9f0bce5601e6a8
+SHA1 (pyOpenSSL-16.2.0.tar.gz) = ee0beabb001369d5fbb91ef71276cad73b3df21d
-RMD160 (pyOpenSSL-16.0.0.tar.gz) = 5743ac77e6accd99ce645adbfff559ba379f94b7
+RMD160 (pyOpenSSL-16.2.0.tar.gz) = de7809b08f9a3cef806784ec366000f4d044dc81
-SHA512 (pyOpenSSL-16.0.0.tar.gz) = ba67a34e04e383ab42b619c5d9e73206672d584b0795e1d09c5de7e624bff0e3bd9f9e69d51a92d6a40e4000408ae21d5d2ac281f22aeca2e8681e6fa762a081
+SHA512 (pyOpenSSL-16.2.0.tar.gz) = c1b068137a492564fe958603712d401b7ee0def94c01a28be55f5c89e07c25684ecb0f465f3c56f35924bde038894f2914ac49539144845fb586d12b80307078
-Size (pyOpenSSL-16.0.0.tar.gz) = 171929 bytes
+Size (pyOpenSSL-16.2.0.tar.gz) = 167305 bytes
+SHA1 (patch-tests_memdbg.py) = 5ae8ea838363e1a9ee434c5c7dd39f5ba58471b2

File Added: pkgsrc/security/py-OpenSSL/patches/patch-tests_memdbg.py
$NetBSD: patch-tests_memdbg.py,v 1.1 2017/01/28 12:09:14 wiz Exp $

Fix running test on NetBSD.
Breaks Linux, but I expect more people to run the tests on NetBSD.
https://github.com/pyca/pyopenssl/issues/595

--- tests/memdbg.py.orig	2016-02-15 10:25:58.000000000 +0000
+++ tests/memdbg.py
@@ -18,16 +18,16 @@ _ffi.cdef(
 
     int  CRYPTO_set_mem_functions(void *(*m)(size_t),void *(*r)(void *,size_t), void (*f)(void *));
 
-    int backtrace(void **buffer, int size);
-    char **backtrace_symbols(void *const *buffer, int size);
-    void backtrace_symbols_fd(void *const *buffer, int size, int fd);
+    size_t backtrace(void **buffer, size_t size);
+    char **backtrace_symbols(void *const *buffer, size_t size);
+    void backtrace_symbols_fd(void *const *buffer, size_t size, int fd);
     """)  # noqa
 _api = _ffi.verify(
     """
     #include <openssl/crypto.h>
     #include <stdlib.h>
     #include <execinfo.h>
-    """, libraries=["crypto"])
+    """, libraries=["crypto", "execinfo"])
 C = _ffi.dlopen(None)
 
 verbose = False