Hi, Peter: Thank you for your information. I searched this information in Chinese, and it's comes this: https://blog.lyz810.com/article/2016/09/shadowsocks-with-openssl-greater-than-110/ (don't open it, the CA is wosign. I don't trust it, so I opened in a VM) According to this article, that's because openssl 1.1 removed EVP_CIPHER_CTX_cleanup. That made it incompatible with shadowsocks. The same article suggest to substitute this function with EVP_CIPHER_CTX_reset. Unfortunately, according to my test, simply replacement will make shadowsocks not compatible with openssl1.0.2. So I had to write some extra code to fix it. This might be prepared in one or two days. Thank you again. Sincerely Shell.Xu
On Sat, Nov 19, 2016 at 10:29 PM, Peter Gervai <g...@grin.hu> wrote: > Package: shadowsocks > Version: 2.9.0-1 > Severity: grave > Justification: renders package unusable > > (If you believe this is libssl1.1 bug feel free to reassign.) > > The program simply won't start in sid: > > INFO: loading config from /etc/shadowsocks/config.json > 2016-11-19 15:20:09 INFO loading libcrypto from libcrypto.so.1.1 > Traceback (most recent call last): > File "/usr/bin/ssserver", line 11, in <module> > load_entry_point('shadowsocks==2.9.0', 'console_scripts', > 'ssserver')() > File "/usr/lib/python2.7/dist-packages/shadowsocks/server.py", line 34, > in main > config = shell.get_config(False) > File "/usr/lib/python2.7/dist-packages/shadowsocks/shell.py", line 270, > in get_config > check_config(config, is_local) > File "/usr/lib/python2.7/dist-packages/shadowsocks/shell.py", line 125, > in check_config > encrypt.try_cipher(config['password'], config['method']) > File "/usr/lib/python2.7/dist-packages/shadowsocks/encrypt.py", line > 44, in try_cipher > Encryptor(key, method) > File "/usr/lib/python2.7/dist-packages/shadowsocks/encrypt.py", line > 84, in __init__ > random_string(self._method_info[1])) > File "/usr/lib/python2.7/dist-packages/shadowsocks/encrypt.py", line > 110, in get_cipher > return m[2](method, key, iv, op) > File "/usr/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py", > line 76, in __init__ > load_openssl() > File "/usr/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py", > line 52, in load_openssl > libcrypto.EVP_CIPHER_CTX_cleanup.argtypes = (c_void_p,) > File "/usr/lib/python2.7/ctypes/__init__.py", line 375, in __getattr__ > func = self.__getitem__(name) > File "/usr/lib/python2.7/ctypes/__init__.py", line 380, in __getitem__ > func = self._FuncPtr((name_or_ordinal, self)) > AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined > symbol: EVP_CIPHER_CTX_cleanup > > Seems to have a closed (unreasolved) upstream issue about it, closed > inconsistently: > https://github.com/shadowsocks/shadowsocks/issues/646 > > > -- System Information: > Debian Release: stretch/sid > APT prefers unstable > APT policy: (500, 'unstable') > Architecture: amd64 (x86_64) > Foreign Architectures: i386 > > Kernel: Linux 4.6.0-1-amd64 (SMP w/8 CPU cores) > Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) > Shell: /bin/sh linked to /bin/bash > Init: sysvinit (via /sbin/init) > > Versions of packages shadowsocks depends on: > ii lsb-base 9.20161101 > ii python 2.7.11-2 > ii python-m2crypto 0.24.0-1 > ii python-pkg-resources 28.7.1-1 > pn python:any <none> > > shadowsocks recommends no packages. > > shadowsocks suggests no packages. > > -- Configuration Files: > /etc/shadowsocks/config.json changed [not included] > > -- no debconf information > -- 彼節者有間,而刀刃者無厚;以無厚入有間,恢恢乎其於游刃必有餘地矣。 blog: http://shell909090.org/ twitter: @shell909090 <https://twitter.com/shell909090> about.me: http://about.me/shell909090