gnu: linuxdcpp: Reanimate.

* gnu/packages/direct-connect.scm (linuxdcpp)[source]: Add patch and
snippet to fix build.
* gnu/packages/patches/linuxdcpp-openssl-1.1.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
Tobias Geerinckx-Rice 2022-01-04 16:01:58 +01:00
parent f7e6e93662
commit 14564f5847
No known key found for this signature in database
GPG key ID: 0DB0FF884F556D79
3 changed files with 43 additions and 2 deletions

View file

@ -0,0 +1,26 @@
--- a/dcpp/CryptoManager.cpp.orig 2011-04-17 17:57:09 UTC
+++ b/dcpp/CryptoManager.cpp
@@ -107,12 +107,20 @@ CryptoManager::CryptoManager()
};
if(dh) {
- dh->p = BN_bin2bn(dh4096_p, sizeof(dh4096_p), 0);
- dh->g = BN_bin2bn(dh4096_g, sizeof(dh4096_g), 0);
+ BIGNUM *p, *g;
- if (!dh->p || !dh->g) {
+ p = BN_bin2bn(dh4096_p, sizeof(dh4096_p), 0);
+ g = BN_bin2bn(dh4096_g, sizeof(dh4096_g), 0);
+
+ if (!p || !g) {
dh.reset();
} else {
+#if OPENSSL_VERSION_NUMBER < 0x10100005L
+ dh->p = p;
+ dh->g = g;
+#else
+ DH_set0_pqg(dh, p, NULL, g);
+#endif
SSL_CTX_set_options(serverContext, SSL_OP_SINGLE_DH_USE);
SSL_CTX_set_options(serverVerContext, SSL_OP_SINGLE_DH_USE);
SSL_CTX_set_tmp_dh(serverContext, (DH*)dh);