mbed TLS  Version 2.16.8
SSL/TLS Library for the Embedded Space
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
debug.h File Reference

Macros

#define MBEDTLS_DEBUG_STRIP_PARENS(...)   __VA_ARGS__
 
#define MBEDTLS_SSL_DEBUG_MSG(level, args)
 
#define MBEDTLS_SSL_DEBUG_RET(level, text, ret)   mbedtls_debug_print_ret( ssl, level, __FILE__, __LINE__, text, ret )
 
#define MBEDTLS_SSL_DEBUG_BUF(level, text, buf, len)   mbedtls_debug_print_buf( ssl, level, __FILE__, __LINE__, text, buf, len )
 
#define MBEDTLS_SSL_DEBUG_MPI(level, text, X)   mbedtls_debug_print_mpi( ssl, level, __FILE__, __LINE__, text, X )
 
#define MBEDTLS_SSL_DEBUG_ECP(level, text, X)   mbedtls_debug_print_ecp( ssl, level, __FILE__, __LINE__, text, X )
 
#define MBEDTLS_SSL_DEBUG_CRT(level, text, crt)   mbedtls_debug_print_crt( ssl, level, __FILE__, __LINE__, text, crt )
 
#define MBEDTLS_SSL_DEBUG_ECDH(level, ecdh, attr)   mbedtls_debug_printf_ecdh( ssl, level, __FILE__, __LINE__, ecdh, attr )
 

Enumerations

enum  mbedtls_debug_ecdh_attr {
  MBEDTLS_DEBUG_ECDH_Q,
  MBEDTLS_DEBUG_ECDH_QP,
  MBEDTLS_DEBUG_ECDH_Z
}
 

Functions

void mbedtls_debug_set_threshold (int threshold)
 Set the threshold error level to handle globally all debug output. More...
 
void mbedtls_debug_print_msg (const mbedtls_ssl_context *ssl, int level, const char *file, int line, const char *format,...)
 Print a message to the debug output. More...
 
void mbedtls_debug_print_ret (const mbedtls_ssl_context *ssl, int level, const char *file, int line, const char *text, int ret)
 Print the return value of a function to the debug output. More...
 
void mbedtls_debug_print_buf (const mbedtls_ssl_context *ssl, int level, const char *file, int line, const char *text, const unsigned char *buf, size_t len)
 Output a buffer of size len bytes to the debug output. More...
 
void mbedtls_debug_print_mpi (const mbedtls_ssl_context *ssl, int level, const char *file, int line, const char *text, const mbedtls_mpi *X)
 Print a MPI variable to the debug output. More...
 
void mbedtls_debug_print_ecp (const mbedtls_ssl_context *ssl, int level, const char *file, int line, const char *text, const mbedtls_ecp_point *X)
 Print an ECP point to the debug output. More...
 
void mbedtls_debug_print_crt (const mbedtls_ssl_context *ssl, int level, const char *file, int line, const char *text, const mbedtls_x509_crt *crt)
 Print a X.509 certificate structure to the debug output. More...
 
void mbedtls_debug_printf_ecdh (const mbedtls_ssl_context *ssl, int level, const char *file, int line, const mbedtls_ecdh_context *ecdh, mbedtls_debug_ecdh_attr attr)
 Print a field of the ECDH structure in the SSL context to the debug output. More...
 

Description

Functions for controlling and providing debug output from the library.

Function Documentation

void mbedtls_debug_print_buf ( const mbedtls_ssl_context ssl,
int  level,
const char *  file,
int  line,
const char *  text,
const unsigned char *  buf,
size_t  len 
)

Output a buffer of size len bytes to the debug output.

This function is always used through the MBEDTLS_SSL_DEBUG_BUF() macro, which supplies the ssl context, file and line number parameters.

Parameters
sslSSL context
levelerror level of the debug message
filefile the error has occurred in
lineline number the error has occurred in
texta name or label for the buffer being dumped. Normally the variable or buffer name
bufthe buffer to be outputted
lenlength of the buffer
Attention
This function is intended for INTERNAL usage within the library only.
void mbedtls_debug_print_crt ( const mbedtls_ssl_context ssl,
int  level,
const char *  file,
int  line,
const char *  text,
const mbedtls_x509_crt crt 
)

