diff options
author | des <des@FreeBSD.org> | 1999-05-11 12:50:14 +0000 |
---|---|---|
committer | des <des@FreeBSD.org> | 1999-05-11 12:50:14 +0000 |
commit | 6c657432917771c5f2ccdeb0ef085745fbd9619b (patch) | |
tree | ade5ecf382e3835979b84064269384a5596fdf76 /usr.sbin | |
parent | d1315407cc8c104d040d4d0d6e6ff048392e3dae (diff) | |
download | FreeBSD-src-6c657432917771c5f2ccdeb0ef085745fbd9619b.zip FreeBSD-src-6c657432917771c5f2ccdeb0ef085745fbd9619b.tar.gz |
Don't stop listening to the signal pipe just because you don't have
anything else to do.
PR: 10468, 11594
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/inetd/inetd.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/usr.sbin/inetd/inetd.c b/usr.sbin/inetd/inetd.c index ae6e31f..e72d954 100644 --- a/usr.sbin/inetd/inetd.c +++ b/usr.sbin/inetd/inetd.c @@ -42,7 +42,7 @@ static const char copyright[] = static char sccsid[] = "@(#)from: inetd.c 8.4 (Berkeley) 4/13/94"; #endif static const char rcsid[] = - "$Id: inetd.c,v 1.47 1999/03/28 10:50:30 markm Exp $"; + "$Id: inetd.c,v 1.48 1999/04/11 09:22:17 markm Exp $"; #endif /* not lint */ /* @@ -465,17 +465,17 @@ main(argc, argv, envp) exit(EX_OSERR); } FD_SET(signalpipe[0], &allsock); - if (signalpipe[0]>maxsock) maxsock = signalpipe[0]; + nsock++; + if (signalpipe[0] > maxsock) + maxsock = signalpipe[0]; for (;;) { int n, ctrl; fd_set readable; if (nsock == 0) { - (void) sigblock(SIGBLOCK); - while (nsock == 0) - sigpause(0L); - (void) sigsetmask(0L); + syslog(LOG_ERR, "%s: nsock=0", __FUNCTION__); + exit(EX_SOFTWARE); } readable = allsock; if ((n = select(maxsock + 1, &readable, (fd_set *)0, |