commit 328aade82c1f698ac7b93894a4bd659e14f41e4d
parent f3ea2e1338054ec0143ac7054e5e91373bcbd558
Author: Christian Grothoff <christian@grothoff.org>
Date: Sat, 6 Jan 2018 21:37:27 +0100
handle error properly, do not just log but continue gracefully -- v6 also
Diffstat:
1 file changed, 18 insertions(+), 8 deletions(-)
diff --git 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);
}
}