Check that the diffie hellman struct is valid before use.
Only send one byte and ignore any following calls to poke.
Fixed memory barrier issues in thread_base and use thread_interrupt socket for all archs.