mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-07-29 11:41:15 +03:00
Merge pull request #6091 from Zaya-dyno/validation_remove_change_pk
Validation remove change pk
This commit is contained in:
46
library/pk.c
46
library/pk.c
@ -46,19 +46,11 @@
|
|||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
/* Parameter validation macros based on platform_util.h */
|
|
||||||
#define PK_VALIDATE_RET( cond ) \
|
|
||||||
MBEDTLS_INTERNAL_VALIDATE_RET( cond, MBEDTLS_ERR_PK_BAD_INPUT_DATA )
|
|
||||||
#define PK_VALIDATE( cond ) \
|
|
||||||
MBEDTLS_INTERNAL_VALIDATE( cond )
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Initialise a mbedtls_pk_context
|
* Initialise a mbedtls_pk_context
|
||||||
*/
|
*/
|
||||||
void mbedtls_pk_init( mbedtls_pk_context *ctx )
|
void mbedtls_pk_init( mbedtls_pk_context *ctx )
|
||||||
{
|
{
|
||||||
PK_VALIDATE( ctx != NULL );
|
|
||||||
|
|
||||||
ctx->pk_info = NULL;
|
ctx->pk_info = NULL;
|
||||||
ctx->pk_ctx = NULL;
|
ctx->pk_ctx = NULL;
|
||||||
}
|
}
|
||||||
@ -83,7 +75,6 @@ void mbedtls_pk_free( mbedtls_pk_context *ctx )
|
|||||||
*/
|
*/
|
||||||
void mbedtls_pk_restart_init( mbedtls_pk_restart_ctx *ctx )
|
void mbedtls_pk_restart_init( mbedtls_pk_restart_ctx *ctx )
|
||||||
{
|
{
|
||||||
PK_VALIDATE( ctx != NULL );
|
|
||||||
ctx->pk_info = NULL;
|
ctx->pk_info = NULL;
|
||||||
ctx->rs_ctx = NULL;
|
ctx->rs_ctx = NULL;
|
||||||
}
|
}
|
||||||
@ -137,7 +128,6 @@ const mbedtls_pk_info_t * mbedtls_pk_info_from_type( mbedtls_pk_type_t pk_type )
|
|||||||
*/
|
*/
|
||||||
int mbedtls_pk_setup( mbedtls_pk_context *ctx, const mbedtls_pk_info_t *info )
|
int mbedtls_pk_setup( mbedtls_pk_context *ctx, const mbedtls_pk_info_t *info )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
if( info == NULL || ctx->pk_info != NULL )
|
if( info == NULL || ctx->pk_info != NULL )
|
||||||
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
||||||
|
|
||||||
@ -200,7 +190,6 @@ int mbedtls_pk_setup_rsa_alt( mbedtls_pk_context *ctx, void * key,
|
|||||||
mbedtls_rsa_alt_context *rsa_alt;
|
mbedtls_rsa_alt_context *rsa_alt;
|
||||||
const mbedtls_pk_info_t *info = &mbedtls_rsa_alt_info;
|
const mbedtls_pk_info_t *info = &mbedtls_rsa_alt_info;
|
||||||
|
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
if( ctx->pk_info != NULL )
|
if( ctx->pk_info != NULL )
|
||||||
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
||||||
|
|
||||||
@ -404,10 +393,8 @@ int mbedtls_pk_verify_restartable( mbedtls_pk_context *ctx,
|
|||||||
const unsigned char *sig, size_t sig_len,
|
const unsigned char *sig, size_t sig_len,
|
||||||
mbedtls_pk_restart_ctx *rs_ctx )
|
mbedtls_pk_restart_ctx *rs_ctx )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
if( ( md_alg != MBEDTLS_MD_NONE || hash_len != 0 ) && hash == NULL )
|
||||||
PK_VALIDATE_RET( ( md_alg == MBEDTLS_MD_NONE && hash_len == 0 ) ||
|
return MBEDTLS_ERR_PK_BAD_INPUT_DATA;
|
||||||
hash != NULL );
|
|
||||||
PK_VALIDATE_RET( sig != NULL );
|
|
||||||
|
|
||||||
if( ctx->pk_info == NULL ||
|
if( ctx->pk_info == NULL ||
|
||||||
pk_hashlen_helper( md_alg, &hash_len ) != 0 )
|
pk_hashlen_helper( md_alg, &hash_len ) != 0 )
|
||||||
@ -462,10 +449,8 @@ int mbedtls_pk_verify_ext( mbedtls_pk_type_t type, const void *options,
|
|||||||
const unsigned char *hash, size_t hash_len,
|
const unsigned char *hash, size_t hash_len,
|
||||||
const unsigned char *sig, size_t sig_len )
|
const unsigned char *sig, size_t sig_len )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
if( ( md_alg != MBEDTLS_MD_NONE || hash_len != 0 ) && hash == NULL )
|
||||||
PK_VALIDATE_RET( ( md_alg == MBEDTLS_MD_NONE && hash_len == 0 ) ||
|
return MBEDTLS_ERR_PK_BAD_INPUT_DATA;
|
||||||
hash != NULL );
|
|
||||||
PK_VALIDATE_RET( sig != NULL );
|
|
||||||
|
|
||||||
if( ctx->pk_info == NULL )
|
if( ctx->pk_info == NULL )
|
||||||
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
||||||
@ -588,13 +573,10 @@ int mbedtls_pk_sign_restartable( mbedtls_pk_context *ctx,
|
|||||||
int (*f_rng)(void *, unsigned char *, size_t), void *p_rng,
|
int (*f_rng)(void *, unsigned char *, size_t), void *p_rng,
|
||||||
mbedtls_pk_restart_ctx *rs_ctx )
|
mbedtls_pk_restart_ctx *rs_ctx )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
if( ( md_alg != MBEDTLS_MD_NONE || hash_len != 0 ) && hash == NULL )
|
||||||
PK_VALIDATE_RET( ( md_alg == MBEDTLS_MD_NONE && hash_len == 0 ) ||
|
return MBEDTLS_ERR_PK_BAD_INPUT_DATA;
|
||||||
hash != NULL );
|
|
||||||
PK_VALIDATE_RET( sig != NULL );
|
|
||||||
|
|
||||||
if( ctx->pk_info == NULL ||
|
if( ctx->pk_info == NULL || pk_hashlen_helper( md_alg, &hash_len ) != 0 )
|
||||||
pk_hashlen_helper( md_alg, &hash_len ) != 0 )
|
|
||||||
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
||||||
|
|
||||||
#if defined(MBEDTLS_ECDSA_C) && defined(MBEDTLS_ECP_RESTARTABLE)
|
#if defined(MBEDTLS_ECDSA_C) && defined(MBEDTLS_ECP_RESTARTABLE)
|
||||||
@ -707,11 +689,6 @@ int mbedtls_pk_decrypt( mbedtls_pk_context *ctx,
|
|||||||
unsigned char *output, size_t *olen, size_t osize,
|
unsigned char *output, size_t *olen, size_t osize,
|
||||||
int (*f_rng)(void *, unsigned char *, size_t), void *p_rng )
|
int (*f_rng)(void *, unsigned char *, size_t), void *p_rng )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
PK_VALIDATE_RET( input != NULL || ilen == 0 );
|
|
||||||
PK_VALIDATE_RET( output != NULL || osize == 0 );
|
|
||||||
PK_VALIDATE_RET( olen != NULL );
|
|
||||||
|
|
||||||
if( ctx->pk_info == NULL )
|
if( ctx->pk_info == NULL )
|
||||||
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
||||||
|
|
||||||
@ -730,11 +707,6 @@ int mbedtls_pk_encrypt( mbedtls_pk_context *ctx,
|
|||||||
unsigned char *output, size_t *olen, size_t osize,
|
unsigned char *output, size_t *olen, size_t osize,
|
||||||
int (*f_rng)(void *, unsigned char *, size_t), void *p_rng )
|
int (*f_rng)(void *, unsigned char *, size_t), void *p_rng )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
PK_VALIDATE_RET( input != NULL || ilen == 0 );
|
|
||||||
PK_VALIDATE_RET( output != NULL || osize == 0 );
|
|
||||||
PK_VALIDATE_RET( olen != NULL );
|
|
||||||
|
|
||||||
if( ctx->pk_info == NULL )
|
if( ctx->pk_info == NULL )
|
||||||
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
||||||
|
|
||||||
@ -753,9 +725,6 @@ int mbedtls_pk_check_pair( const mbedtls_pk_context *pub,
|
|||||||
int (*f_rng)(void *, unsigned char *, size_t),
|
int (*f_rng)(void *, unsigned char *, size_t),
|
||||||
void *p_rng )
|
void *p_rng )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( pub != NULL );
|
|
||||||
PK_VALIDATE_RET( prv != NULL );
|
|
||||||
|
|
||||||
if( pub->pk_info == NULL ||
|
if( pub->pk_info == NULL ||
|
||||||
prv->pk_info == NULL )
|
prv->pk_info == NULL )
|
||||||
{
|
{
|
||||||
@ -800,7 +769,6 @@ size_t mbedtls_pk_get_bitlen( const mbedtls_pk_context *ctx )
|
|||||||
*/
|
*/
|
||||||
int mbedtls_pk_debug( const mbedtls_pk_context *ctx, mbedtls_pk_debug_item *items )
|
int mbedtls_pk_debug( const mbedtls_pk_context *ctx, mbedtls_pk_debug_item *items )
|
||||||
{
|
{
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
if( ctx->pk_info == NULL )
|
if( ctx->pk_info == NULL )
|
||||||
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
return( MBEDTLS_ERR_PK_BAD_INPUT_DATA );
|
||||||
|
|
||||||
|
@ -56,12 +56,6 @@
|
|||||||
#define mbedtls_free free
|
#define mbedtls_free free
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Parameter validation macros based on platform_util.h */
|
|
||||||
#define PK_VALIDATE_RET( cond ) \
|
|
||||||
MBEDTLS_INTERNAL_VALIDATE_RET( cond, MBEDTLS_ERR_PK_BAD_INPUT_DATA )
|
|
||||||
#define PK_VALIDATE( cond ) \
|
|
||||||
MBEDTLS_INTERNAL_VALIDATE( cond )
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_FS_IO)
|
#if defined(MBEDTLS_FS_IO)
|
||||||
/*
|
/*
|
||||||
* Load all data from a file into a given buffer.
|
* Load all data from a file into a given buffer.
|
||||||
@ -75,10 +69,6 @@ int mbedtls_pk_load_file( const char *path, unsigned char **buf, size_t *n )
|
|||||||
FILE *f;
|
FILE *f;
|
||||||
long size;
|
long size;
|
||||||
|
|
||||||
PK_VALIDATE_RET( path != NULL );
|
|
||||||
PK_VALIDATE_RET( buf != NULL );
|
|
||||||
PK_VALIDATE_RET( n != NULL );
|
|
||||||
|
|
||||||
if( ( f = fopen( path, "rb" ) ) == NULL )
|
if( ( f = fopen( path, "rb" ) ) == NULL )
|
||||||
return( MBEDTLS_ERR_PK_FILE_IO_ERROR );
|
return( MBEDTLS_ERR_PK_FILE_IO_ERROR );
|
||||||
|
|
||||||
@ -133,9 +123,6 @@ int mbedtls_pk_parse_keyfile( mbedtls_pk_context *ctx,
|
|||||||
size_t n;
|
size_t n;
|
||||||
unsigned char *buf;
|
unsigned char *buf;
|
||||||
|
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
PK_VALIDATE_RET( path != NULL );
|
|
||||||
|
|
||||||
if( ( ret = mbedtls_pk_load_file( path, &buf, &n ) ) != 0 )
|
if( ( ret = mbedtls_pk_load_file( path, &buf, &n ) ) != 0 )
|
||||||
return( ret );
|
return( ret );
|
||||||
|
|
||||||
@ -160,9 +147,6 @@ int mbedtls_pk_parse_public_keyfile( mbedtls_pk_context *ctx, const char *path )
|
|||||||
size_t n;
|
size_t n;
|
||||||
unsigned char *buf;
|
unsigned char *buf;
|
||||||
|
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
PK_VALIDATE_RET( path != NULL );
|
|
||||||
|
|
||||||
if( ( ret = mbedtls_pk_load_file( path, &buf, &n ) ) != 0 )
|
if( ( ret = mbedtls_pk_load_file( path, &buf, &n ) ) != 0 )
|
||||||
return( ret );
|
return( ret );
|
||||||
|
|
||||||
@ -620,11 +604,6 @@ int mbedtls_pk_parse_subpubkey( unsigned char **p, const unsigned char *end,
|
|||||||
mbedtls_pk_type_t pk_alg = MBEDTLS_PK_NONE;
|
mbedtls_pk_type_t pk_alg = MBEDTLS_PK_NONE;
|
||||||
const mbedtls_pk_info_t *pk_info;
|
const mbedtls_pk_info_t *pk_info;
|
||||||
|
|
||||||
PK_VALIDATE_RET( p != NULL );
|
|
||||||
PK_VALIDATE_RET( *p != NULL );
|
|
||||||
PK_VALIDATE_RET( end != NULL );
|
|
||||||
PK_VALIDATE_RET( pk != NULL );
|
|
||||||
|
|
||||||
if( ( ret = mbedtls_asn1_get_tag( p, end, &len,
|
if( ( ret = mbedtls_asn1_get_tag( p, end, &len,
|
||||||
MBEDTLS_ASN1_CONSTRUCTED | MBEDTLS_ASN1_SEQUENCE ) ) != 0 )
|
MBEDTLS_ASN1_CONSTRUCTED | MBEDTLS_ASN1_SEQUENCE ) ) != 0 )
|
||||||
{
|
{
|
||||||
@ -1217,10 +1196,8 @@ int mbedtls_pk_parse_key( mbedtls_pk_context *pk,
|
|||||||
mbedtls_pem_context pem;
|
mbedtls_pem_context pem;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
PK_VALIDATE_RET( pk != NULL );
|
|
||||||
if( keylen == 0 )
|
if( keylen == 0 )
|
||||||
return( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT );
|
return( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT );
|
||||||
PK_VALIDATE_RET( key != NULL );
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_PEM_PARSE_C)
|
#if defined(MBEDTLS_PEM_PARSE_C)
|
||||||
mbedtls_pem_init( &pem );
|
mbedtls_pem_init( &pem );
|
||||||
@ -1436,10 +1413,8 @@ int mbedtls_pk_parse_public_key( mbedtls_pk_context *ctx,
|
|||||||
mbedtls_pem_context pem;
|
mbedtls_pem_context pem;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
PK_VALIDATE_RET( ctx != NULL );
|
|
||||||
if( keylen == 0 )
|
if( keylen == 0 )
|
||||||
return( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT );
|
return( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT );
|
||||||
PK_VALIDATE_RET( key != NULL || keylen == 0 );
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_PEM_PARSE_C)
|
#if defined(MBEDTLS_PEM_PARSE_C)
|
||||||
mbedtls_pem_init( &pem );
|
mbedtls_pem_init( &pem );
|
||||||
|
@ -59,12 +59,6 @@
|
|||||||
#define mbedtls_free free
|
#define mbedtls_free free
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Parameter validation macros based on platform_util.h */
|
|
||||||
#define PK_VALIDATE_RET( cond ) \
|
|
||||||
MBEDTLS_INTERNAL_VALIDATE_RET( cond, MBEDTLS_ERR_PK_BAD_INPUT_DATA )
|
|
||||||
#define PK_VALIDATE( cond ) \
|
|
||||||
MBEDTLS_INTERNAL_VALIDATE( cond )
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_RSA_C)
|
#if defined(MBEDTLS_RSA_C)
|
||||||
/*
|
/*
|
||||||
* RSAPublicKey ::= SEQUENCE {
|
* RSAPublicKey ::= SEQUENCE {
|
||||||
@ -182,11 +176,6 @@ int mbedtls_pk_write_pubkey( unsigned char **p, unsigned char *start,
|
|||||||
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;
|
||||||
size_t len = 0;
|
size_t len = 0;
|
||||||
|
|
||||||
PK_VALIDATE_RET( p != NULL );
|
|
||||||
PK_VALIDATE_RET( *p != NULL );
|
|
||||||
PK_VALIDATE_RET( start != NULL );
|
|
||||||
PK_VALIDATE_RET( key != NULL );
|
|
||||||
|
|
||||||
#if defined(MBEDTLS_RSA_C)
|
#if defined(MBEDTLS_RSA_C)
|
||||||
if( mbedtls_pk_get_type( key ) == MBEDTLS_PK_RSA )
|
if( mbedtls_pk_get_type( key ) == MBEDTLS_PK_RSA )
|
||||||
MBEDTLS_ASN1_CHK_ADD( len, pk_write_rsa_pubkey( p, start, mbedtls_pk_rsa( *key ) ) );
|
MBEDTLS_ASN1_CHK_ADD( len, pk_write_rsa_pubkey( p, start, mbedtls_pk_rsa( *key ) ) );
|
||||||
@ -233,10 +222,8 @@ int mbedtls_pk_write_pubkey_der( const mbedtls_pk_context *key, unsigned char *b
|
|||||||
mbedtls_pk_type_t pk_type;
|
mbedtls_pk_type_t pk_type;
|
||||||
const char *oid;
|
const char *oid;
|
||||||
|
|
||||||
PK_VALIDATE_RET( key != NULL );
|
|
||||||
if( size == 0 )
|
if( size == 0 )
|
||||||
return( MBEDTLS_ERR_ASN1_BUF_TOO_SMALL );
|
return( MBEDTLS_ERR_ASN1_BUF_TOO_SMALL );
|
||||||
PK_VALIDATE_RET( buf != NULL );
|
|
||||||
|
|
||||||
c = buf + size;
|
c = buf + size;
|
||||||
|
|
||||||
@ -333,10 +320,8 @@ int mbedtls_pk_write_key_der( const mbedtls_pk_context *key, unsigned char *buf,
|
|||||||
unsigned char *c;
|
unsigned char *c;
|
||||||
size_t len = 0;
|
size_t len = 0;
|
||||||
|
|
||||||
PK_VALIDATE_RET( key != NULL );
|
|
||||||
if( size == 0 )
|
if( size == 0 )
|
||||||
return( MBEDTLS_ERR_ASN1_BUF_TOO_SMALL );
|
return( MBEDTLS_ERR_ASN1_BUF_TOO_SMALL );
|
||||||
PK_VALIDATE_RET( buf != NULL );
|
|
||||||
|
|
||||||
c = buf + size;
|
c = buf + size;
|
||||||
|
|
||||||
@ -500,9 +485,6 @@ int mbedtls_pk_write_pubkey_pem( const mbedtls_pk_context *key, unsigned char *b
|
|||||||
unsigned char output_buf[PUB_DER_MAX_BYTES];
|
unsigned char output_buf[PUB_DER_MAX_BYTES];
|
||||||
size_t olen = 0;
|
size_t olen = 0;
|
||||||
|
|
||||||
PK_VALIDATE_RET( key != NULL );
|
|
||||||
PK_VALIDATE_RET( buf != NULL || size == 0 );
|
|
||||||
|
|
||||||
if( ( ret = mbedtls_pk_write_pubkey_der( key, output_buf,
|
if( ( ret = mbedtls_pk_write_pubkey_der( key, output_buf,
|
||||||
sizeof(output_buf) ) ) < 0 )
|
sizeof(output_buf) ) ) < 0 )
|
||||||
{
|
{
|
||||||
@ -526,9 +508,6 @@ int mbedtls_pk_write_key_pem( const mbedtls_pk_context *key, unsigned char *buf,
|
|||||||
const char *begin, *end;
|
const char *begin, *end;
|
||||||
size_t olen = 0;
|
size_t olen = 0;
|
||||||
|
|
||||||
PK_VALIDATE_RET( key != NULL );
|
|
||||||
PK_VALIDATE_RET( buf != NULL || size == 0 );
|
|
||||||
|
|
||||||
if( ( ret = mbedtls_pk_write_key_der( key, output_buf, sizeof(output_buf) ) ) < 0 )
|
if( ( ret = mbedtls_pk_write_key_der( key, output_buf, sizeof(output_buf) ) ) < 0 )
|
||||||
return( ret );
|
return( ret );
|
||||||
|
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
PK invalid parameters
|
||||||
|
pk_invalid_param:
|
||||||
|
|
||||||
PK valid parameters
|
PK valid parameters
|
||||||
valid_parameters:
|
valid_parameters:
|
||||||
|
|
||||||
|
@ -299,6 +299,53 @@ exit:
|
|||||||
}
|
}
|
||||||
/* END_CASE */
|
/* END_CASE */
|
||||||
|
|
||||||
|
/* BEGIN_CASE */
|
||||||
|
void pk_invalid_param()
|
||||||
|
{
|
||||||
|
mbedtls_pk_context ctx;
|
||||||
|
mbedtls_pk_type_t pk_type = 0;
|
||||||
|
unsigned char buf[] = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06 };
|
||||||
|
size_t buf_size = sizeof( buf );
|
||||||
|
|
||||||
|
mbedtls_pk_init( &ctx );
|
||||||
|
|
||||||
|
TEST_EQUAL( MBEDTLS_ERR_PK_BAD_INPUT_DATA,
|
||||||
|
mbedtls_pk_verify_restartable( &ctx, MBEDTLS_MD_NONE,
|
||||||
|
NULL, buf_size,
|
||||||
|
buf, buf_size,
|
||||||
|
NULL ) );
|
||||||
|
TEST_EQUAL( MBEDTLS_ERR_PK_BAD_INPUT_DATA,
|
||||||
|
mbedtls_pk_verify_restartable( &ctx, MBEDTLS_MD_SHA256,
|
||||||
|
NULL, 0,
|
||||||
|
buf, buf_size,
|
||||||
|
NULL ) );
|
||||||
|
TEST_EQUAL( MBEDTLS_ERR_PK_BAD_INPUT_DATA,
|
||||||
|
mbedtls_pk_verify_ext( pk_type, NULL,
|
||||||
|
&ctx, MBEDTLS_MD_NONE,
|
||||||
|
NULL, buf_size,
|
||||||
|
buf, buf_size ) );
|
||||||
|
TEST_EQUAL( MBEDTLS_ERR_PK_BAD_INPUT_DATA,
|
||||||
|
mbedtls_pk_verify_ext( pk_type, NULL,
|
||||||
|
&ctx, MBEDTLS_MD_SHA256,
|
||||||
|
NULL, 0,
|
||||||
|
buf, buf_size ) );
|
||||||
|
TEST_EQUAL( MBEDTLS_ERR_PK_BAD_INPUT_DATA,
|
||||||
|
mbedtls_pk_sign_restartable( &ctx, MBEDTLS_MD_NONE,
|
||||||
|
NULL, buf_size,
|
||||||
|
buf, buf_size, &buf_size,
|
||||||
|
NULL, NULL,
|
||||||
|
NULL ) );
|
||||||
|
TEST_EQUAL( MBEDTLS_ERR_PK_BAD_INPUT_DATA,
|
||||||
|
mbedtls_pk_sign_restartable( &ctx, MBEDTLS_MD_SHA256,
|
||||||
|
NULL, 0,
|
||||||
|
buf, buf_size, &buf_size,
|
||||||
|
NULL, NULL,
|
||||||
|
NULL ) );
|
||||||
|
exit:
|
||||||
|
mbedtls_pk_free( &ctx );
|
||||||
|
}
|
||||||
|
/* END_CASE */
|
||||||
|
|
||||||
/* BEGIN_CASE */
|
/* BEGIN_CASE */
|
||||||
void valid_parameters( )
|
void valid_parameters( )
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user