1a8e1175bSopenharmony_ci/** 2a8e1175bSopenharmony_ci * \file ssl_debug_helpers.h 3a8e1175bSopenharmony_ci * 4a8e1175bSopenharmony_ci * \brief Automatically generated helper functions for debugging 5a8e1175bSopenharmony_ci */ 6a8e1175bSopenharmony_ci/* 7a8e1175bSopenharmony_ci * Copyright The Mbed TLS Contributors 8a8e1175bSopenharmony_ci * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later 9a8e1175bSopenharmony_ci */ 10a8e1175bSopenharmony_ci 11a8e1175bSopenharmony_ci#ifndef MBEDTLS_SSL_DEBUG_HELPERS_H 12a8e1175bSopenharmony_ci#define MBEDTLS_SSL_DEBUG_HELPERS_H 13a8e1175bSopenharmony_ci 14a8e1175bSopenharmony_ci#include "common.h" 15a8e1175bSopenharmony_ci 16a8e1175bSopenharmony_ci#if defined(MBEDTLS_DEBUG_C) 17a8e1175bSopenharmony_ci 18a8e1175bSopenharmony_ci#include "mbedtls/ssl.h" 19a8e1175bSopenharmony_ci#include "ssl_misc.h" 20a8e1175bSopenharmony_ci 21a8e1175bSopenharmony_ci 22a8e1175bSopenharmony_ciconst char *mbedtls_ssl_states_str(mbedtls_ssl_states in); 23a8e1175bSopenharmony_ci 24a8e1175bSopenharmony_ci#if defined(MBEDTLS_SSL_EARLY_DATA) && defined(MBEDTLS_SSL_CLI_C) 25a8e1175bSopenharmony_ciconst char *mbedtls_ssl_early_data_status_str(mbedtls_ssl_early_data_status in); 26a8e1175bSopenharmony_ciconst char *mbedtls_ssl_early_data_state_str(mbedtls_ssl_early_data_state in); 27a8e1175bSopenharmony_ci#endif 28a8e1175bSopenharmony_ci 29a8e1175bSopenharmony_ciconst char *mbedtls_ssl_protocol_version_str(mbedtls_ssl_protocol_version in); 30a8e1175bSopenharmony_ci 31a8e1175bSopenharmony_ciconst char *mbedtls_tls_prf_types_str(mbedtls_tls_prf_types in); 32a8e1175bSopenharmony_ci 33a8e1175bSopenharmony_ciconst char *mbedtls_ssl_key_export_type_str(mbedtls_ssl_key_export_type in); 34a8e1175bSopenharmony_ci 35a8e1175bSopenharmony_ciconst char *mbedtls_ssl_sig_alg_to_str(uint16_t in); 36a8e1175bSopenharmony_ci 37a8e1175bSopenharmony_ciconst char *mbedtls_ssl_named_group_to_str(uint16_t in); 38a8e1175bSopenharmony_ci 39a8e1175bSopenharmony_ciconst char *mbedtls_ssl_get_extension_name(unsigned int extension_type); 40a8e1175bSopenharmony_ci 41a8e1175bSopenharmony_civoid mbedtls_ssl_print_extensions(const mbedtls_ssl_context *ssl, 42a8e1175bSopenharmony_ci int level, const char *file, int line, 43a8e1175bSopenharmony_ci int hs_msg_type, uint32_t extensions_mask, 44a8e1175bSopenharmony_ci const char *extra); 45a8e1175bSopenharmony_ci 46a8e1175bSopenharmony_civoid mbedtls_ssl_print_extension(const mbedtls_ssl_context *ssl, 47a8e1175bSopenharmony_ci int level, const char *file, int line, 48a8e1175bSopenharmony_ci int hs_msg_type, unsigned int extension_type, 49a8e1175bSopenharmony_ci const char *extra_msg0, const char *extra_msg1); 50a8e1175bSopenharmony_ci 51a8e1175bSopenharmony_ci#if defined(MBEDTLS_SSL_PROTO_TLS1_3) && defined(MBEDTLS_SSL_SESSION_TICKETS) 52a8e1175bSopenharmony_civoid mbedtls_ssl_print_ticket_flags(const mbedtls_ssl_context *ssl, 53a8e1175bSopenharmony_ci int level, const char *file, int line, 54a8e1175bSopenharmony_ci unsigned int flags); 55a8e1175bSopenharmony_ci#endif /* MBEDTLS_SSL_PROTO_TLS1_3 && MBEDTLS_SSL_SESSION_TICKETS */ 56a8e1175bSopenharmony_ci 57a8e1175bSopenharmony_ci#define MBEDTLS_SSL_PRINT_EXTS(level, hs_msg_type, extensions_mask) \ 58a8e1175bSopenharmony_ci mbedtls_ssl_print_extensions(ssl, level, __FILE__, __LINE__, \ 59a8e1175bSopenharmony_ci hs_msg_type, extensions_mask, NULL) 60a8e1175bSopenharmony_ci 61a8e1175bSopenharmony_ci#define MBEDTLS_SSL_PRINT_EXT(level, hs_msg_type, extension_type, extra) \ 62a8e1175bSopenharmony_ci mbedtls_ssl_print_extension(ssl, level, __FILE__, __LINE__, \ 63a8e1175bSopenharmony_ci hs_msg_type, extension_type, \ 64a8e1175bSopenharmony_ci extra, NULL) 65a8e1175bSopenharmony_ci 66a8e1175bSopenharmony_ci#if defined(MBEDTLS_SSL_PROTO_TLS1_3) && defined(MBEDTLS_SSL_SESSION_TICKETS) 67a8e1175bSopenharmony_ci#define MBEDTLS_SSL_PRINT_TICKET_FLAGS(level, flags) \ 68a8e1175bSopenharmony_ci mbedtls_ssl_print_ticket_flags(ssl, level, __FILE__, __LINE__, flags) 69a8e1175bSopenharmony_ci#endif 70a8e1175bSopenharmony_ci 71a8e1175bSopenharmony_ci#else 72a8e1175bSopenharmony_ci 73a8e1175bSopenharmony_ci#define MBEDTLS_SSL_PRINT_EXTS(level, hs_msg_type, extension_mask) 74a8e1175bSopenharmony_ci 75a8e1175bSopenharmony_ci#define MBEDTLS_SSL_PRINT_EXT(level, hs_msg_type, extension_type, extra) 76a8e1175bSopenharmony_ci 77a8e1175bSopenharmony_ci#if defined(MBEDTLS_SSL_PROTO_TLS1_3) && defined(MBEDTLS_SSL_SESSION_TICKETS) 78a8e1175bSopenharmony_ci#define MBEDTLS_SSL_PRINT_TICKET_FLAGS(level, flags) 79a8e1175bSopenharmony_ci#endif 80a8e1175bSopenharmony_ci 81a8e1175bSopenharmony_ci#endif /* MBEDTLS_DEBUG_C */ 82a8e1175bSopenharmony_ci 83a8e1175bSopenharmony_ci#endif /* MBEDTLS_SSL_DEBUG_HELPERS_H */ 84