diff options
-rw-r--r-- | networking/inetd.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/networking/inetd.c b/networking/inetd.c index b2b0f7309..5388bf789 100644 --- a/networking/inetd.c +++ b/networking/inetd.c | |||
@@ -1273,7 +1273,7 @@ inetd_main (int argc, char *argv[]) | |||
1273 | pid_t pid; | 1273 | pid_t pid; |
1274 | char buf[50]; | 1274 | char buf[50]; |
1275 | char *stoomany; | 1275 | char *stoomany; |
1276 | sigset_t omask; | 1276 | sigset_t omask, wait_mask; |
1277 | 1277 | ||
1278 | #ifdef INETD_SETPROCTITLE | 1278 | #ifdef INETD_SETPROCTITLE |
1279 | extern char **environ; | 1279 | extern char **environ; |
@@ -1364,7 +1364,7 @@ inetd_main (int argc, char *argv[]) | |||
1364 | sigaction (SIGINT, &sa, NULL); | 1364 | sigaction (SIGINT, &sa, NULL); |
1365 | sa.sa_handler = SIG_IGN; | 1365 | sa.sa_handler = SIG_IGN; |
1366 | sigaction (SIGPIPE, &sa, &sapipe); | 1366 | sigaction (SIGPIPE, &sa, &sapipe); |
1367 | 1367 | memset(&wait_mask, 0, sizeof(wait_mask)); | |
1368 | { | 1368 | { |
1369 | /* space for daemons to overwrite environment for ps */ | 1369 | /* space for daemons to overwrite environment for ps */ |
1370 | #define DUMMYSIZE 100 | 1370 | #define DUMMYSIZE 100 |
@@ -1383,7 +1383,7 @@ inetd_main (int argc, char *argv[]) | |||
1383 | if (nsock == 0) { | 1383 | if (nsock == 0) { |
1384 | Block_Using_Signals(omask); | 1384 | Block_Using_Signals(omask); |
1385 | while (nsock == 0) | 1385 | while (nsock == 0) |
1386 | sigpause (0L); | 1386 | sigsuspend (&wait_mask); |
1387 | sigprocmask(SIG_UNBLOCK, &omask, NULL); | 1387 | sigprocmask(SIG_UNBLOCK, &omask, NULL); |
1388 | } | 1388 | } |
1389 | 1389 | ||