Address review comments
1. The functions mbedtls_high_level_strerr and mbedtls_low_level_strerr
accept any error code and extract the high-level and low-level parts
respectively.
2. Documentation updates.
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
diff --git a/scripts/data_files/error.fmt b/scripts/data_files/error.fmt
index 5699d9e..0e128e8 100644
--- a/scripts/data_files/error.fmt
+++ b/scripts/data_files/error.fmt
@@ -44,9 +44,16 @@
const char * mbedtls_high_level_strerr( int error_code )
{
+ int high_level_error_code;
const char *error_description = NULL;
- switch( error_code )
+ if( error_code < 0 )
+ error_code = -error_code;
+
+ /* Extract the high-level part from the error code. */
+ high_level_error_code = error_code & 0xFF80;
+
+ switch( high_level_error_code )
{
/* Begin Auto-Generated Code. */
HIGH_LEVEL_CODE_CHECKS
@@ -61,9 +68,16 @@
const char * mbedtls_low_level_strerr( int error_code )
{
+ int low_level_error_code;
const char *error_description = NULL;
- switch( error_code )
+ if( error_code < 0 )
+ error_code = -error_code;
+
+ /* Extract the low-level part from the error code. */
+ low_level_error_code = error_code & ~0xFF80;
+
+ switch( low_level_error_code )
{
/* Begin Auto-Generated Code. */
LOW_LEVEL_CODE_CHECKS
@@ -96,7 +110,7 @@
use_ret = ret & 0xFF80;
// Translate high level error code.
- high_level_error_description = mbedtls_high_level_strerr(use_ret);
+ high_level_error_description = mbedtls_high_level_strerr( ret );
if( high_level_error_description == NULL )
mbedtls_snprintf( buf, buflen, "UNKNOWN ERROR CODE (%04X)", use_ret );
@@ -133,7 +147,7 @@
}
// Translate low level error code.
- low_level_error_description = mbedtls_low_level_strerr( use_ret );
+ low_level_error_description = mbedtls_low_level_strerr( ret );
if( low_level_error_description == NULL )
mbedtls_snprintf( buf, buflen, "UNKNOWN ERROR CODE (%04X)", use_ret );