Make signals match what OS X and the manpage say. Implement toggles for
debug and packet trace logging. Make this conditional on HAVE_SIGINFO. Presumably lack of SIGINFO as a standard posix feature is why they went with different signals here in the first place, but since we have it, let's use it.
This commit is contained in:
parent
1f98cab201
commit
3c8b3fccbd
|
@ -213,6 +213,10 @@ mDNSlocal mStatus MainLoop(mDNS *m) // Loop until we quit.
|
||||||
mDNSPosixListenForSignalInEventLoop(SIGINT);
|
mDNSPosixListenForSignalInEventLoop(SIGINT);
|
||||||
mDNSPosixListenForSignalInEventLoop(SIGTERM);
|
mDNSPosixListenForSignalInEventLoop(SIGTERM);
|
||||||
mDNSPosixListenForSignalInEventLoop(SIGUSR1);
|
mDNSPosixListenForSignalInEventLoop(SIGUSR1);
|
||||||
|
#ifdef HAVE_SIGINFO
|
||||||
|
mDNSPosixListenForSignalInEventLoop(SIGUSR2);
|
||||||
|
mDNSPosixListenForSignalInEventLoop(SIGINFO);
|
||||||
|
#endif
|
||||||
mDNSPosixListenForSignalInEventLoop(SIGPIPE);
|
mDNSPosixListenForSignalInEventLoop(SIGPIPE);
|
||||||
mDNSPosixListenForSignalInEventLoop(SIGHUP) ;
|
mDNSPosixListenForSignalInEventLoop(SIGHUP) ;
|
||||||
|
|
||||||
|
@ -239,7 +243,22 @@ mDNSlocal mStatus MainLoop(mDNS *m) // Loop until we quit.
|
||||||
(void) mDNSPosixRunEventLoopOnce(m, &timeout, &signals, &gotData);
|
(void) mDNSPosixRunEventLoopOnce(m, &timeout, &signals, &gotData);
|
||||||
|
|
||||||
if (sigismember(&signals, SIGHUP )) Reconfigure(m);
|
if (sigismember(&signals, SIGHUP )) Reconfigure(m);
|
||||||
|
#ifdef HAVE_SIGINFO
|
||||||
|
/* use OSX-compatible signals since we can, and gain enhanced debugging */
|
||||||
|
if (sigismember(&signals, SIGINFO)) DumpStateLog(m);
|
||||||
|
if (sigismember(&signals, SIGUSR1))
|
||||||
|
{
|
||||||
|
mDNS_LoggingEnabled = mDNS_LoggingEnabled ? 0 : 1;
|
||||||
|
LogMsg("SIGUSR1: Logging %s", mDNS_LoggingEnabled ? "Enabled" : "Disabled");
|
||||||
|
}
|
||||||
|
if (sigismember(&signals, SIGUSR2))
|
||||||
|
{
|
||||||
|
mDNS_PacketLoggingEnabled = mDNS_PacketLoggingEnabled ? 0 : 1;
|
||||||
|
LogMsg("SIGUSR2: Packet Logging %s", mDNS_PacketLoggingEnabled ? "Enabled" : "Disabled");
|
||||||
|
}
|
||||||
|
#else
|
||||||
if (sigismember(&signals, SIGUSR1)) DumpStateLog(m);
|
if (sigismember(&signals, SIGUSR1)) DumpStateLog(m);
|
||||||
|
#endif
|
||||||
// SIGPIPE happens when we try to write to a dead client; death should be detected soon in request_callback() and cleaned up.
|
// SIGPIPE happens when we try to write to a dead client; death should be detected soon in request_callback() and cleaned up.
|
||||||
if (sigismember(&signals, SIGPIPE)) LogMsg("Received SIGPIPE - ignoring");
|
if (sigismember(&signals, SIGPIPE)) LogMsg("Received SIGPIPE - ignoring");
|
||||||
if (sigismember(&signals, SIGINT) || sigismember(&signals, SIGTERM)) break;
|
if (sigismember(&signals, SIGINT) || sigismember(&signals, SIGTERM)) break;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# $NetBSD: Makefile,v 1.3 2009/10/01 10:01:14 tron Exp $
|
# $NetBSD: Makefile,v 1.4 2009/10/03 00:03:05 tsarna Exp $
|
||||||
|
|
||||||
PROG= mdnsd
|
PROG= mdnsd
|
||||||
|
|
||||||
|
@ -6,7 +6,8 @@ PROG= mdnsd
|
||||||
|
|
||||||
.PATH: ${DIST}/mDNSPosix ${DIST}/mDNSCore ${DIST}/mDNSShared
|
.PATH: ${DIST}/mDNSPosix ${DIST}/mDNSCore ${DIST}/mDNSShared
|
||||||
|
|
||||||
CPPFLAGS+=-I${DIST}/mDNSCore -I${DIST}/mDNSShared -DPROGRAM_NAME=\"mdnsd\"
|
CPPFLAGS+=-I${DIST}/mDNSCore -I${DIST}/mDNSShared \
|
||||||
|
-DPROGRAM_NAME=\"mdnsd\" -DHAVE_SIGINFO
|
||||||
SRCS= PosixDaemon.c mDNSPosix.c mDNSUNP.c mDNS.c DNSDigest.c uDNS.c \
|
SRCS= PosixDaemon.c mDNSPosix.c mDNSUNP.c mDNS.c DNSDigest.c uDNS.c \
|
||||||
DNSCommon.c uds_daemon.c mDNSDebug.c dnssd_ipc.c GenLinkedList.c \
|
DNSCommon.c uds_daemon.c mDNSDebug.c dnssd_ipc.c GenLinkedList.c \
|
||||||
PlatformCommon.c
|
PlatformCommon.c
|
||||||
|
|
Loading…
Reference in New Issue