tls13: set key exchange mode in ticket_flags on client/server

Set the ticket_flags when:
  - server: preparing NST (new session ticket) message
  - client: postprocessing NST message

Clear the ticket_flags when:
  - server: preparing NST message
  - client: parsing NST message

Signed-off-by: Pengyu Lv <pengyu.lv@arm.com>
diff --git a/library/ssl_tls13_client.c b/library/ssl_tls13_client.c
index 291a4cf..e824a54 100644
--- a/library/ssl_tls13_client.c
+++ b/library/ssl_tls13_client.c
@@ -2618,6 +2618,10 @@
     session->ticket = ticket;
     session->ticket_len = ticket_len;
 
+    /* Clear all flags in ticket_flags */
+    mbedtls_ssl_tls13_session_clear_ticket_flags(session,
+                                                 MBEDTLS_SSL_TLS1_3_TICKET_FLAGS_MASK);
+
     MBEDTLS_SSL_CHK_BUF_READ_PTR(p, end, 2);
     extensions_len = MBEDTLS_GET_UINT16_BE(p, 0);
     p += 2;
@@ -2701,6 +2705,11 @@
                           session->resumption_key,
                           session->resumption_key_len);
 
+    /* Set ticket_flags depends on the selected key exchange modes */
+    mbedtls_ssl_tls13_session_set_ticket_flags(session,
+                                               ssl->conf->tls13_kex_modes);
+    MBEDTLS_SSL_DEBUG_TICKET_FLAGS(4, session->ticket_flags);
+
     return 0;
 }