cculianu / Fulcrum

A fast & nimble SPV Server for BCH, BTC, and LTC
Other
343 stars 77 forks source link

Need help interpreting and fixing error: [Qt Warning] QSslSocket: cannot call unresolved function SSL_get_peer_certificate (:0, ) #131

Closed mission-bitcoin closed 2 years ago

mission-bitcoin commented 2 years ago

I apologize if this is covered elsewhere - I've searched and asked around to no avail.

In sum, I have an SSL cert setup on my Fulcrum server, which seems to be working as clients can only connect if they have SSL option switched on (eg, via Sparrow wallet). However, in my Fulcrum logs, whenever a client connects I get error output similar to this:

8046 mempool txs involving 47219 addresses [Qt Warning] QSslSocket: cannot call unresolved function SSL_get_peer_certificate (:0, ) New SSL Client.4201690 127.0.0.1:52372, 3 clients total Is this anything to be concerned about? At first, I interpreted this as the Fulcrum server is checking if the client has an SSL cert too (which none of them do, so the error would make sense). However, am I correct about that, or does this error indicate something is wrong with my SSL cert on the Fulcrum side of the interaction? Thanks in advance!
cculianu commented 2 years ago

It actually indicates the openssl .so version is not what the app was compiled to support. Can you make sure you have openssl 1.1 installed? Also yes the server doesn't actually use peer certs so it may be the case that it "just works" anyway.. not sure. Are clients able to connect via SSL ok and everything works?

mission-bitcoin commented 2 years ago

It actually indicates the openssl .so version is not what the app was compiled to support. Can you make sure you have openssl 1.1 installed? Also yes the server doesn't actually use peer certs so it may be the case that it "just works" anyway.. not sure. Are clients able to connect via SSL ok and everything works?

Clients are able to connect via SSL okay and everything works perfectly. If clients try to connect without SSL, then they're unable to connect. So overall everything seems to be functioning, despite the error!

I think the SSL version may be the issue. By checking with commands "openssl version" and "./Fulcrum --version" I see that I'm running: "OpenSSL 3.0.2 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022)"

I figured anything above version 1.1 would work, but am happy to test downgrading if you reckon that would be better?

Thanks again for your help!

cculianu commented 2 years ago

Well you should be able to have both openssl-1.1 and openssl3 co-exist on your system. Most distros allow for that, because still a lot of apps need 1.1 since 3.x is a major (breaking) API change.

If it ain't broke don't fix it tho -- if it works, that's great. You can try installing openssl-1.1 though out of curiosity if you wanted to see the error message go away..

mission-bitcoin commented 2 years ago

I wasn't aware that 1.1 and 3.x could co-exist! I'll give that a try later today to see if the error disappears, more so out of curiosity. Otherwise I agree with the "if it ain't broke don't fix it" mindset.

Thanks so much for your help and also for Fulcrum overall - it's an amazing project.

Feel free to close this Issue whenever you want :)