On Solaris, signal handlers set with signal() get reset
after every handling. Thus two SIGHUPs will kill vmpsd.
The fix is to use the more modern sigaction().
sigaction should exist everywhere but I added a check
via autoconf just in case. I tested the patch on
Solaris, Linux, and FreeBSD.
Btw, vmpsd rocks. Thanks for sharing it.