Also I thought that your patch would only put the same user's connections to the same process.
Our aim was high scalability so we had to mix users on processes. We
are aware of the security implications.
I could see a trinary state for this: "off" for the current behavior,
"safe" for the behavior you describe, and "max" for the behavior in
this patch.
Maybe just SIGUSR2 that's available everywhere?
Sure. We chose SIGINFO because libraries on some systems hijack
SIGUSR[12] for their own purposes and we didn't want to step on any
toes.
- The logging tag for a persistent mail process is just "*" instead
of the user name Couldn't this also be done the same way as environment switching?
No because the master process adds the tag, not the mail process.
mail-processes.c:mail_connections should probably be an array instead of a hash table.
Sure, either way. The hash table affords quick lookups when
mail_max_connections is large, but scanning an array for an int is
fast too.