mirror of
https://github.com/yuzu-emu/mbedtls.git
synced 2024-11-23 02:55:41 +01:00
Fix HMAC_DRBG and RIPEMD160 error codes
This commit is contained in:
parent
446ee6618f
commit
cf38367f45
@ -41,13 +41,15 @@
|
|||||||
*
|
*
|
||||||
* 16 bit error code bit-segmentation
|
* 16 bit error code bit-segmentation
|
||||||
*
|
*
|
||||||
* 1 bit - Intentionally not used
|
* 1 bit - Sign bit
|
||||||
* 3 bits - High level module ID
|
* 3 bits - High level module ID
|
||||||
* 5 bits - Module-dependent error code
|
* 5 bits - Module-dependent error code
|
||||||
* 6 bits - Low level module errors
|
* 7 bits - Low level module errors
|
||||||
* 1 bit - Intentionally not used
|
|
||||||
*
|
*
|
||||||
* Low-level module errors (0x007E-0x0002)
|
* For historical reasons, low-level error codes are divided in even and odd,
|
||||||
|
* and even codes were assigned first.
|
||||||
|
*
|
||||||
|
* Low-level module errors (0x0001-0x00FF)
|
||||||
*
|
*
|
||||||
* Module Nr Codes assigned
|
* Module Nr Codes assigned
|
||||||
* MPI 7 0x0002-0x0010
|
* MPI 7 0x0002-0x0010
|
||||||
@ -61,7 +63,7 @@
|
|||||||
* OID 1 0x002E-0x002E
|
* OID 1 0x002E-0x002E
|
||||||
* PADLOCK 1 0x0030-0x0030
|
* PADLOCK 1 0x0030-0x0030
|
||||||
* DES 1 0x0032-0x0032
|
* DES 1 0x0032-0x0032
|
||||||
* CTR_DBRG 3 0x0034-0x003A
|
* CTR_DBRG 4 0x0034-0x003A
|
||||||
* ENTROPY 3 0x003C-0x0040
|
* ENTROPY 3 0x003C-0x0040
|
||||||
* NET 11 0x0042-0x0056
|
* NET 11 0x0042-0x0056
|
||||||
* ASN1 7 0x0060-0x006C
|
* ASN1 7 0x0060-0x006C
|
||||||
@ -72,6 +74,8 @@
|
|||||||
* SHA256 1 0x0078-0x0078
|
* SHA256 1 0x0078-0x0078
|
||||||
* SHA512 1 0x007A-0x007A
|
* SHA512 1 0x007A-0x007A
|
||||||
* PBKDF2 1 0x007C-0x007C
|
* PBKDF2 1 0x007C-0x007C
|
||||||
|
* RIPEMD160 1 0x007E-0x007E
|
||||||
|
* HMAC_DRBG 4 0x0001-0x0007
|
||||||
*
|
*
|
||||||
* High-level module nr (3 bits - 0x1...-0x8...)
|
* High-level module nr (3 bits - 0x1...-0x8...)
|
||||||
* Name ID Nr of Errors
|
* Name ID Nr of Errors
|
||||||
@ -88,7 +92,7 @@
|
|||||||
* SSL 6 8 (Started from top)
|
* SSL 6 8 (Started from top)
|
||||||
* SSL 7 31
|
* SSL 7 31
|
||||||
*
|
*
|
||||||
* Module dependent error code (5 bits 0x.08.-0x.F8.)
|
* Module dependent error code (5 bits 0x.00.-0x.F8.)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -32,10 +32,10 @@
|
|||||||
/*
|
/*
|
||||||
* ! Same values as ctr_drbg.h !
|
* ! Same values as ctr_drbg.h !
|
||||||
*/
|
*/
|
||||||
#define POLARSSL_ERR_HMAC_DRBG_ENTROPY_SOURCE_FAILED -0x0034 /**< The entropy source failed. */
|
#define POLARSSL_ERR_HMAC_DRBG_ENTROPY_SOURCE_FAILED -0x0001 /**< The entropy source failed. */
|
||||||
#define POLARSSL_ERR_HMAC_DRBG_REQUEST_TOO_BIG -0x0036 /**< Too many random requested in single call. */
|
#define POLARSSL_ERR_HMAC_DRBG_REQUEST_TOO_BIG -0x0003 /**< Too many random requested in single call. */
|
||||||
#define POLARSSL_ERR_HMAC_DRBG_INPUT_TOO_BIG -0x0038 /**< Input too large (Entropy + additional). */
|
#define POLARSSL_ERR_HMAC_DRBG_INPUT_TOO_BIG -0x0005 /**< Input too large (Entropy + additional). */
|
||||||
#define POLARSSL_ERR_HMAC_DRBG_FILE_IO_ERROR -0x003A /**< Read/write error in file. */
|
#define POLARSSL_ERR_HMAC_DRBG_FILE_IO_ERROR -0x0007 /**< Read/write error in file. */
|
||||||
|
|
||||||
#if !defined(POLARSSL_CONFIG_OPTIONS)
|
#if !defined(POLARSSL_CONFIG_OPTIONS)
|
||||||
#define POLARSSL_HMAC_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
|
#define POLARSSL_HMAC_DRBG_RESEED_INTERVAL 10000 /**< Interval before reseed is performed by default */
|
||||||
|
@ -38,7 +38,7 @@ typedef UINT32 uint32_t;
|
|||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define POLARSSL_ERR_RIPEMD160_FILE_IO_ERROR -0x0074 /**< Read/write error in file. */
|
#define POLARSSL_ERR_RIPEMD160_FILE_IO_ERROR -0x007E /**< Read/write error in file. */
|
||||||
|
|
||||||
#if !defined(POLARSSL_RIPEMD160_ALT)
|
#if !defined(POLARSSL_RIPEMD160_ALT)
|
||||||
// Regular implementation
|
// Regular implementation
|
||||||
|
@ -77,6 +77,10 @@
|
|||||||
#include "polarssl/gcm.h"
|
#include "polarssl/gcm.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(POLARSSL_HMAC_DRBG_C)
|
||||||
|
#include "polarssl/hmac_drbg.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(POLARSSL_MD_C)
|
#if defined(POLARSSL_MD_C)
|
||||||
#include "polarssl/md.h"
|
#include "polarssl/md.h"
|
||||||
#endif
|
#endif
|
||||||
@ -125,6 +129,10 @@
|
|||||||
#include "polarssl/pkcs5.h"
|
#include "polarssl/pkcs5.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(POLARSSL_RIPEMD160_C)
|
||||||
|
#include "polarssl/ripemd160.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(POLARSSL_RSA_C)
|
#if defined(POLARSSL_RSA_C)
|
||||||
#include "polarssl/rsa.h"
|
#include "polarssl/rsa.h"
|
||||||
#endif
|
#endif
|
||||||
@ -589,6 +597,17 @@ void polarssl_strerror( int ret, char *buf, size_t buflen )
|
|||||||
snprintf( buf, buflen, "GCM - Bad input parameters to function" );
|
snprintf( buf, buflen, "GCM - Bad input parameters to function" );
|
||||||
#endif /* POLARSSL_GCM_C */
|
#endif /* POLARSSL_GCM_C */
|
||||||
|
|
||||||
|
#if defined(POLARSSL_HMAC_DRBG_C)
|
||||||
|
if( use_ret == -(POLARSSL_ERR_HMAC_DRBG_ENTROPY_SOURCE_FAILED) )
|
||||||
|
snprintf( buf, buflen, "HMAC_DRBG - The entropy source failed" );
|
||||||
|
if( use_ret == -(POLARSSL_ERR_HMAC_DRBG_REQUEST_TOO_BIG) )
|
||||||
|
snprintf( buf, buflen, "HMAC_DRBG - Too many random requested in single call" );
|
||||||
|
if( use_ret == -(POLARSSL_ERR_HMAC_DRBG_INPUT_TOO_BIG) )
|
||||||
|
snprintf( buf, buflen, "HMAC_DRBG - Input too large (Entropy + additional)" );
|
||||||
|
if( use_ret == -(POLARSSL_ERR_HMAC_DRBG_FILE_IO_ERROR) )
|
||||||
|
snprintf( buf, buflen, "HMAC_DRBG - Read/write error in file" );
|
||||||
|
#endif /* POLARSSL_HMAC_DRBG_C */
|
||||||
|
|
||||||
#if defined(POLARSSL_MD2_C)
|
#if defined(POLARSSL_MD2_C)
|
||||||
if( use_ret == -(POLARSSL_ERR_MD2_FILE_IO_ERROR) )
|
if( use_ret == -(POLARSSL_ERR_MD2_FILE_IO_ERROR) )
|
||||||
snprintf( buf, buflen, "MD2 - Read/write error in file" );
|
snprintf( buf, buflen, "MD2 - Read/write error in file" );
|
||||||
@ -644,6 +663,11 @@ void polarssl_strerror( int ret, char *buf, size_t buflen )
|
|||||||
snprintf( buf, buflen, "PBKDF2 - Bad input parameters to function" );
|
snprintf( buf, buflen, "PBKDF2 - Bad input parameters to function" );
|
||||||
#endif /* POLARSSL_PBKDF2_C */
|
#endif /* POLARSSL_PBKDF2_C */
|
||||||
|
|
||||||
|
#if defined(POLARSSL_RIPEMD160_C)
|
||||||
|
if( use_ret == -(POLARSSL_ERR_RIPEMD160_FILE_IO_ERROR) )
|
||||||
|
snprintf( buf, buflen, "RIPEMD160 - Read/write error in file" );
|
||||||
|
#endif /* POLARSSL_RIPEMD160_C */
|
||||||
|
|
||||||
#if defined(POLARSSL_SHA1_C)
|
#if defined(POLARSSL_SHA1_C)
|
||||||
if( use_ret == -(POLARSSL_ERR_SHA1_FILE_IO_ERROR) )
|
if( use_ret == -(POLARSSL_ERR_SHA1_FILE_IO_ERROR) )
|
||||||
snprintf( buf, buflen, "SHA1 - Read/write error in file" );
|
snprintf( buf, buflen, "SHA1 - Read/write error in file" );
|
||||||
|
@ -11,8 +11,8 @@ my $error_format_file = $data_dir.'/error.fmt';
|
|||||||
my @low_level_modules = ( "AES", "ASN1", "BLOWFISH", "CAMELLIA", "BIGNUM",
|
my @low_level_modules = ( "AES", "ASN1", "BLOWFISH", "CAMELLIA", "BIGNUM",
|
||||||
"BASE64", "XTEA", "PBKDF2", "OID",
|
"BASE64", "XTEA", "PBKDF2", "OID",
|
||||||
"PADLOCK", "DES", "NET", "CTR_DRBG", "ENTROPY",
|
"PADLOCK", "DES", "NET", "CTR_DRBG", "ENTROPY",
|
||||||
"MD2", "MD4", "MD5", "SHA1", "SHA256", "SHA512",
|
"HMAC_DRBG", "MD2", "MD4", "MD5", "RIPEMD160",
|
||||||
"GCM", "THREADING" );
|
"SHA1", "SHA256", "SHA512", "GCM", "THREADING" );
|
||||||
my @high_level_modules = ( "PEM", "X509", "DHM", "RSA", "ECP", "MD", "CIPHER", "SSL",
|
my @high_level_modules = ( "PEM", "X509", "DHM", "RSA", "ECP", "MD", "CIPHER", "SSL",
|
||||||
"PK", "PKCS12", "PKCS5" );
|
"PK", "PKCS12", "PKCS5" );
|
||||||
|
|
||||||
@ -48,6 +48,7 @@ while (my $line = <GREP>)
|
|||||||
# Fix faulty ones
|
# Fix faulty ones
|
||||||
$module_name = "BIGNUM" if ($module_name eq "MPI");
|
$module_name = "BIGNUM" if ($module_name eq "MPI");
|
||||||
$module_name = "CTR_DRBG" if ($module_name eq "CTR");
|
$module_name = "CTR_DRBG" if ($module_name eq "CTR");
|
||||||
|
$module_name = "HMAC_DRBG" if ($module_name eq "HMAC");
|
||||||
|
|
||||||
my $define_name = $module_name;
|
my $define_name = $module_name;
|
||||||
$define_name = "X509_USE,X509_CREATE" if ($define_name eq "X509");
|
$define_name = "X509_USE,X509_CREATE" if ($define_name eq "X509");
|
||||||
|
Loading…
Reference in New Issue
Block a user