132b31808SJens Wiklander /** 232b31808SJens Wiklander * \file ssl_debug_helpers.h 332b31808SJens Wiklander * 432b31808SJens Wiklander * \brief Automatically generated helper functions for debugging 532b31808SJens Wiklander */ 632b31808SJens Wiklander /* 732b31808SJens Wiklander * Copyright The Mbed TLS Contributors 8*b0563631STom Van Eyck * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later 932b31808SJens Wiklander */ 1032b31808SJens Wiklander 1132b31808SJens Wiklander #ifndef MBEDTLS_SSL_DEBUG_HELPERS_H 1232b31808SJens Wiklander #define MBEDTLS_SSL_DEBUG_HELPERS_H 1332b31808SJens Wiklander 1432b31808SJens Wiklander #include "common.h" 1532b31808SJens Wiklander 1632b31808SJens Wiklander #if defined(MBEDTLS_DEBUG_C) 1732b31808SJens Wiklander 1832b31808SJens Wiklander #include "mbedtls/ssl.h" 1932b31808SJens Wiklander #include "ssl_misc.h" 2032b31808SJens Wiklander 2132b31808SJens Wiklander 2232b31808SJens Wiklander const char *mbedtls_ssl_states_str(mbedtls_ssl_states in); 2332b31808SJens Wiklander 24*b0563631STom Van Eyck #if defined(MBEDTLS_SSL_EARLY_DATA) && defined(MBEDTLS_SSL_CLI_C) 25*b0563631STom Van Eyck const char *mbedtls_ssl_early_data_status_str(mbedtls_ssl_early_data_status in); 26*b0563631STom Van Eyck const char *mbedtls_ssl_early_data_state_str(mbedtls_ssl_early_data_state in); 27*b0563631STom Van Eyck #endif 28*b0563631STom Van Eyck 2932b31808SJens Wiklander const char *mbedtls_ssl_protocol_version_str(mbedtls_ssl_protocol_version in); 3032b31808SJens Wiklander 3132b31808SJens Wiklander const char *mbedtls_tls_prf_types_str(mbedtls_tls_prf_types in); 3232b31808SJens Wiklander 3332b31808SJens Wiklander const char *mbedtls_ssl_key_export_type_str(mbedtls_ssl_key_export_type in); 3432b31808SJens Wiklander 3532b31808SJens Wiklander const char *mbedtls_ssl_sig_alg_to_str(uint16_t in); 3632b31808SJens Wiklander 3732b31808SJens Wiklander const char *mbedtls_ssl_named_group_to_str(uint16_t in); 3832b31808SJens Wiklander 3932b31808SJens Wiklander const char *mbedtls_ssl_get_extension_name(unsigned int extension_type); 4032b31808SJens Wiklander 4132b31808SJens Wiklander void mbedtls_ssl_print_extensions(const mbedtls_ssl_context *ssl, 4232b31808SJens Wiklander int level, const char *file, int line, 4332b31808SJens Wiklander int hs_msg_type, uint32_t extensions_mask, 4432b31808SJens Wiklander const char *extra); 4532b31808SJens Wiklander 4632b31808SJens Wiklander void mbedtls_ssl_print_extension(const mbedtls_ssl_context *ssl, 4732b31808SJens Wiklander int level, const char *file, int line, 4832b31808SJens Wiklander int hs_msg_type, unsigned int extension_type, 4932b31808SJens Wiklander const char *extra_msg0, const char *extra_msg1); 5032b31808SJens Wiklander 5132b31808SJens Wiklander #if defined(MBEDTLS_SSL_PROTO_TLS1_3) && defined(MBEDTLS_SSL_SESSION_TICKETS) 5232b31808SJens Wiklander void mbedtls_ssl_print_ticket_flags(const mbedtls_ssl_context *ssl, 5332b31808SJens Wiklander int level, const char *file, int line, 5432b31808SJens Wiklander unsigned int flags); 5532b31808SJens Wiklander #endif /* MBEDTLS_SSL_PROTO_TLS1_3 && MBEDTLS_SSL_SESSION_TICKETS */ 5632b31808SJens Wiklander 5732b31808SJens Wiklander #define MBEDTLS_SSL_PRINT_EXTS(level, hs_msg_type, extensions_mask) \ 5832b31808SJens Wiklander mbedtls_ssl_print_extensions(ssl, level, __FILE__, __LINE__, \ 5932b31808SJens Wiklander hs_msg_type, extensions_mask, NULL) 6032b31808SJens Wiklander 6132b31808SJens Wiklander #define MBEDTLS_SSL_PRINT_EXT(level, hs_msg_type, extension_type, extra) \ 6232b31808SJens Wiklander mbedtls_ssl_print_extension(ssl, level, __FILE__, __LINE__, \ 6332b31808SJens Wiklander hs_msg_type, extension_type, \ 6432b31808SJens Wiklander extra, NULL) 6532b31808SJens Wiklander 6632b31808SJens Wiklander #if defined(MBEDTLS_SSL_PROTO_TLS1_3) && defined(MBEDTLS_SSL_SESSION_TICKETS) 6732b31808SJens Wiklander #define MBEDTLS_SSL_PRINT_TICKET_FLAGS(level, flags) \ 6832b31808SJens Wiklander mbedtls_ssl_print_ticket_flags(ssl, level, __FILE__, __LINE__, flags) 6932b31808SJens Wiklander #endif 7032b31808SJens Wiklander 7132b31808SJens Wiklander #else 7232b31808SJens Wiklander 7332b31808SJens Wiklander #define MBEDTLS_SSL_PRINT_EXTS(level, hs_msg_type, extension_mask) 7432b31808SJens Wiklander 7532b31808SJens Wiklander #define MBEDTLS_SSL_PRINT_EXT(level, hs_msg_type, extension_type, extra) 7632b31808SJens Wiklander 7732b31808SJens Wiklander #if defined(MBEDTLS_SSL_PROTO_TLS1_3) && defined(MBEDTLS_SSL_SESSION_TICKETS) 7832b31808SJens Wiklander #define MBEDTLS_SSL_PRINT_TICKET_FLAGS(level, flags) 7932b31808SJens Wiklander #endif 8032b31808SJens Wiklander 8132b31808SJens Wiklander #endif /* MBEDTLS_DEBUG_C */ 8232b31808SJens Wiklander 8332b31808SJens Wiklander #endif /* MBEDTLS_SSL_DEBUG_HELPERS_H */ 84