From b3be641eeddce360692d3a3e872d769f86f1b293 Mon Sep 17 00:00:00 2001 From: Joshua Judson Rosen Date: Mon, 16 Feb 2015 23:33:02 -0500 Subject: Nix mysleep(). Just use sleep() where only whole-second resolution is used to delay between reconnect-attempts; and nanosleep where sub-second resolution is used. sleep() should actually be OK, because we don't intermix those calls with alarm() or any other signals or itimer functions. nanosleep() should be OK because POSIX.1-2001 requires that it not have the crazy signal interactions that its predecessors are known for. --- src/server_signals.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/server_signals.c') diff --git a/src/server_signals.c b/src/server_signals.c index 00f69bd..84cf5ec 100644 --- a/src/server_signals.c +++ b/src/server_signals.c @@ -28,6 +28,8 @@ #include "logging.h" #include "server_configuration_struct.h" +#include + extern ServerConfiguration* config; /* @@ -77,7 +79,12 @@ server_sig_int(int signo) } /* FIXME: give a time to close all connections */ - mysleep(0.1); + { + struct timespec ts; + ts.tv_sec = 0; + ts.tv_nsec = 100000000; + nanosleep(&ts, NULL); + } aflog(LOG_T_MAIN, LOG_I_NOTICE, "SERVER CLOSED cg: %ld bytes", getcg()); -- cgit v1.1