#ifndef MBEDTLS_DEBUG_H
#define MBEDTLS_DEBUG_H
#include "mbedtls/build_info.h"
#include "mbedtls/ssl.h"
#if defined(MBEDTLS_ECP_C)
#include "mbedtls/ecp.h"
#endif
#if defined(MBEDTLS_DEBUG_C)
#define MBEDTLS_DEBUG_STRIP_PARENS(...) …
#define MBEDTLS_SSL_DEBUG_MSG(level, args) …
#define MBEDTLS_SSL_DEBUG_RET(level, text, ret) …
#define MBEDTLS_SSL_DEBUG_BUF(level, text, buf, len) …
#if defined(MBEDTLS_BIGNUM_C)
#define MBEDTLS_SSL_DEBUG_MPI(level, text, X) …
#endif
#if defined(MBEDTLS_ECP_C)
#define MBEDTLS_SSL_DEBUG_ECP(level, text, X) …
#endif
#if defined(MBEDTLS_X509_CRT_PARSE_C)
#if !defined(MBEDTLS_X509_REMOVE_INFO)
#define MBEDTLS_SSL_DEBUG_CRT(level, text, crt) …
#else
#define MBEDTLS_SSL_DEBUG_CRT …
#endif
#endif
#if defined(MBEDTLS_ECDH_C)
#define MBEDTLS_SSL_DEBUG_ECDH(level, ecdh, attr) …
#endif
#else
#define MBEDTLS_SSL_DEBUG_MSG …
#define MBEDTLS_SSL_DEBUG_RET …
#define MBEDTLS_SSL_DEBUG_BUF …
#define MBEDTLS_SSL_DEBUG_MPI …
#define MBEDTLS_SSL_DEBUG_ECP …
#define MBEDTLS_SSL_DEBUG_CRT …
#define MBEDTLS_SSL_DEBUG_ECDH …
#endif
#if defined(__has_attribute)
#if __has_attribute(format)
#if defined(__MINGW32__) && __USE_MINGW_ANSI_STDIO == 1
#define MBEDTLS_PRINTF_ATTRIBUTE …
#else
#define MBEDTLS_PRINTF_ATTRIBUTE(string_index, first_to_check) …
#endif
#else
#define MBEDTLS_PRINTF_ATTRIBUTE …
#endif
#else
#define MBEDTLS_PRINTF_ATTRIBUTE …
#endif
#if (defined(__MINGW32__) && __USE_MINGW_ANSI_STDIO == 0) || (defined(_MSC_VER) && _MSC_VER < 1800)
#include <inttypes.h>
#define MBEDTLS_PRINTF_SIZET …
#define MBEDTLS_PRINTF_LONGLONG …
#else \
#define MBEDTLS_PRINTF_SIZET …
#define MBEDTLS_PRINTF_LONGLONG …
#endif \
#if !defined(MBEDTLS_PRINTF_MS_TIME)
#include <inttypes.h>
#if !defined(PRId64)
#define MBEDTLS_PRINTF_MS_TIME …
#else
#define MBEDTLS_PRINTF_MS_TIME …
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
void mbedtls_debug_set_threshold(int threshold);
#ifdef __cplusplus
}
#endif
#endif