diff options
Diffstat (limited to 'wocky/wocky-openssl-dh2048.c')
-rw-r--r-- | wocky/wocky-openssl-dh2048.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/wocky/wocky-openssl-dh2048.c b/wocky/wocky-openssl-dh2048.c index c16deb7..d53ceda 100644 --- a/wocky/wocky-openssl-dh2048.c +++ b/wocky/wocky-openssl-dh2048.c @@ -36,11 +36,21 @@ DH *get_dh2048(void) 0x02, }; DH *dh; +#if if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + int r = 0; +#endif if ((dh=DH_new()) == NULL) return(NULL); +#if if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + r = DH_set0_pqg(dh, BN_bin2bn(dh2048_p,sizeof(dh2048_p),NULL), + NULL, BN_bin2bn(dh2048_g,sizeof(dh2048_g),NULL)); + if (!r) + { DH_free(dh); return(NULL); } +#else dh->p=BN_bin2bn(dh2048_p,sizeof(dh2048_p),NULL); dh->g=BN_bin2bn(dh2048_g,sizeof(dh2048_g),NULL); if ((dh->p == NULL) || (dh->g == NULL)) { DH_free(dh); return(NULL); } +#endif return(dh); } |