From 8fcf2413e99597b6690b6a352aa12842f9be27e5 Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Tue, 12 Apr 2016 10:54:16 +1000 Subject: [PATCH] 4345. [contrib] perftcpdns mishandled the return values from clock_nanosleep. [RT #42131] --- CHANGES | 3 +++ contrib/perftcpdns/perftcpdns.c | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGES b/CHANGES index 757bfead75..6a6ada48f2 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +4345. [contrib] perftcpdns mishandled the return values from + clock_nanosleep. [RT #42131] + 4344. [port] Address openssl version differences. [RT #42059] 4343. [bug] dns_dnssec_syncupdate misdeclared in . diff --git a/contrib/perftcpdns/perftcpdns.c b/contrib/perftcpdns/perftcpdns.c index f545b5c668..2af04e3cf1 100644 --- a/contrib/perftcpdns/perftcpdns.c +++ b/contrib/perftcpdns/perftcpdns.c @@ -1354,10 +1354,11 @@ connecting(void *dummy) } else { /* wait until */ ret = clock_nanosleep(CLOCK_REALTIME, 0, &ts, NULL); - if (ret < 0) { - if (errno == EINTR) + if (ret != 0) { + if (ret == EINTR) continue; - perror("clock_nanosleep"); + fprintf(stderr, "clock_nanosleep: %s\n", + strerror(ret)); fatal = 1; (void) pthread_kill(master, SIGTERM); break;