Fix the parse_sig_alg_ext fail issue

Change-Id: Ib31e0929c5b6868ab6c3023b20472321fc07ba3c
Signed-off-by: XiaokangQian <xiaokang.qian@arm.com>
diff --git a/library/ssl_tls13_generic.c b/library/ssl_tls13_generic.c
index fabc5d1..12b7223 100644
--- a/library/ssl_tls13_generic.c
+++ b/library/ssl_tls13_generic.c
@@ -115,8 +115,12 @@
         MBEDTLS_SSL_DEBUG_MSG( 4, ( "received signature algorithm: 0x%x",
                                     sig_alg ) );
 
-        if( ! mbedtls_ssl_sig_alg_is_offered( ssl, sig_alg ) ||
-            ! mbedtls_ssl_sig_alg_is_supported( ssl, sig_alg ) )
+        if( ! mbedtls_ssl_sig_alg_is_supported( ssl, sig_alg )
+#if defined(MBEDTLS_SSL_CLI_C)
+            || ( ( ssl->conf->endpoint == MBEDTLS_SSL_IS_CLIENT )
+            && ! mbedtls_ssl_sig_alg_is_offered( ssl, sig_alg ) )
+#endif /* MBEDTLS_SSL_CLI_C */
+          )
             continue;
 
         if( common_idx + 1 < MBEDTLS_RECEIVED_SIG_ALGS_SIZE )