Just as for DH, DSA and RSA, this gives the engine associated with the
key.
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2960)
Changes between 1.1.0e and 1.1.1 [xx XXX xxxx]
Changes between 1.1.0e and 1.1.1 [xx XXX xxxx]
+ *) Add EC_KEY_get0_engine(), which does for EC_KEY what RSA_get0_engine()
+ does for RSA, etc.
+ [Richard Levitte]
+
*) Have 'config' recognise 64-bit mingw and choose 'mingw64' as the target
platform rather than 'mingw'.
[Richard Levitte]
*) Have 'config' recognise 64-bit mingw and choose 'mingw64' as the target
platform rather than 'mingw'.
[Richard Levitte]
return ((i > 1) ? 1 : 0);
}
return ((i > 1) ? 1 : 0);
}
+ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey)
+{
+ return eckey->engine;
+}
+
int EC_KEY_generate_key(EC_KEY *eckey)
{
if (eckey == NULL || eckey->group == NULL) {
int EC_KEY_generate_key(EC_KEY *eckey)
{
if (eckey == NULL || eckey->group == NULL) {
EC_KEY_get_method, EC_KEY_set_method,
EC_KEY_new, EC_KEY_get_flags, EC_KEY_set_flags, EC_KEY_clear_flags,
EC_KEY_new_by_curve_name, EC_KEY_free, EC_KEY_copy, EC_KEY_dup, EC_KEY_up_ref,
EC_KEY_get_method, EC_KEY_set_method,
EC_KEY_new, EC_KEY_get_flags, EC_KEY_set_flags, EC_KEY_clear_flags,
EC_KEY_new_by_curve_name, EC_KEY_free, EC_KEY_copy, EC_KEY_dup, EC_KEY_up_ref,
EC_KEY_get0_group, EC_KEY_set_group, EC_KEY_get0_private_key,
EC_KEY_set_private_key, EC_KEY_get0_public_key, EC_KEY_set_public_key,
EC_KEY_get_conv_form,
EC_KEY_get0_group, EC_KEY_set_group, EC_KEY_get0_private_key,
EC_KEY_set_private_key, EC_KEY_get0_public_key, EC_KEY_set_public_key,
EC_KEY_get_conv_form,
EC_KEY *EC_KEY_copy(EC_KEY *dst, const EC_KEY *src);
EC_KEY *EC_KEY_dup(const EC_KEY *src);
int EC_KEY_up_ref(EC_KEY *key);
EC_KEY *EC_KEY_copy(EC_KEY *dst, const EC_KEY *src);
EC_KEY *EC_KEY_dup(const EC_KEY *src);
int EC_KEY_up_ref(EC_KEY *key);
+ ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey);
const EC_GROUP *EC_KEY_get0_group(const EC_KEY *key);
int EC_KEY_set_group(EC_KEY *key, const EC_GROUP *group);
const BIGNUM *EC_KEY_get0_private_key(const EC_KEY *key);
const EC_GROUP *EC_KEY_get0_group(const EC_KEY *key);
int EC_KEY_set_group(EC_KEY *key, const EC_GROUP *group);
const BIGNUM *EC_KEY_get0_private_key(const EC_KEY *key);
EC_KEY_up_ref() increments the reference count associated with the EC_KEY
object.
EC_KEY_up_ref() increments the reference count associated with the EC_KEY
object.
+EC_KEY_get0_engine() returns a handle to the ENGINE that has been set for
+this EC_KEY object.
+
EC_KEY_generate_key() generates a new public and private key for the supplied
B<eckey> object. B<eckey> must have an EC_GROUP object associated with it
before calling this function. The private key is a random integer (0 < priv_key
EC_KEY_generate_key() generates a new public and private key for the supplied
B<eckey> object. B<eckey> must have an EC_GROUP object associated with it
before calling this function. The private key is a random integer (0 < priv_key
EC_KEY_copy() returns a pointer to the destination key, or NULL on error.
EC_KEY_copy() returns a pointer to the destination key, or NULL on error.
+EC_KEY_get0_engine() returns a pointer to an ENGINE, or NULL if it wasn't set.
+
EC_KEY_up_ref(), EC_KEY_set_group(), EC_KEY_set_private_key(),
EC_KEY_set_public_key(), EC_KEY_precompute_mult(), EC_KEY_generate_key(),
EC_KEY_check_key(), EC_KEY_set_public_key_affine_coordinates(),
EC_KEY_up_ref(), EC_KEY_set_group(), EC_KEY_set_private_key(),
EC_KEY_set_public_key(), EC_KEY_precompute_mult(), EC_KEY_generate_key(),
EC_KEY_check_key(), EC_KEY_set_public_key_affine_coordinates(),
*/
int EC_KEY_up_ref(EC_KEY *key);
*/
int EC_KEY_up_ref(EC_KEY *key);
+/** Returns the ENGINE object of a EC_KEY object
+ * \param key EC_KEY object
+ * \return the ENGINE object (possibly NULL).
+ */
+ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey);
+
/** Returns the EC_GROUP object of a EC_KEY object
* \param key EC_KEY object
* \return the EC_GROUP object (possibly NULL).
/** Returns the EC_GROUP object of a EC_KEY object
* \param key EC_KEY object
* \return the EC_GROUP object (possibly NULL).