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 #ifndef MBEDTLS_DEBUG_H
00050 #define MBEDTLS_DEBUG_H
00051
00052 #if !defined(MBEDTLS_CONFIG_FILE)
00053 #include "config.h"
00054 #else
00055 #include MBEDTLS_CONFIG_FILE
00056 #endif
00057
00058 #include "ssl.h"
00059
00060 #if defined(MBEDTLS_ECP_C)
00061 #include "ecp.h"
00062 #endif
00063
00064 #if defined(MBEDTLS_DEBUG_C)
00065
00066 #define MBEDTLS_DEBUG_STRIP_PARENS( ... ) __VA_ARGS__
00067
00068 #define MBEDTLS_SSL_DEBUG_MSG( level, args ) \
00069 mbedtls_debug_print_msg( ssl, level, __FILE__, __LINE__, \
00070 MBEDTLS_DEBUG_STRIP_PARENS args )
00071
00072 #define MBEDTLS_SSL_DEBUG_RET( level, text, ret ) \
00073 mbedtls_debug_print_ret( ssl, level, __FILE__, __LINE__, text, ret )
00074
00075 #define MBEDTLS_SSL_DEBUG_BUF( level, text, buf, len ) \
00076 mbedtls_debug_print_buf( ssl, level, __FILE__, __LINE__, text, buf, len )
00077
00078 #if defined(MBEDTLS_BIGNUM_C)
00079 #define MBEDTLS_SSL_DEBUG_MPI( level, text, X ) \
00080 mbedtls_debug_print_mpi( ssl, level, __FILE__, __LINE__, text, X )
00081 #endif
00082
00083 #if defined(MBEDTLS_ECP_C)
00084 #define MBEDTLS_SSL_DEBUG_ECP( level, text, X ) \
00085 mbedtls_debug_print_ecp( ssl, level, __FILE__, __LINE__, text, X )
00086 #endif
00087
00088 #if defined(MBEDTLS_X509_CRT_PARSE_C)
00089 #define MBEDTLS_SSL_DEBUG_CRT( level, text, crt ) \
00090 mbedtls_debug_print_crt( ssl, level, __FILE__, __LINE__, text, crt )
00091 #endif
00092
00093 #else
00094
00095 #define MBEDTLS_SSL_DEBUG_MSG( level, args ) do { } while( 0 )
00096 #define MBEDTLS_SSL_DEBUG_RET( level, text, ret ) do { } while( 0 )
00097 #define MBEDTLS_SSL_DEBUG_BUF( level, text, buf, len ) do { } while( 0 )
00098 #define MBEDTLS_SSL_DEBUG_MPI( level, text, X ) do { } while( 0 )
00099 #define MBEDTLS_SSL_DEBUG_ECP( level, text, X ) do { } while( 0 )
00100 #define MBEDTLS_SSL_DEBUG_CRT( level, text, crt ) do { } while( 0 )
00101
00102 #endif
00103
00104 #ifdef __cplusplus
00105 extern "C" {
00106 #endif
00107
00123 void mbedtls_debug_set_threshold( int threshold );
00124
00140 void mbedtls_debug_print_msg( const mbedtls_ssl_context *ssl, int level,
00141 const char *file, int line,
00142 const char *format, ... );
00143
00159 void mbedtls_debug_print_ret( const mbedtls_ssl_context *ssl, int level,
00160 const char *file, int line,
00161 const char *text, int ret );
00162
00180 void mbedtls_debug_print_buf( const mbedtls_ssl_context *ssl, int level,
00181 const char *file, int line, const char *text,
00182 const unsigned char *buf, size_t len );
00183
00184 #if defined(MBEDTLS_BIGNUM_C)
00185
00201 void mbedtls_debug_print_mpi( const mbedtls_ssl_context *ssl, int level,
00202 const char *file, int line,
00203 const char *text, const mbedtls_mpi *X );
00204 #endif
00205
00206 #if defined(MBEDTLS_ECP_C)
00207
00223 void mbedtls_debug_print_ecp( const mbedtls_ssl_context *ssl, int level,
00224 const char *file, int line,
00225 const char *text, const mbedtls_ecp_point *X );
00226 #endif
00227
00228 #if defined(MBEDTLS_X509_CRT_PARSE_C)
00229
00244 void mbedtls_debug_print_crt( const mbedtls_ssl_context *ssl, int level,
00245 const char *file, int line,
00246 const char *text, const mbedtls_x509_crt *crt );
00247 #endif
00248
00249 #ifdef __cplusplus
00250 }
00251 #endif
00252
00253 #endif
00254