QuickBMS
QuickBMS copied to clipboard
Build fails due to openSSL's RSA_SSLV23_PADDING deprecation
Attempting to build with recent OpenSSL versions results in an error.
In file included from quickbms.c:653:
perform.c: In function ‘perform_encryption’:
perform.c:1544:99: error: ‘RSA_SSLV23_PADDING’ undeclared (first use in this function); did you mean ‘RSA_NO_PADDING’?
1544 | if(!rsa_ctx->openssl_rsa || RSA_##X##_##Y (datalen, data, data, rsa_ctx->openssl_rsa, RSA_SSLV23_PADDING) < 0) \
| ^~~~~~~~~~~~~~~~~~
perform.c:1555:13: note: in expansion of macro ‘QUICKBMS_OPENSSL_RSA’
1555 | QUICKBMS_OPENSSL_RSA(public, decrypt)
| ^~~~~~~~~~~~~~~~~~~~
perform.c:1544:99: note: each undeclared identifier is reported only once for each function it appears in
1544 | if(!rsa_ctx->openssl_rsa || RSA_##X##_##Y (datalen, data, data, rsa_ctx->openssl_rsa, RSA_SSLV23_PADDING) < 0) \
| ^~~~~~~~~~~~~~~~~~
perform.c:1555:13: note: in expansion of macro ‘QUICKBMS_OPENSSL_RSA’
1555 | QUICKBMS_OPENSSL_RSA(public, decrypt)
| ^~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:57: all] Error 1
$ dpkg -l libssl-dev:i386
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-===============-=================-============-================================================
ii libssl-dev:i386 3.0.10-1ubuntu2.2 i386 Secure Sockets Layer toolkit - development files
$ uname -a
Linux xxxxx 6.5.0-17-generic #17-Ubuntu SMP PREEMPT_DYNAMIC Thu Jan 11 14:01:59 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Related: https://github.com/openssl/openssl/issues/14216
How to solve this issue? By using old version openssl? ?
I worked around this by compiling from source:
wget https://www.openssl.org/source/openssl-1.1.1q.tar.gz
tar -xvzf openssl-1.1.1q.tar.gz
cd openssl-1.1.1q
setarch i386 ./config -m32
make -j`nproc`
make install
It seems there may be a few other small issues with quickbms further down the line before it full compiles. Like LUA is outdated.
@LittleBigBug this issue is still persistent.
Linux HOSTNAME 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux