The sendmail program
forks to do its job. Each child process has its own process ID number
(pid) which it uses when creating queue
filenames. Ordinarily, the uniqueness of each
pid prevents any two children from creating
identical queue names during any one-second interval. But, on fast
machines with short pid ranges, there is a risk
that one client might exit and another might start within one second,
and the second client will be issued the same
pid as the first.
On such machines, the FAST_PID_RECYCLE compile-time macro is defined
to prevent just such a collision of pid numbers.
In general, this compile-time macro is correctly defined for all
currently supported architectures. You will need to define it
yourself only if your are porting sendmail to a
new system. New ports should be reported to
sendmail@sendmail.org so that they can be folded
into future releases.
If you are running a precompiled sendmail
binary, you can use the -d0.10 debugging
command-line switch (-d0.10) to determine if
FAST_PID_RECYCLE support is defined (if it appears in the list, it is
defined).