ok -- confirmed :( Bug 5574.
Chris Blaise writes: > > Running without the daemon option makes it clear: > > $ /usr/bin/spamd -x --max-conn-per-child=20 --socketpath=/dev/spamd > --socketgroup=mail -m3 --min-spare=3 -u mail > > ... > [4463] info: spamd: server started on UNIX domain socket /dev/spamd (running > version 3.2.2) > [4463] info: spamd: server pid: 4463 > spamd: setuid to uid 8 failed > [4463] info: spamd: server successfully spawned child process, pid 4468 > [4463] info: spamd: server successfully spawned child process, pid 4469 > spamd: setuid to uid 8 failed > [4463] info: spamd: server successfully spawned child process, pid 4470 > [4463] info: prefork: child states: SSS > [4463] info: prefork: server reached --max-children setting, consider > raising it > [4463] info: spamd: handled cleanup of child pid 4468 due to SIGCHLD > spamd: setuid to uid 8 failed > [4463] info: spamd: server successfully spawned child process, pid 4471 > spamd: setuid to uid 8 failed > [4463] info: prefork: child states: SSS > [4463] info: prefork: server reached --max-children setting, consider > raising it > [4463] info: spamd: handled cleanup of child pid 4469 due to SIGCHLD > spamd: setuid to uid 8 failed > > This is the die() message from when the setgid/setuid functions are > called: > > ... > # bug 5518: assignments to $) and $( don't always work on all > platforms > # bug 3900: assignments to $> and $< problems with BSD perl bug > # use the POSIX functions to hide the platform specific workarounds > POSIX::setgid($ugid); # set effective and real gid > POSIX::setuid($uuid); # set effective and real UID > > # keep the sanity check to catch problems like bug 3900 just in case > if ( $> != $uuid and $> != ( $uuid - 2**32 ) ) { > die "spamd: setuid to uid $uuid failed\n"; > } > ... > > Chris > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Sent: Wednesday, July 25, 2007 10:10 AM > To: Chris Blaise > Cc: users@spamassassin.apache.org > Subject: Re: ANNOUNCE: Apache SpamAssassin 3.2.2 available > > try using "strace -fp {PID}" to see what is causing those > deaths... > > Chris Blaise writes: > > > > Can you verify that it's not in the "child create/due" loop? > > Tailing my log, I see the following: > > > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: spamd: server started on UNIX > > domai > > n socket /dev/spamd (running version 3.2.2) > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: spamd: server pid: 4553 > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > child process, pid 4556 > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > child process, pid 4557 > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > child process, pid 4558 > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: prefork: child states: SSS > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: prefork: server reached > > --max-child > > ren setting, consider raising it > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: prefork: child states: SSS > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: prefork: server reached > > --max-child > > ren setting, consider raising it > > 2007 Jul 25 08:41:01 ThreatWall spamd[4553]: spamd: handled cleanup of > child > > pid > > 4556 due to SIGCHLD > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > : > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: handled cleanup of > child > > pid > > 4558 due to SIGCHLD > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: prefork: child states: S > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > child process, pid 4560 > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > child process, pid 4561 > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: handled cleanup of > child > > pid > > 4559 due to SIGCHLD > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: handled cleanup of > child > > pid > > 4560 due to SIGCHLD > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: prefork: child states: S > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > child process, pid 4562 > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: server successfully > > spawned > > child process, pid 4563 > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: prefork: child states: SSS > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: prefork: server reached > > --max-child > > ren setting, consider raising it > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: handled cleanup of > child > > pid > > 4561 due to SIGCHLD > > 2007 Jul 25 08:41:02 ThreatWall spamd[4553]: spamd: handled cleanup of > child > > pid > > 4562 due to SIGCHLD > > .... > > > > Until I kill the parent spamd process. I run it with: > > > > /usr/bin/spamd -d -x --max-conn-per-child=20 --socketpath=/dev/spamd > > --socketgroup=mail -m3 --min-spare=3 -u mail > > > > Chris > > > > -----Original Message----- > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > > Sent: Wednesday, July 25, 2007 9:06 AM > > To: Chris Blaise > > Cc: users@spamassassin.apache.org > > Subject: Re: ANNOUNCE: Apache SpamAssassin 3.2.2 available > > > > > > Chris Blaise writes: > > > When starting up on a Perl 5.6.1 system under x86 Linux, spamd goes > > > into a child spawn/die loop because of the fix for bug 5518 which > replaces > > > the previous set uid/gid routines fails and causes the newly spawned > child > > > to immediately die. > > > > > > Is Perl 5.6.1 no longer the lowest support version? > > > > works fine for me with perl 5.6.1; make test passes: > > > > t/spamd.....................ok > > t/spamd_allow_user_rules....ok > > t/spamd_hup.................ok > > t/spamd_kill_restart........ok > > [.etc.] > > > > and 'sudo make test TEST_FILES=t/root_spamd*' similarly passes: > > > > t/root_spamd....................ok > > t/root_spamd_tell...............ok > > t/root_spamd_tell_paranoid......ok > > t/root_spamd_tell_x.............ok > > t/root_spamd_tell_x_paranoid....ok > > t/root_spamd_x..................ok > > t/root_spamd_x_paranoid.........ok > > All tests successful. > > > > --j.