Updated to support retrying TLS negotiations if we get an EAGAIN error