This patch adds EC_KEY_new_by_curve_name(), EC_KEY_free*() and SSL_CTX_set_tmp_ecdh(). This is ported from Net-SSLeay-1.56 to version 1.55. diff -up Net-SSLeay-1.55/SSLeay.xs.orig Net-SSLeay-1.55/SSLeay.xs --- Net-SSLeay-1.55/SSLeay.xs.orig 2016-03-10 10:42:52.267612772 +0100 +++ Net-SSLeay-1.55/SSLeay.xs 2016-03-10 09:56:18.846933771 +0100 @@ -4127,6 +4127,23 @@ SSL_CTX_set_tmp_rsa(ctx,rsa) SSL_CTX * ctx RSA * rsa +#if OPENSSL_VERSION_NUMBER > 0x10000000L + +EC_KEY * +EC_KEY_new_by_curve_name(nid) + int nid + +void +EC_KEY_free(key) + EC_KEY * key + +long +SSL_CTX_set_tmp_ecdh(ctx,ecdh); + SSL_CTX * ctx + EC_KEY * ecdh + +#endif + void * SSL_get_app_data(s) SSL * s diff -up Net-SSLeay-1.55/typemap.orig Net-SSLeay-1.55/typemap --- Net-SSLeay-1.55/typemap.orig 2016-03-10 10:40:49.886151370 +0100 +++ Net-SSLeay-1.55/typemap 2016-03-10 10:41:37.640941202 +0100 @@ -6,6 +6,7 @@ SSL_SESSION * T_PTR SSL * T_PTR RSA * T_PTR DH * T_PTR +EC_KEY * T_PTR const X509 * T_PTR const X509_CRL * T_PTR const X509_REQ * T_PTR diff -up Net-SSLeay-1.55/lib/Net/SSLeay.pod.orig Net-SSLeay-1.55/lib/Net/SSLeay.pod --- Net-SSLeay-1.55/lib/Net/SSLeay.pod.orig 2016-03-10 12:23:38.706870006 +0100 +++ Net-SSLeay-1.55/lib/Net/SSLeay.pod 2016-03-10 12:28:04.280365357 +0100 @@ -7500,6 +7500,25 @@ Enable or disable FIPS mode in a FIPS ca =back +=head3 Low level API: EC related functions + +=over + +=item * CTX_set_tmp_ecdh + +TBA + +=item * EC_KEY_free + +TBA + +=item * EC_KEY_new_by_curve_name + +TBA + +=back + + =head2 Constants There are many openssl constants available in L. You can use them like this: