From 9c6b0b4deafdba16f105349243399a6799d646a1 Mon Sep 17 00:00:00 2001 From: defanor Date: Thu, 4 Jun 2020 14:55:25 +0300 Subject: Allow gnutls_session_set_data to fail No need to give up on a connection if session data setting fails because the session is expired. --- src/rexmpp.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/rexmpp.c b/src/rexmpp.c index 959626a..282118f 100644 --- a/src/rexmpp.c +++ b/src/rexmpp.c @@ -1027,9 +1027,11 @@ rexmpp_err_t rexmpp_tls_start (rexmpp_t *s) { s->tls_session_data, s->tls_session_data_size); if (ret != GNUTLS_E_SUCCESS) { - rexmpp_log(s, LOG_ERR, "Failed to set TLS session data: %s", + rexmpp_log(s, LOG_WARNING, "Failed to set TLS session data: %s", gnutls_strerror(ret)); - return REXMPP_E_TLS; + free(s->tls_session_data); + s->tls_session_data = NULL; + s->tls_session_data_size = 0; } } s->tls_state = REXMPP_TLS_HANDSHAKE; -- cgit v1.2.3