multiples issues with raspberry
hello i have some small issue with build for arm, I have test under raspios
To complete, i compile source from github to have the latest release, in static (no shared library).
1/ In the Public Hub list In all cases the padlock is replaced by a square
2/ Unable to connect to some adcs hub [11:04:22] * Connecting to adcs://babylon.aab21pro.org:412 [11:04:22] * Fail: SSL Error: error:00000001:lib(0):func(0):reason(1) (-1, 1)...
But for some others no problem, but not sure the tls1.3 is really enable.
The ssl version is from the raspbian repository: ii openssl 1.1.1d-0+deb10u4+rpt1 armhf Secure Sockets Layer toolkit - cryptographic utility
I have install a fresh debian with the backport version of 2.4 or the native 2.2.10 and the result are the same.
Thanks for your help.
In all cases the padlock is replaced by a square
I have no idea that does it mean. Is it somehow related to Qt theme?
- Connecting to adcs://babylon.aab21pro.org:412
This hub requires only TLS v1.3 and does not allow anything else.
The ssl version is from the raspbian repository: ii openssl 1.1.1d-0+deb10u4+rpt1 armhf Secure Sockets Layer toolkit - cryptographic utility
OpenSSL 1.1.1 has support of TLS v1.3 and all should work fine. Please explicitly check that you built program with openssl-1.1.1 and not with openssl-1.0.2. Could you show build log?
As for Debian package, please show output of apt show libeiskaltdcpp2.4 -a.
Hello
Thanks for your feedback.
Execution du CMAKE
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29")
-- Looking for mallinfo
-- Looking for mallinfo - found
-- Looking for malloc_stats
-- Looking for malloc_stats - found
-- Looking for malloc_trim
-- Looking for malloc_trim - found
-- Looking for daemon
-- Looking for daemon - found
-- Looking for 9 include files malloc.h, ..., unistd.h
-- Looking for 9 include files malloc.h, ..., unistd.h - found
-- Looking for 4 include files sys/socket.h, ..., sys/types.h
-- Looking for 4 include files sys/socket.h, ..., sys/types.h - found
-- Looking for 5 include files sys/types.h, ..., stdint.h
-- Looking for 5 include files sys/types.h, ..., stdint.h - found
-- Found BZip2: /usr/lib/arm-linux-gnueabihf/libbz2.so (found version "1.0.6")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
-- Found ZLIB: /usr/lib/arm-linux-gnueabihf/libz.so (found version "1.2.11")
-- Found OpenSSL: /usr/lib/arm-linux-gnueabihf/libcrypto.so (found version "1.1.1d")
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Looking for gettext
-- Looking for gettext - found
-- Found Iconv: /usr/lib/arm-linux-gnueabihf/libc.so
-- Performing Test ICONV_SECOND_ARGUMENT_IS_CONST
-- Performing Test ICONV_SECOND_ARGUMENT_IS_CONST - Failed
-- Found Git: /usr/bin/git (found version "2.20.1")
-- Looking for XOpenDisplay in /usr/lib/arm-linux-gnueabihf/libX11.so;/usr/lib/arm-linux-gnueabihf/libXext.so
-- Looking for XOpenDisplay in /usr/lib/arm-linux-gnueabihf/libX11.so;/usr/lib/arm-linux-gnueabihf/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Found X11: /usr/lib/arm-linux-gnueabihf/libX11.so
-- Found PCRE: /usr/lib/arm-linux-gnueabihf/libpcrecpp.so;/usr/lib/arm-linux-gnueabihf/libpcre.so
-- Found IDNA: /usr/lib/arm-linux-gnueabihf/libidn.so
-- Building with libattr support
-- Found Lua: /usr/lib/arm-linux-gnueabihf/liblua5.1.so;/usr/lib/arm-linux-gnueabihf/libm.so (found version "5.1.5")
-- Building with Lua scripts support
-- Building with UPnP support (miniupnpc)
-- Found Miniupnpc: /usr/lib/arm-linux-gnueabihf/libminiupnpc.so
-- Building with Qt UI with progress bars
-- Building with free space indicator
-- Library directory: /usr/lib
-- Data directory: /usr/share/eiskaltdcpp
-- EiskaltDC++ full version: 2.4.0-86-gac924cfb
-- EiskaltDC++ base version: 2.4.0
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Translations: en
-- Building without Qt Declarative UI support
-- Building with Qt DBus support
-- Building without Qt Script support
-- Building with Qt SQLite support
-- Found ASPELL: /usr/lib/arm-linux-gnueabihf/libaspell.so
-- Building with Aspell support
-- CMAKE_SYSTEM: Linux-5.4.79+
-- CMAKE_SYSTEM_PROCESSOR: armv6l
-- CMAKE_CXX_COMPILER: /usr/bin/c++
-- CMAKE_CXX_COMPILER_ID: GNU
-- CMAKE will use these libraries (and headers) during build:
miniupnpc (headers): /usr/lib/arm-linux-gnueabihf/libminiupnpc.so (/usr/include)
lua (headers): /usr/lib/arm-linux-gnueabihf/liblua5.1.so;/usr/lib/arm-linux-gnueabihf/libm.so (/usr/include/lua5.1)
bzip2 (headers): /usr/lib/arm-linux-gnueabihf/libbz2.so (/usr/include)
zlib (headers): /usr/lib/arm-linux-gnueabihf/libz.so (/usr/include)
openssl (headers): /usr/lib/arm-linux-gnueabihf/libssl.so;/usr/lib/arm-linux-gnueabihf/libcrypto.so (/usr/include)
iconv (headers): /usr/lib/arm-linux-gnueabihf/libc.so (/usr/include)
aspell (headers): /usr/lib/arm-linux-gnueabihf/libaspell.so (/usr/include)
gettext (headers): (/usr/include)
pcre(cpp) (headers): /usr/lib/arm-linux-gnueabihf/libpcrecpp.so;/usr/lib/arm-linux-gnueabihf/libpcre.so (/usr/include)
idna (headers): /usr/lib/arm-linux-gnueabihf/libidn.so (/usr/include)
-- Configuring done -- Generating done
I see:
-- Found OpenSSL: /usr/lib/arm-linux-gnueabihf/libcrypto.so (found version "1.1.1d")
So TLS v1.3 should work fine.
Please show output:
echo | openssl s_client -connect babylon.aab21pro.org:412 -msg | grep -i TLS
# and
echo | openssl s_client -connect babylon.aab21pro.org:412 -msg | grep 'return code'
From that device.
Hello
Thanks for your help :)
Here the openssl.conf also:
[system_default_sect] MinProtocol = TLSv1.2 CipherString = DEFAULT@SECLEVEL=2
pi@shadocks:~ $ echo | openssl s_client -connect babylon.aab21pro.org:412 -msg | grep -i TLS
>>> TLS 1.3, Handshake [length 0133], ClientHello
<<< TLS 1.3, Handshake [length 007a], ServerHello
<<< TLS 1.3 [length 0001]
<<< TLS 1.3, Handshake [length 0006], EncryptedExtensions
<<< TLS 1.3 [length 0001]
depth=0 C = <<< TLS 1.3, Handshake [length 041c], Certificate
RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify error:num=18:self signed certificate
verify return:1
depth=0 C = RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify return:1
<<< TLS 1.3 [length 0001]
<<< TLS 1.3, Handshake [length 0108], CertificateVerify
<<< TLS 1.3 [length 0001]
<<< TLS 1.3, Handshake [length 0024], Finished
>>> TLS 1.3, ChangeCipherSpec [length 0001]
>>> TLS 1.3 [length 0001]
>>> TLS 1.3, Handshake [length 0024], Finished
New, TLSv1.3, Cipher is TLS_AES_128_GCM_SHA256
DONE
>>> TLS 1.3 [length 0001]
>>> TLS 1.3 [length 0001]
>>> TLS 1.3, Alert [length 0002], warning close_notify
pi@shadocks:~ $ echo | openssl s_client -connect babylon.aab21pro.org:412 -msg | grep 'return code'
depth=0 C = RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify error:num=18:self signed certificate
verify return:1
depth=0 C = RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify return:1
DONE
Verify return code: 18 (self signed certificate)
Regards
for complete:
pi@shadocks:~ $ ldd /usr/bin/eiskaltdcpp-qt
linux-vdso.so.1 (0x7eff8000)
/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so (0x76f0f000)
libQt5Widgets.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5 (0x769ad000)
libQt5Xml.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Xml.so.5 (0x7696b000)
libQt5Multimedia.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Multimedia.so.5 (0x7686e000)
libQt5Concurrent.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Concurrent.so.5 (0x76858000)
libQt5DBus.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5DBus.so.5 (0x767bf000)
libQt5Sql.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Sql.so.5 (0x7676d000)
libaspell.so.15 => /usr/lib/arm-linux-gnueabihf/libaspell.so.15 (0x766d4000)
libQt5Gui.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Gui.so.5 (0x76254000)
libQt5Core.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5 (0x75dda000)
libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x75db0000)
libbz2.so.1.0 => /lib/arm-linux-gnueabihf/libbz2.so.1.0 (0x75d90000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x75d65000)
libssl.so.1.1 => /usr/lib/arm-linux-gnueabihf/libssl.so.1.1 (0x75ce6000)
libcrypto.so.1.1 => /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1 (0x75acc000)
liblua5.1.so.0 => /usr/lib/arm-linux-gnueabihf/liblua5.1.so.0 (0x75a9a000)
libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x75a18000)
libminiupnpc.so.17 => /usr/lib/arm-linux-gnueabihf/libminiupnpc.so.17 (0x759fc000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x758ae000)
libpcrecpp.so.0 => /usr/lib/arm-linux-gnueabihf/libpcrecpp.so.0 (0x75896000)
libidn.so.11 => /lib/arm-linux-gnueabihf/libidn.so.11 (0x75855000)
libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x7570e000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x756e1000)
/lib/ld-linux-armhf.so.3 (0x76f24000)
libQt5Network.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Network.so.5 (0x7554e000)
libpulse.so.0 => /usr/lib/arm-linux-gnueabihf/libpulse.so.0 (0x754f8000)
libdbus-1.so.3 => /lib/arm-linux-gnueabihf/libdbus-1.so.3 (0x754a7000)
libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x75494000)
libGLESv2.so.2 => /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2 (0x75475000)
libpng16.so.16 => /usr/lib/arm-linux-gnueabihf/libpng16.so.16 (0x75439000)
libharfbuzz.so.0 => /usr/lib/arm-linux-gnueabihf/libharfbuzz.so.0 (0x7533b000)
libatomic.so.1 => /usr/lib/arm-linux-gnueabihf/libatomic.so.1 (0x75322000)
libicui18n.so.63 => /usr/lib/arm-linux-gnueabihf/libicui18n.so.63 (0x750d4000)
libicuuc.so.63 => /usr/lib/arm-linux-gnueabihf/libicuuc.so.63 (0x74f4e000)
libpcre2-16.so.0 => /usr/lib/arm-linux-gnueabihf/libpcre2-16.so.0 (0x74ed2000)
libdouble-conversion.so.1 => /usr/lib/arm-linux-gnueabihf/libdouble-conversion.so.1 (0x74eae000)
libglib-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0x74d9e000)
libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0x74d27000)
libpulsecommon-12.2.so => /usr/lib/arm-linux-gnueabihf/pulseaudio/libpulsecommon-12.2.so (0x74ca6000)
libcap.so.2 => /lib/arm-linux-gnueabihf/libcap.so.2 (0x74c91000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x74c7a000)
libsystemd.so.0 => /lib/arm-linux-gnueabihf/libsystemd.so.0 (0x74bdd000)
libGLdispatch.so.0 => /usr/lib/arm-linux-gnueabihf/libGLdispatch.so.0 (0x74b5e000)
libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0x74abb000)
libgraphite2.so.3 => /usr/lib/arm-linux-gnueabihf/libgraphite2.so.3 (0x74a8a000)
libicudata.so.63 => /usr/lib/arm-linux-gnueabihf/libicudata.so.63 (0x7308c000)
libX11-xcb.so.1 => /usr/lib/arm-linux-gnueabihf/libX11-xcb.so.1 (0x7307a000)
libX11.so.6 => /usr/lib/arm-linux-gnueabihf/libX11.so.6 (0x72f58000)
libxcb.so.1 => /usr/lib/arm-linux-gnueabihf/libxcb.so.1 (0x72f29000)
libICE.so.6 => /usr/lib/arm-linux-gnueabihf/libICE.so.6 (0x72f03000)
libSM.so.6 => /usr/lib/arm-linux-gnueabihf/libSM.so.6 (0x72eec000)
libXtst.so.6 => /usr/lib/arm-linux-gnueabihf/libXtst.so.6 (0x72ed7000)
libwrap.so.0 => /lib/arm-linux-gnueabihf/libwrap.so.0 (0x72ebf000)
libsndfile.so.1 => /usr/lib/arm-linux-gnueabihf/libsndfile.so.1 (0x72e43000)
libasyncns.so.0 => /usr/lib/arm-linux-gnueabihf/libasyncns.so.0 (0x72e2e000)
liblzma.so.5 => /lib/arm-linux-gnueabihf/liblzma.so.5 (0x72dfd000)
liblz4.so.1 => /usr/lib/arm-linux-gnueabihf/liblz4.so.1 (0x72dd1000)
libgcrypt.so.20 => /lib/arm-linux-gnueabihf/libgcrypt.so.20 (0x72cf7000)
libXau.so.6 => /usr/lib/arm-linux-gnueabihf/libXau.so.6 (0x72ce4000)
libXdmcp.so.6 => /usr/lib/arm-linux-gnueabihf/libXdmcp.so.6 (0x72ccf000)
libbsd.so.0 => /usr/lib/arm-linux-gnueabihf/libbsd.so.0 (0x72ca7000)
libuuid.so.1 => /lib/arm-linux-gnueabihf/libuuid.so.1 (0x72c90000)
libXext.so.6 => /usr/lib/arm-linux-gnueabihf/libXext.so.6 (0x72c71000)
libXi.so.6 => /usr/lib/arm-linux-gnueabihf/libXi.so.6 (0x72c53000)
libnsl.so.1 => /lib/arm-linux-gnueabihf/libnsl.so.1 (0x72c2f000)
libFLAC.so.8 => /usr/lib/arm-linux-gnueabihf/libFLAC.so.8 (0x72bcf000)
libogg.so.0 => /usr/lib/arm-linux-gnueabihf/libogg.so.0 (0x72bba000)
libvorbis.so.0 => /usr/lib/arm-linux-gnueabihf/libvorbis.so.0 (0x72b83000)
libvorbisenc.so.2 => /usr/lib/arm-linux-gnueabihf/libvorbisenc.so.2 (0x72af1000)
libresolv.so.2 => /lib/arm-linux-gnueabihf/libresolv.so.2 (0x72acd000)
libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0x72aa3000)
From a Fresh install using deb package
@rpi4-20201112:/usr/bin$ sudo apt show libeiskaltdcpp2.4 -a
Package: libeiskaltdcpp2.4
Version: 2.4.0-1~bpo10+1
Priority: optional
Section: libs
Source: eiskaltdcpp
Maintainer: Boris Pek <[email protected]>
Installed-Size: 2355 kB
Depends: libattr1 (>= 1:2.4.44), libbz2-1.0, libc6 (>= 2.28), libgcc1 (>= 1:3.0), libidn11 (>= 1.13), liblua5.1-0, libminiupnpc17 (>= 1.9.20140610), libpcre3, libpcrecpp0v5 (>= 7.7), libssl1.1 (>= 1.1.0), libstdc++6 (>= 5.2), zlib1g (>= 1:1.2.3.3)
Breaks: libeiskaltdcpp2.2
Replaces: libeiskaltdcpp2.2
Homepage: https://github.com/eiskaltdcpp/eiskaltdcpp
Download-Size: 647 kB
APT-Manual-Installed: no
APT-Sources: http://deb.debian.org/debian buster-backports/main arm64 Packages
Description: core library for EiskaltDC++
This package contains core library which is used by all EiskaltDC++ programs.
.
EiskaltDC++ is a cross-platform program that uses the Direct Connect and
Advanced Direct Connect protocols. It is compatible with DC++, AirDC++,
FlylinkDC++ and other DC clients. EiskaltDC++ also interoperates with all
common DC hub software.
Package: libeiskaltdcpp2.4
Version: 2.2.10+340+g44d8aea4-1
Priority: optional
Section: libs
Source: eiskaltdcpp
Maintainer: Boris Pek <[email protected]>
Installed-Size: 2476 kB
Depends: libattr1 (>= 1:2.4.44), libboost-system1.67.0, libbz2-1.0, libc6 (>= 2.28), libgcc1 (>= 1:3.0), libidn11 (>= 1.13), liblua5.1-0, libminiupnpc17 (>= 1.9.20140610), libpcrecpp0v5 (>= 7.7), libssl1.1 (>= 1.1.0), libstdc++6 (>= 5.2), zlib1g (>= 1:1.2.3.3)
Breaks: libeiskaltdcpp2.2
Replaces: libeiskaltdcpp2.2
Homepage: https://github.com/eiskaltdcpp/eiskaltdcpp
Tag: role::shared-lib
Download-Size: 661 kB
APT-Sources: http://deb.debian.org/debian buster/main arm64 Packages
Description: DC++ kernel library from EiskaltDC++
This package installs only DC++ kernel library which required EiskaltDC++.
.
EiskaltDC++ is a cross-platform program that uses the Direct Connect and ADC
protocols. It is compatible with DC++, FlylinkDC++, LinuxDC++ and other DC
clients. EiskaltDC++ also interoperates with all common DC hub software.
For the SSL:
@rpi4-20201112:/usr/bin$ echo | openssl s_client -connect babylon.aab21pro.org:412 -msg | grep -i TLS
>>> TLS 1.3, Handshake [length 0139], ClientHello
<<< TLS 1.3, Handshake [length 007a], ServerHello
<<< TLS 1.3 [length 0001]
<<< TLS 1.3, Handshake [length 0006], EncryptedExtensions
<<< TLS 1.3 [length 0001]
<<< TLS 1.3, Handshake [length 041c], Certificate
depth=0 C = RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify error:num=18:self signed certificate
verify return:1
depth=0 C = RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify return:1
<<< TLS 1.3 [length 0001]
<<< TLS 1.3, Handshake [length 0108], CertificateVerify
<<< TLS 1.3 [length 0001]
<<< TLS 1.3, Handshake [length 0024], Finished
>>> TLS 1.3, ChangeCipherSpec [length 0001]
>>> TLS 1.3 [length 0001]
>>> TLS 1.3, Handshake [length 0024], Finished
New, TLSv1.3, Cipher is TLS_AES_128_GCM_SHA256
DONE
>>> TLS 1.3 [length 0001]
>>> TLS 1.3 [length 0001]
>>> TLS 1.3, Alert [length 0002], warning close_notify
@rpi4-20201112:/usr/bin$ echo | openssl s_client -connect babylon.aab21pro.org:412 -msg | grep 'return code'
depth=0 C = RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify error:num=18:self signed certificate
verify return:1
depth=0 C = RU, ST = Moscow, L = Moscow, O = Delion's, OU = Babylon ADCs Hub, CN = Babylon, emailAddress = [email protected]
verify return:1
DONE
Verify return code: 18 (self signed certificate)
For the ldd
**@rpi4-20201112:/usr/bin$ sudo ldd /usr/bin/eiskaltdcpp-qt | grep ssl**
libssl.so.1.1 => /lib/aarch64-linux-gnu/libssl.so.1.1 (0x0000ffffba3b7000)
The error message is a little bit different:
[01:07:54] * Connecting to adcs://babylon.aab21pro.org:412
[01:07:54] * Fail: SSL Error: error:00000005:lib(0):func(0):DH lib (0,5)...
Thanks
SSL Error 5 is this: " SSL_ERROR_SYSCALL Some non-recoverable, fatal I/O error occurred. The OpenSSL error queue may contain more information on the error. For socket I/O on Unix systems, consult errno for details. If this error occurs then no further I/O operations should be performed on the connection and SSL_shutdown() must not be called.
This value can also be returned for other errors, check the error queue for details.
" Maybe the kernel is missing support for some fancy networking feautre eiskalt uses?