Introduce generic validation macros
Avoid duplicating source code for each module.
This commit is contained in:
parent
a967626753
commit
0e9cddbf1a
3 changed files with 38 additions and 21 deletions
|
@ -56,6 +56,12 @@
|
|||
|
||||
#if !defined(MBEDTLS_AES_ALT)
|
||||
|
||||
/* Parameter validation macros based on platform_util.h */
|
||||
#define AES_VALIDATE_RET( cond ) \
|
||||
MBEDTLS_INTERNAL_VALIDATE_RET( cond, MBEDTLS_ERR_AES_BAD_INPUT_DATA)
|
||||
#define AES_VALIDATE( cond ) \
|
||||
MBEDTLS_INTERNAL_VALIDATE( cond )
|
||||
|
||||
/*
|
||||
* 32-bit integer manipulation macros (little endian)
|
||||
*/
|
||||
|
@ -511,7 +517,7 @@ static void aes_gen_tables( void )
|
|||
|
||||
void mbedtls_aes_init( mbedtls_aes_context *ctx )
|
||||
{
|
||||
MBEDTLS_AES_VALIDATE( ctx != NULL );
|
||||
AES_VALIDATE( ctx != NULL );
|
||||
|
||||
memset( ctx, 0, sizeof( mbedtls_aes_context ) );
|
||||
}
|
||||
|
@ -527,7 +533,7 @@ void mbedtls_aes_free( mbedtls_aes_context *ctx )
|
|||
#if defined(MBEDTLS_CIPHER_MODE_XTS)
|
||||
void mbedtls_aes_xts_init( mbedtls_aes_xts_context *ctx )
|
||||
{
|
||||
MBEDTLS_AES_VALIDATE( ctx != NULL );
|
||||
AES_VALIDATE( ctx != NULL );
|
||||
|
||||
mbedtls_aes_init( &ctx->crypt );
|
||||
mbedtls_aes_init( &ctx->tweak );
|
||||
|
@ -535,7 +541,7 @@ void mbedtls_aes_xts_init( mbedtls_aes_xts_context *ctx )
|
|||
|
||||
void mbedtls_aes_xts_free( mbedtls_aes_xts_context *ctx )
|
||||
{
|
||||
MBEDTLS_AES_VALIDATE( ctx != NULL );
|
||||
AES_VALIDATE( ctx != NULL );
|
||||
|
||||
mbedtls_aes_free( &ctx->crypt );
|
||||
mbedtls_aes_free( &ctx->tweak );
|
||||
|
@ -552,7 +558,7 @@ int mbedtls_aes_setkey_enc( mbedtls_aes_context *ctx, const unsigned char *key,
|
|||
unsigned int i;
|
||||
uint32_t *RK;
|
||||
|
||||
MBEDTLS_AES_VALIDATE_RET( ctx != NULL && key != NULL );
|
||||
AES_VALIDATE_RET( ctx != NULL && key != NULL );
|
||||
|
||||
switch( keybits )
|
||||
{
|
||||
|
@ -670,7 +676,7 @@ int mbedtls_aes_setkey_dec( mbedtls_aes_context *ctx, const unsigned char *key,
|
|||
uint32_t *RK;
|
||||
uint32_t *SK;
|
||||
|
||||
MBEDTLS_AES_VALIDATE_RET( ctx != NULL && key != NULL );
|
||||
AES_VALIDATE_RET( ctx != NULL && key != NULL );
|
||||
|
||||
mbedtls_aes_init( &cty );
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue