On Tue, 25 Jun 2002, [Windows-1252] Helmut Küpker wrote:
> I compiled exim-4.05 on SCO-Unix Release 3.2v4.2. The OS does not
> support SA_NOCLDWAIT.
But I presume that it must therefore require the parent process to reap
the child?
> I used Makefile-UNIX_SV and os.h-UNIX_SV and made little changes
> in source-code (fchmod -> chmod, fchown -> chown, ftruncate -> chsize).
>
> Local delivery works correctly.
>
> Remote delivery with SMTP works correctly, but in mainlog is the following
> error-message: "remote delivery process count got out of step".
What that means is that Exim tried to wait for a remote delivery
process, but the process had gone away. This is certainly related to
SA_NOCLDWAIT in systems that support it.
The code in deliver.c that is conditional on SA_NOCLDWAIT doesn't in
fact use that option; it is trying to ensure that it is NOT set.
Therefore, you could try using it anyway, in case there's some other
option that needs to be unset.
Otherwise, you'll need to discover how to make your operating system
keep completed child processes around so that the parent can wait() for
them.
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.