mbed TLS v2.3.0
Macros | Functions
debug.h File Reference

Functions for controlling and providing debug output from the library. More...

#include "config.h"
#include "ssl.h"
#include "ecp.h"
Include dependency graph for debug.h:

Go to the source code of this file.

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 )
 

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...
 

Detailed Description

Functions for controlling and providing debug output from the library.

Copyright (C) 2006-2015, ARM Limited, All Rights Reserved SPDX-License-Identifier: Apache-2.0

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This file is part of mbed TLS (https://tls.mbed.org)

Definition in file debug.h.

Macro Definition Documentation

#define MBEDTLS_DEBUG_STRIP_PARENS (   ...)    __VA_ARGS__

Definition at line 40 of file debug.h.

#define MBEDTLS_SSL_DEBUG_BUF (   level,
  text,
  buf,
  len 
)    mbedtls_debug_print_buf( ssl, level, __FILE__, __LINE__, text, buf, len )

Definition at line 49 of file debug.h.

#define MBEDTLS_SSL_DEBUG_CRT (   level,
  text,
  crt 
)    mbedtls_debug_print_crt( ssl, level, __FILE__, __LINE__, text, crt )

Definition at line 63 of file debug.h.

#define MBEDTLS_SSL_DEBUG_ECP (   level,
  text,
 
)    mbedtls_debug_print_ecp( ssl, level, __FILE__, __LINE__, text, X )

Definition at line 58 of file debug.h.

#define MBEDTLS_SSL_DEBUG_MPI (   level,
  text,
 
)    mbedtls_debug_print_mpi( ssl, level, __FILE__, __LINE__, text, X )

Definition at line 53 of file debug.h.

#define MBEDTLS_SSL_DEBUG_MSG (   level,
  args 
)
Value:
mbedtls_debug_print_msg( ssl, level, __FILE__, __LINE__, \
#define MBEDTLS_DEBUG_STRIP_PARENS(...)
Definition: debug.h:40
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.

Definition at line 42 of file debug.h.

#define MBEDTLS_SSL_DEBUG_RET (   level,
  text,
  ret 
)    mbedtls_debug_print_ret( ssl, level, __FILE__, __LINE__, text, ret )

Definition at line 46 of file debug.h.

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_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