summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordefanor <defanor@uberspace.net>2020-06-04 14:55:25 +0300
committerdefanor <defanor@uberspace.net>2020-06-04 15:03:49 +0300
commit9c6b0b4deafdba16f105349243399a6799d646a1 (patch)
treef0c0cfbed355fcf4f797cfe96997d7e9c6ed2b6a
parentb0d268a21126b8d0a095986f81ff75e2807d4594 (diff)
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.
-rw-r--r--src/rexmpp.c6
1 files 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;