The first patch fixes some reporting issues for reconnect sockets that fail to connect. It prevents a constant stream of error messages, and reports the error immediately instead of delaying it. This required a small restructure, but nothing big.
The second adds an error to non-blocking connect reporting. The error was available, it just wasn't being passed. Hopefully this makes the error easier to diagnose. -corey