From fe04d60ee064bfd6ba550f1f6d6f9c1301d02c10 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 20 Feb 2011 12:11:52 +0100 Subject: restart handshake on signals. --- src/udp-serv.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/udp-serv.c b/src/udp-serv.c index 332917ea8b..284348325b 100644 --- a/src/udp-serv.c +++ b/src/udp-serv.c @@ -63,7 +63,12 @@ int udp_server(const char* name, int port) gnutls_transport_set_pull_function (session, pull_func); gnutls_transport_set_pull_timeout_function (session, pull_timeout_func); - ret = gnutls_handshake(session); + do + { + ret = gnutls_handshake(session); + } + while(ret == GNUTLS_E_AGAIN || ret == GNUTLS_E_INTERRUPTED); + if (ret < 0) { fprintf(stderr, "Error in handshake(): %s\n", gnutls_strerror(ret)); -- cgit v1.2.1