Print a X.509 certificate structure to the debug output.

This function is always used through the MBEDTLS_SSL_DEBUG_CRT() macro, which supplies the ssl context, file and line number parameters.

Parameters
sslSSL context
levelerror level of the debug message
filefile the error has occurred in
lineline number the error has occurred in
texta name or label for the certificate being output
crtX.509 certificate structure
Attention
This function is intended for INTERNAL usage within the library only.
void mbedtls_debug_print_ecp ( const mbedtls_ssl_context ssl,
int  level,
const char *  file,
int  line,
const char *  text,
const mbedtls_ecp_point X 
)

Print an ECP point to the debug output.

This function is always used through the MBEDTLS_SSL_DEBUG_ECP() macro, which supplies the ssl context, file and line number parameters.

Parameters
sslSSL context
levelerror level of the debug message
filefile the error has occurred in
lineline number the error has occurred in
texta name or label for the ECP point being output. Normally the variable name
Xthe ECP point
Attention
This function is intended for INTERNAL usage within the library only.
void mbedtls_debug_print_mpi ( const mbedtls_ssl_context ssl,
int  level,
const char *  file,
int  line,
const char *  text,
const mbedtls_mpi X 
)

Print a MPI variable to the debug output.

This function is always used through the MBEDTLS_SSL_DEBUG_MPI() macro, which supplies the ssl context, file and line number parameters.

Parameters
sslSSL context
levelerror level of the debug message
filefile the error has occurred in
lineline number the error has occurred in
texta name or label for the MPI being output. Normally the variable name
Xthe MPI variable
Attention
This function is intended for INTERNAL usage within the library only.
void mbedtls_debug_print_msg ( const mbedtls_ssl_context ssl,
int  level,
const char *  file,
int  line,
const char *  format,
  ... 
)

Print a message to the debug output.

This function is always used through the MBEDTLS_SSL_DEBUG_MSG() macro, which supplies the ssl context, file and line number parameters.

Parameters
sslSSL context
levelerror level of the debug message
filefile the message has occurred in
lineline number the message has occurred at
formatformat specifier, in printf format
...variables used by the format specifier
Attention
This function is intended for INTERNAL usage within the library only.
void mbedtls_debug_print_ret ( const mbedtls_ssl_context ssl,
int  level,
const char *  file,
int  line,
const char *  text,
int  ret 
)

Print the return value of a function to the debug output.

This function is always used through the MBEDTLS_SSL_DEBUG_RET() macro, which supplies the ssl context, file and line number parameters.

Parameters
sslSSL context
levelerror level of the debug message
filefile the error has occurred in
lineline number the error has occurred in
textthe name of the function that returned the error
retthe return code value
Attention
This function is intended for INTERNAL usage within the library only.
void mbedtls_debug_printf_ecdh ( const mbedtls_ssl_context ssl,
int  level,
const char *  file,
int  line,
const mbedtls_ecdh_context ecdh,
mbedtls_debug_ecdh_attr  attr 
)

Print a field of the ECDH structure in the SSL context to the debug output.

This function is always used through the MBEDTLS_SSL_DEBUG_ECDH() macro, which supplies the ssl context, file and line number parameters.

Parameters
sslSSL context
levelerror level of the debug message
filefile the error has occurred in
lineline number the error has occurred in
ecdhthe ECDH context
attrthe identifier of the attribute being output
Attention
This function is intended for INTERNAL usage within the library only.
void mbedtls_debug_set_threshold ( int  threshold)

Set the threshold error level to handle globally all debug output.

Debug messages that have a level over the threshold value are discarded. (Default value: 0 = No debug )

Parameters
thresholdtheshold level of messages to filter on. Messages at a higher level will be discarded.
  • Debug levels
    • 0 No debug
    • 1 Error
    • 2 State change
    • 3 Informational
    • 4 Verbose