00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051 #ifndef MBEDTLS_DEBUG_H
00052 #define MBEDTLS_DEBUG_H
00053
00054 #if !defined(MBEDTLS_CONFIG_FILE)
00055 #include "config.h"
00056 #else
00057 #include MBEDTLS_CONFIG_FILE
00058 #endif
00059
00060 #include "ssl.h"
00061
00062 #if defined(MBEDTLS_ECP_C)
00063 #include "ecp.h"
00064 #endif
00065
00066 #if defined(MBEDTLS_DEBUG_C)
00067
00068 #define MBEDTLS_DEBUG_STRIP_PARENS( ... ) __VA_ARGS__
00069
00070 #define MBEDTLS_SSL_DEBUG_MSG( level, args ) \
00071 mbedtls_debug_print_msg( ssl, level, __FILE__, __LINE__, \
00072 MBEDTLS_DEBUG_STRIP_PARENS args )
00073
00074 #define MBEDTLS_SSL_DEBUG_RET( level, text, ret ) \
00075 mbedtls_debug_print_ret( ssl, level, __FILE__, __LINE__, text, ret )
00076
00077 #define MBEDTLS_SSL_DEBUG_BUF( level, text, buf, len ) \
00078 mbedtls_debug_print_buf( ssl, level, __FILE__, __LINE__, text, buf, len )
00079
00080 #if defined(MBEDTLS_BIGNUM_C)
00081 #define MBEDTLS_SSL_DEBUG_MPI( level, text, X ) \
00082 mbedtls_debug_print_mpi( ssl, level, __FILE__, __LINE__, text, X )
00083 #endif
00084
00085 #if defined(MBEDTLS_ECP_C)
00086 #define MBEDTLS_SSL_DEBUG_ECP( level, text, X ) \
00087 mbedtls_debug_print_ecp( ssl, level, __FILE__, __LINE__, text, X )
00088 #endif
00089
00090 #if defined(MBEDTLS_X509_CRT_PARSE_C)
00091 #define MBEDTLS_SSL_DEBUG_CRT( level, text, crt ) \
00092 mbedtls_debug_print_crt( ssl, level, __FILE__, __LINE__, text, crt )
00093 #endif
00094
00095 #else
00096
00097 #define MBEDTLS_SSL_DEBUG_MSG( level, args ) do { } while( 0 )
00098 #define MBEDTLS_SSL_DEBUG_RET( level, text, ret ) do { } while( 0 )
00099 #define MBEDTLS_SSL_DEBUG_BUF( level, text, buf, len ) do { } while( 0 )
00100 #define MBEDTLS_SSL_DEBUG_MPI( level, text, X ) do { } while( 0 )
00101 #define MBEDTLS_SSL_DEBUG_ECP( level, text, X ) do { } while( 0 )
00102 #define MBEDTLS_SSL_DEBUG_CRT( level, text, crt ) do { } while( 0 )
00103
00104 #endif
00105
00106 #ifdef __cplusplus
00107 extern "C" {
00108 #endif
00109
00125 void mbedtls_debug_set_threshold( int threshold );
00126
00142 void mbedtls_debug_print_msg( const mbedtls_ssl_context *ssl, int level,
00143 const char *file, int line,
00144 const char *format, ... );
00145
00161 void mbedtls_debug_print_ret( const mbedtls_ssl_context *ssl, int level,
00162 const char *file, int line,
00163 const char *text, int ret );
00164
00182 void mbedtls_debug_print_buf( const mbedtls_ssl_context *ssl, int level,
00183 const char *file, int line, const char *text,
00184 const unsigned char *buf, size_t len );
00185
00186 #if defined(MBEDTLS_BIGNUM_C)
00187
00203 void mbedtls_debug_print_mpi( const mbedtls_ssl_context *ssl, int level,
00204 const char *file, int line,
00205 const char *text, const mbedtls_mpi *X );
00206 #endif
00207
00208 #if defined(MBEDTLS_ECP_C)
00209
00225 void mbedtls_debug_print_ecp( const mbedtls_ssl_context *ssl, int level,
00226 const char *file, int line,
00227 const char *text, const mbedtls_ecp_point *X );
00228 #endif
00229
00230 #if defined(MBEDTLS_X509_CRT_PARSE_C)
00231
00246 void mbedtls_debug_print_crt( const mbedtls_ssl_context *ssl, int level,
00247 const char *file, int line,
00248 const char *text, const mbedtls_x509_crt *crt );
00249 #endif
00250
00251 #ifdef __cplusplus
00252 }
00253 #endif
00254
00255 #endif
00256