From 328aade82c1f698ac7b93894a4bd659e14f41e4d Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sat, 6 Jan 2018 21:37:27 +0100 Subject: [PATCH] handle error properly, do not just log but continue gracefully -- v6 also --- src/gns/gnunet-dns2gns.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/gns/gnunet-dns2gns.c b/src/gns/gnunet-dns2gns.c index bf7cca042..2f0de030d 100644 --- a/src/gns/gnunet-dns2gns.c +++ b/src/gns/gnunet-dns2gns.c @@ -586,16 +586,26 @@ read_dns6 (void *cls) } { char buf[size]; + ssize_t sret; addrlen = sizeof (v6); - GNUNET_break (size == - GNUNET_NETWORK_socket_recvfrom (listen_socket6, - buf, - size, - (struct sockaddr *) &v6, - &addrlen)); - handle_request (listen_socket6, &v6, addrlen, - buf, size); + sret = GNUNET_NETWORK_socket_recvfrom (listen_socket6, + buf, + size, + (struct sockaddr *) &v6, + &addrlen); + if (0 > sret) + { + GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, + "recvfrom"); + return; + } + GNUNET_break (size == (size_t) sret); + handle_request (listen_socket6, + &v6, + addrlen, + buf, + size); } } -- 2.25.1