Always call setsid, even when we're not daemonizing.
>> However, I'm back to seeing the connection processes being left behind, >> despite an explicit quit from the remote host. > It looks to me as though qpsmtpd should have started a new process > group with the parent process, but hasn't. Or the developer assumed > that qpsmtpd would be set up as leader of a process group, but it > isn't in this circumstance. Signed-off-by: Robert <rspier@pobox.com>
This commit is contained in:
parent
8527f784c0
commit
75decb184b
2
Changes
2
Changes
@ -1,5 +1,7 @@
|
|||||||
X.YY - Date
|
X.YY - Date
|
||||||
|
|
||||||
|
prefork: Fix problem with processes sometimes being "left behind" (Charlie Brady)
|
||||||
|
|
||||||
prefork: Fix startup when no interface addresses are specified (Devin Carraway)
|
prefork: Fix startup when no interface addresses are specified (Devin Carraway)
|
||||||
|
|
||||||
prefork: add multi-address support
|
prefork: add multi-address support
|
||||||
|
@ -291,8 +291,8 @@ sub run {
|
|||||||
open STDERR, '>&STDOUT' or die "open(stderr): $!";
|
open STDERR, '>&STDOUT' or die "open(stderr): $!";
|
||||||
defined (my $pid = fork) or die "fork: $!";
|
defined (my $pid = fork) or die "fork: $!";
|
||||||
exit 0 if $pid;
|
exit 0 if $pid;
|
||||||
POSIX::setsid or die "setsid: $!";
|
|
||||||
}
|
}
|
||||||
|
POSIX::setsid or die "setsid: $!";
|
||||||
|
|
||||||
if ($pid_file) {
|
if ($pid_file) {
|
||||||
print PID $$,"\n";
|
print PID $$,"\n";
|
||||||
|
Loading…
Reference in New Issue
Block a user