Bug#844213: pyelliptic: FTBFS: AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: ECDH_OpenSSL

2016-12-19 Thread Adrian Bunk
On Sat, Nov 26, 2016 at 03:00:14PM +0500, Andrey Rahmatullin wrote:
> Control: retitle -1 Does not support OpenSSL 1.1
> Control: forwarded -1 https://github.com/yann2192/pyelliptic/issues/50
> Control: tags -1 + upstream
> 
> On Sun, Nov 13, 2016 at 01:38:17PM +, Chris Lamb wrote:
> > File 
> > "/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_3.5/build/pyelliptic/openssl.py",
> >  line 180, in __init__
> >   self.ECDH_OpenSSL = self._lib.ECDH_OpenSSL
> > File "/usr/lib/python3.5/ctypes/__init__.py", line 360, in __getattr__
> >   func = self.__getitem__(name)
> > File "/usr/lib/python3.5/ctypes/__init__.py", line 365, in __getitem__
> >   func = self._FuncPtr((name_or_ordinal, self))
> >   AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined 
> > symbol: ECDH_OpenSSL
> Actually this means the module cannot work with libcrypto.so.1.1 as it
> expects functions that are not present anymore.
> Probably most of the used ones are still there but it still requires
> checking and patching because right now the module cannot be imported.

As a workaround, the attached patch works in combination with the 
following change to debian/control:

--- debian/control.old  2016-12-20 04:38:28.0 +
+++ debian/control  2016-12-20 04:38:47.0 +
@@ -2,7 +2,7 @@
 Section: python
 Priority: optional
 Maintainer: Riley Baird 
-Build-Depends: debhelper (>= 9), dh-python, python-all, python-setuptools, 
python3-all, python3-setuptools
+Build-Depends: debhelper (>= 9), dh-python, python-all, python-setuptools, 
python3-all, python3-setuptools, libssl1.0.2
 Standards-Version: 3.9.6
 Vcs-Git: git://anonscm.debian.org/collab-maint/pyelliptic.git
 Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/pyelliptic.git
@@ -10,7 +10,7 @@
 
 Package: python-pyelliptic
 Architecture: all
-Depends: ${python:Depends}, ${misc:Depends}, openssl
+Depends: ${python:Depends}, ${misc:Depends}, openssl, libssl1.0.2
 Description: High level Python wrapper for OpenSSL (Python 2)
  PyElliptic is a Python module that provides high level access to the
  OpenSSL library, featuring elliptic curve cryptography (ECC), symmetric
@@ -33,7 +33,7 @@
 
 Package: python3-pyelliptic
 Architecture: all
-Depends: ${python3:Depends}, ${misc:Depends}, openssl
+Depends: ${python3:Depends}, ${misc:Depends}, openssl, libssl1.0.2
 Description: High level Python wrapper for OpenSSL (Python 3)
  PyElliptic is a Python module that provides high level access to the
  OpenSSL library, featuring elliptic curve cryptography (ECC), symmetric


> WBR, wRAR

cu
Adrian

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed

Description: Use libcrypto.so.1.0.2
 The code does not work with libssl1.1
Author: Adrian Bunk 
Bug-Debian: https://bugs.debian.org/844213

--- pyelliptic-1.5.7.orig/pyelliptic/openssl.py
+++ pyelliptic-1.5.7/pyelliptic/openssl.py
@@ -519,7 +519,7 @@ class _OpenSSL:
 def get_error(self):
 return OpenSSL.ERR_error_string(OpenSSL.ERR_get_error(), None)
 
-libname = ctypes.util.find_library('crypto')
+libname = "libcrypto.so.1.0.2"
 if libname is None:
 # For Windows ...
 libname = ctypes.util.find_library('libeay32.dll')


Processed: Re: Bug#844213: pyelliptic: FTBFS: AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: ECDH_OpenSSL

2016-11-26 Thread Debian Bug Tracking System
Processing control commands:

> retitle -1 Does not support OpenSSL 1.1
Bug #844213 [src:pyelliptic] pyelliptic: FTBFS: AttributeError: 
/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: ECDH_OpenSSL
Changed Bug title to 'Does not support OpenSSL 1.1' from 'pyelliptic: FTBFS: 
AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: 
ECDH_OpenSSL'.
> forwarded -1 https://github.com/yann2192/pyelliptic/issues/50
Bug #844213 [src:pyelliptic] Does not support OpenSSL 1.1
Set Bug forwarded-to-address to 
'https://github.com/yann2192/pyelliptic/issues/50'.
> tags -1 + upstream
Bug #844213 [src:pyelliptic] Does not support OpenSSL 1.1
Added tag(s) upstream.

