summaryrefslogtreecommitdiff
path: root/src/socket.c
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2016-03-21 11:29:08 +0100
committerNikos Mavrogiannopoulos <nmav@redhat.com>2016-03-21 11:29:11 +0100
commit4a4130e775bbada338c0577b5414af9b0a74a186 (patch)
tree5667001298e4e0c08fcce288a67e8aecfdd6a49b /src/socket.c
parent4ad1dfe7fceac24506e9ddfc7ab3fa85f4d90f08 (diff)
downloadgnutls-4a4130e775bbada338c0577b5414af9b0a74a186.tar.gz
gnutls-cli: corrected usage of gnutls_session_get_data()
This is no longer called on resumed sessions, allowing more than one resumption in servers which use tickets and don't resend the ticket on subsequent connections.
Diffstat (limited to 'src/socket.c')
-rw-r--r--src/socket.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/socket.c b/src/socket.c
index be8a4a1ae8..e8eb315841 100644
--- a/src/socket.c
+++ b/src/socket.c
@@ -311,6 +311,9 @@ void socket_bye(socket_st * socket)
shutdown(socket->fd, SHUT_RDWR); /* no more receptions */
close(socket->fd);
+ gnutls_free(socket->rdata.data);
+ socket->rdata.data = NULL;
+
socket->fd = -1;
socket->secure = 0;
}
@@ -408,6 +411,7 @@ socket_open(socket_st * hd, const char *hostname, const char *service,
hd->service = strdup(portname);
hd->ptr = ptr;
hd->addr_info = res;
+ hd->rdata.data = NULL;
#ifdef HAVE_LIBIDN
idn_free(a_hostname);
#endif