diff --git a/library/ssl_srv.c b/library/ssl_srv.c
index f7ab70c..e69c517 100644
--- a/library/ssl_srv.c
+++ b/library/ssl_srv.c
@@ -3074,26 +3074,19 @@
      */
     if( mbedtls_ssl_get_minor_ver( ssl ) == MBEDTLS_SSL_MINOR_VERSION_3 )
     {
-        const int *cur;
-
         /*
          * Supported signature algorithms
          */
-        for( cur = ssl->conf->sig_hashes; *cur != MBEDTLS_MD_NONE; cur++ )
-        {
-            unsigned char hash = mbedtls_ssl_hash_from_md_alg( *cur );
-            if( !( 0
+        MBEDTLS_SSL_BEGIN_FOR_EACH_SIG_HASH_TLS( hash )
+        if( 0
 #if defined(MBEDTLS_SHA512_C)
-                   || hash == MBEDTLS_SSL_HASH_SHA384
+            || hash == MBEDTLS_SSL_HASH_SHA384
 #endif
 #if defined(MBEDTLS_SHA256_C)
-                   || hash == MBEDTLS_SSL_HASH_SHA256
+            || hash == MBEDTLS_SSL_HASH_SHA256
 #endif
-                    ) )
-            {
-                continue;
-            }
-
+            )
+        {
 #if defined(MBEDTLS_RSA_C)
             p[2 + sa_len++] = hash;
             p[2 + sa_len++] = MBEDTLS_SSL_SIG_RSA;
@@ -3103,6 +3096,7 @@
             p[2 + sa_len++] = MBEDTLS_SSL_SIG_ECDSA;
 #endif
         }
+        MBEDTLS_SSL_END_FOR_EACH_SIG_HASH_TLS
 
         p[0] = (unsigned char)( sa_len >> 8 );
         p[1] = (unsigned char)( sa_len      );
