mirror of
https://git.freebsd.org/ports.git
synced 2025-05-28 17:06:32 -04:00
zombies on the system. Without this change, the socks5 daemon would work great for a short period of time, then hang because no more children could be created. It appears from debugging that this is because gravedigger was only called once. I reestablish the signal handler in gravedigger to force SIGCHLD to be unmasked. A more proper fix might be to fix Signal to have multi-shot signals, or to see what might be broken with the signal masks. Since I'm in a hurry and this port's daemon is broken without this, I commit this kludge knowing that it will live approximately forever, less three days.
10 lines
258 B
Text
10 lines
258 B
Text
--- server/socket.c.orig Mon Oct 2 21:18:48 2000
|
|
+++ server/socket.c Mon Oct 2 21:18:55 2000
|
|
@@ -66,6 +66,7 @@
|
|
if (errno == EINTR) continue;
|
|
case 0:
|
|
SigUnblock(set);
|
|
+ Signal(SIGCHLD, gravedigger);
|
|
errno = oerrno;
|
|
return;
|
|
default:
|