* 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.
		
			
				
	
	
		
			26 lines
		
	
	
	
		
			784 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
	
		
			784 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
--- 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);
 |