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