modules: mbedtls: convert mbedTLS log levels to Zephyr log levels
So far LOG_DBG() was used inside debug hook for mbedTLS library. This meant that it was hard to distinct log messages by simply looking at the log level number, even though Zephyr logging subsystem supports colorful logs depending on log level. Choose an appropriate Zephyr LOG_*() macro based on log level coming from mbedTLS library. Remove log level number from formatted log messages, as it is now redundant. One controversial thing about this change is that mbedTLS' "2 State change" log level is mapped to Zephyr's "warning" log level. Those are not really warnings in real life, but rather informational messages. However, using "warning" log level for those allows to clearly distinguish between "2 State change" and "3 Informational" debug messages from mbedTLS. Additionally, mbedTLS debug message implementation does not seem to be safe to use in production, so keeping in mind MBEDTLS_DEBUG will be enabled just during debugging phase, printing "2 State change" logs as warnings should not be a big deal. Set default MBEDTLS_DEBUG_LEVEL value depending on selected Zephyr logging module level, so that only single option needs to be configured in application project. Remove prompt for MBEDTLS_DEBUG_LEVEL, so that interactively (e.g. via menuconfig) adjusting MBEDTLS_LOG_LEVEL will always result in automatically updating MBEDTLS_DEBUG_LEVEL option. This is to prevent so called "stuck symbol syndrome". Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
This commit is contained in:
parent
e4c11fd8aa
commit
af37c09440
4 changed files with 21 additions and 4 deletions
|
@ -97,7 +97,11 @@ config MBEDTLS_DEBUG
|
|||
if MBEDTLS_DEBUG
|
||||
|
||||
config MBEDTLS_DEBUG_LEVEL
|
||||
int "mbed TLS default debug level"
|
||||
int
|
||||
default 4 if MBEDTLS_LOG_LEVEL_DBG
|
||||
default 3 if MBEDTLS_LOG_LEVEL_INF
|
||||
default 2 if MBEDTLS_LOG_LEVEL_WRN
|
||||
default 1 if MBEDTLS_LOG_LEVEL_ERR
|
||||
default 0
|
||||
range 0 4
|
||||
help
|
||||
|
|
|
@ -29,5 +29,19 @@ void zephyr_mbedtls_debug(void *ctx, int level, const char *file, int line, cons
|
|||
}
|
||||
}
|
||||
|
||||
LOG_DBG("%s:%04d: |%d| %s", basename, line, level, str);
|
||||
switch (level) {
|
||||
case 0:
|
||||
case 1:
|
||||
LOG_ERR("%s:%04d: %s", basename, line, str);
|
||||
break;
|
||||
case 2:
|
||||
LOG_WRN("%s:%04d: %s", basename, line, str);
|
||||
break;
|
||||
case 3:
|
||||
LOG_INF("%s:%04d: %s", basename, line, str);
|
||||
break;
|
||||
default:
|
||||
LOG_DBG("%s:%04d: %s", basename, line, str);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue