Commit e46691a0 authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

New function to add dynamic alias.

parent 732a40e1
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -172,7 +172,7 @@ const EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_find_str(const char *str, int len)
	return NULL;
	}

int EVP_PKEY_asn1_add(const EVP_PKEY_ASN1_METHOD *ameth)
int EVP_PKEY_asn1_add0(const EVP_PKEY_ASN1_METHOD *ameth)
	{
	if (app_methods == NULL)
		{
@@ -186,6 +186,17 @@ int EVP_PKEY_asn1_add(const EVP_PKEY_ASN1_METHOD *ameth)
	return 1;
	}

int EVP_PKEY_asn1_add_alias(int to, int from)
	{
	EVP_PKEY_ASN1_METHOD *ameth;
	ameth = EVP_PKEY_asn1_new(from, NULL, NULL);
	if (!ameth)
		return 0;
	ameth->pkey_base_id = to;
	ameth->pkey_flags |= ASN1_PKEY_ALIAS;
	return EVP_PKEY_asn1_add0(ameth);
	}

int EVP_PKEY_asn1_get0_info(int *ppkey_id, int *ppkey_base_id, int *ppkey_flags,
				const char **pinfo, const char **ppem_str,
					const EVP_PKEY_ASN1_METHOD *ameth)
+2 −1
Original line number Diff line number Diff line
@@ -863,7 +863,8 @@ int EVP_PKEY_asn1_get_count(void);
const EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_get0(int idx);
const EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_find(int type);
const EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_find_str(const char *str, int len);
int EVP_PKEY_asn1_add(const EVP_PKEY_ASN1_METHOD *ameth);
int EVP_PKEY_asn1_add0(const EVP_PKEY_ASN1_METHOD *ameth);
int EVP_PKEY_asn1_add_alias(int to, int from);
int EVP_PKEY_asn1_get0_info(int *ppkey_id, int *pkey_base_id, int *ppkey_flags,
				const char **pinfo, const char **ppem_str,
					const EVP_PKEY_ASN1_METHOD *ameth);