lm_old_socket_close() leaks a file descriptor if connect() has not
succeeded.
socket_close_io_channel() is not called on the socket file descriptor if
lm_old_socket_close() is called between when connect() has been called
and when it has succeeded/failed.
The patch came from the user emezeske on github.
No IPv6 Support
Currently Leak Resolver Objects Due To Messy Allocation Path