Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenSSL 1.1.x fix and Boost 1.70+ #48

Merged
merged 4 commits into from
May 18, 2020
Merged

Conversation

Nuitari
Copy link

@Nuitari Nuitari commented Apr 26, 2020

I've been having issues recompiling the wallet on recent OpenSSL, same issue as #21 , #28
Includes the Boost 1.70+ fixes from #47

This worked on Gentoo with OpenSSL 1.1.1b
I am able to connect to the network and get transactions.

I don't have the tooling in plate to test against OpenSSL 1.0

@Nuitari
Copy link
Author

Nuitari commented Apr 26, 2020

Some of the fixes come from the vertcoin-core project around bignum.h and script.h

@cygnusxi
Copy link
Owner

cygnusxi commented May 6, 2020

Hi @Nuitari, thanks for the help on this patch its much appreciated. If you want to join our discord https://discord.gg/jtztkFZ I'd like to send you some Curecoin for your help. Works great with new SSL and boost.

I did test this with SSL 1.0.1 and ran into the following error.

In file included from src/key.h:14:0,
from src/key.cpp:10:
src/util.h:245:22: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
return strprintf("%"PRI64d, n);
^
src/key.cpp: In function ‘int ECDSA_SIG_recover_key_GFp(EC_KEY*, ECDSA_SIG*, const unsigned char*, int, int, int)’:
src/key.cpp:82:5: error: ‘ECDSA_SIG_get0’ was not declared in this scope
ECDSA_SIG_get0(ecsig, (const BIGNUM **)&s, 0);
^~~~~~~~~~~~~~
src/key.cpp:82:5: note: suggested alternative: ‘ECDSA_SIG_new’
ECDSA_SIG_get0(ecsig, (const BIGNUM **)&s, 0);
^~~~~~~~~~~~~~
ECDSA_SIG_new
src/key.cpp: In member function ‘bool CKey::SignCompact(uint256, std::vector&)’:
src/key.cpp:317:5: error: ‘ECDSA_SIG_get0’ was not declared in this scope
ECDSA_SIG_get0(sig, (const BIGNUM **)&r, (const BIGNUM **)&s);
^~~~~~~~~~~~~~
src/key.cpp:317:5: note: suggested alternative: ‘ECDSA_SIG_new’
ECDSA_SIG_get0(sig, (const BIGNUM **)&r, (const BIGNUM **)&s);
^~~~~~~~~~~~~~
ECDSA_SIG_new
src/key.cpp: In member function ‘bool CKey::SetCompactSignature(uint256, const std::vector&)’:
src/key.cpp:364:5: error: ‘ECDSA_SIG_get0’ was not declared in this scope
ECDSA_SIG_get0(sig, (const BIGNUM **)&r, (const BIGNUM **)&s);
^~~~~~~~~~~~~~
src/key.cpp:364:5: note: suggested alternative: ‘ECDSA_SIG_new’
ECDSA_SIG_get0(sig, (const BIGNUM **)&r, (const BIGNUM **)&s);
^~~~~~~~~~~~~~
ECDSA_SIG_new
Makefile:1472: recipe for target 'build/key.o' failed
make: *** [build/key.o] Error 1

@Nuitari
Copy link
Author

Nuitari commented May 7, 2020

Unfortunately I don't have openssl 1.0 anymore. I've pushed another change to have a compatibility function for openssl 1.0, but I have no way to test it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants