diff --git a/library/ssl_debug_helpers.h b/library/ssl_debug_helpers.h
index 6b97bc6..8fce87a 100644
--- a/library/ssl_debug_helpers.h
+++ b/library/ssl_debug_helpers.h
@@ -43,27 +43,43 @@
 
 const char *mbedtls_ssl_named_group_to_str( uint16_t in );
 
-#endif /* MBEDTLS_DEBUG_C */
+const char *mbedtls_ssl_get_extension_name( unsigned int extension_type );
 
-#if defined(MBEDTLS_SSL_PROTO_TLS1_3)
-#if defined(MBEDTLS_DEBUG_C)
+void mbedtls_ssl_print_extensions( const mbedtls_ssl_context *ssl,
+                                   int level, const char *file, int line,
+                                   int hs_msg_type, uint32_t extensions_mask,
+                                   const char *extra );
 
-const char *mbedtls_tls13_get_extension_name( uint16_t extension_type );
+void mbedtls_ssl_print_extension_type( const mbedtls_ssl_context *ssl,
+                                       int level, const char *file, int line,
+                                       int hs_msg_type,
+                                       unsigned int extension_type,
+                                       const char *extra_msg0,
+                                       const char *extra_msg1 );
 
-void mbedtls_ssl_tls13_print_extensions( const mbedtls_ssl_context *ssl,
-                                         int level, const char *file, int line,
-                                         int hs_msg_type,
-                                         uint32_t extensions_present );
+#define MBEDTLS_SSL_PRINT_SENT_EXTS( level, hs_msg_type )                       \
+            mbedtls_ssl_print_extensions( ssl, level, __FILE__, __LINE__,       \
+                                          hs_msg_type,                          \
+                                          ssl->handshake->sent_extensions,      \
+                                          "sent" )
 
-#define MBEDTLS_SSL_TLS1_3_PRINT_EXTS( level, hs_msg_type, extensions_present ) \
-            mbedtls_ssl_tls13_print_extensions( \
-                ssl, level, __FILE__, __LINE__, hs_msg_type, extensions_present )
+#define MBEDTLS_SSL_PRINT_RECEIVED_EXTS( level, hs_msg_type )                   \
+            mbedtls_ssl_print_extensions( ssl, level, __FILE__, __LINE__,       \
+                                          hs_msg_type,                          \
+                                          ssl->handshake->received_extensions,  \
+                                          "received" )
+
+#define MBEDTLS_SSL_PRINT_EXT_TYPE( level, hs_msg_type, extension_type, extra ) \
+            mbedtls_ssl_print_extension_type( ssl, level, __FILE__, __LINE__,   \
+                                    hs_msg_type, extension_type, extra, NULL )
 #else
 
-#define MBEDTLS_SSL_TLS1_3_PRINT_EXTS( level, hs_msg_name, extensions_present )
+#define MBEDTLS_SSL_PRINT_SENT_EXTS( level, hs_msg_type )
 
-#endif
+#define MBEDTLS_SSL_PRINT_RECEIVED_EXTS( level, hs_msg_type )
 
-#endif /* MBEDTLS_SSL_PROTO_TLS1_3 */
+#define MBEDTLS_SSL_PRINT_EXT_TYPE( level, hs_msg_type, extension_type, extra )
 
-#endif /* SSL_DEBUG_HELPERS_H */
+#endif /* MBEDTLS_DEBUG_C */
+
+#endif /* MBEDTLS_SSL_DEBUG_HELPERS_H */
