return &engine_ubsec;
return ret;
ENGINE *ENGINE_ubsec()	{	const RSA_METHOD *meth1;#ifndef HAVE_UBSEC_DH	const DH_METHOD *meth3;#endif /* HAVE_UBSEC_DH */	/* We know that the "PKCS1_SSLeay()" functions hook properly	 * to the Broadcom-specific mod_exp and mod_exp_crt so we use	 * those functions. NB: We don't use ENGINE_openssl() or	 * anything "more generic" because something like the RSAref	 * code may not hook properly, and if you own one of these	 * cards then you have the right to do RSA operations on it	 * anyway! */ 	meth1 = RSA_PKCS1_SSLeay();	ubsec_rsa.rsa_pub_enc = meth1->rsa_pub_enc;	ubsec_rsa.rsa_pub_dec = meth1->rsa_pub_dec;	ubsec_rsa.rsa_priv_enc = meth1->rsa_priv_enc;	ubsec_rsa.rsa_priv_dec = meth1->rsa_priv_dec;#ifndef HAVE_UBSEC_DH	/* Much the same for Diffie-Hellman */	meth3 = DH_OpenSSL();	ubsec_dh.generate_key = meth3->generate_key;	ubsec_dh.compute_key = meth3->compute_key;#endif /* HAVE_UBSEC_DH */	return &engine_ubsec;	}