@ -2145,7 +2145,7 @@ err:
int EVP_PKEY_get_octet_string_param ( const EVP_PKEY * pkey , const char * key_name ,
unsigned char * buf , size_t max_buf_sz ,
size_t * out_ sz )
size_t * out_ len )
{
OSSL_PARAM params [ 2 ] ;
int ret1 = 0 , ret2 = 0 ;
@ -2157,14 +2157,14 @@ int EVP_PKEY_get_octet_string_param(const EVP_PKEY *pkey, const char *key_name,
params [ 1 ] = OSSL_PARAM_construct_end ( ) ;
if ( ( ret1 = EVP_PKEY_get_params ( pkey , params ) ) )
ret2 = OSSL_PARAM_modified ( params ) ;
if ( ret2 & & out_ sz ! = NULL )
* out_ sz = params [ 0 ] . return_size ;
if ( ret2 & & out_ len ! = NULL )
* out_ len = params [ 0 ] . return_size ;
return ret1 & & ret2 ;
}
int EVP_PKEY_get_utf8_string_param ( const EVP_PKEY * pkey , const char * key_name ,
char * str , size_t max_buf_sz ,
size_t * out_ sz )
size_t * out_ len )
{
OSSL_PARAM params [ 2 ] ;
int ret1 = 0 , ret2 = 0 ;
@ -2176,8 +2176,16 @@ int EVP_PKEY_get_utf8_string_param(const EVP_PKEY *pkey, const char *key_name,
params [ 1 ] = OSSL_PARAM_construct_end ( ) ;
if ( ( ret1 = EVP_PKEY_get_params ( pkey , params ) ) )
ret2 = OSSL_PARAM_modified ( params ) ;
if ( ret2 & & out_sz ! = NULL )
* out_sz = params [ 0 ] . return_size ;
if ( ret2 & & out_len ! = NULL )
* out_len = params [ 0 ] . return_size ;
if ( ret2 & & params [ 0 ] . return_size = = max_buf_sz )
/* There was no space for a NUL byte */
return 0 ;
/* Add a terminating NUL byte for good measure */
if ( ret2 & & str ! = NULL )
str [ params [ 0 ] . return_size ] = ' \0 ' ;
return ret1 & & ret2 ;
}