mirror of https://github.com/openssl/openssl.git
				
				
				
			EVP_PKEY_asn1_add0(): Check that this method isn't already registered
No two public key ASN.1 methods with the same pkey_id can be registered at the same time. Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/4596)
This commit is contained in:
		
							parent
							
								
									751148e2b0
								
							
						
					
					
						commit
						d85722d31a
					
				|  | @ -137,6 +137,11 @@ const EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_find_str(ENGINE **pe, | |||
| 
 | ||||
| int EVP_PKEY_asn1_add0(const EVP_PKEY_ASN1_METHOD *ameth) | ||||
| { | ||||
|     if (pkey_asn1_find(ameth->pkey_id) != NULL) { | ||||
|         EVPerr(EVP_F_EVP_PKEY_ASN1_ADD0, | ||||
|                EVP_R_PKEY_ASN1_METHOD_ALREADY_REGISTERED); | ||||
|         return 0; | ||||
|     } | ||||
|     if (app_methods == NULL) { | ||||
|         app_methods = sk_EVP_PKEY_ASN1_METHOD_new(ameth_cmp); | ||||
|         if (app_methods == NULL) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue