!ENGINE_set_DH(ret, DH_get_default_openssl_method()) ||
!ENGINE_set_DH(ret, DH_get_default_method()) ||
ENGINE *ENGINE_openssl(void)	{	ENGINE *ret = ENGINE_new();	if(!ret)		return NULL;	if(!ENGINE_set_id(ret, engine_openssl_id) ||			!ENGINE_set_name(ret, engine_openssl_name) ||#ifndef OPENSSL_NO_RSA			!ENGINE_set_RSA(ret, RSA_get_default_openssl_method()) ||#endif#ifndef OPENSSL_NO_DSA			!ENGINE_set_DSA(ret, DSA_get_default_openssl_method()) ||#endif#ifndef OPENSSL_NO_DH			!ENGINE_set_DH(ret, DH_get_default_openssl_method()) ||#endif			!ENGINE_set_RAND(ret, RAND_SSLeay()) ||			!ENGINE_set_BN_mod_exp(ret, BN_mod_exp) ||			!ENGINE_set_BN_mod_exp_crt(ret, openssl_mod_exp_crt))		{		ENGINE_free(ret);		return NULL;		}	return ret;	}