-- 
844213: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=844213
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Processed: Re: Bug#844213: pyelliptic: FTBFS: AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: ECDH_OpenSSL

2016-11-26 Thread Debian Bug Tracking System
Processing control commands:

> retitle -1 Does not support OpenSSL 1.1
Bug #844213 [src:pyelliptic] Does not support OpenSSL 1.1
Ignoring request to change the title of bug#844213 to the same title
> forwarded -1 https://github.com/yann2192/pyelliptic/issues/50
Bug #844213 [src:pyelliptic] Does not support OpenSSL 1.1
Ignoring request to change the forwarded-to-address of bug#844213 to the same 
value
> tags -1 + upstream
Bug #844213 [src:pyelliptic] Does not support OpenSSL 1.1
Ignoring request to alter tags of bug #844213 to the same tags previously set

-- 
844213: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=844213
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#844213: pyelliptic: FTBFS: AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: ECDH_OpenSSL

2016-11-26 Thread Andrey Rahmatullin
Control: retitle -1 Does not support OpenSSL 1.1
Control: forwarded -1 https://github.com/yann2192/pyelliptic/issues/50
Control: tags -1 + upstream

On Sun, Nov 13, 2016 at 01:38:17PM +, Chris Lamb wrote:
> File 
> "/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_3.5/build/pyelliptic/openssl.py",
>  line 180, in __init__
>   self.ECDH_OpenSSL = self._lib.ECDH_OpenSSL
> File "/usr/lib/python3.5/ctypes/__init__.py", line 360, in __getattr__
>   func = self.__getitem__(name)
> File "/usr/lib/python3.5/ctypes/__init__.py", line 365, in __getitem__
>   func = self._FuncPtr((name_or_ordinal, self))
>   AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined 
> symbol: ECDH_OpenSSL
Actually this means the module cannot work with libcrypto.so.1.1 as it
expects functions that are not present anymore.
Probably most of the used ones are still there but it still requires
checking and patching because right now the module cannot be imported.


-- 
WBR, wRAR


signature.asc
Description: PGP signature


Bug#844213: pyelliptic: FTBFS: AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: ECDH_OpenSSL

2016-11-13 Thread Chris Lamb
Source: pyelliptic
Version: 1.5.7-1
Severity: serious
Justification: fails to build from source
User: reproducible-bui...@lists.alioth.debian.org
Usertags: ftbfs
X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org

Dear Maintainer,

pyelliptic fails to build from source in unstable/amd64:

  […]

 dh_auto_test -O--buildsystem=pybuild
  I: pybuild base:184: cd 
/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_2.7/build;
 python2.7 -m unittest discover -v 
  
  --
  Ran 0 tests in 0.000s
  
  OK
  I: pybuild base:184: cd 
/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_3.5/build;
 python3.5 -m unittest discover -v 
  pyelliptic (unittest.loader._FailedTest) ... ERROR
  
  ==
  ERROR: pyelliptic (unittest.loader._FailedTest)
  --
  ImportError: Failed to import test module: pyelliptic
  Traceback (most recent call last):
File "/usr/lib/python3.5/unittest/loader.py", line 462, in _find_test_path
  package = self._get_module_from_name(name)
File "/usr/lib/python3.5/unittest/loader.py", line 369, in 
_get_module_from_name
  __import__(name)
File 
"/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_3.5/build/pyelliptic/__init__.py",
 line 43, in 
  from .openssl import OpenSSL
File 
"/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_3.5/build/pyelliptic/openssl.py",
 line 528, in 
  OpenSSL = _OpenSSL(libname)
File 
"/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_3.5/build/pyelliptic/openssl.py",
 line 180, in __init__
  self.ECDH_OpenSSL = self._lib.ECDH_OpenSSL
File "/usr/lib/python3.5/ctypes/__init__.py", line 360, in __getattr__
  func = self.__getitem__(name)
File "/usr/lib/python3.5/ctypes/__init__.py", line 365, in __getitem__
  func = self._FuncPtr((name_or_ordinal, self))
  AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: 
ECDH_OpenSSL
  
  
  --
  Ran 1 test in 0.000s
  
  FAILED (errors=1)
  E: pybuild pybuild:276: test: plugin distutils failed with: exit code=1: cd 
/home/lamby/temp/cdt.20161113133613.EaqJ9PdLlW.db.pyelliptic/pyelliptic-1.5.7/.pybuild/pythonX.Y_3.5/build;
 python3.5 -m unittest discover -v 
  dh_auto_test: pybuild --test -i python{version} -p 3.5 returned exit code 13
  debian/rules:5: recipe for target 'build' failed
  make: *** [build] Error 25

  […]

The full build log is attached.


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-


pyelliptic.1.5.7-1.unstable.amd64.log.txt.gz
Description: Binary data