clean up pid passing code and get testcase passing

Most of the time anyway.  Seems to be a race - daemon does getsockopt
and setsockopt while client does sendmsg;  daemon does recvmsg too
late and never gets the msg.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>