1
0
mirror of https://gitlab.xiph.org/xiph/icecast-server.git synced 2024-06-23 06:25:24 +00:00
icecast-server/src/sighandler.c
Michael Smith 89bf546ad1 Lots of bugfixes contributed by Karl Heyes.
svn path=/trunk/icecast/; revision=4111
2002-11-22 13:00:44 +00:00

58 lines
972 B
C

#include <signal.h>
#include "thread.h"
#include "avl.h"
#include "log.h"
#include "httpp.h"
#include "global.h"
#include "connection.h"
#include "refbuf.h"
#include "client.h"
#include "logging.h"
#include "sighandler.h"
#define CATMODULE "sighandler"
#ifndef _WIN32
void _sig_hup(int signo);
void _sig_die(int signo);
#endif
void sighandler_initialize(void)
{
#ifndef _WIN32
signal(SIGHUP, _sig_hup);
signal(SIGINT, _sig_die);
signal(SIGTERM, _sig_die);
signal(SIGPIPE, SIG_IGN);
#endif
}
#ifndef _WIN32
void _sig_hup(int signo)
{
INFO1("Caught signal %d, rehashing config and reopening logfiles (unimplemented)...", signo);
/* reread config file */
/* reopen logfiles */
#ifdef __linux__
/* linux requires us to reattach the signal handler */
signal(SIGHUP, _sig_hup);
#endif
}
void _sig_die(int signo)
{
INFO1("Caught signal %d, shutting down...", signo);
/* inform the server to start shutting down */
global.running = ICE_HALTING;
}
#endif